SkJumper_generated_win.S revision 5664e65eb1680a14eeaa6ca79ddf9e734518c822
1; Copyright 2017 Google Inc.
2;
3; Use of this source code is governed by a BSD-style license that can be
4; found in the LICENSE file.
5
6; This file is generated semi-automatically with this command:
7;   $ src/jumper/build_stages.py
8
9IFDEF RAX
10_text32 SEGMENT ALIGN(32) 'CODE'
11ALIGN 32
12
13PUBLIC _sk_start_pipeline_hsw
14_sk_start_pipeline_hsw LABEL PROC
15  DB  65,87                               ; push          %r15
16  DB  65,86                               ; push          %r14
17  DB  65,85                               ; push          %r13
18  DB  65,84                               ; push          %r12
19  DB  86                                  ; push          %rsi
20  DB  87                                  ; push          %rdi
21  DB  83                                  ; push          %rbx
22  DB  72,129,236,160,0,0,0                ; sub           $0xa0,%rsp
23  DB  197,120,41,188,36,144,0,0,0         ; vmovaps       %xmm15,0x90(%rsp)
24  DB  197,120,41,180,36,128,0,0,0         ; vmovaps       %xmm14,0x80(%rsp)
25  DB  197,120,41,108,36,112               ; vmovaps       %xmm13,0x70(%rsp)
26  DB  197,120,41,100,36,96                ; vmovaps       %xmm12,0x60(%rsp)
27  DB  197,120,41,92,36,80                 ; vmovaps       %xmm11,0x50(%rsp)
28  DB  197,120,41,84,36,64                 ; vmovaps       %xmm10,0x40(%rsp)
29  DB  197,120,41,76,36,48                 ; vmovaps       %xmm9,0x30(%rsp)
30  DB  197,120,41,68,36,32                 ; vmovaps       %xmm8,0x20(%rsp)
31  DB  197,248,41,124,36,16                ; vmovaps       %xmm7,0x10(%rsp)
32  DB  197,248,41,52,36                    ; vmovaps       %xmm6,(%rsp)
33  DB  77,137,205                          ; mov           %r9,%r13
34  DB  77,137,198                          ; mov           %r8,%r14
35  DB  72,137,203                          ; mov           %rcx,%rbx
36  DB  72,137,214                          ; mov           %rdx,%rsi
37  DB  72,173                              ; lods          %ds:(%rsi),%rax
38  DB  73,137,199                          ; mov           %rax,%r15
39  DB  73,137,244                          ; mov           %rsi,%r12
40  DB  72,141,67,8                         ; lea           0x8(%rbx),%rax
41  DB  76,57,232                           ; cmp           %r13,%rax
42  DB  118,5                               ; jbe           75 <_sk_start_pipeline_hsw+0x75>
43  DB  72,137,223                          ; mov           %rbx,%rdi
44  DB  235,65                              ; jmp           b6 <_sk_start_pipeline_hsw+0xb6>
45  DB  185,0,0,0,0                         ; mov           $0x0,%ecx
46  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
47  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
48  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
49  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
50  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
51  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
52  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
53  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
54  DB  72,137,223                          ; mov           %rbx,%rdi
55  DB  76,137,230                          ; mov           %r12,%rsi
56  DB  76,137,242                          ; mov           %r14,%rdx
57  DB  65,255,215                          ; callq         *%r15
58  DB  72,141,123,8                        ; lea           0x8(%rbx),%rdi
59  DB  72,131,195,16                       ; add           $0x10,%rbx
60  DB  76,57,235                           ; cmp           %r13,%rbx
61  DB  72,137,251                          ; mov           %rdi,%rbx
62  DB  118,191                             ; jbe           75 <_sk_start_pipeline_hsw+0x75>
63  DB  76,137,233                          ; mov           %r13,%rcx
64  DB  72,41,249                           ; sub           %rdi,%rcx
65  DB  116,41                              ; je            e7 <_sk_start_pipeline_hsw+0xe7>
66  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
67  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
68  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
69  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
70  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
71  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
72  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
73  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
74  DB  76,137,230                          ; mov           %r12,%rsi
75  DB  76,137,242                          ; mov           %r14,%rdx
76  DB  65,255,215                          ; callq         *%r15
77  DB  76,137,232                          ; mov           %r13,%rax
78  DB  197,248,40,52,36                    ; vmovaps       (%rsp),%xmm6
79  DB  197,248,40,124,36,16                ; vmovaps       0x10(%rsp),%xmm7
80  DB  197,120,40,68,36,32                 ; vmovaps       0x20(%rsp),%xmm8
81  DB  197,120,40,76,36,48                 ; vmovaps       0x30(%rsp),%xmm9
82  DB  197,120,40,84,36,64                 ; vmovaps       0x40(%rsp),%xmm10
83  DB  197,120,40,92,36,80                 ; vmovaps       0x50(%rsp),%xmm11
84  DB  197,120,40,100,36,96                ; vmovaps       0x60(%rsp),%xmm12
85  DB  197,120,40,108,36,112               ; vmovaps       0x70(%rsp),%xmm13
86  DB  197,120,40,180,36,128,0,0,0         ; vmovaps       0x80(%rsp),%xmm14
87  DB  197,120,40,188,36,144,0,0,0         ; vmovaps       0x90(%rsp),%xmm15
88  DB  72,129,196,160,0,0,0                ; add           $0xa0,%rsp
89  DB  91                                  ; pop           %rbx
90  DB  95                                  ; pop           %rdi
91  DB  94                                  ; pop           %rsi
92  DB  65,92                               ; pop           %r12
93  DB  65,93                               ; pop           %r13
94  DB  65,94                               ; pop           %r14
95  DB  65,95                               ; pop           %r15
96  DB  197,248,119                         ; vzeroupper
97  DB  195                                 ; retq
98
99PUBLIC _sk_just_return_hsw
100_sk_just_return_hsw LABEL PROC
101  DB  195                                 ; retq
102
103PUBLIC _sk_seed_shader_hsw
104_sk_seed_shader_hsw LABEL PROC
105  DB  72,173                              ; lods          %ds:(%rsi),%rax
106  DB  197,249,110,199                     ; vmovd         %edi,%xmm0
107  DB  196,226,125,88,192                  ; vpbroadcastd  %xmm0,%ymm0
108  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
109  DB  196,226,125,24,13,30,60,0,0         ; vbroadcastss  0x3c1e(%rip),%ymm1        # 3d78 <_sk_callback_hsw+0x119>
110  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
111  DB  197,252,88,2                        ; vaddps        (%rdx),%ymm0,%ymm0
112  DB  196,226,125,24,16                   ; vbroadcastss  (%rax),%ymm2
113  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
114  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
115  DB  72,173                              ; lods          %ds:(%rsi),%rax
116  DB  196,226,125,24,21,2,60,0,0          ; vbroadcastss  0x3c02(%rip),%ymm2        # 3d7c <_sk_callback_hsw+0x11d>
117  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
118  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
119  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
120  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
121  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
122  DB  255,224                             ; jmpq          *%rax
123
124PUBLIC _sk_constant_color_hsw
125_sk_constant_color_hsw LABEL PROC
126  DB  72,173                              ; lods          %ds:(%rsi),%rax
127  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
128  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
129  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
130  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
131  DB  72,173                              ; lods          %ds:(%rsi),%rax
132  DB  255,224                             ; jmpq          *%rax
133
134PUBLIC _sk_clear_hsw
135_sk_clear_hsw LABEL PROC
136  DB  72,173                              ; lods          %ds:(%rsi),%rax
137  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
138  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
139  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
140  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
141  DB  255,224                             ; jmpq          *%rax
142
143PUBLIC _sk_srcatop_hsw
144_sk_srcatop_hsw LABEL PROC
145  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
146  DB  196,98,125,24,5,178,59,0,0          ; vbroadcastss  0x3bb2(%rip),%ymm8        # 3d80 <_sk_callback_hsw+0x121>
147  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
148  DB  196,226,61,184,196                  ; vfmadd231ps   %ymm4,%ymm8,%ymm0
149  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
150  DB  196,226,61,184,205                  ; vfmadd231ps   %ymm5,%ymm8,%ymm1
151  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
152  DB  196,226,61,184,214                  ; vfmadd231ps   %ymm6,%ymm8,%ymm2
153  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
154  DB  196,194,69,168,216                  ; vfmadd213ps   %ymm8,%ymm7,%ymm3
155  DB  72,173                              ; lods          %ds:(%rsi),%rax
156  DB  255,224                             ; jmpq          *%rax
157
158PUBLIC _sk_dstatop_hsw
159_sk_dstatop_hsw LABEL PROC
160  DB  196,98,125,24,5,133,59,0,0          ; vbroadcastss  0x3b85(%rip),%ymm8        # 3d84 <_sk_callback_hsw+0x125>
161  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
162  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
163  DB  196,226,101,184,196                 ; vfmadd231ps   %ymm4,%ymm3,%ymm0
164  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
165  DB  196,226,101,184,205                 ; vfmadd231ps   %ymm5,%ymm3,%ymm1
166  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
167  DB  196,226,101,184,214                 ; vfmadd231ps   %ymm6,%ymm3,%ymm2
168  DB  197,60,89,195                       ; vmulps        %ymm3,%ymm8,%ymm8
169  DB  196,194,69,168,216                  ; vfmadd213ps   %ymm8,%ymm7,%ymm3
170  DB  72,173                              ; lods          %ds:(%rsi),%rax
171  DB  255,224                             ; jmpq          *%rax
172
173PUBLIC _sk_srcin_hsw
174_sk_srcin_hsw LABEL PROC
175  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
176  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
177  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
178  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
179  DB  72,173                              ; lods          %ds:(%rsi),%rax
180  DB  255,224                             ; jmpq          *%rax
181
182PUBLIC _sk_dstin_hsw
183_sk_dstin_hsw LABEL PROC
184  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
185  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
186  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
187  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
188  DB  72,173                              ; lods          %ds:(%rsi),%rax
189  DB  255,224                             ; jmpq          *%rax
190
191PUBLIC _sk_srcout_hsw
192_sk_srcout_hsw LABEL PROC
193  DB  196,98,125,24,5,44,59,0,0           ; vbroadcastss  0x3b2c(%rip),%ymm8        # 3d88 <_sk_callback_hsw+0x129>
194  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
195  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
196  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
197  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
198  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
199  DB  72,173                              ; lods          %ds:(%rsi),%rax
200  DB  255,224                             ; jmpq          *%rax
201
202PUBLIC _sk_dstout_hsw
203_sk_dstout_hsw LABEL PROC
204  DB  196,226,125,24,5,15,59,0,0          ; vbroadcastss  0x3b0f(%rip),%ymm0        # 3d8c <_sk_callback_hsw+0x12d>
205  DB  197,252,92,219                      ; vsubps        %ymm3,%ymm0,%ymm3
206  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
207  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
208  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
209  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
210  DB  72,173                              ; lods          %ds:(%rsi),%rax
211  DB  255,224                             ; jmpq          *%rax
212
213PUBLIC _sk_srcover_hsw
214_sk_srcover_hsw LABEL PROC
215  DB  196,98,125,24,5,242,58,0,0          ; vbroadcastss  0x3af2(%rip),%ymm8        # 3d90 <_sk_callback_hsw+0x131>
216  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
217  DB  196,194,93,184,192                  ; vfmadd231ps   %ymm8,%ymm4,%ymm0
218  DB  196,194,85,184,200                  ; vfmadd231ps   %ymm8,%ymm5,%ymm1
219  DB  196,194,77,184,208                  ; vfmadd231ps   %ymm8,%ymm6,%ymm2
220  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
221  DB  72,173                              ; lods          %ds:(%rsi),%rax
222  DB  255,224                             ; jmpq          *%rax
223
224PUBLIC _sk_dstover_hsw
225_sk_dstover_hsw LABEL PROC
226  DB  196,98,125,24,5,209,58,0,0          ; vbroadcastss  0x3ad1(%rip),%ymm8        # 3d94 <_sk_callback_hsw+0x135>
227  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
228  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
229  DB  196,226,61,168,205                  ; vfmadd213ps   %ymm5,%ymm8,%ymm1
230  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
231  DB  196,226,61,168,223                  ; vfmadd213ps   %ymm7,%ymm8,%ymm3
232  DB  72,173                              ; lods          %ds:(%rsi),%rax
233  DB  255,224                             ; jmpq          *%rax
234
235PUBLIC _sk_modulate_hsw
236_sk_modulate_hsw LABEL PROC
237  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
238  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
239  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
240  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
241  DB  72,173                              ; lods          %ds:(%rsi),%rax
242  DB  255,224                             ; jmpq          *%rax
243
244PUBLIC _sk_multiply_hsw
245_sk_multiply_hsw LABEL PROC
246  DB  196,98,125,24,5,156,58,0,0          ; vbroadcastss  0x3a9c(%rip),%ymm8        # 3d98 <_sk_callback_hsw+0x139>
247  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
248  DB  197,52,89,208                       ; vmulps        %ymm0,%ymm9,%ymm10
249  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
250  DB  196,98,61,184,212                   ; vfmadd231ps   %ymm4,%ymm8,%ymm10
251  DB  196,194,93,168,194                  ; vfmadd213ps   %ymm10,%ymm4,%ymm0
252  DB  197,52,89,209                       ; vmulps        %ymm1,%ymm9,%ymm10
253  DB  196,98,61,184,213                   ; vfmadd231ps   %ymm5,%ymm8,%ymm10
254  DB  196,194,85,168,202                  ; vfmadd213ps   %ymm10,%ymm5,%ymm1
255  DB  197,52,89,210                       ; vmulps        %ymm2,%ymm9,%ymm10
256  DB  196,98,61,184,214                   ; vfmadd231ps   %ymm6,%ymm8,%ymm10
257  DB  196,194,77,168,210                  ; vfmadd213ps   %ymm10,%ymm6,%ymm2
258  DB  197,52,89,203                       ; vmulps        %ymm3,%ymm9,%ymm9
259  DB  196,66,69,168,193                   ; vfmadd213ps   %ymm9,%ymm7,%ymm8
260  DB  196,194,69,168,216                  ; vfmadd213ps   %ymm8,%ymm7,%ymm3
261  DB  72,173                              ; lods          %ds:(%rsi),%rax
262  DB  255,224                             ; jmpq          *%rax
263
264PUBLIC _sk_plus__hsw
265_sk_plus__hsw LABEL PROC
266  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
267  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
268  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
269  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
270  DB  72,173                              ; lods          %ds:(%rsi),%rax
271  DB  255,224                             ; jmpq          *%rax
272
273PUBLIC _sk_screen_hsw
274_sk_screen_hsw LABEL PROC
275  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
276  DB  196,194,93,172,192                  ; vfnmadd213ps  %ymm8,%ymm4,%ymm0
277  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
278  DB  196,194,85,172,200                  ; vfnmadd213ps  %ymm8,%ymm5,%ymm1
279  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
280  DB  196,194,77,172,208                  ; vfnmadd213ps  %ymm8,%ymm6,%ymm2
281  DB  197,100,88,199                      ; vaddps        %ymm7,%ymm3,%ymm8
282  DB  196,194,69,172,216                  ; vfnmadd213ps  %ymm8,%ymm7,%ymm3
283  DB  72,173                              ; lods          %ds:(%rsi),%rax
284  DB  255,224                             ; jmpq          *%rax
285
286PUBLIC _sk_xor__hsw
287_sk_xor__hsw LABEL PROC
288  DB  196,98,125,24,5,23,58,0,0           ; vbroadcastss  0x3a17(%rip),%ymm8        # 3d9c <_sk_callback_hsw+0x13d>
289  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
290  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
291  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
292  DB  196,226,61,184,196                  ; vfmadd231ps   %ymm4,%ymm8,%ymm0
293  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
294  DB  196,226,61,184,205                  ; vfmadd231ps   %ymm5,%ymm8,%ymm1
295  DB  197,180,89,210                      ; vmulps        %ymm2,%ymm9,%ymm2
296  DB  196,226,61,184,214                  ; vfmadd231ps   %ymm6,%ymm8,%ymm2
297  DB  197,180,89,219                      ; vmulps        %ymm3,%ymm9,%ymm3
298  DB  196,98,69,168,195                   ; vfmadd213ps   %ymm3,%ymm7,%ymm8
299  DB  72,173                              ; lods          %ds:(%rsi),%rax
300  DB  197,124,41,195                      ; vmovaps       %ymm8,%ymm3
301  DB  255,224                             ; jmpq          *%rax
302
303PUBLIC _sk_darken_hsw
304_sk_darken_hsw LABEL PROC
305  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
306  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
307  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
308  DB  196,193,124,95,193                  ; vmaxps        %ymm9,%ymm0,%ymm0
309  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
310  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
311  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
312  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
313  DB  196,193,116,95,201                  ; vmaxps        %ymm9,%ymm1,%ymm1
314  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
315  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
316  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
317  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
318  DB  196,193,108,95,209                  ; vmaxps        %ymm9,%ymm2,%ymm2
319  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
320  DB  196,98,125,24,5,159,57,0,0          ; vbroadcastss  0x399f(%rip),%ymm8        # 3da0 <_sk_callback_hsw+0x141>
321  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
322  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
323  DB  72,173                              ; lods          %ds:(%rsi),%rax
324  DB  255,224                             ; jmpq          *%rax
325
326PUBLIC _sk_lighten_hsw
327_sk_lighten_hsw LABEL PROC
328  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
329  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
330  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
331  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
332  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
333  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
334  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
335  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
336  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
337  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
338  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
339  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
340  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
341  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
342  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
343  DB  196,98,125,24,5,78,57,0,0           ; vbroadcastss  0x394e(%rip),%ymm8        # 3da4 <_sk_callback_hsw+0x145>
344  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
345  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
346  DB  72,173                              ; lods          %ds:(%rsi),%rax
347  DB  255,224                             ; jmpq          *%rax
348
349PUBLIC _sk_difference_hsw
350_sk_difference_hsw LABEL PROC
351  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
352  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
353  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
354  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
355  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
356  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
357  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
358  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
359  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
360  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
361  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
362  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
363  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
364  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
365  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
366  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
367  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
368  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
369  DB  196,98,125,24,5,241,56,0,0          ; vbroadcastss  0x38f1(%rip),%ymm8        # 3da8 <_sk_callback_hsw+0x149>
370  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
371  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
372  DB  72,173                              ; lods          %ds:(%rsi),%rax
373  DB  255,224                             ; jmpq          *%rax
374
375PUBLIC _sk_exclusion_hsw
376_sk_exclusion_hsw LABEL PROC
377  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
378  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
379  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
380  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
381  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
382  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
383  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
384  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
385  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
386  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
387  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
388  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
389  DB  196,98,125,24,5,175,56,0,0          ; vbroadcastss  0x38af(%rip),%ymm8        # 3dac <_sk_callback_hsw+0x14d>
390  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
391  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
392  DB  72,173                              ; lods          %ds:(%rsi),%rax
393  DB  255,224                             ; jmpq          *%rax
394
395PUBLIC _sk_colorburn_hsw
396_sk_colorburn_hsw LABEL PROC
397  DB  196,98,125,24,5,157,56,0,0          ; vbroadcastss  0x389d(%rip),%ymm8        # 3db0 <_sk_callback_hsw+0x151>
398  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
399  DB  197,52,89,216                       ; vmulps        %ymm0,%ymm9,%ymm11
400  DB  196,65,44,87,210                    ; vxorps        %ymm10,%ymm10,%ymm10
401  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
402  DB  197,60,89,228                       ; vmulps        %ymm4,%ymm8,%ymm12
403  DB  197,68,92,236                       ; vsubps        %ymm4,%ymm7,%ymm13
404  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
405  DB  197,20,94,232                       ; vdivps        %ymm0,%ymm13,%ymm13
406  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
407  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
408  DB  196,66,101,168,235                  ; vfmadd213ps   %ymm11,%ymm3,%ymm13
409  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
410  DB  197,28,88,224                       ; vaddps        %ymm0,%ymm12,%ymm12
411  DB  196,193,124,194,194,0               ; vcmpeqps      %ymm10,%ymm0,%ymm0
412  DB  196,195,21,74,196,0                 ; vblendvps     %ymm0,%ymm12,%ymm13,%ymm0
413  DB  197,92,194,231,0                    ; vcmpeqps      %ymm7,%ymm4,%ymm12
414  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
415  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
416  DB  197,52,89,217                       ; vmulps        %ymm1,%ymm9,%ymm11
417  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
418  DB  197,68,92,237                       ; vsubps        %ymm5,%ymm7,%ymm13
419  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
420  DB  197,20,94,233                       ; vdivps        %ymm1,%ymm13,%ymm13
421  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
422  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
423  DB  196,66,101,168,235                  ; vfmadd213ps   %ymm11,%ymm3,%ymm13
424  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
425  DB  197,28,88,225                       ; vaddps        %ymm1,%ymm12,%ymm12
426  DB  196,193,116,194,202,0               ; vcmpeqps      %ymm10,%ymm1,%ymm1
427  DB  196,195,21,74,204,16                ; vblendvps     %ymm1,%ymm12,%ymm13,%ymm1
428  DB  197,84,194,231,0                    ; vcmpeqps      %ymm7,%ymm5,%ymm12
429  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
430  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
431  DB  197,52,89,202                       ; vmulps        %ymm2,%ymm9,%ymm9
432  DB  196,65,108,194,210,0                ; vcmpeqps      %ymm10,%ymm2,%ymm10
433  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
434  DB  197,68,92,230                       ; vsubps        %ymm6,%ymm7,%ymm12
435  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
436  DB  197,28,94,226                       ; vdivps        %ymm2,%ymm12,%ymm12
437  DB  197,164,88,210                      ; vaddps        %ymm2,%ymm11,%ymm2
438  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
439  DB  196,65,68,92,228                    ; vsubps        %ymm12,%ymm7,%ymm12
440  DB  196,66,101,168,225                  ; vfmadd213ps   %ymm9,%ymm3,%ymm12
441  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
442  DB  196,227,37,74,210,160               ; vblendvps     %ymm10,%ymm2,%ymm11,%ymm2
443  DB  197,76,194,215,0                    ; vcmpeqps      %ymm7,%ymm6,%ymm10
444  DB  197,52,88,206                       ; vaddps        %ymm6,%ymm9,%ymm9
445  DB  196,195,109,74,209,160              ; vblendvps     %ymm10,%ymm9,%ymm2,%ymm2
446  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
447  DB  72,173                              ; lods          %ds:(%rsi),%rax
448  DB  255,224                             ; jmpq          *%rax
449
450PUBLIC _sk_colordodge_hsw
451_sk_colordodge_hsw LABEL PROC
452  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
453  DB  196,98,125,24,13,168,55,0,0         ; vbroadcastss  0x37a8(%rip),%ymm9        # 3db4 <_sk_callback_hsw+0x155>
454  DB  197,52,92,215                       ; vsubps        %ymm7,%ymm9,%ymm10
455  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
456  DB  197,52,92,203                       ; vsubps        %ymm3,%ymm9,%ymm9
457  DB  197,100,89,228                      ; vmulps        %ymm4,%ymm3,%ymm12
458  DB  197,100,92,232                      ; vsubps        %ymm0,%ymm3,%ymm13
459  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
460  DB  197,52,89,236                       ; vmulps        %ymm4,%ymm9,%ymm13
461  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
462  DB  196,66,101,168,227                  ; vfmadd213ps   %ymm11,%ymm3,%ymm12
463  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
464  DB  197,20,88,232                       ; vaddps        %ymm0,%ymm13,%ymm13
465  DB  197,252,194,195,0                   ; vcmpeqps      %ymm3,%ymm0,%ymm0
466  DB  196,195,29,74,197,0                 ; vblendvps     %ymm0,%ymm13,%ymm12,%ymm0
467  DB  196,65,92,194,224,0                 ; vcmpeqps      %ymm8,%ymm4,%ymm12
468  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
469  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
470  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
471  DB  197,100,89,229                      ; vmulps        %ymm5,%ymm3,%ymm12
472  DB  197,100,92,233                      ; vsubps        %ymm1,%ymm3,%ymm13
473  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
474  DB  197,52,89,237                       ; vmulps        %ymm5,%ymm9,%ymm13
475  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
476  DB  196,66,101,168,227                  ; vfmadd213ps   %ymm11,%ymm3,%ymm12
477  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
478  DB  197,20,88,233                       ; vaddps        %ymm1,%ymm13,%ymm13
479  DB  197,244,194,203,0                   ; vcmpeqps      %ymm3,%ymm1,%ymm1
480  DB  196,195,29,74,205,16                ; vblendvps     %ymm1,%ymm13,%ymm12,%ymm1
481  DB  196,65,84,194,224,0                 ; vcmpeqps      %ymm8,%ymm5,%ymm12
482  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
483  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
484  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
485  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
486  DB  197,100,92,226                      ; vsubps        %ymm2,%ymm3,%ymm12
487  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
488  DB  197,52,89,230                       ; vmulps        %ymm6,%ymm9,%ymm12
489  DB  196,65,68,93,219                    ; vminps        %ymm11,%ymm7,%ymm11
490  DB  196,66,101,168,218                  ; vfmadd213ps   %ymm10,%ymm3,%ymm11
491  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
492  DB  197,28,88,226                       ; vaddps        %ymm2,%ymm12,%ymm12
493  DB  197,236,194,211,0                   ; vcmpeqps      %ymm3,%ymm2,%ymm2
494  DB  196,195,37,74,212,32                ; vblendvps     %ymm2,%ymm12,%ymm11,%ymm2
495  DB  196,65,76,194,192,0                 ; vcmpeqps      %ymm8,%ymm6,%ymm8
496  DB  197,44,88,214                       ; vaddps        %ymm6,%ymm10,%ymm10
497  DB  196,195,109,74,210,128              ; vblendvps     %ymm8,%ymm10,%ymm2,%ymm2
498  DB  196,194,69,184,217                  ; vfmadd231ps   %ymm9,%ymm7,%ymm3
499  DB  72,173                              ; lods          %ds:(%rsi),%rax
500  DB  255,224                             ; jmpq          *%rax
501
502PUBLIC _sk_hardlight_hsw
503_sk_hardlight_hsw LABEL PROC
504  DB  196,98,125,24,5,201,54,0,0          ; vbroadcastss  0x36c9(%rip),%ymm8        # 3db8 <_sk_callback_hsw+0x159>
505  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
506  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
507  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
508  DB  196,98,61,184,220                   ; vfmadd231ps   %ymm4,%ymm8,%ymm11
509  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
510  DB  197,52,194,227,2                    ; vcmpleps      %ymm3,%ymm9,%ymm12
511  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
512  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
513  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
514  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
515  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
516  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
517  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
518  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
519  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
520  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
521  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
522  DB  196,98,61,184,221                   ; vfmadd231ps   %ymm5,%ymm8,%ymm11
523  DB  197,116,88,225                      ; vaddps        %ymm1,%ymm1,%ymm12
524  DB  197,28,194,227,2                    ; vcmpleps      %ymm3,%ymm12,%ymm12
525  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
526  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
527  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
528  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
529  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
530  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
531  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
532  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
533  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
534  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
535  DB  196,98,61,184,214                   ; vfmadd231ps   %ymm6,%ymm8,%ymm10
536  DB  197,108,88,218                      ; vaddps        %ymm2,%ymm2,%ymm11
537  DB  197,36,194,219,2                    ; vcmpleps      %ymm3,%ymm11,%ymm11
538  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
539  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
540  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
541  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
542  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
543  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
544  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
545  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
546  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
547  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
548  DB  72,173                              ; lods          %ds:(%rsi),%rax
549  DB  255,224                             ; jmpq          *%rax
550
551PUBLIC _sk_overlay_hsw
552_sk_overlay_hsw LABEL PROC
553  DB  196,98,125,24,5,1,54,0,0            ; vbroadcastss  0x3601(%rip),%ymm8        # 3dbc <_sk_callback_hsw+0x15d>
554  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
555  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
556  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
557  DB  196,98,61,184,220                   ; vfmadd231ps   %ymm4,%ymm8,%ymm11
558  DB  197,92,88,204                       ; vaddps        %ymm4,%ymm4,%ymm9
559  DB  197,52,194,231,2                    ; vcmpleps      %ymm7,%ymm9,%ymm12
560  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
561  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
562  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
563  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
564  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
565  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
566  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
567  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
568  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
569  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
570  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
571  DB  196,98,61,184,221                   ; vfmadd231ps   %ymm5,%ymm8,%ymm11
572  DB  197,84,88,229                       ; vaddps        %ymm5,%ymm5,%ymm12
573  DB  197,28,194,231,2                    ; vcmpleps      %ymm7,%ymm12,%ymm12
574  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
575  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
576  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
577  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
578  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
579  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
580  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
581  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
582  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
583  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
584  DB  196,98,61,184,214                   ; vfmadd231ps   %ymm6,%ymm8,%ymm10
585  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
586  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
587  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
588  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
589  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
590  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
591  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
592  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
593  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
594  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
595  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
596  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
597  DB  72,173                              ; lods          %ds:(%rsi),%rax
598  DB  255,224                             ; jmpq          *%rax
599
600PUBLIC _sk_softlight_hsw
601_sk_softlight_hsw LABEL PROC
602  DB  72,131,236,88                       ; sub           $0x58,%rsp
603  DB  197,252,17,84,36,32                 ; vmovups       %ymm2,0x20(%rsp)
604  DB  197,252,40,209                      ; vmovaps       %ymm1,%ymm2
605  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
606  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
607  DB  197,52,194,215,1                    ; vcmpltps      %ymm7,%ymm9,%ymm10
608  DB  197,92,94,199                       ; vdivps        %ymm7,%ymm4,%ymm8
609  DB  196,67,53,74,232,160                ; vblendvps     %ymm10,%ymm8,%ymm9,%ymm13
610  DB  196,65,20,88,197                    ; vaddps        %ymm13,%ymm13,%ymm8
611  DB  196,65,60,88,192                    ; vaddps        %ymm8,%ymm8,%ymm8
612  DB  196,66,61,168,192                   ; vfmadd213ps   %ymm8,%ymm8,%ymm8
613  DB  196,98,125,24,29,8,53,0,0           ; vbroadcastss  0x3508(%rip),%ymm11        # 3dc4 <_sk_callback_hsw+0x165>
614  DB  196,65,20,88,227                    ; vaddps        %ymm11,%ymm13,%ymm12
615  DB  196,65,28,89,192                    ; vmulps        %ymm8,%ymm12,%ymm8
616  DB  196,98,125,24,37,249,52,0,0         ; vbroadcastss  0x34f9(%rip),%ymm12        # 3dc8 <_sk_callback_hsw+0x169>
617  DB  196,66,21,184,196                   ; vfmadd231ps   %ymm12,%ymm13,%ymm8
618  DB  196,65,124,82,245                   ; vrsqrtps      %ymm13,%ymm14
619  DB  196,65,124,83,246                   ; vrcpps        %ymm14,%ymm14
620  DB  196,65,12,92,245                    ; vsubps        %ymm13,%ymm14,%ymm14
621  DB  197,92,88,252                       ; vaddps        %ymm4,%ymm4,%ymm15
622  DB  196,65,4,88,255                     ; vaddps        %ymm15,%ymm15,%ymm15
623  DB  197,4,194,255,2                     ; vcmpleps      %ymm7,%ymm15,%ymm15
624  DB  196,67,13,74,240,240                ; vblendvps     %ymm15,%ymm8,%ymm14,%ymm14
625  DB  197,116,88,249                      ; vaddps        %ymm1,%ymm1,%ymm15
626  DB  196,98,125,24,5,188,52,0,0          ; vbroadcastss  0x34bc(%rip),%ymm8        # 3dc0 <_sk_callback_hsw+0x161>
627  DB  196,65,60,92,237                    ; vsubps        %ymm13,%ymm8,%ymm13
628  DB  197,132,92,195                      ; vsubps        %ymm3,%ymm15,%ymm0
629  DB  196,98,125,168,235                  ; vfmadd213ps   %ymm3,%ymm0,%ymm13
630  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
631  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
632  DB  197,20,89,236                       ; vmulps        %ymm4,%ymm13,%ymm13
633  DB  196,226,101,184,196                 ; vfmadd231ps   %ymm4,%ymm3,%ymm0
634  DB  197,4,194,243,2                     ; vcmpleps      %ymm3,%ymm15,%ymm14
635  DB  196,195,125,74,197,224              ; vblendvps     %ymm14,%ymm13,%ymm0,%ymm0
636  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
637  DB  197,212,94,199                      ; vdivps        %ymm7,%ymm5,%ymm0
638  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
639  DB  197,124,88,240                      ; vaddps        %ymm0,%ymm0,%ymm14
640  DB  196,65,12,88,246                    ; vaddps        %ymm14,%ymm14,%ymm14
641  DB  196,66,13,168,246                   ; vfmadd213ps   %ymm14,%ymm14,%ymm14
642  DB  196,65,124,88,251                   ; vaddps        %ymm11,%ymm0,%ymm15
643  DB  196,65,4,89,246                     ; vmulps        %ymm14,%ymm15,%ymm14
644  DB  196,66,125,184,244                  ; vfmadd231ps   %ymm12,%ymm0,%ymm14
645  DB  197,124,82,248                      ; vrsqrtps      %ymm0,%ymm15
646  DB  196,65,124,83,255                   ; vrcpps        %ymm15,%ymm15
647  DB  197,4,92,248                        ; vsubps        %ymm0,%ymm15,%ymm15
648  DB  197,84,88,237                       ; vaddps        %ymm5,%ymm5,%ymm13
649  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
650  DB  197,20,194,239,2                    ; vcmpleps      %ymm7,%ymm13,%ymm13
651  DB  196,67,5,74,238,208                 ; vblendvps     %ymm13,%ymm14,%ymm15,%ymm13
652  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
653  DB  197,108,88,242                      ; vaddps        %ymm2,%ymm2,%ymm14
654  DB  197,12,92,251                       ; vsubps        %ymm3,%ymm14,%ymm15
655  DB  196,226,5,168,195                   ; vfmadd213ps   %ymm3,%ymm15,%ymm0
656  DB  197,4,89,255                        ; vmulps        %ymm7,%ymm15,%ymm15
657  DB  196,65,4,89,237                     ; vmulps        %ymm13,%ymm15,%ymm13
658  DB  197,252,89,197                      ; vmulps        %ymm5,%ymm0,%ymm0
659  DB  196,98,101,184,237                  ; vfmadd231ps   %ymm5,%ymm3,%ymm13
660  DB  197,12,194,243,2                    ; vcmpleps      %ymm3,%ymm14,%ymm14
661  DB  196,99,21,74,240,224                ; vblendvps     %ymm14,%ymm0,%ymm13,%ymm14
662  DB  197,204,94,199                      ; vdivps        %ymm7,%ymm6,%ymm0
663  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
664  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
665  DB  196,65,52,88,201                    ; vaddps        %ymm9,%ymm9,%ymm9
666  DB  196,66,53,168,201                   ; vfmadd213ps   %ymm9,%ymm9,%ymm9
667  DB  196,65,124,88,211                   ; vaddps        %ymm11,%ymm0,%ymm10
668  DB  196,65,44,89,201                    ; vmulps        %ymm9,%ymm10,%ymm9
669  DB  196,66,125,184,204                  ; vfmadd231ps   %ymm12,%ymm0,%ymm9
670  DB  197,124,82,208                      ; vrsqrtps      %ymm0,%ymm10
671  DB  196,65,124,83,210                   ; vrcpps        %ymm10,%ymm10
672  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
673  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
674  DB  196,65,36,88,219                    ; vaddps        %ymm11,%ymm11,%ymm11
675  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
676  DB  196,67,45,74,201,176                ; vblendvps     %ymm11,%ymm9,%ymm10,%ymm9
677  DB  197,124,16,100,36,32                ; vmovups       0x20(%rsp),%ymm12
678  DB  196,65,28,88,212                    ; vaddps        %ymm12,%ymm12,%ymm10
679  DB  197,44,92,219                       ; vsubps        %ymm3,%ymm10,%ymm11
680  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
681  DB  196,226,37,168,195                  ; vfmadd213ps   %ymm3,%ymm11,%ymm0
682  DB  197,36,89,223                       ; vmulps        %ymm7,%ymm11,%ymm11
683  DB  196,65,36,89,201                    ; vmulps        %ymm9,%ymm11,%ymm9
684  DB  197,252,89,198                      ; vmulps        %ymm6,%ymm0,%ymm0
685  DB  196,98,101,184,206                  ; vfmadd231ps   %ymm6,%ymm3,%ymm9
686  DB  197,44,194,211,2                    ; vcmpleps      %ymm3,%ymm10,%ymm10
687  DB  196,99,53,74,200,160                ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm9
688  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
689  DB  197,172,89,193                      ; vmulps        %ymm1,%ymm10,%ymm0
690  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
691  DB  196,226,61,184,196                  ; vfmadd231ps   %ymm4,%ymm8,%ymm0
692  DB  197,252,88,4,36                     ; vaddps        (%rsp),%ymm0,%ymm0
693  DB  197,172,89,202                      ; vmulps        %ymm2,%ymm10,%ymm1
694  DB  196,226,61,184,205                  ; vfmadd231ps   %ymm5,%ymm8,%ymm1
695  DB  196,193,116,88,206                  ; vaddps        %ymm14,%ymm1,%ymm1
696  DB  196,193,44,89,212                   ; vmulps        %ymm12,%ymm10,%ymm2
697  DB  196,226,61,184,214                  ; vfmadd231ps   %ymm6,%ymm8,%ymm2
698  DB  196,193,108,88,209                  ; vaddps        %ymm9,%ymm2,%ymm2
699  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
700  DB  72,173                              ; lods          %ds:(%rsi),%rax
701  DB  72,131,196,88                       ; add           $0x58,%rsp
702  DB  255,224                             ; jmpq          *%rax
703
704PUBLIC _sk_clamp_0_hsw
705_sk_clamp_0_hsw LABEL PROC
706  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
707  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
708  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
709  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
710  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
711  DB  72,173                              ; lods          %ds:(%rsi),%rax
712  DB  255,224                             ; jmpq          *%rax
713
714PUBLIC _sk_clamp_1_hsw
715_sk_clamp_1_hsw LABEL PROC
716  DB  196,98,125,24,5,63,51,0,0           ; vbroadcastss  0x333f(%rip),%ymm8        # 3dcc <_sk_callback_hsw+0x16d>
717  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
718  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
719  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
720  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
721  DB  72,173                              ; lods          %ds:(%rsi),%rax
722  DB  255,224                             ; jmpq          *%rax
723
724PUBLIC _sk_clamp_a_hsw
725_sk_clamp_a_hsw LABEL PROC
726  DB  196,98,125,24,5,34,51,0,0           ; vbroadcastss  0x3322(%rip),%ymm8        # 3dd0 <_sk_callback_hsw+0x171>
727  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
728  DB  197,252,93,195                      ; vminps        %ymm3,%ymm0,%ymm0
729  DB  197,244,93,203                      ; vminps        %ymm3,%ymm1,%ymm1
730  DB  197,236,93,211                      ; vminps        %ymm3,%ymm2,%ymm2
731  DB  72,173                              ; lods          %ds:(%rsi),%rax
732  DB  255,224                             ; jmpq          *%rax
733
734PUBLIC _sk_set_rgb_hsw
735_sk_set_rgb_hsw LABEL PROC
736  DB  72,173                              ; lods          %ds:(%rsi),%rax
737  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
738  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
739  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
740  DB  72,173                              ; lods          %ds:(%rsi),%rax
741  DB  255,224                             ; jmpq          *%rax
742
743PUBLIC _sk_swap_rb_hsw
744_sk_swap_rb_hsw LABEL PROC
745  DB  197,124,40,192                      ; vmovaps       %ymm0,%ymm8
746  DB  72,173                              ; lods          %ds:(%rsi),%rax
747  DB  197,252,40,194                      ; vmovaps       %ymm2,%ymm0
748  DB  197,124,41,194                      ; vmovaps       %ymm8,%ymm2
749  DB  255,224                             ; jmpq          *%rax
750
751PUBLIC _sk_swap_hsw
752_sk_swap_hsw LABEL PROC
753  DB  197,124,40,195                      ; vmovaps       %ymm3,%ymm8
754  DB  197,124,40,202                      ; vmovaps       %ymm2,%ymm9
755  DB  197,124,40,209                      ; vmovaps       %ymm1,%ymm10
756  DB  197,124,40,216                      ; vmovaps       %ymm0,%ymm11
757  DB  72,173                              ; lods          %ds:(%rsi),%rax
758  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
759  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
760  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
761  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
762  DB  197,124,41,220                      ; vmovaps       %ymm11,%ymm4
763  DB  197,124,41,213                      ; vmovaps       %ymm10,%ymm5
764  DB  197,124,41,206                      ; vmovaps       %ymm9,%ymm6
765  DB  197,124,41,199                      ; vmovaps       %ymm8,%ymm7
766  DB  255,224                             ; jmpq          *%rax
767
768PUBLIC _sk_move_src_dst_hsw
769_sk_move_src_dst_hsw LABEL PROC
770  DB  72,173                              ; lods          %ds:(%rsi),%rax
771  DB  197,252,40,224                      ; vmovaps       %ymm0,%ymm4
772  DB  197,252,40,233                      ; vmovaps       %ymm1,%ymm5
773  DB  197,252,40,242                      ; vmovaps       %ymm2,%ymm6
774  DB  197,252,40,251                      ; vmovaps       %ymm3,%ymm7
775  DB  255,224                             ; jmpq          *%rax
776
777PUBLIC _sk_move_dst_src_hsw
778_sk_move_dst_src_hsw LABEL PROC
779  DB  72,173                              ; lods          %ds:(%rsi),%rax
780  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
781  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
782  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
783  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
784  DB  255,224                             ; jmpq          *%rax
785
786PUBLIC _sk_premul_hsw
787_sk_premul_hsw LABEL PROC
788  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
789  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
790  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
791  DB  72,173                              ; lods          %ds:(%rsi),%rax
792  DB  255,224                             ; jmpq          *%rax
793
794PUBLIC _sk_unpremul_hsw
795_sk_unpremul_hsw LABEL PROC
796  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
797  DB  196,65,100,194,200,0                ; vcmpeqps      %ymm8,%ymm3,%ymm9
798  DB  196,98,125,24,21,106,50,0,0         ; vbroadcastss  0x326a(%rip),%ymm10        # 3dd4 <_sk_callback_hsw+0x175>
799  DB  197,44,94,211                       ; vdivps        %ymm3,%ymm10,%ymm10
800  DB  196,67,45,74,192,144                ; vblendvps     %ymm9,%ymm8,%ymm10,%ymm8
801  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
802  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
803  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
804  DB  72,173                              ; lods          %ds:(%rsi),%rax
805  DB  255,224                             ; jmpq          *%rax
806
807PUBLIC _sk_from_srgb_hsw
808_sk_from_srgb_hsw LABEL PROC
809  DB  196,98,125,24,5,75,50,0,0           ; vbroadcastss  0x324b(%rip),%ymm8        # 3dd8 <_sk_callback_hsw+0x179>
810  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
811  DB  197,124,89,208                      ; vmulps        %ymm0,%ymm0,%ymm10
812  DB  196,98,125,24,29,61,50,0,0          ; vbroadcastss  0x323d(%rip),%ymm11        # 3ddc <_sk_callback_hsw+0x17d>
813  DB  196,98,125,24,37,56,50,0,0          ; vbroadcastss  0x3238(%rip),%ymm12        # 3de0 <_sk_callback_hsw+0x181>
814  DB  196,65,124,40,236                   ; vmovaps       %ymm12,%ymm13
815  DB  196,66,125,168,235                  ; vfmadd213ps   %ymm11,%ymm0,%ymm13
816  DB  196,98,125,24,53,41,50,0,0          ; vbroadcastss  0x3229(%rip),%ymm14        # 3de4 <_sk_callback_hsw+0x185>
817  DB  196,66,45,168,238                   ; vfmadd213ps   %ymm14,%ymm10,%ymm13
818  DB  196,98,125,24,21,31,50,0,0          ; vbroadcastss  0x321f(%rip),%ymm10        # 3de8 <_sk_callback_hsw+0x189>
819  DB  196,193,124,194,194,1               ; vcmpltps      %ymm10,%ymm0,%ymm0
820  DB  196,195,21,74,193,0                 ; vblendvps     %ymm0,%ymm9,%ymm13,%ymm0
821  DB  196,65,116,89,200                   ; vmulps        %ymm8,%ymm1,%ymm9
822  DB  197,116,89,233                      ; vmulps        %ymm1,%ymm1,%ymm13
823  DB  196,65,124,40,252                   ; vmovaps       %ymm12,%ymm15
824  DB  196,66,117,168,251                  ; vfmadd213ps   %ymm11,%ymm1,%ymm15
825  DB  196,66,21,168,254                   ; vfmadd213ps   %ymm14,%ymm13,%ymm15
826  DB  196,193,116,194,202,1               ; vcmpltps      %ymm10,%ymm1,%ymm1
827  DB  196,195,5,74,201,16                 ; vblendvps     %ymm1,%ymm9,%ymm15,%ymm1
828  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
829  DB  197,108,89,202                      ; vmulps        %ymm2,%ymm2,%ymm9
830  DB  196,66,109,168,227                  ; vfmadd213ps   %ymm11,%ymm2,%ymm12
831  DB  196,66,53,168,230                   ; vfmadd213ps   %ymm14,%ymm9,%ymm12
832  DB  196,193,108,194,210,1               ; vcmpltps      %ymm10,%ymm2,%ymm2
833  DB  196,195,29,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm12,%ymm2
834  DB  72,173                              ; lods          %ds:(%rsi),%rax
835  DB  255,224                             ; jmpq          *%rax
836
837PUBLIC _sk_to_srgb_hsw
838_sk_to_srgb_hsw LABEL PROC
839  DB  197,124,82,192                      ; vrsqrtps      %ymm0,%ymm8
840  DB  196,65,124,83,200                   ; vrcpps        %ymm8,%ymm9
841  DB  196,65,124,82,208                   ; vrsqrtps      %ymm8,%ymm10
842  DB  196,98,125,24,5,185,49,0,0          ; vbroadcastss  0x31b9(%rip),%ymm8        # 3dec <_sk_callback_hsw+0x18d>
843  DB  196,65,124,89,216                   ; vmulps        %ymm8,%ymm0,%ymm11
844  DB  196,98,125,24,37,175,49,0,0         ; vbroadcastss  0x31af(%rip),%ymm12        # 3df0 <_sk_callback_hsw+0x191>
845  DB  196,98,125,24,45,170,49,0,0         ; vbroadcastss  0x31aa(%rip),%ymm13        # 3df4 <_sk_callback_hsw+0x195>
846  DB  196,66,21,168,204                   ; vfmadd213ps   %ymm12,%ymm13,%ymm9
847  DB  196,98,125,24,53,160,49,0,0         ; vbroadcastss  0x31a0(%rip),%ymm14        # 3df8 <_sk_callback_hsw+0x199>
848  DB  196,66,13,184,202                   ; vfmadd231ps   %ymm10,%ymm14,%ymm9
849  DB  196,98,125,24,21,150,49,0,0         ; vbroadcastss  0x3196(%rip),%ymm10        # 3dfc <_sk_callback_hsw+0x19d>
850  DB  196,65,44,93,201                    ; vminps        %ymm9,%ymm10,%ymm9
851  DB  196,98,125,24,61,140,49,0,0         ; vbroadcastss  0x318c(%rip),%ymm15        # 3e00 <_sk_callback_hsw+0x1a1>
852  DB  196,193,124,194,199,1               ; vcmpltps      %ymm15,%ymm0,%ymm0
853  DB  196,195,53,74,195,0                 ; vblendvps     %ymm0,%ymm11,%ymm9,%ymm0
854  DB  197,124,82,201                      ; vrsqrtps      %ymm1,%ymm9
855  DB  196,65,124,83,217                   ; vrcpps        %ymm9,%ymm11
856  DB  196,65,124,82,201                   ; vrsqrtps      %ymm9,%ymm9
857  DB  196,66,21,168,220                   ; vfmadd213ps   %ymm12,%ymm13,%ymm11
858  DB  196,66,13,184,217                   ; vfmadd231ps   %ymm9,%ymm14,%ymm11
859  DB  196,65,116,89,200                   ; vmulps        %ymm8,%ymm1,%ymm9
860  DB  196,65,44,93,219                    ; vminps        %ymm11,%ymm10,%ymm11
861  DB  196,193,116,194,207,1               ; vcmpltps      %ymm15,%ymm1,%ymm1
862  DB  196,195,37,74,201,16                ; vblendvps     %ymm1,%ymm9,%ymm11,%ymm1
863  DB  197,124,82,202                      ; vrsqrtps      %ymm2,%ymm9
864  DB  196,65,124,83,217                   ; vrcpps        %ymm9,%ymm11
865  DB  196,66,21,168,220                   ; vfmadd213ps   %ymm12,%ymm13,%ymm11
866  DB  196,65,124,82,201                   ; vrsqrtps      %ymm9,%ymm9
867  DB  196,66,13,184,217                   ; vfmadd231ps   %ymm9,%ymm14,%ymm11
868  DB  196,65,44,93,203                    ; vminps        %ymm11,%ymm10,%ymm9
869  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
870  DB  196,193,108,194,215,1               ; vcmpltps      %ymm15,%ymm2,%ymm2
871  DB  196,195,53,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm9,%ymm2
872  DB  72,173                              ; lods          %ds:(%rsi),%rax
873  DB  255,224                             ; jmpq          *%rax
874
875PUBLIC _sk_rgb_to_hsl_hsw
876_sk_rgb_to_hsl_hsw LABEL PROC
877  DB  197,124,95,193                      ; vmaxps        %ymm1,%ymm0,%ymm8
878  DB  197,60,95,194                       ; vmaxps        %ymm2,%ymm8,%ymm8
879  DB  197,124,93,201                      ; vminps        %ymm1,%ymm0,%ymm9
880  DB  197,52,93,202                       ; vminps        %ymm2,%ymm9,%ymm9
881  DB  196,65,60,92,209                    ; vsubps        %ymm9,%ymm8,%ymm10
882  DB  196,98,125,24,29,6,49,0,0           ; vbroadcastss  0x3106(%rip),%ymm11        # 3e04 <_sk_callback_hsw+0x1a5>
883  DB  196,65,36,94,218                    ; vdivps        %ymm10,%ymm11,%ymm11
884  DB  197,116,92,226                      ; vsubps        %ymm2,%ymm1,%ymm12
885  DB  197,116,194,234,1                   ; vcmpltps      %ymm2,%ymm1,%ymm13
886  DB  196,98,125,24,53,243,48,0,0         ; vbroadcastss  0x30f3(%rip),%ymm14        # 3e08 <_sk_callback_hsw+0x1a9>
887  DB  196,65,4,87,255                     ; vxorps        %ymm15,%ymm15,%ymm15
888  DB  196,67,5,74,238,208                 ; vblendvps     %ymm13,%ymm14,%ymm15,%ymm13
889  DB  196,66,37,168,229                   ; vfmadd213ps   %ymm13,%ymm11,%ymm12
890  DB  197,236,92,208                      ; vsubps        %ymm0,%ymm2,%ymm2
891  DB  197,124,92,233                      ; vsubps        %ymm1,%ymm0,%ymm13
892  DB  196,98,125,24,53,218,48,0,0         ; vbroadcastss  0x30da(%rip),%ymm14        # 3e10 <_sk_callback_hsw+0x1b1>
893  DB  196,66,37,168,238                   ; vfmadd213ps   %ymm14,%ymm11,%ymm13
894  DB  196,98,125,24,53,200,48,0,0         ; vbroadcastss  0x30c8(%rip),%ymm14        # 3e0c <_sk_callback_hsw+0x1ad>
895  DB  196,194,37,168,214                  ; vfmadd213ps   %ymm14,%ymm11,%ymm2
896  DB  197,188,194,201,0                   ; vcmpeqps      %ymm1,%ymm8,%ymm1
897  DB  196,227,21,74,202,16                ; vblendvps     %ymm1,%ymm2,%ymm13,%ymm1
898  DB  197,188,194,192,0                   ; vcmpeqps      %ymm0,%ymm8,%ymm0
899  DB  196,195,117,74,196,0                ; vblendvps     %ymm0,%ymm12,%ymm1,%ymm0
900  DB  196,193,60,88,201                   ; vaddps        %ymm9,%ymm8,%ymm1
901  DB  196,98,125,24,29,171,48,0,0         ; vbroadcastss  0x30ab(%rip),%ymm11        # 3e18 <_sk_callback_hsw+0x1b9>
902  DB  196,193,116,89,211                  ; vmulps        %ymm11,%ymm1,%ymm2
903  DB  197,36,194,218,1                    ; vcmpltps      %ymm2,%ymm11,%ymm11
904  DB  196,65,12,92,224                    ; vsubps        %ymm8,%ymm14,%ymm12
905  DB  196,65,28,92,225                    ; vsubps        %ymm9,%ymm12,%ymm12
906  DB  196,195,117,74,204,176              ; vblendvps     %ymm11,%ymm12,%ymm1,%ymm1
907  DB  196,65,60,194,193,0                 ; vcmpeqps      %ymm9,%ymm8,%ymm8
908  DB  197,172,94,201                      ; vdivps        %ymm1,%ymm10,%ymm1
909  DB  196,195,125,74,199,128              ; vblendvps     %ymm8,%ymm15,%ymm0,%ymm0
910  DB  196,195,117,74,207,128              ; vblendvps     %ymm8,%ymm15,%ymm1,%ymm1
911  DB  196,98,125,24,5,110,48,0,0          ; vbroadcastss  0x306e(%rip),%ymm8        # 3e14 <_sk_callback_hsw+0x1b5>
912  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
913  DB  72,173                              ; lods          %ds:(%rsi),%rax
914  DB  255,224                             ; jmpq          *%rax
915
916PUBLIC _sk_hsl_to_rgb_hsw
917_sk_hsl_to_rgb_hsw LABEL PROC
918  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
919  DB  197,252,17,188,36,128,0,0,0         ; vmovups       %ymm7,0x80(%rsp)
920  DB  197,252,17,116,36,96                ; vmovups       %ymm6,0x60(%rsp)
921  DB  197,252,17,108,36,64                ; vmovups       %ymm5,0x40(%rsp)
922  DB  197,252,17,100,36,32                ; vmovups       %ymm4,0x20(%rsp)
923  DB  197,252,17,28,36                    ; vmovups       %ymm3,(%rsp)
924  DB  197,252,40,233                      ; vmovaps       %ymm1,%ymm5
925  DB  197,252,40,224                      ; vmovaps       %ymm0,%ymm4
926  DB  196,98,125,24,5,53,48,0,0           ; vbroadcastss  0x3035(%rip),%ymm8        # 3e1c <_sk_callback_hsw+0x1bd>
927  DB  197,60,194,202,2                    ; vcmpleps      %ymm2,%ymm8,%ymm9
928  DB  197,84,89,210                       ; vmulps        %ymm2,%ymm5,%ymm10
929  DB  196,65,84,92,218                    ; vsubps        %ymm10,%ymm5,%ymm11
930  DB  196,67,45,74,203,144                ; vblendvps     %ymm9,%ymm11,%ymm10,%ymm9
931  DB  197,52,88,210                       ; vaddps        %ymm2,%ymm9,%ymm10
932  DB  196,98,125,24,13,24,48,0,0          ; vbroadcastss  0x3018(%rip),%ymm9        # 3e20 <_sk_callback_hsw+0x1c1>
933  DB  196,66,109,170,202                  ; vfmsub213ps   %ymm10,%ymm2,%ymm9
934  DB  196,98,125,24,29,14,48,0,0          ; vbroadcastss  0x300e(%rip),%ymm11        # 3e24 <_sk_callback_hsw+0x1c5>
935  DB  196,65,92,88,219                    ; vaddps        %ymm11,%ymm4,%ymm11
936  DB  196,67,125,8,227,1                  ; vroundps      $0x1,%ymm11,%ymm12
937  DB  196,65,36,92,252                    ; vsubps        %ymm12,%ymm11,%ymm15
938  DB  196,65,44,92,217                    ; vsubps        %ymm9,%ymm10,%ymm11
939  DB  196,98,125,24,45,248,47,0,0         ; vbroadcastss  0x2ff8(%rip),%ymm13        # 3e2c <_sk_callback_hsw+0x1cd>
940  DB  196,193,4,89,197                    ; vmulps        %ymm13,%ymm15,%ymm0
941  DB  196,98,125,24,53,238,47,0,0         ; vbroadcastss  0x2fee(%rip),%ymm14        # 3e30 <_sk_callback_hsw+0x1d1>
942  DB  197,12,92,224                       ; vsubps        %ymm0,%ymm14,%ymm12
943  DB  196,66,37,168,225                   ; vfmadd213ps   %ymm9,%ymm11,%ymm12
944  DB  196,226,125,24,29,212,47,0,0        ; vbroadcastss  0x2fd4(%rip),%ymm3        # 3e28 <_sk_callback_hsw+0x1c9>
945  DB  196,193,100,194,255,2               ; vcmpleps      %ymm15,%ymm3,%ymm7
946  DB  196,195,29,74,249,112               ; vblendvps     %ymm7,%ymm9,%ymm12,%ymm7
947  DB  196,65,60,194,231,2                 ; vcmpleps      %ymm15,%ymm8,%ymm12
948  DB  196,227,45,74,255,192               ; vblendvps     %ymm12,%ymm7,%ymm10,%ymm7
949  DB  196,98,125,24,37,191,47,0,0         ; vbroadcastss  0x2fbf(%rip),%ymm12        # 3e34 <_sk_callback_hsw+0x1d5>
950  DB  196,65,28,194,255,2                 ; vcmpleps      %ymm15,%ymm12,%ymm15
951  DB  196,194,37,168,193                  ; vfmadd213ps   %ymm9,%ymm11,%ymm0
952  DB  196,99,125,74,255,240               ; vblendvps     %ymm15,%ymm7,%ymm0,%ymm15
953  DB  196,227,125,8,196,1                 ; vroundps      $0x1,%ymm4,%ymm0
954  DB  197,220,92,192                      ; vsubps        %ymm0,%ymm4,%ymm0
955  DB  196,193,124,89,253                  ; vmulps        %ymm13,%ymm0,%ymm7
956  DB  197,140,92,207                      ; vsubps        %ymm7,%ymm14,%ymm1
957  DB  196,194,37,168,201                  ; vfmadd213ps   %ymm9,%ymm11,%ymm1
958  DB  197,228,194,240,2                   ; vcmpleps      %ymm0,%ymm3,%ymm6
959  DB  196,195,117,74,201,96               ; vblendvps     %ymm6,%ymm9,%ymm1,%ymm1
960  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
961  DB  196,227,45,74,201,96                ; vblendvps     %ymm6,%ymm1,%ymm10,%ymm1
962  DB  197,156,194,192,2                   ; vcmpleps      %ymm0,%ymm12,%ymm0
963  DB  196,194,37,168,249                  ; vfmadd213ps   %ymm9,%ymm11,%ymm7
964  DB  196,227,69,74,201,0                 ; vblendvps     %ymm0,%ymm1,%ymm7,%ymm1
965  DB  196,226,125,24,5,107,47,0,0         ; vbroadcastss  0x2f6b(%rip),%ymm0        # 3e38 <_sk_callback_hsw+0x1d9>
966  DB  197,220,88,192                      ; vaddps        %ymm0,%ymm4,%ymm0
967  DB  196,227,125,8,224,1                 ; vroundps      $0x1,%ymm0,%ymm4
968  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
969  DB  197,228,194,216,2                   ; vcmpleps      %ymm0,%ymm3,%ymm3
970  DB  196,193,124,89,229                  ; vmulps        %ymm13,%ymm0,%ymm4
971  DB  197,140,92,244                      ; vsubps        %ymm4,%ymm14,%ymm6
972  DB  196,194,37,168,241                  ; vfmadd213ps   %ymm9,%ymm11,%ymm6
973  DB  196,195,77,74,217,48                ; vblendvps     %ymm3,%ymm9,%ymm6,%ymm3
974  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
975  DB  196,227,45,74,219,96                ; vblendvps     %ymm6,%ymm3,%ymm10,%ymm3
976  DB  196,98,37,184,204                   ; vfmadd231ps   %ymm4,%ymm11,%ymm9
977  DB  197,156,194,192,2                   ; vcmpleps      %ymm0,%ymm12,%ymm0
978  DB  196,227,53,74,219,0                 ; vblendvps     %ymm0,%ymm3,%ymm9,%ymm3
979  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
980  DB  197,212,194,224,0                   ; vcmpeqps      %ymm0,%ymm5,%ymm4
981  DB  196,227,5,74,194,64                 ; vblendvps     %ymm4,%ymm2,%ymm15,%ymm0
982  DB  196,227,117,74,202,64               ; vblendvps     %ymm4,%ymm2,%ymm1,%ymm1
983  DB  196,227,101,74,210,64               ; vblendvps     %ymm4,%ymm2,%ymm3,%ymm2
984  DB  72,173                              ; lods          %ds:(%rsi),%rax
985  DB  197,252,16,28,36                    ; vmovups       (%rsp),%ymm3
986  DB  197,252,16,100,36,32                ; vmovups       0x20(%rsp),%ymm4
987  DB  197,252,16,108,36,64                ; vmovups       0x40(%rsp),%ymm5
988  DB  197,252,16,116,36,96                ; vmovups       0x60(%rsp),%ymm6
989  DB  197,252,16,188,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm7
990  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
991  DB  255,224                             ; jmpq          *%rax
992
993PUBLIC _sk_scale_1_float_hsw
994_sk_scale_1_float_hsw LABEL PROC
995  DB  72,173                              ; lods          %ds:(%rsi),%rax
996  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
997  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
998  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
999  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1000  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
1001  DB  72,173                              ; lods          %ds:(%rsi),%rax
1002  DB  255,224                             ; jmpq          *%rax
1003
1004PUBLIC _sk_scale_u8_hsw
1005_sk_scale_u8_hsw LABEL PROC
1006  DB  73,137,200                          ; mov           %rcx,%r8
1007  DB  72,173                              ; lods          %ds:(%rsi),%rax
1008  DB  72,139,0                            ; mov           (%rax),%rax
1009  DB  72,1,248                            ; add           %rdi,%rax
1010  DB  77,133,192                          ; test          %r8,%r8
1011  DB  117,51                              ; jne           fb3 <_sk_scale_u8_hsw+0x43>
1012  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
1013  DB  196,66,125,49,192                   ; vpmovzxbd     %xmm8,%ymm8
1014  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1015  DB  196,98,125,24,13,165,46,0,0         ; vbroadcastss  0x2ea5(%rip),%ymm9        # 3e3c <_sk_callback_hsw+0x1dd>
1016  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
1017  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1018  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1019  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1020  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
1021  DB  72,173                              ; lods          %ds:(%rsi),%rax
1022  DB  76,137,193                          ; mov           %r8,%rcx
1023  DB  255,224                             ; jmpq          *%rax
1024  DB  49,201                              ; xor           %ecx,%ecx
1025  DB  77,137,194                          ; mov           %r8,%r10
1026  DB  69,49,201                           ; xor           %r9d,%r9d
1027  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
1028  DB  72,255,192                          ; inc           %rax
1029  DB  73,211,227                          ; shl           %cl,%r11
1030  DB  77,9,217                            ; or            %r11,%r9
1031  DB  72,131,193,8                        ; add           $0x8,%rcx
1032  DB  73,255,202                          ; dec           %r10
1033  DB  117,234                             ; jne           fbb <_sk_scale_u8_hsw+0x4b>
1034  DB  196,65,249,110,193                  ; vmovq         %r9,%xmm8
1035  DB  235,172                             ; jmp           f84 <_sk_scale_u8_hsw+0x14>
1036
1037PUBLIC _sk_lerp_1_float_hsw
1038_sk_lerp_1_float_hsw LABEL PROC
1039  DB  72,173                              ; lods          %ds:(%rsi),%rax
1040  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
1041  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1042  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
1043  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1044  DB  196,226,61,168,205                  ; vfmadd213ps   %ymm5,%ymm8,%ymm1
1045  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1046  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
1047  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
1048  DB  196,226,61,168,223                  ; vfmadd213ps   %ymm7,%ymm8,%ymm3
1049  DB  72,173                              ; lods          %ds:(%rsi),%rax
1050  DB  255,224                             ; jmpq          *%rax
1051
1052PUBLIC _sk_lerp_u8_hsw
1053_sk_lerp_u8_hsw LABEL PROC
1054  DB  73,137,200                          ; mov           %rcx,%r8
1055  DB  72,173                              ; lods          %ds:(%rsi),%rax
1056  DB  72,139,0                            ; mov           (%rax),%rax
1057  DB  72,1,248                            ; add           %rdi,%rax
1058  DB  77,133,192                          ; test          %r8,%r8
1059  DB  117,71                              ; jne           105e <_sk_lerp_u8_hsw+0x57>
1060  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
1061  DB  196,66,125,49,192                   ; vpmovzxbd     %xmm8,%ymm8
1062  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1063  DB  196,98,125,24,13,18,46,0,0          ; vbroadcastss  0x2e12(%rip),%ymm9        # 3e40 <_sk_callback_hsw+0x1e1>
1064  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
1065  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1066  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
1067  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1068  DB  196,226,61,168,205                  ; vfmadd213ps   %ymm5,%ymm8,%ymm1
1069  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1070  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
1071  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
1072  DB  196,226,61,168,223                  ; vfmadd213ps   %ymm7,%ymm8,%ymm3
1073  DB  72,173                              ; lods          %ds:(%rsi),%rax
1074  DB  76,137,193                          ; mov           %r8,%rcx
1075  DB  255,224                             ; jmpq          *%rax
1076  DB  49,201                              ; xor           %ecx,%ecx
1077  DB  77,137,194                          ; mov           %r8,%r10
1078  DB  69,49,201                           ; xor           %r9d,%r9d
1079  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
1080  DB  72,255,192                          ; inc           %rax
1081  DB  73,211,227                          ; shl           %cl,%r11
1082  DB  77,9,217                            ; or            %r11,%r9
1083  DB  72,131,193,8                        ; add           $0x8,%rcx
1084  DB  73,255,202                          ; dec           %r10
1085  DB  117,234                             ; jne           1066 <_sk_lerp_u8_hsw+0x5f>
1086  DB  196,65,249,110,193                  ; vmovq         %r9,%xmm8
1087  DB  235,152                             ; jmp           101b <_sk_lerp_u8_hsw+0x14>
1088
1089PUBLIC _sk_lerp_565_hsw
1090_sk_lerp_565_hsw LABEL PROC
1091  DB  72,173                              ; lods          %ds:(%rsi),%rax
1092  DB  76,139,16                           ; mov           (%rax),%r10
1093  DB  72,133,201                          ; test          %rcx,%rcx
1094  DB  15,133,149,0,0,0                    ; jne           1126 <_sk_lerp_565_hsw+0xa3>
1095  DB  196,193,122,111,28,122              ; vmovdqu       (%r10,%rdi,2),%xmm3
1096  DB  196,226,125,51,219                  ; vpmovzxwd     %xmm3,%ymm3
1097  DB  196,98,125,88,5,159,45,0,0          ; vpbroadcastd  0x2d9f(%rip),%ymm8        # 3e44 <_sk_callback_hsw+0x1e5>
1098  DB  196,65,101,219,192                  ; vpand         %ymm8,%ymm3,%ymm8
1099  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1100  DB  196,98,125,24,13,144,45,0,0         ; vbroadcastss  0x2d90(%rip),%ymm9        # 3e48 <_sk_callback_hsw+0x1e9>
1101  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
1102  DB  196,98,125,88,13,134,45,0,0         ; vpbroadcastd  0x2d86(%rip),%ymm9        # 3e4c <_sk_callback_hsw+0x1ed>
1103  DB  196,65,101,219,201                  ; vpand         %ymm9,%ymm3,%ymm9
1104  DB  196,65,124,91,201                   ; vcvtdq2ps     %ymm9,%ymm9
1105  DB  196,98,125,24,21,119,45,0,0         ; vbroadcastss  0x2d77(%rip),%ymm10        # 3e50 <_sk_callback_hsw+0x1f1>
1106  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
1107  DB  196,98,125,88,21,109,45,0,0         ; vpbroadcastd  0x2d6d(%rip),%ymm10        # 3e54 <_sk_callback_hsw+0x1f5>
1108  DB  196,193,101,219,218                 ; vpand         %ymm10,%ymm3,%ymm3
1109  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1110  DB  196,98,125,24,21,95,45,0,0          ; vbroadcastss  0x2d5f(%rip),%ymm10        # 3e58 <_sk_callback_hsw+0x1f9>
1111  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
1112  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1113  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
1114  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1115  DB  196,226,53,168,205                  ; vfmadd213ps   %ymm5,%ymm9,%ymm1
1116  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1117  DB  196,226,101,168,214                 ; vfmadd213ps   %ymm6,%ymm3,%ymm2
1118  DB  72,173                              ; lods          %ds:(%rsi),%rax
1119  DB  196,226,125,24,29,56,45,0,0         ; vbroadcastss  0x2d38(%rip),%ymm3        # 3e5c <_sk_callback_hsw+0x1fd>
1120  DB  255,224                             ; jmpq          *%rax
1121  DB  65,137,200                          ; mov           %ecx,%r8d
1122  DB  65,128,224,7                        ; and           $0x7,%r8b
1123  DB  197,225,239,219                     ; vpxor         %xmm3,%xmm3,%xmm3
1124  DB  65,254,200                          ; dec           %r8b
1125  DB  65,128,248,6                        ; cmp           $0x6,%r8b
1126  DB  15,135,89,255,255,255               ; ja            1097 <_sk_lerp_565_hsw+0x14>
1127  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
1128  DB  76,141,13,75,0,0,0                  ; lea           0x4b(%rip),%r9        # 1194 <_sk_lerp_565_hsw+0x111>
1129  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
1130  DB  76,1,200                            ; add           %r9,%rax
1131  DB  255,224                             ; jmpq          *%rax
1132  DB  197,225,239,219                     ; vpxor         %xmm3,%xmm3,%xmm3
1133  DB  196,193,97,196,92,122,12,6          ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm3,%xmm3
1134  DB  196,193,97,196,92,122,10,5          ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm3,%xmm3
1135  DB  196,193,97,196,92,122,8,4           ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm3,%xmm3
1136  DB  196,193,97,196,92,122,6,3           ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm3,%xmm3
1137  DB  196,193,97,196,92,122,4,2           ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm3,%xmm3
1138  DB  196,193,97,196,92,122,2,1           ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm3,%xmm3
1139  DB  196,193,97,196,28,122,0             ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm3,%xmm3
1140  DB  233,5,255,255,255                   ; jmpq          1097 <_sk_lerp_565_hsw+0x14>
1141  DB  102,144                             ; xchg          %ax,%ax
1142  DB  242,255                             ; repnz         (bad)
1143  DB  255                                 ; (bad)
1144  DB  255                                 ; (bad)
1145  DB  234                                 ; (bad)
1146  DB  255                                 ; (bad)
1147  DB  255                                 ; (bad)
1148  DB  255,226                             ; jmpq          *%rdx
1149  DB  255                                 ; (bad)
1150  DB  255                                 ; (bad)
1151  DB  255                                 ; (bad)
1152  DB  218,255                             ; (bad)
1153  DB  255                                 ; (bad)
1154  DB  255,210                             ; callq         *%rdx
1155  DB  255                                 ; (bad)
1156  DB  255                                 ; (bad)
1157  DB  255,202                             ; dec           %edx
1158  DB  255                                 ; (bad)
1159  DB  255                                 ; (bad)
1160  DB  255                                 ; (bad)
1161  DB  190                                 ; .byte         0xbe
1162  DB  255                                 ; (bad)
1163  DB  255                                 ; (bad)
1164  DB  255                                 ; .byte         0xff
1165
1166PUBLIC _sk_load_tables_hsw
1167_sk_load_tables_hsw LABEL PROC
1168  DB  73,137,200                          ; mov           %rcx,%r8
1169  DB  72,173                              ; lods          %ds:(%rsi),%rax
1170  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
1171  DB  76,3,8                              ; add           (%rax),%r9
1172  DB  77,133,192                          ; test          %r8,%r8
1173  DB  117,105                             ; jne           122e <_sk_load_tables_hsw+0x7e>
1174  DB  196,193,126,111,25                  ; vmovdqu       (%r9),%ymm3
1175  DB  197,229,219,13,46,47,0,0            ; vpand         0x2f2e(%rip),%ymm3,%ymm1        # 4100 <_sk_callback_hsw+0x4a1>
1176  DB  196,65,61,118,192                   ; vpcmpeqd      %ymm8,%ymm8,%ymm8
1177  DB  72,139,72,8                         ; mov           0x8(%rax),%rcx
1178  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
1179  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
1180  DB  196,226,109,146,4,137               ; vgatherdps    %ymm2,(%rcx,%ymm1,4),%ymm0
1181  DB  196,226,101,0,21,46,47,0,0          ; vpshufb       0x2f2e(%rip),%ymm3,%ymm2        # 4120 <_sk_callback_hsw+0x4c1>
1182  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1183  DB  196,194,53,146,12,145               ; vgatherdps    %ymm9,(%r9,%ymm2,4),%ymm1
1184  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1185  DB  196,98,101,0,13,54,47,0,0           ; vpshufb       0x2f36(%rip),%ymm3,%ymm9        # 4140 <_sk_callback_hsw+0x4e1>
1186  DB  196,162,61,146,20,136               ; vgatherdps    %ymm8,(%rax,%ymm9,4),%ymm2
1187  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
1188  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1189  DB  196,98,125,24,5,62,44,0,0           ; vbroadcastss  0x2c3e(%rip),%ymm8        # 3e60 <_sk_callback_hsw+0x201>
1190  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
1191  DB  72,173                              ; lods          %ds:(%rsi),%rax
1192  DB  76,137,193                          ; mov           %r8,%rcx
1193  DB  255,224                             ; jmpq          *%rax
1194  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
1195  DB  68,41,193                           ; sub           %r8d,%ecx
1196  DB  192,225,3                           ; shl           $0x3,%cl
1197  DB  73,199,194,255,255,255,255          ; mov           $0xffffffffffffffff,%r10
1198  DB  73,211,234                          ; shr           %cl,%r10
1199  DB  196,193,249,110,194                 ; vmovq         %r10,%xmm0
1200  DB  196,226,125,33,192                  ; vpmovsxbd     %xmm0,%ymm0
1201  DB  196,194,125,140,25                  ; vpmaskmovd    (%r9),%ymm0,%ymm3
1202  DB  233,115,255,255,255                 ; jmpq          11ca <_sk_load_tables_hsw+0x1a>
1203
1204PUBLIC _sk_load_tables_u16_be_hsw
1205_sk_load_tables_u16_be_hsw LABEL PROC
1206  DB  72,173                              ; lods          %ds:(%rsi),%rax
1207  DB  76,139,0                            ; mov           (%rax),%r8
1208  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
1209  DB  72,133,201                          ; test          %rcx,%rcx
1210  DB  15,133,201,0,0,0                    ; jne           1336 <_sk_load_tables_u16_be_hsw+0xdf>
1211  DB  196,1,121,16,4,72                   ; vmovupd       (%r8,%r9,2),%xmm8
1212  DB  196,129,121,16,84,72,16             ; vmovupd       0x10(%r8,%r9,2),%xmm2
1213  DB  196,129,121,16,92,72,32             ; vmovupd       0x20(%r8,%r9,2),%xmm3
1214  DB  196,1,122,111,76,72,48              ; vmovdqu       0x30(%r8,%r9,2),%xmm9
1215  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
1216  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
1217  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
1218  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
1219  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
1220  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
1221  DB  197,241,97,195                      ; vpunpcklwd    %xmm3,%xmm1,%xmm0
1222  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
1223  DB  197,185,108,200                     ; vpunpcklqdq   %xmm0,%xmm8,%xmm1
1224  DB  197,185,109,208                     ; vpunpckhqdq   %xmm0,%xmm8,%xmm2
1225  DB  197,49,108,195                      ; vpunpcklqdq   %xmm3,%xmm9,%xmm8
1226  DB  197,121,111,21,194,47,0,0           ; vmovdqa       0x2fc2(%rip),%xmm10        # 4280 <_sk_callback_hsw+0x621>
1227  DB  196,193,113,219,194                 ; vpand         %xmm10,%xmm1,%xmm0
1228  DB  196,226,125,51,200                  ; vpmovzxwd     %xmm0,%ymm1
1229  DB  196,65,37,118,219                   ; vpcmpeqd      %ymm11,%ymm11,%ymm11
1230  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
1231  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
1232  DB  196,65,29,118,228                   ; vpcmpeqd      %ymm12,%ymm12,%ymm12
1233  DB  196,194,29,146,4,136                ; vgatherdps    %ymm12,(%r8,%ymm1,4),%ymm0
1234  DB  196,193,105,219,202                 ; vpand         %xmm10,%xmm2,%xmm1
1235  DB  196,226,125,51,209                  ; vpmovzxwd     %xmm1,%ymm2
1236  DB  196,65,29,118,228                   ; vpcmpeqd      %ymm12,%ymm12,%ymm12
1237  DB  196,194,29,146,12,145               ; vgatherdps    %ymm12,(%r9,%ymm2,4),%ymm1
1238  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1239  DB  196,193,57,219,210                  ; vpand         %xmm10,%xmm8,%xmm2
1240  DB  196,98,125,51,194                   ; vpmovzxwd     %xmm2,%ymm8
1241  DB  196,162,37,146,20,128               ; vgatherdps    %ymm11,(%rax,%ymm8,4),%ymm2
1242  DB  197,177,109,219                     ; vpunpckhqdq   %xmm3,%xmm9,%xmm3
1243  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
1244  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
1245  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
1246  DB  196,226,125,51,219                  ; vpmovzxwd     %xmm3,%ymm3
1247  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1248  DB  196,98,125,24,5,55,43,0,0           ; vbroadcastss  0x2b37(%rip),%ymm8        # 3e64 <_sk_callback_hsw+0x205>
1249  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
1250  DB  72,173                              ; lods          %ds:(%rsi),%rax
1251  DB  255,224                             ; jmpq          *%rax
1252  DB  196,1,123,16,4,72                   ; vmovsd        (%r8,%r9,2),%xmm8
1253  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
1254  DB  72,131,249,1                        ; cmp           $0x1,%rcx
1255  DB  116,85                              ; je            139c <_sk_load_tables_u16_be_hsw+0x145>
1256  DB  196,1,57,22,68,72,8                 ; vmovhpd       0x8(%r8,%r9,2),%xmm8,%xmm8
1257  DB  72,131,249,3                        ; cmp           $0x3,%rcx
1258  DB  114,72                              ; jb            139c <_sk_load_tables_u16_be_hsw+0x145>
1259  DB  196,129,123,16,84,72,16             ; vmovsd        0x10(%r8,%r9,2),%xmm2
1260  DB  72,131,249,3                        ; cmp           $0x3,%rcx
1261  DB  116,72                              ; je            13a9 <_sk_load_tables_u16_be_hsw+0x152>
1262  DB  196,129,105,22,84,72,24             ; vmovhpd       0x18(%r8,%r9,2),%xmm2,%xmm2
1263  DB  72,131,249,5                        ; cmp           $0x5,%rcx
1264  DB  114,59                              ; jb            13a9 <_sk_load_tables_u16_be_hsw+0x152>
1265  DB  196,129,123,16,92,72,32             ; vmovsd        0x20(%r8,%r9,2),%xmm3
1266  DB  72,131,249,5                        ; cmp           $0x5,%rcx
1267  DB  15,132,9,255,255,255                ; je            1288 <_sk_load_tables_u16_be_hsw+0x31>
1268  DB  196,129,97,22,92,72,40              ; vmovhpd       0x28(%r8,%r9,2),%xmm3,%xmm3
1269  DB  72,131,249,7                        ; cmp           $0x7,%rcx
1270  DB  15,130,248,254,255,255              ; jb            1288 <_sk_load_tables_u16_be_hsw+0x31>
1271  DB  196,1,122,126,76,72,48              ; vmovq         0x30(%r8,%r9,2),%xmm9
1272  DB  233,236,254,255,255                 ; jmpq          1288 <_sk_load_tables_u16_be_hsw+0x31>
1273  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
1274  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
1275  DB  233,223,254,255,255                 ; jmpq          1288 <_sk_load_tables_u16_be_hsw+0x31>
1276  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
1277  DB  233,214,254,255,255                 ; jmpq          1288 <_sk_load_tables_u16_be_hsw+0x31>
1278
1279PUBLIC _sk_load_tables_rgb_u16_be_hsw
1280_sk_load_tables_rgb_u16_be_hsw LABEL PROC
1281  DB  72,173                              ; lods          %ds:(%rsi),%rax
1282  DB  76,139,0                            ; mov           (%rax),%r8
1283  DB  76,141,12,127                       ; lea           (%rdi,%rdi,2),%r9
1284  DB  72,133,201                          ; test          %rcx,%rcx
1285  DB  15,133,193,0,0,0                    ; jne           1485 <_sk_load_tables_rgb_u16_be_hsw+0xd3>
1286  DB  196,129,122,111,4,72                ; vmovdqu       (%r8,%r9,2),%xmm0
1287  DB  196,129,122,111,84,72,12            ; vmovdqu       0xc(%r8,%r9,2),%xmm2
1288  DB  196,129,122,111,76,72,24            ; vmovdqu       0x18(%r8,%r9,2),%xmm1
1289  DB  196,129,122,111,92,72,32            ; vmovdqu       0x20(%r8,%r9,2),%xmm3
1290  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
1291  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
1292  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
1293  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
1294  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
1295  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
1296  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
1297  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
1298  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
1299  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
1300  DB  197,249,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm0
1301  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
1302  DB  197,241,105,203                     ; vpunpckhwd    %xmm3,%xmm1,%xmm1
1303  DB  197,185,108,218                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm3
1304  DB  197,185,109,210                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm2
1305  DB  197,121,108,193                     ; vpunpcklqdq   %xmm1,%xmm0,%xmm8
1306  DB  197,121,111,13,98,46,0,0            ; vmovdqa       0x2e62(%rip),%xmm9        # 4290 <_sk_callback_hsw+0x631>
1307  DB  196,193,97,219,193                  ; vpand         %xmm9,%xmm3,%xmm0
1308  DB  196,226,125,51,200                  ; vpmovzxwd     %xmm0,%ymm1
1309  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
1310  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
1311  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
1312  DB  196,65,45,118,210                   ; vpcmpeqd      %ymm10,%ymm10,%ymm10
1313  DB  196,194,45,146,4,136                ; vgatherdps    %ymm10,(%r8,%ymm1,4),%ymm0
1314  DB  196,193,105,219,201                 ; vpand         %xmm9,%xmm2,%xmm1
1315  DB  196,226,125,51,209                  ; vpmovzxwd     %xmm1,%ymm2
1316  DB  196,65,45,118,210                   ; vpcmpeqd      %ymm10,%ymm10,%ymm10
1317  DB  196,194,45,146,12,145               ; vgatherdps    %ymm10,(%r9,%ymm2,4),%ymm1
1318  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1319  DB  196,193,57,219,209                  ; vpand         %xmm9,%xmm8,%xmm2
1320  DB  196,98,125,51,194                   ; vpmovzxwd     %xmm2,%ymm8
1321  DB  196,162,101,146,20,128              ; vgatherdps    %ymm3,(%rax,%ymm8,4),%ymm2
1322  DB  72,173                              ; lods          %ds:(%rsi),%rax
1323  DB  196,226,125,24,29,229,41,0,0        ; vbroadcastss  0x29e5(%rip),%ymm3        # 3e68 <_sk_callback_hsw+0x209>
1324  DB  255,224                             ; jmpq          *%rax
1325  DB  196,129,121,110,4,72                ; vmovd         (%r8,%r9,2),%xmm0
1326  DB  196,129,121,196,68,72,4,2           ; vpinsrw       $0x2,0x4(%r8,%r9,2),%xmm0,%xmm0
1327  DB  72,131,249,1                        ; cmp           $0x1,%rcx
1328  DB  117,5                               ; jne           149e <_sk_load_tables_rgb_u16_be_hsw+0xec>
1329  DB  233,90,255,255,255                  ; jmpq          13f8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1330  DB  196,129,121,110,76,72,6             ; vmovd         0x6(%r8,%r9,2),%xmm1
1331  DB  196,1,113,196,68,72,10,2            ; vpinsrw       $0x2,0xa(%r8,%r9,2),%xmm1,%xmm8
1332  DB  72,131,249,3                        ; cmp           $0x3,%rcx
1333  DB  114,26                              ; jb            14cd <_sk_load_tables_rgb_u16_be_hsw+0x11b>
1334  DB  196,129,121,110,76,72,12            ; vmovd         0xc(%r8,%r9,2),%xmm1
1335  DB  196,129,113,196,84,72,16,2          ; vpinsrw       $0x2,0x10(%r8,%r9,2),%xmm1,%xmm2
1336  DB  72,131,249,3                        ; cmp           $0x3,%rcx
1337  DB  117,10                              ; jne           14d2 <_sk_load_tables_rgb_u16_be_hsw+0x120>
1338  DB  233,43,255,255,255                  ; jmpq          13f8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1339  DB  233,38,255,255,255                  ; jmpq          13f8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1340  DB  196,129,121,110,76,72,18            ; vmovd         0x12(%r8,%r9,2),%xmm1
1341  DB  196,1,113,196,76,72,22,2            ; vpinsrw       $0x2,0x16(%r8,%r9,2),%xmm1,%xmm9
1342  DB  72,131,249,5                        ; cmp           $0x5,%rcx
1343  DB  114,26                              ; jb            1501 <_sk_load_tables_rgb_u16_be_hsw+0x14f>
1344  DB  196,129,121,110,76,72,24            ; vmovd         0x18(%r8,%r9,2),%xmm1
1345  DB  196,129,113,196,76,72,28,2          ; vpinsrw       $0x2,0x1c(%r8,%r9,2),%xmm1,%xmm1
1346  DB  72,131,249,5                        ; cmp           $0x5,%rcx
1347  DB  117,10                              ; jne           1506 <_sk_load_tables_rgb_u16_be_hsw+0x154>
1348  DB  233,247,254,255,255                 ; jmpq          13f8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1349  DB  233,242,254,255,255                 ; jmpq          13f8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1350  DB  196,129,121,110,92,72,30            ; vmovd         0x1e(%r8,%r9,2),%xmm3
1351  DB  196,1,97,196,92,72,34,2             ; vpinsrw       $0x2,0x22(%r8,%r9,2),%xmm3,%xmm11
1352  DB  72,131,249,7                        ; cmp           $0x7,%rcx
1353  DB  114,20                              ; jb            152f <_sk_load_tables_rgb_u16_be_hsw+0x17d>
1354  DB  196,129,121,110,92,72,36            ; vmovd         0x24(%r8,%r9,2),%xmm3
1355  DB  196,129,97,196,92,72,40,2           ; vpinsrw       $0x2,0x28(%r8,%r9,2),%xmm3,%xmm3
1356  DB  233,201,254,255,255                 ; jmpq          13f8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1357  DB  233,196,254,255,255                 ; jmpq          13f8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1358
1359PUBLIC _sk_byte_tables_hsw
1360_sk_byte_tables_hsw LABEL PROC
1361  DB  85                                  ; push          %rbp
1362  DB  65,87                               ; push          %r15
1363  DB  65,86                               ; push          %r14
1364  DB  65,85                               ; push          %r13
1365  DB  65,84                               ; push          %r12
1366  DB  83                                  ; push          %rbx
1367  DB  72,173                              ; lods          %ds:(%rsi),%rax
1368  DB  196,98,125,24,5,35,41,0,0           ; vbroadcastss  0x2923(%rip),%ymm8        # 3e6c <_sk_callback_hsw+0x20d>
1369  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
1370  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
1371  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
1372  DB  68,137,197                          ; mov           %r8d,%ebp
1373  DB  77,137,194                          ; mov           %r8,%r10
1374  DB  73,193,234,32                       ; shr           $0x20,%r10
1375  DB  196,193,249,126,192                 ; vmovq         %xmm0,%r8
1376  DB  69,137,195                          ; mov           %r8d,%r11d
1377  DB  77,137,199                          ; mov           %r8,%r15
1378  DB  73,193,239,32                       ; shr           $0x20,%r15
1379  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
1380  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
1381  DB  69,137,198                          ; mov           %r8d,%r14d
1382  DB  77,137,196                          ; mov           %r8,%r12
1383  DB  73,193,236,32                       ; shr           $0x20,%r12
1384  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
1385  DB  65,137,221                          ; mov           %ebx,%r13d
1386  DB  72,193,235,32                       ; shr           $0x20,%rbx
1387  DB  76,139,8                            ; mov           (%rax),%r9
1388  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
1389  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
1390  DB  196,131,121,32,4,57,1               ; vpinsrb       $0x1,(%r9,%r15,1),%xmm0,%xmm0
1391  DB  65,15,182,44,41                     ; movzbl        (%r9,%rbp,1),%ebp
1392  DB  196,227,121,32,197,2                ; vpinsrb       $0x2,%ebp,%xmm0,%xmm0
1393  DB  67,15,182,44,17                     ; movzbl        (%r9,%r10,1),%ebp
1394  DB  196,227,121,32,197,3                ; vpinsrb       $0x3,%ebp,%xmm0,%xmm0
1395  DB  67,15,182,44,41                     ; movzbl        (%r9,%r13,1),%ebp
1396  DB  196,227,121,32,197,4                ; vpinsrb       $0x4,%ebp,%xmm0,%xmm0
1397  DB  65,15,182,44,25                     ; movzbl        (%r9,%rbx,1),%ebp
1398  DB  196,227,121,32,197,5                ; vpinsrb       $0x5,%ebp,%xmm0,%xmm0
1399  DB  67,15,182,44,49                     ; movzbl        (%r9,%r14,1),%ebp
1400  DB  196,227,121,32,197,6                ; vpinsrb       $0x6,%ebp,%xmm0,%xmm0
1401  DB  67,15,182,44,33                     ; movzbl        (%r9,%r12,1),%ebp
1402  DB  196,227,121,32,197,7                ; vpinsrb       $0x7,%ebp,%xmm0,%xmm0
1403  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
1404  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
1405  DB  196,98,125,24,13,116,40,0,0         ; vbroadcastss  0x2874(%rip),%ymm9        # 3e70 <_sk_callback_hsw+0x211>
1406  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
1407  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
1408  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
1409  DB  196,227,249,22,205,1                ; vpextrq       $0x1,%xmm1,%rbp
1410  DB  65,137,233                          ; mov           %ebp,%r9d
1411  DB  72,193,237,32                       ; shr           $0x20,%rbp
1412  DB  196,225,249,126,203                 ; vmovq         %xmm1,%rbx
1413  DB  65,137,218                          ; mov           %ebx,%r10d
1414  DB  72,193,235,32                       ; shr           $0x20,%rbx
1415  DB  196,227,125,57,201,1                ; vextracti128  $0x1,%ymm1,%xmm1
1416  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
1417  DB  69,137,222                          ; mov           %r11d,%r14d
1418  DB  73,193,235,32                       ; shr           $0x20,%r11
1419  DB  196,193,249,126,207                 ; vmovq         %xmm1,%r15
1420  DB  69,137,252                          ; mov           %r15d,%r12d
1421  DB  73,193,239,32                       ; shr           $0x20,%r15
1422  DB  196,131,121,32,12,16,0              ; vpinsrb       $0x0,(%r8,%r10,1),%xmm0,%xmm1
1423  DB  196,195,113,32,12,24,1              ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm1,%xmm1
1424  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
1425  DB  196,227,113,32,203,2                ; vpinsrb       $0x2,%ebx,%xmm1,%xmm1
1426  DB  65,15,182,44,40                     ; movzbl        (%r8,%rbp,1),%ebp
1427  DB  196,227,113,32,205,3                ; vpinsrb       $0x3,%ebp,%xmm1,%xmm1
1428  DB  67,15,182,44,32                     ; movzbl        (%r8,%r12,1),%ebp
1429  DB  196,227,113,32,205,4                ; vpinsrb       $0x4,%ebp,%xmm1,%xmm1
1430  DB  67,15,182,44,56                     ; movzbl        (%r8,%r15,1),%ebp
1431  DB  196,227,113,32,205,5                ; vpinsrb       $0x5,%ebp,%xmm1,%xmm1
1432  DB  67,15,182,44,48                     ; movzbl        (%r8,%r14,1),%ebp
1433  DB  196,227,113,32,205,6                ; vpinsrb       $0x6,%ebp,%xmm1,%xmm1
1434  DB  67,15,182,44,24                     ; movzbl        (%r8,%r11,1),%ebp
1435  DB  196,227,113,32,205,7                ; vpinsrb       $0x7,%ebp,%xmm1,%xmm1
1436  DB  196,226,125,49,201                  ; vpmovzxbd     %xmm1,%ymm1
1437  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
1438  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
1439  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
1440  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
1441  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
1442  DB  196,227,249,22,213,1                ; vpextrq       $0x1,%xmm2,%rbp
1443  DB  65,137,233                          ; mov           %ebp,%r9d
1444  DB  72,193,237,32                       ; shr           $0x20,%rbp
1445  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
1446  DB  65,137,218                          ; mov           %ebx,%r10d
1447  DB  72,193,235,32                       ; shr           $0x20,%rbx
1448  DB  196,227,125,57,210,1                ; vextracti128  $0x1,%ymm2,%xmm2
1449  DB  196,195,249,22,211,1                ; vpextrq       $0x1,%xmm2,%r11
1450  DB  69,137,222                          ; mov           %r11d,%r14d
1451  DB  73,193,235,32                       ; shr           $0x20,%r11
1452  DB  196,193,249,126,215                 ; vmovq         %xmm2,%r15
1453  DB  69,137,252                          ; mov           %r15d,%r12d
1454  DB  73,193,239,32                       ; shr           $0x20,%r15
1455  DB  196,131,121,32,20,16,0              ; vpinsrb       $0x0,(%r8,%r10,1),%xmm0,%xmm2
1456  DB  196,195,105,32,20,24,1              ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm2,%xmm2
1457  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
1458  DB  196,227,105,32,211,2                ; vpinsrb       $0x2,%ebx,%xmm2,%xmm2
1459  DB  65,15,182,44,40                     ; movzbl        (%r8,%rbp,1),%ebp
1460  DB  196,227,105,32,213,3                ; vpinsrb       $0x3,%ebp,%xmm2,%xmm2
1461  DB  67,15,182,44,32                     ; movzbl        (%r8,%r12,1),%ebp
1462  DB  196,227,105,32,213,4                ; vpinsrb       $0x4,%ebp,%xmm2,%xmm2
1463  DB  67,15,182,44,56                     ; movzbl        (%r8,%r15,1),%ebp
1464  DB  196,227,105,32,213,5                ; vpinsrb       $0x5,%ebp,%xmm2,%xmm2
1465  DB  67,15,182,44,48                     ; movzbl        (%r8,%r14,1),%ebp
1466  DB  196,227,105,32,213,6                ; vpinsrb       $0x6,%ebp,%xmm2,%xmm2
1467  DB  67,15,182,44,24                     ; movzbl        (%r8,%r11,1),%ebp
1468  DB  196,227,105,32,213,7                ; vpinsrb       $0x7,%ebp,%xmm2,%xmm2
1469  DB  196,226,125,49,210                  ; vpmovzxbd     %xmm2,%ymm2
1470  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
1471  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
1472  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1473  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
1474  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
1475  DB  196,227,249,22,221,1                ; vpextrq       $0x1,%xmm3,%rbp
1476  DB  65,137,232                          ; mov           %ebp,%r8d
1477  DB  72,193,237,32                       ; shr           $0x20,%rbp
1478  DB  196,225,249,126,219                 ; vmovq         %xmm3,%rbx
1479  DB  65,137,217                          ; mov           %ebx,%r9d
1480  DB  72,193,235,32                       ; shr           $0x20,%rbx
1481  DB  196,227,125,57,219,1                ; vextracti128  $0x1,%ymm3,%xmm3
1482  DB  196,195,249,22,218,1                ; vpextrq       $0x1,%xmm3,%r10
1483  DB  69,137,211                          ; mov           %r10d,%r11d
1484  DB  73,193,234,32                       ; shr           $0x20,%r10
1485  DB  196,193,249,126,222                 ; vmovq         %xmm3,%r14
1486  DB  69,137,247                          ; mov           %r14d,%r15d
1487  DB  73,193,238,32                       ; shr           $0x20,%r14
1488  DB  196,163,121,32,28,8,0               ; vpinsrb       $0x0,(%rax,%r9,1),%xmm0,%xmm3
1489  DB  196,227,97,32,28,24,1               ; vpinsrb       $0x1,(%rax,%rbx,1),%xmm3,%xmm3
1490  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
1491  DB  196,227,97,32,219,2                 ; vpinsrb       $0x2,%ebx,%xmm3,%xmm3
1492  DB  15,182,44,40                        ; movzbl        (%rax,%rbp,1),%ebp
1493  DB  196,227,97,32,221,3                 ; vpinsrb       $0x3,%ebp,%xmm3,%xmm3
1494  DB  66,15,182,44,56                     ; movzbl        (%rax,%r15,1),%ebp
1495  DB  196,227,97,32,221,4                 ; vpinsrb       $0x4,%ebp,%xmm3,%xmm3
1496  DB  66,15,182,44,48                     ; movzbl        (%rax,%r14,1),%ebp
1497  DB  196,227,97,32,221,5                 ; vpinsrb       $0x5,%ebp,%xmm3,%xmm3
1498  DB  66,15,182,44,24                     ; movzbl        (%rax,%r11,1),%ebp
1499  DB  196,227,97,32,221,6                 ; vpinsrb       $0x6,%ebp,%xmm3,%xmm3
1500  DB  66,15,182,4,16                      ; movzbl        (%rax,%r10,1),%eax
1501  DB  196,227,97,32,216,7                 ; vpinsrb       $0x7,%eax,%xmm3,%xmm3
1502  DB  196,226,125,49,219                  ; vpmovzxbd     %xmm3,%ymm3
1503  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1504  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
1505  DB  72,173                              ; lods          %ds:(%rsi),%rax
1506  DB  91                                  ; pop           %rbx
1507  DB  65,92                               ; pop           %r12
1508  DB  65,93                               ; pop           %r13
1509  DB  65,94                               ; pop           %r14
1510  DB  65,95                               ; pop           %r15
1511  DB  93                                  ; pop           %rbp
1512  DB  255,224                             ; jmpq          *%rax
1513
1514PUBLIC _sk_byte_tables_rgb_hsw
1515_sk_byte_tables_rgb_hsw LABEL PROC
1516  DB  85                                  ; push          %rbp
1517  DB  65,87                               ; push          %r15
1518  DB  65,86                               ; push          %r14
1519  DB  65,85                               ; push          %r13
1520  DB  65,84                               ; push          %r12
1521  DB  83                                  ; push          %rbx
1522  DB  72,173                              ; lods          %ds:(%rsi),%rax
1523  DB  68,139,64,24                        ; mov           0x18(%rax),%r8d
1524  DB  65,255,200                          ; dec           %r8d
1525  DB  196,65,121,110,192                  ; vmovd         %r8d,%xmm8
1526  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
1527  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1528  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1529  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
1530  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
1531  DB  68,137,197                          ; mov           %r8d,%ebp
1532  DB  77,137,194                          ; mov           %r8,%r10
1533  DB  73,193,234,32                       ; shr           $0x20,%r10
1534  DB  196,193,249,126,192                 ; vmovq         %xmm0,%r8
1535  DB  69,137,195                          ; mov           %r8d,%r11d
1536  DB  77,137,199                          ; mov           %r8,%r15
1537  DB  73,193,239,32                       ; shr           $0x20,%r15
1538  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
1539  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
1540  DB  69,137,198                          ; mov           %r8d,%r14d
1541  DB  77,137,196                          ; mov           %r8,%r12
1542  DB  73,193,236,32                       ; shr           $0x20,%r12
1543  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
1544  DB  65,137,221                          ; mov           %ebx,%r13d
1545  DB  72,193,235,32                       ; shr           $0x20,%rbx
1546  DB  76,139,8                            ; mov           (%rax),%r9
1547  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
1548  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
1549  DB  196,131,121,32,4,57,1               ; vpinsrb       $0x1,(%r9,%r15,1),%xmm0,%xmm0
1550  DB  65,15,182,44,41                     ; movzbl        (%r9,%rbp,1),%ebp
1551  DB  196,227,121,32,197,2                ; vpinsrb       $0x2,%ebp,%xmm0,%xmm0
1552  DB  67,15,182,44,17                     ; movzbl        (%r9,%r10,1),%ebp
1553  DB  196,227,121,32,197,3                ; vpinsrb       $0x3,%ebp,%xmm0,%xmm0
1554  DB  67,15,182,44,41                     ; movzbl        (%r9,%r13,1),%ebp
1555  DB  196,227,121,32,197,4                ; vpinsrb       $0x4,%ebp,%xmm0,%xmm0
1556  DB  65,15,182,44,25                     ; movzbl        (%r9,%rbx,1),%ebp
1557  DB  196,227,121,32,197,5                ; vpinsrb       $0x5,%ebp,%xmm0,%xmm0
1558  DB  67,15,182,44,49                     ; movzbl        (%r9,%r14,1),%ebp
1559  DB  196,227,121,32,197,6                ; vpinsrb       $0x6,%ebp,%xmm0,%xmm0
1560  DB  67,15,182,44,33                     ; movzbl        (%r9,%r12,1),%ebp
1561  DB  196,227,121,32,197,7                ; vpinsrb       $0x7,%ebp,%xmm0,%xmm0
1562  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
1563  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
1564  DB  196,98,125,24,13,173,37,0,0         ; vbroadcastss  0x25ad(%rip),%ymm9        # 3e74 <_sk_callback_hsw+0x215>
1565  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
1566  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1567  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
1568  DB  196,227,249,22,205,1                ; vpextrq       $0x1,%xmm1,%rbp
1569  DB  65,137,233                          ; mov           %ebp,%r9d
1570  DB  72,193,237,32                       ; shr           $0x20,%rbp
1571  DB  196,225,249,126,203                 ; vmovq         %xmm1,%rbx
1572  DB  65,137,218                          ; mov           %ebx,%r10d
1573  DB  72,193,235,32                       ; shr           $0x20,%rbx
1574  DB  196,227,125,57,201,1                ; vextracti128  $0x1,%ymm1,%xmm1
1575  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
1576  DB  69,137,222                          ; mov           %r11d,%r14d
1577  DB  73,193,235,32                       ; shr           $0x20,%r11
1578  DB  196,193,249,126,207                 ; vmovq         %xmm1,%r15
1579  DB  69,137,252                          ; mov           %r15d,%r12d
1580  DB  73,193,239,32                       ; shr           $0x20,%r15
1581  DB  196,131,121,32,12,16,0              ; vpinsrb       $0x0,(%r8,%r10,1),%xmm0,%xmm1
1582  DB  196,195,113,32,12,24,1              ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm1,%xmm1
1583  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
1584  DB  196,227,113,32,203,2                ; vpinsrb       $0x2,%ebx,%xmm1,%xmm1
1585  DB  65,15,182,44,40                     ; movzbl        (%r8,%rbp,1),%ebp
1586  DB  196,227,113,32,205,3                ; vpinsrb       $0x3,%ebp,%xmm1,%xmm1
1587  DB  67,15,182,44,32                     ; movzbl        (%r8,%r12,1),%ebp
1588  DB  196,227,113,32,205,4                ; vpinsrb       $0x4,%ebp,%xmm1,%xmm1
1589  DB  67,15,182,44,56                     ; movzbl        (%r8,%r15,1),%ebp
1590  DB  196,227,113,32,205,5                ; vpinsrb       $0x5,%ebp,%xmm1,%xmm1
1591  DB  67,15,182,44,48                     ; movzbl        (%r8,%r14,1),%ebp
1592  DB  196,227,113,32,205,6                ; vpinsrb       $0x6,%ebp,%xmm1,%xmm1
1593  DB  67,15,182,44,24                     ; movzbl        (%r8,%r11,1),%ebp
1594  DB  196,227,113,32,205,7                ; vpinsrb       $0x7,%ebp,%xmm1,%xmm1
1595  DB  196,226,125,49,201                  ; vpmovzxbd     %xmm1,%ymm1
1596  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
1597  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
1598  DB  72,139,64,16                        ; mov           0x10(%rax),%rax
1599  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1600  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
1601  DB  196,227,249,22,213,1                ; vpextrq       $0x1,%xmm2,%rbp
1602  DB  65,137,232                          ; mov           %ebp,%r8d
1603  DB  72,193,237,32                       ; shr           $0x20,%rbp
1604  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
1605  DB  65,137,217                          ; mov           %ebx,%r9d
1606  DB  72,193,235,32                       ; shr           $0x20,%rbx
1607  DB  196,227,125,57,210,1                ; vextracti128  $0x1,%ymm2,%xmm2
1608  DB  196,195,249,22,210,1                ; vpextrq       $0x1,%xmm2,%r10
1609  DB  69,137,211                          ; mov           %r10d,%r11d
1610  DB  73,193,234,32                       ; shr           $0x20,%r10
1611  DB  196,193,249,126,214                 ; vmovq         %xmm2,%r14
1612  DB  69,137,247                          ; mov           %r14d,%r15d
1613  DB  73,193,238,32                       ; shr           $0x20,%r14
1614  DB  196,163,121,32,20,8,0               ; vpinsrb       $0x0,(%rax,%r9,1),%xmm0,%xmm2
1615  DB  196,227,105,32,20,24,1              ; vpinsrb       $0x1,(%rax,%rbx,1),%xmm2,%xmm2
1616  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
1617  DB  196,227,105,32,211,2                ; vpinsrb       $0x2,%ebx,%xmm2,%xmm2
1618  DB  15,182,44,40                        ; movzbl        (%rax,%rbp,1),%ebp
1619  DB  196,227,105,32,213,3                ; vpinsrb       $0x3,%ebp,%xmm2,%xmm2
1620  DB  66,15,182,44,56                     ; movzbl        (%rax,%r15,1),%ebp
1621  DB  196,227,105,32,213,4                ; vpinsrb       $0x4,%ebp,%xmm2,%xmm2
1622  DB  66,15,182,44,48                     ; movzbl        (%rax,%r14,1),%ebp
1623  DB  196,227,105,32,213,5                ; vpinsrb       $0x5,%ebp,%xmm2,%xmm2
1624  DB  66,15,182,44,24                     ; movzbl        (%rax,%r11,1),%ebp
1625  DB  196,227,105,32,213,6                ; vpinsrb       $0x6,%ebp,%xmm2,%xmm2
1626  DB  66,15,182,4,16                      ; movzbl        (%rax,%r10,1),%eax
1627  DB  196,227,105,32,208,7                ; vpinsrb       $0x7,%eax,%xmm2,%xmm2
1628  DB  196,226,125,49,210                  ; vpmovzxbd     %xmm2,%ymm2
1629  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
1630  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
1631  DB  72,173                              ; lods          %ds:(%rsi),%rax
1632  DB  91                                  ; pop           %rbx
1633  DB  65,92                               ; pop           %r12
1634  DB  65,93                               ; pop           %r13
1635  DB  65,94                               ; pop           %r14
1636  DB  65,95                               ; pop           %r15
1637  DB  93                                  ; pop           %rbp
1638  DB  255,224                             ; jmpq          *%rax
1639
1640PUBLIC _sk_table_r_hsw
1641_sk_table_r_hsw LABEL PROC
1642  DB  72,173                              ; lods          %ds:(%rsi),%rax
1643  DB  76,139,0                            ; mov           (%rax),%r8
1644  DB  139,64,8                            ; mov           0x8(%rax),%eax
1645  DB  255,200                             ; dec           %eax
1646  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
1647  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
1648  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1649  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1650  DB  197,125,91,192                      ; vcvtps2dq     %ymm0,%ymm8
1651  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1652  DB  196,130,53,146,4,128                ; vgatherdps    %ymm9,(%r8,%ymm8,4),%ymm0
1653  DB  72,173                              ; lods          %ds:(%rsi),%rax
1654  DB  255,224                             ; jmpq          *%rax
1655
1656PUBLIC _sk_table_g_hsw
1657_sk_table_g_hsw LABEL PROC
1658  DB  72,173                              ; lods          %ds:(%rsi),%rax
1659  DB  76,139,0                            ; mov           (%rax),%r8
1660  DB  139,64,8                            ; mov           0x8(%rax),%eax
1661  DB  255,200                             ; dec           %eax
1662  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
1663  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
1664  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1665  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1666  DB  197,125,91,193                      ; vcvtps2dq     %ymm1,%ymm8
1667  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1668  DB  196,130,53,146,12,128               ; vgatherdps    %ymm9,(%r8,%ymm8,4),%ymm1
1669  DB  72,173                              ; lods          %ds:(%rsi),%rax
1670  DB  255,224                             ; jmpq          *%rax
1671
1672PUBLIC _sk_table_b_hsw
1673_sk_table_b_hsw LABEL PROC
1674  DB  72,173                              ; lods          %ds:(%rsi),%rax
1675  DB  76,139,0                            ; mov           (%rax),%r8
1676  DB  139,64,8                            ; mov           0x8(%rax),%eax
1677  DB  255,200                             ; dec           %eax
1678  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
1679  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
1680  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1681  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1682  DB  197,125,91,194                      ; vcvtps2dq     %ymm2,%ymm8
1683  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1684  DB  196,130,53,146,20,128               ; vgatherdps    %ymm9,(%r8,%ymm8,4),%ymm2
1685  DB  72,173                              ; lods          %ds:(%rsi),%rax
1686  DB  255,224                             ; jmpq          *%rax
1687
1688PUBLIC _sk_table_a_hsw
1689_sk_table_a_hsw LABEL PROC
1690  DB  72,173                              ; lods          %ds:(%rsi),%rax
1691  DB  76,139,0                            ; mov           (%rax),%r8
1692  DB  139,64,8                            ; mov           0x8(%rax),%eax
1693  DB  255,200                             ; dec           %eax
1694  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
1695  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
1696  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1697  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
1698  DB  197,125,91,195                      ; vcvtps2dq     %ymm3,%ymm8
1699  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1700  DB  196,130,53,146,28,128               ; vgatherdps    %ymm9,(%r8,%ymm8,4),%ymm3
1701  DB  72,173                              ; lods          %ds:(%rsi),%rax
1702  DB  255,224                             ; jmpq          *%rax
1703
1704PUBLIC _sk_parametric_r_hsw
1705_sk_parametric_r_hsw LABEL PROC
1706  DB  72,173                              ; lods          %ds:(%rsi),%rax
1707  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
1708  DB  196,65,124,194,192,2                ; vcmpleps      %ymm8,%ymm0,%ymm8
1709  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
1710  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
1711  DB  196,66,125,168,202                  ; vfmadd213ps   %ymm10,%ymm0,%ymm9
1712  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
1713  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
1714  DB  196,66,125,168,211                  ; vfmadd213ps   %ymm11,%ymm0,%ymm10
1715  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
1716  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
1717  DB  196,98,125,24,37,96,35,0,0          ; vbroadcastss  0x2360(%rip),%ymm12        # 3e78 <_sk_callback_hsw+0x219>
1718  DB  196,98,125,24,45,91,35,0,0          ; vbroadcastss  0x235b(%rip),%ymm13        # 3e7c <_sk_callback_hsw+0x21d>
1719  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
1720  DB  196,98,125,24,45,81,35,0,0          ; vbroadcastss  0x2351(%rip),%ymm13        # 3e80 <_sk_callback_hsw+0x221>
1721  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
1722  DB  196,98,125,24,45,71,35,0,0          ; vbroadcastss  0x2347(%rip),%ymm13        # 3e84 <_sk_callback_hsw+0x225>
1723  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
1724  DB  196,98,125,24,29,61,35,0,0          ; vbroadcastss  0x233d(%rip),%ymm11        # 3e88 <_sk_callback_hsw+0x229>
1725  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
1726  DB  196,98,125,24,37,51,35,0,0          ; vbroadcastss  0x2333(%rip),%ymm12        # 3e8c <_sk_callback_hsw+0x22d>
1727  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
1728  DB  196,98,125,24,37,41,35,0,0          ; vbroadcastss  0x2329(%rip),%ymm12        # 3e90 <_sk_callback_hsw+0x231>
1729  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
1730  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
1731  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
1732  DB  196,99,125,8,208,1                  ; vroundps      $0x1,%ymm0,%ymm10
1733  DB  196,65,124,92,210                   ; vsubps        %ymm10,%ymm0,%ymm10
1734  DB  196,98,125,24,29,10,35,0,0          ; vbroadcastss  0x230a(%rip),%ymm11        # 3e94 <_sk_callback_hsw+0x235>
1735  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
1736  DB  196,98,125,24,29,0,35,0,0           ; vbroadcastss  0x2300(%rip),%ymm11        # 3e98 <_sk_callback_hsw+0x239>
1737  DB  196,98,45,172,216                   ; vfnmadd213ps  %ymm0,%ymm10,%ymm11
1738  DB  196,226,125,24,5,246,34,0,0         ; vbroadcastss  0x22f6(%rip),%ymm0        # 3e9c <_sk_callback_hsw+0x23d>
1739  DB  196,193,124,92,194                  ; vsubps        %ymm10,%ymm0,%ymm0
1740  DB  196,98,125,24,21,236,34,0,0         ; vbroadcastss  0x22ec(%rip),%ymm10        # 3ea0 <_sk_callback_hsw+0x241>
1741  DB  197,172,94,192                      ; vdivps        %ymm0,%ymm10,%ymm0
1742  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
1743  DB  196,98,125,24,21,223,34,0,0         ; vbroadcastss  0x22df(%rip),%ymm10        # 3ea4 <_sk_callback_hsw+0x245>
1744  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
1745  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
1746  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
1747  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
1748  DB  196,195,125,74,193,128              ; vblendvps     %ymm8,%ymm9,%ymm0,%ymm0
1749  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
1750  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
1751  DB  196,98,125,24,5,182,34,0,0          ; vbroadcastss  0x22b6(%rip),%ymm8        # 3ea8 <_sk_callback_hsw+0x249>
1752  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
1753  DB  72,173                              ; lods          %ds:(%rsi),%rax
1754  DB  255,224                             ; jmpq          *%rax
1755
1756PUBLIC _sk_parametric_g_hsw
1757_sk_parametric_g_hsw LABEL PROC
1758  DB  72,173                              ; lods          %ds:(%rsi),%rax
1759  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
1760  DB  196,65,116,194,192,2                ; vcmpleps      %ymm8,%ymm1,%ymm8
1761  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
1762  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
1763  DB  196,66,117,168,202                  ; vfmadd213ps   %ymm10,%ymm1,%ymm9
1764  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
1765  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
1766  DB  196,66,117,168,211                  ; vfmadd213ps   %ymm11,%ymm1,%ymm10
1767  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
1768  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
1769  DB  196,98,125,24,37,110,34,0,0         ; vbroadcastss  0x226e(%rip),%ymm12        # 3eac <_sk_callback_hsw+0x24d>
1770  DB  196,98,125,24,45,105,34,0,0         ; vbroadcastss  0x2269(%rip),%ymm13        # 3eb0 <_sk_callback_hsw+0x251>
1771  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
1772  DB  196,98,125,24,45,95,34,0,0          ; vbroadcastss  0x225f(%rip),%ymm13        # 3eb4 <_sk_callback_hsw+0x255>
1773  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
1774  DB  196,98,125,24,45,85,34,0,0          ; vbroadcastss  0x2255(%rip),%ymm13        # 3eb8 <_sk_callback_hsw+0x259>
1775  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
1776  DB  196,98,125,24,29,75,34,0,0          ; vbroadcastss  0x224b(%rip),%ymm11        # 3ebc <_sk_callback_hsw+0x25d>
1777  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
1778  DB  196,98,125,24,37,65,34,0,0          ; vbroadcastss  0x2241(%rip),%ymm12        # 3ec0 <_sk_callback_hsw+0x261>
1779  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
1780  DB  196,98,125,24,37,55,34,0,0          ; vbroadcastss  0x2237(%rip),%ymm12        # 3ec4 <_sk_callback_hsw+0x265>
1781  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
1782  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
1783  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
1784  DB  196,99,125,8,209,1                  ; vroundps      $0x1,%ymm1,%ymm10
1785  DB  196,65,116,92,210                   ; vsubps        %ymm10,%ymm1,%ymm10
1786  DB  196,98,125,24,29,24,34,0,0          ; vbroadcastss  0x2218(%rip),%ymm11        # 3ec8 <_sk_callback_hsw+0x269>
1787  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
1788  DB  196,98,125,24,29,14,34,0,0          ; vbroadcastss  0x220e(%rip),%ymm11        # 3ecc <_sk_callback_hsw+0x26d>
1789  DB  196,98,45,172,217                   ; vfnmadd213ps  %ymm1,%ymm10,%ymm11
1790  DB  196,226,125,24,13,4,34,0,0          ; vbroadcastss  0x2204(%rip),%ymm1        # 3ed0 <_sk_callback_hsw+0x271>
1791  DB  196,193,116,92,202                  ; vsubps        %ymm10,%ymm1,%ymm1
1792  DB  196,98,125,24,21,250,33,0,0         ; vbroadcastss  0x21fa(%rip),%ymm10        # 3ed4 <_sk_callback_hsw+0x275>
1793  DB  197,172,94,201                      ; vdivps        %ymm1,%ymm10,%ymm1
1794  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
1795  DB  196,98,125,24,21,237,33,0,0         ; vbroadcastss  0x21ed(%rip),%ymm10        # 3ed8 <_sk_callback_hsw+0x279>
1796  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
1797  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
1798  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
1799  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
1800  DB  196,195,117,74,201,128              ; vblendvps     %ymm8,%ymm9,%ymm1,%ymm1
1801  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
1802  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
1803  DB  196,98,125,24,5,196,33,0,0          ; vbroadcastss  0x21c4(%rip),%ymm8        # 3edc <_sk_callback_hsw+0x27d>
1804  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
1805  DB  72,173                              ; lods          %ds:(%rsi),%rax
1806  DB  255,224                             ; jmpq          *%rax
1807
1808PUBLIC _sk_parametric_b_hsw
1809_sk_parametric_b_hsw LABEL PROC
1810  DB  72,173                              ; lods          %ds:(%rsi),%rax
1811  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
1812  DB  196,65,108,194,192,2                ; vcmpleps      %ymm8,%ymm2,%ymm8
1813  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
1814  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
1815  DB  196,66,109,168,202                  ; vfmadd213ps   %ymm10,%ymm2,%ymm9
1816  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
1817  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
1818  DB  196,66,109,168,211                  ; vfmadd213ps   %ymm11,%ymm2,%ymm10
1819  DB  196,226,125,24,16                   ; vbroadcastss  (%rax),%ymm2
1820  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
1821  DB  196,98,125,24,37,124,33,0,0         ; vbroadcastss  0x217c(%rip),%ymm12        # 3ee0 <_sk_callback_hsw+0x281>
1822  DB  196,98,125,24,45,119,33,0,0         ; vbroadcastss  0x2177(%rip),%ymm13        # 3ee4 <_sk_callback_hsw+0x285>
1823  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
1824  DB  196,98,125,24,45,109,33,0,0         ; vbroadcastss  0x216d(%rip),%ymm13        # 3ee8 <_sk_callback_hsw+0x289>
1825  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
1826  DB  196,98,125,24,45,99,33,0,0          ; vbroadcastss  0x2163(%rip),%ymm13        # 3eec <_sk_callback_hsw+0x28d>
1827  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
1828  DB  196,98,125,24,29,89,33,0,0          ; vbroadcastss  0x2159(%rip),%ymm11        # 3ef0 <_sk_callback_hsw+0x291>
1829  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
1830  DB  196,98,125,24,37,79,33,0,0          ; vbroadcastss  0x214f(%rip),%ymm12        # 3ef4 <_sk_callback_hsw+0x295>
1831  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
1832  DB  196,98,125,24,37,69,33,0,0          ; vbroadcastss  0x2145(%rip),%ymm12        # 3ef8 <_sk_callback_hsw+0x299>
1833  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
1834  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
1835  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
1836  DB  196,99,125,8,210,1                  ; vroundps      $0x1,%ymm2,%ymm10
1837  DB  196,65,108,92,210                   ; vsubps        %ymm10,%ymm2,%ymm10
1838  DB  196,98,125,24,29,38,33,0,0          ; vbroadcastss  0x2126(%rip),%ymm11        # 3efc <_sk_callback_hsw+0x29d>
1839  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
1840  DB  196,98,125,24,29,28,33,0,0          ; vbroadcastss  0x211c(%rip),%ymm11        # 3f00 <_sk_callback_hsw+0x2a1>
1841  DB  196,98,45,172,218                   ; vfnmadd213ps  %ymm2,%ymm10,%ymm11
1842  DB  196,226,125,24,21,18,33,0,0         ; vbroadcastss  0x2112(%rip),%ymm2        # 3f04 <_sk_callback_hsw+0x2a5>
1843  DB  196,193,108,92,210                  ; vsubps        %ymm10,%ymm2,%ymm2
1844  DB  196,98,125,24,21,8,33,0,0           ; vbroadcastss  0x2108(%rip),%ymm10        # 3f08 <_sk_callback_hsw+0x2a9>
1845  DB  197,172,94,210                      ; vdivps        %ymm2,%ymm10,%ymm2
1846  DB  197,164,88,210                      ; vaddps        %ymm2,%ymm11,%ymm2
1847  DB  196,98,125,24,21,251,32,0,0         ; vbroadcastss  0x20fb(%rip),%ymm10        # 3f0c <_sk_callback_hsw+0x2ad>
1848  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
1849  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
1850  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
1851  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
1852  DB  196,195,109,74,209,128              ; vblendvps     %ymm8,%ymm9,%ymm2,%ymm2
1853  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
1854  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
1855  DB  196,98,125,24,5,210,32,0,0          ; vbroadcastss  0x20d2(%rip),%ymm8        # 3f10 <_sk_callback_hsw+0x2b1>
1856  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
1857  DB  72,173                              ; lods          %ds:(%rsi),%rax
1858  DB  255,224                             ; jmpq          *%rax
1859
1860PUBLIC _sk_parametric_a_hsw
1861_sk_parametric_a_hsw LABEL PROC
1862  DB  72,173                              ; lods          %ds:(%rsi),%rax
1863  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
1864  DB  196,65,100,194,192,2                ; vcmpleps      %ymm8,%ymm3,%ymm8
1865  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
1866  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
1867  DB  196,66,101,168,202                  ; vfmadd213ps   %ymm10,%ymm3,%ymm9
1868  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
1869  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
1870  DB  196,66,101,168,211                  ; vfmadd213ps   %ymm11,%ymm3,%ymm10
1871  DB  196,226,125,24,24                   ; vbroadcastss  (%rax),%ymm3
1872  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
1873  DB  196,98,125,24,37,138,32,0,0         ; vbroadcastss  0x208a(%rip),%ymm12        # 3f14 <_sk_callback_hsw+0x2b5>
1874  DB  196,98,125,24,45,133,32,0,0         ; vbroadcastss  0x2085(%rip),%ymm13        # 3f18 <_sk_callback_hsw+0x2b9>
1875  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
1876  DB  196,98,125,24,45,123,32,0,0         ; vbroadcastss  0x207b(%rip),%ymm13        # 3f1c <_sk_callback_hsw+0x2bd>
1877  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
1878  DB  196,98,125,24,45,113,32,0,0         ; vbroadcastss  0x2071(%rip),%ymm13        # 3f20 <_sk_callback_hsw+0x2c1>
1879  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
1880  DB  196,98,125,24,29,103,32,0,0         ; vbroadcastss  0x2067(%rip),%ymm11        # 3f24 <_sk_callback_hsw+0x2c5>
1881  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
1882  DB  196,98,125,24,37,93,32,0,0          ; vbroadcastss  0x205d(%rip),%ymm12        # 3f28 <_sk_callback_hsw+0x2c9>
1883  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
1884  DB  196,98,125,24,37,83,32,0,0          ; vbroadcastss  0x2053(%rip),%ymm12        # 3f2c <_sk_callback_hsw+0x2cd>
1885  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
1886  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
1887  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
1888  DB  196,99,125,8,211,1                  ; vroundps      $0x1,%ymm3,%ymm10
1889  DB  196,65,100,92,210                   ; vsubps        %ymm10,%ymm3,%ymm10
1890  DB  196,98,125,24,29,52,32,0,0          ; vbroadcastss  0x2034(%rip),%ymm11        # 3f30 <_sk_callback_hsw+0x2d1>
1891  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
1892  DB  196,98,125,24,29,42,32,0,0          ; vbroadcastss  0x202a(%rip),%ymm11        # 3f34 <_sk_callback_hsw+0x2d5>
1893  DB  196,98,45,172,219                   ; vfnmadd213ps  %ymm3,%ymm10,%ymm11
1894  DB  196,226,125,24,29,32,32,0,0         ; vbroadcastss  0x2020(%rip),%ymm3        # 3f38 <_sk_callback_hsw+0x2d9>
1895  DB  196,193,100,92,218                  ; vsubps        %ymm10,%ymm3,%ymm3
1896  DB  196,98,125,24,21,22,32,0,0          ; vbroadcastss  0x2016(%rip),%ymm10        # 3f3c <_sk_callback_hsw+0x2dd>
1897  DB  197,172,94,219                      ; vdivps        %ymm3,%ymm10,%ymm3
1898  DB  197,164,88,219                      ; vaddps        %ymm3,%ymm11,%ymm3
1899  DB  196,98,125,24,21,9,32,0,0           ; vbroadcastss  0x2009(%rip),%ymm10        # 3f40 <_sk_callback_hsw+0x2e1>
1900  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
1901  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
1902  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
1903  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
1904  DB  196,195,101,74,217,128              ; vblendvps     %ymm8,%ymm9,%ymm3,%ymm3
1905  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
1906  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
1907  DB  196,98,125,24,5,224,31,0,0          ; vbroadcastss  0x1fe0(%rip),%ymm8        # 3f44 <_sk_callback_hsw+0x2e5>
1908  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
1909  DB  72,173                              ; lods          %ds:(%rsi),%rax
1910  DB  255,224                             ; jmpq          *%rax
1911
1912PUBLIC _sk_lab_to_xyz_hsw
1913_sk_lab_to_xyz_hsw LABEL PROC
1914  DB  196,98,125,24,5,210,31,0,0          ; vbroadcastss  0x1fd2(%rip),%ymm8        # 3f48 <_sk_callback_hsw+0x2e9>
1915  DB  196,98,125,24,13,205,31,0,0         ; vbroadcastss  0x1fcd(%rip),%ymm9        # 3f4c <_sk_callback_hsw+0x2ed>
1916  DB  196,98,125,24,21,200,31,0,0         ; vbroadcastss  0x1fc8(%rip),%ymm10        # 3f50 <_sk_callback_hsw+0x2f1>
1917  DB  196,194,53,168,202                  ; vfmadd213ps   %ymm10,%ymm9,%ymm1
1918  DB  196,194,53,168,210                  ; vfmadd213ps   %ymm10,%ymm9,%ymm2
1919  DB  196,98,125,24,13,185,31,0,0         ; vbroadcastss  0x1fb9(%rip),%ymm9        # 3f54 <_sk_callback_hsw+0x2f5>
1920  DB  196,66,125,184,200                  ; vfmadd231ps   %ymm8,%ymm0,%ymm9
1921  DB  196,226,125,24,5,175,31,0,0         ; vbroadcastss  0x1faf(%rip),%ymm0        # 3f58 <_sk_callback_hsw+0x2f9>
1922  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
1923  DB  196,98,125,24,5,166,31,0,0          ; vbroadcastss  0x1fa6(%rip),%ymm8        # 3f5c <_sk_callback_hsw+0x2fd>
1924  DB  196,98,117,168,192                  ; vfmadd213ps   %ymm0,%ymm1,%ymm8
1925  DB  196,98,125,24,13,156,31,0,0         ; vbroadcastss  0x1f9c(%rip),%ymm9        # 3f60 <_sk_callback_hsw+0x301>
1926  DB  196,98,109,172,200                  ; vfnmadd213ps  %ymm0,%ymm2,%ymm9
1927  DB  196,193,60,89,200                   ; vmulps        %ymm8,%ymm8,%ymm1
1928  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1929  DB  196,226,125,24,21,137,31,0,0        ; vbroadcastss  0x1f89(%rip),%ymm2        # 3f64 <_sk_callback_hsw+0x305>
1930  DB  197,108,194,209,1                   ; vcmpltps      %ymm1,%ymm2,%ymm10
1931  DB  196,98,125,24,29,127,31,0,0         ; vbroadcastss  0x1f7f(%rip),%ymm11        # 3f68 <_sk_callback_hsw+0x309>
1932  DB  196,65,60,88,195                    ; vaddps        %ymm11,%ymm8,%ymm8
1933  DB  196,98,125,24,37,117,31,0,0         ; vbroadcastss  0x1f75(%rip),%ymm12        # 3f6c <_sk_callback_hsw+0x30d>
1934  DB  196,65,60,89,196                    ; vmulps        %ymm12,%ymm8,%ymm8
1935  DB  196,99,61,74,193,160                ; vblendvps     %ymm10,%ymm1,%ymm8,%ymm8
1936  DB  197,252,89,200                      ; vmulps        %ymm0,%ymm0,%ymm1
1937  DB  197,252,89,201                      ; vmulps        %ymm1,%ymm0,%ymm1
1938  DB  197,108,194,209,1                   ; vcmpltps      %ymm1,%ymm2,%ymm10
1939  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
1940  DB  196,193,124,89,196                  ; vmulps        %ymm12,%ymm0,%ymm0
1941  DB  196,227,125,74,201,160              ; vblendvps     %ymm10,%ymm1,%ymm0,%ymm1
1942  DB  196,193,52,89,193                   ; vmulps        %ymm9,%ymm9,%ymm0
1943  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
1944  DB  197,236,194,208,1                   ; vcmpltps      %ymm0,%ymm2,%ymm2
1945  DB  196,65,52,88,203                    ; vaddps        %ymm11,%ymm9,%ymm9
1946  DB  196,65,52,89,204                    ; vmulps        %ymm12,%ymm9,%ymm9
1947  DB  196,227,53,74,208,32                ; vblendvps     %ymm2,%ymm0,%ymm9,%ymm2
1948  DB  196,226,125,24,5,42,31,0,0          ; vbroadcastss  0x1f2a(%rip),%ymm0        # 3f70 <_sk_callback_hsw+0x311>
1949  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1950  DB  196,98,125,24,5,33,31,0,0           ; vbroadcastss  0x1f21(%rip),%ymm8        # 3f74 <_sk_callback_hsw+0x315>
1951  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
1952  DB  72,173                              ; lods          %ds:(%rsi),%rax
1953  DB  255,224                             ; jmpq          *%rax
1954
1955PUBLIC _sk_load_a8_hsw
1956_sk_load_a8_hsw LABEL PROC
1957  DB  73,137,200                          ; mov           %rcx,%r8
1958  DB  72,173                              ; lods          %ds:(%rsi),%rax
1959  DB  72,139,0                            ; mov           (%rax),%rax
1960  DB  72,1,248                            ; add           %rdi,%rax
1961  DB  77,133,192                          ; test          %r8,%r8
1962  DB  117,45                              ; jne           2099 <_sk_load_a8_hsw+0x3d>
1963  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
1964  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
1965  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
1966  DB  196,226,125,24,13,246,30,0,0        ; vbroadcastss  0x1ef6(%rip),%ymm1        # 3f78 <_sk_callback_hsw+0x319>
1967  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
1968  DB  72,173                              ; lods          %ds:(%rsi),%rax
1969  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
1970  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
1971  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
1972  DB  76,137,193                          ; mov           %r8,%rcx
1973  DB  255,224                             ; jmpq          *%rax
1974  DB  49,201                              ; xor           %ecx,%ecx
1975  DB  77,137,194                          ; mov           %r8,%r10
1976  DB  69,49,201                           ; xor           %r9d,%r9d
1977  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
1978  DB  72,255,192                          ; inc           %rax
1979  DB  73,211,227                          ; shl           %cl,%r11
1980  DB  77,9,217                            ; or            %r11,%r9
1981  DB  72,131,193,8                        ; add           $0x8,%rcx
1982  DB  73,255,202                          ; dec           %r10
1983  DB  117,234                             ; jne           20a1 <_sk_load_a8_hsw+0x45>
1984  DB  196,193,249,110,193                 ; vmovq         %r9,%xmm0
1985  DB  235,178                             ; jmp           2070 <_sk_load_a8_hsw+0x14>
1986
1987PUBLIC _sk_gather_a8_hsw
1988_sk_gather_a8_hsw LABEL PROC
1989  DB  65,87                               ; push          %r15
1990  DB  65,86                               ; push          %r14
1991  DB  65,84                               ; push          %r12
1992  DB  83                                  ; push          %rbx
1993  DB  72,173                              ; lods          %ds:(%rsi),%rax
1994  DB  76,139,0                            ; mov           (%rax),%r8
1995  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
1996  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
1997  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
1998  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
1999  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2000  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2001  DB  65,137,193                          ; mov           %eax,%r9d
2002  DB  72,193,232,32                       ; shr           $0x20,%rax
2003  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2004  DB  69,137,211                          ; mov           %r10d,%r11d
2005  DB  73,193,234,32                       ; shr           $0x20,%r10
2006  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2007  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2008  DB  65,137,222                          ; mov           %ebx,%r14d
2009  DB  72,193,235,32                       ; shr           $0x20,%rbx
2010  DB  196,193,249,126,199                 ; vmovq         %xmm0,%r15
2011  DB  69,137,252                          ; mov           %r15d,%r12d
2012  DB  73,193,239,32                       ; shr           $0x20,%r15
2013  DB  196,131,121,32,4,24,0               ; vpinsrb       $0x0,(%r8,%r11,1),%xmm0,%xmm0
2014  DB  196,131,121,32,4,16,1               ; vpinsrb       $0x1,(%r8,%r10,1),%xmm0,%xmm0
2015  DB  71,15,182,12,8                      ; movzbl        (%r8,%r9,1),%r9d
2016  DB  196,195,121,32,193,2                ; vpinsrb       $0x2,%r9d,%xmm0,%xmm0
2017  DB  65,15,182,4,0                       ; movzbl        (%r8,%rax,1),%eax
2018  DB  196,227,121,32,192,3                ; vpinsrb       $0x3,%eax,%xmm0,%xmm0
2019  DB  67,15,182,4,32                      ; movzbl        (%r8,%r12,1),%eax
2020  DB  196,227,121,32,192,4                ; vpinsrb       $0x4,%eax,%xmm0,%xmm0
2021  DB  67,15,182,4,56                      ; movzbl        (%r8,%r15,1),%eax
2022  DB  196,227,121,32,192,5                ; vpinsrb       $0x5,%eax,%xmm0,%xmm0
2023  DB  67,15,182,4,48                      ; movzbl        (%r8,%r14,1),%eax
2024  DB  196,227,121,32,192,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm0
2025  DB  65,15,182,4,24                      ; movzbl        (%r8,%rbx,1),%eax
2026  DB  196,227,121,32,192,7                ; vpinsrb       $0x7,%eax,%xmm0,%xmm0
2027  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2028  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2029  DB  196,226,125,24,13,1,30,0,0          ; vbroadcastss  0x1e01(%rip),%ymm1        # 3f7c <_sk_callback_hsw+0x31d>
2030  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
2031  DB  72,173                              ; lods          %ds:(%rsi),%rax
2032  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
2033  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
2034  DB  197,237,239,210                     ; vpxor         %ymm2,%ymm2,%ymm2
2035  DB  91                                  ; pop           %rbx
2036  DB  65,92                               ; pop           %r12
2037  DB  65,94                               ; pop           %r14
2038  DB  65,95                               ; pop           %r15
2039  DB  255,224                             ; jmpq          *%rax
2040
2041PUBLIC _sk_store_a8_hsw
2042_sk_store_a8_hsw LABEL PROC
2043  DB  72,173                              ; lods          %ds:(%rsi),%rax
2044  DB  76,139,16                           ; mov           (%rax),%r10
2045  DB  196,98,125,24,5,220,29,0,0          ; vbroadcastss  0x1ddc(%rip),%ymm8        # 3f80 <_sk_callback_hsw+0x321>
2046  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
2047  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
2048  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
2049  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
2050  DB  196,65,57,103,192                   ; vpackuswb     %xmm8,%xmm8,%xmm8
2051  DB  72,133,201                          ; test          %rcx,%rcx
2052  DB  117,10                              ; jne           21cd <_sk_store_a8_hsw+0x37>
2053  DB  196,65,123,17,4,58                  ; vmovsd        %xmm8,(%r10,%rdi,1)
2054  DB  72,173                              ; lods          %ds:(%rsi),%rax
2055  DB  255,224                             ; jmpq          *%rax
2056  DB  65,137,200                          ; mov           %ecx,%r8d
2057  DB  65,128,224,7                        ; and           $0x7,%r8b
2058  DB  65,254,200                          ; dec           %r8b
2059  DB  65,128,248,6                        ; cmp           $0x6,%r8b
2060  DB  119,236                             ; ja            21c9 <_sk_store_a8_hsw+0x33>
2061  DB  196,66,121,48,192                   ; vpmovzxbw     %xmm8,%xmm8
2062  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
2063  DB  76,141,13,67,0,0,0                  ; lea           0x43(%rip),%r9        # 2230 <_sk_store_a8_hsw+0x9a>
2064  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
2065  DB  76,1,200                            ; add           %r9,%rax
2066  DB  255,224                             ; jmpq          *%rax
2067  DB  196,67,121,20,68,58,6,12            ; vpextrb       $0xc,%xmm8,0x6(%r10,%rdi,1)
2068  DB  196,67,121,20,68,58,5,10            ; vpextrb       $0xa,%xmm8,0x5(%r10,%rdi,1)
2069  DB  196,67,121,20,68,58,4,8             ; vpextrb       $0x8,%xmm8,0x4(%r10,%rdi,1)
2070  DB  196,67,121,20,68,58,3,6             ; vpextrb       $0x6,%xmm8,0x3(%r10,%rdi,1)
2071  DB  196,67,121,20,68,58,2,4             ; vpextrb       $0x4,%xmm8,0x2(%r10,%rdi,1)
2072  DB  196,67,121,20,68,58,1,2             ; vpextrb       $0x2,%xmm8,0x1(%r10,%rdi,1)
2073  DB  196,67,121,20,4,58,0                ; vpextrb       $0x0,%xmm8,(%r10,%rdi,1)
2074  DB  235,154                             ; jmp           21c9 <_sk_store_a8_hsw+0x33>
2075  DB  144                                 ; nop
2076  DB  246,255                             ; idiv          %bh
2077  DB  255                                 ; (bad)
2078  DB  255                                 ; (bad)
2079  DB  238                                 ; out           %al,(%dx)
2080  DB  255                                 ; (bad)
2081  DB  255                                 ; (bad)
2082  DB  255,230                             ; jmpq          *%rsi
2083  DB  255                                 ; (bad)
2084  DB  255                                 ; (bad)
2085  DB  255                                 ; (bad)
2086  DB  222,255                             ; fdivrp        %st,%st(7)
2087  DB  255                                 ; (bad)
2088  DB  255,214                             ; callq         *%rsi
2089  DB  255                                 ; (bad)
2090  DB  255                                 ; (bad)
2091  DB  255,206                             ; dec           %esi
2092  DB  255                                 ; (bad)
2093  DB  255                                 ; (bad)
2094  DB  255,198                             ; inc           %esi
2095  DB  255                                 ; (bad)
2096  DB  255                                 ; (bad)
2097  DB  255                                 ; .byte         0xff
2098
2099PUBLIC _sk_load_g8_hsw
2100_sk_load_g8_hsw LABEL PROC
2101  DB  73,137,200                          ; mov           %rcx,%r8
2102  DB  72,173                              ; lods          %ds:(%rsi),%rax
2103  DB  72,139,0                            ; mov           (%rax),%rax
2104  DB  72,1,248                            ; add           %rdi,%rax
2105  DB  77,133,192                          ; test          %r8,%r8
2106  DB  117,50                              ; jne           228e <_sk_load_g8_hsw+0x42>
2107  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
2108  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2109  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2110  DB  196,226,125,24,13,18,29,0,0         ; vbroadcastss  0x1d12(%rip),%ymm1        # 3f84 <_sk_callback_hsw+0x325>
2111  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2112  DB  72,173                              ; lods          %ds:(%rsi),%rax
2113  DB  196,226,125,24,29,7,29,0,0          ; vbroadcastss  0x1d07(%rip),%ymm3        # 3f88 <_sk_callback_hsw+0x329>
2114  DB  76,137,193                          ; mov           %r8,%rcx
2115  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
2116  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
2117  DB  255,224                             ; jmpq          *%rax
2118  DB  49,201                              ; xor           %ecx,%ecx
2119  DB  77,137,194                          ; mov           %r8,%r10
2120  DB  69,49,201                           ; xor           %r9d,%r9d
2121  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
2122  DB  72,255,192                          ; inc           %rax
2123  DB  73,211,227                          ; shl           %cl,%r11
2124  DB  77,9,217                            ; or            %r11,%r9
2125  DB  72,131,193,8                        ; add           $0x8,%rcx
2126  DB  73,255,202                          ; dec           %r10
2127  DB  117,234                             ; jne           2296 <_sk_load_g8_hsw+0x4a>
2128  DB  196,193,249,110,193                 ; vmovq         %r9,%xmm0
2129  DB  235,173                             ; jmp           2260 <_sk_load_g8_hsw+0x14>
2130
2131PUBLIC _sk_gather_g8_hsw
2132_sk_gather_g8_hsw LABEL PROC
2133  DB  65,87                               ; push          %r15
2134  DB  65,86                               ; push          %r14
2135  DB  65,84                               ; push          %r12
2136  DB  83                                  ; push          %rbx
2137  DB  72,173                              ; lods          %ds:(%rsi),%rax
2138  DB  76,139,0                            ; mov           (%rax),%r8
2139  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2140  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2141  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2142  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2143  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2144  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2145  DB  65,137,193                          ; mov           %eax,%r9d
2146  DB  72,193,232,32                       ; shr           $0x20,%rax
2147  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2148  DB  69,137,211                          ; mov           %r10d,%r11d
2149  DB  73,193,234,32                       ; shr           $0x20,%r10
2150  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2151  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2152  DB  65,137,222                          ; mov           %ebx,%r14d
2153  DB  72,193,235,32                       ; shr           $0x20,%rbx
2154  DB  196,193,249,126,199                 ; vmovq         %xmm0,%r15
2155  DB  69,137,252                          ; mov           %r15d,%r12d
2156  DB  73,193,239,32                       ; shr           $0x20,%r15
2157  DB  196,131,121,32,4,24,0               ; vpinsrb       $0x0,(%r8,%r11,1),%xmm0,%xmm0
2158  DB  196,131,121,32,4,16,1               ; vpinsrb       $0x1,(%r8,%r10,1),%xmm0,%xmm0
2159  DB  71,15,182,12,8                      ; movzbl        (%r8,%r9,1),%r9d
2160  DB  196,195,121,32,193,2                ; vpinsrb       $0x2,%r9d,%xmm0,%xmm0
2161  DB  65,15,182,4,0                       ; movzbl        (%r8,%rax,1),%eax
2162  DB  196,227,121,32,192,3                ; vpinsrb       $0x3,%eax,%xmm0,%xmm0
2163  DB  67,15,182,4,32                      ; movzbl        (%r8,%r12,1),%eax
2164  DB  196,227,121,32,192,4                ; vpinsrb       $0x4,%eax,%xmm0,%xmm0
2165  DB  67,15,182,4,56                      ; movzbl        (%r8,%r15,1),%eax
2166  DB  196,227,121,32,192,5                ; vpinsrb       $0x5,%eax,%xmm0,%xmm0
2167  DB  67,15,182,4,48                      ; movzbl        (%r8,%r14,1),%eax
2168  DB  196,227,121,32,192,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm0
2169  DB  65,15,182,4,24                      ; movzbl        (%r8,%rbx,1),%eax
2170  DB  196,227,121,32,192,7                ; vpinsrb       $0x7,%eax,%xmm0,%xmm0
2171  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2172  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2173  DB  196,226,125,24,13,28,28,0,0         ; vbroadcastss  0x1c1c(%rip),%ymm1        # 3f8c <_sk_callback_hsw+0x32d>
2174  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2175  DB  72,173                              ; lods          %ds:(%rsi),%rax
2176  DB  196,226,125,24,29,17,28,0,0         ; vbroadcastss  0x1c11(%rip),%ymm3        # 3f90 <_sk_callback_hsw+0x331>
2177  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
2178  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
2179  DB  91                                  ; pop           %rbx
2180  DB  65,92                               ; pop           %r12
2181  DB  65,94                               ; pop           %r14
2182  DB  65,95                               ; pop           %r15
2183  DB  255,224                             ; jmpq          *%rax
2184
2185PUBLIC _sk_gather_i8_hsw
2186_sk_gather_i8_hsw LABEL PROC
2187  DB  72,173                              ; lods          %ds:(%rsi),%rax
2188  DB  73,137,192                          ; mov           %rax,%r8
2189  DB  77,133,192                          ; test          %r8,%r8
2190  DB  116,5                               ; je            239f <_sk_gather_i8_hsw+0xf>
2191  DB  76,137,192                          ; mov           %r8,%rax
2192  DB  235,2                               ; jmp           23a1 <_sk_gather_i8_hsw+0x11>
2193  DB  72,173                              ; lods          %ds:(%rsi),%rax
2194  DB  65,87                               ; push          %r15
2195  DB  65,86                               ; push          %r14
2196  DB  65,85                               ; push          %r13
2197  DB  65,84                               ; push          %r12
2198  DB  83                                  ; push          %rbx
2199  DB  76,139,8                            ; mov           (%rax),%r9
2200  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2201  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2202  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2203  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2204  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2205  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2206  DB  65,137,194                          ; mov           %eax,%r10d
2207  DB  72,193,232,32                       ; shr           $0x20,%rax
2208  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
2209  DB  69,137,222                          ; mov           %r11d,%r14d
2210  DB  73,193,235,32                       ; shr           $0x20,%r11
2211  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2212  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2213  DB  65,137,223                          ; mov           %ebx,%r15d
2214  DB  72,193,235,32                       ; shr           $0x20,%rbx
2215  DB  196,193,249,126,196                 ; vmovq         %xmm0,%r12
2216  DB  69,137,229                          ; mov           %r12d,%r13d
2217  DB  73,193,236,32                       ; shr           $0x20,%r12
2218  DB  196,131,121,32,4,49,0               ; vpinsrb       $0x0,(%r9,%r14,1),%xmm0,%xmm0
2219  DB  196,131,121,32,4,25,1               ; vpinsrb       $0x1,(%r9,%r11,1),%xmm0,%xmm0
2220  DB  196,131,121,32,4,17,2               ; vpinsrb       $0x2,(%r9,%r10,1),%xmm0,%xmm0
2221  DB  196,195,121,32,4,1,3                ; vpinsrb       $0x3,(%r9,%rax,1),%xmm0,%xmm0
2222  DB  196,131,121,32,4,41,4               ; vpinsrb       $0x4,(%r9,%r13,1),%xmm0,%xmm0
2223  DB  196,131,121,32,4,33,5               ; vpinsrb       $0x5,(%r9,%r12,1),%xmm0,%xmm0
2224  DB  196,131,121,32,4,57,6               ; vpinsrb       $0x6,(%r9,%r15,1),%xmm0,%xmm0
2225  DB  196,195,121,32,4,25,7               ; vpinsrb       $0x7,(%r9,%rbx,1),%xmm0,%xmm0
2226  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2227  DB  73,139,64,8                         ; mov           0x8(%r8),%rax
2228  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
2229  DB  196,226,117,144,28,128              ; vpgatherdd    %ymm1,(%rax,%ymm0,4),%ymm3
2230  DB  197,229,219,5,17,29,0,0             ; vpand         0x1d11(%rip),%ymm3,%ymm0        # 4160 <_sk_callback_hsw+0x501>
2231  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2232  DB  196,98,125,24,5,56,27,0,0           ; vbroadcastss  0x1b38(%rip),%ymm8        # 3f94 <_sk_callback_hsw+0x335>
2233  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2234  DB  196,226,101,0,13,22,29,0,0          ; vpshufb       0x1d16(%rip),%ymm3,%ymm1        # 4180 <_sk_callback_hsw+0x521>
2235  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2236  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2237  DB  196,226,101,0,21,36,29,0,0          ; vpshufb       0x1d24(%rip),%ymm3,%ymm2        # 41a0 <_sk_callback_hsw+0x541>
2238  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2239  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2240  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
2241  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2242  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2243  DB  72,173                              ; lods          %ds:(%rsi),%rax
2244  DB  91                                  ; pop           %rbx
2245  DB  65,92                               ; pop           %r12
2246  DB  65,93                               ; pop           %r13
2247  DB  65,94                               ; pop           %r14
2248  DB  65,95                               ; pop           %r15
2249  DB  255,224                             ; jmpq          *%rax
2250
2251PUBLIC _sk_load_565_hsw
2252_sk_load_565_hsw LABEL PROC
2253  DB  72,173                              ; lods          %ds:(%rsi),%rax
2254  DB  76,139,16                           ; mov           (%rax),%r10
2255  DB  72,133,201                          ; test          %rcx,%rcx
2256  DB  117,114                             ; jne           251c <_sk_load_565_hsw+0x7c>
2257  DB  196,193,122,111,4,122               ; vmovdqu       (%r10,%rdi,2),%xmm0
2258  DB  196,226,125,51,208                  ; vpmovzxwd     %xmm0,%ymm2
2259  DB  196,226,125,88,5,218,26,0,0         ; vpbroadcastd  0x1ada(%rip),%ymm0        # 3f98 <_sk_callback_hsw+0x339>
2260  DB  197,237,219,192                     ; vpand         %ymm0,%ymm2,%ymm0
2261  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2262  DB  196,226,125,24,13,205,26,0,0        ; vbroadcastss  0x1acd(%rip),%ymm1        # 3f9c <_sk_callback_hsw+0x33d>
2263  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2264  DB  196,226,125,88,13,196,26,0,0        ; vpbroadcastd  0x1ac4(%rip),%ymm1        # 3fa0 <_sk_callback_hsw+0x341>
2265  DB  197,237,219,201                     ; vpand         %ymm1,%ymm2,%ymm1
2266  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2267  DB  196,226,125,24,29,183,26,0,0        ; vbroadcastss  0x1ab7(%rip),%ymm3        # 3fa4 <_sk_callback_hsw+0x345>
2268  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
2269  DB  196,226,125,88,29,174,26,0,0        ; vpbroadcastd  0x1aae(%rip),%ymm3        # 3fa8 <_sk_callback_hsw+0x349>
2270  DB  197,237,219,211                     ; vpand         %ymm3,%ymm2,%ymm2
2271  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2272  DB  196,226,125,24,29,161,26,0,0        ; vbroadcastss  0x1aa1(%rip),%ymm3        # 3fac <_sk_callback_hsw+0x34d>
2273  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
2274  DB  72,173                              ; lods          %ds:(%rsi),%rax
2275  DB  196,226,125,24,29,150,26,0,0        ; vbroadcastss  0x1a96(%rip),%ymm3        # 3fb0 <_sk_callback_hsw+0x351>
2276  DB  255,224                             ; jmpq          *%rax
2277  DB  65,137,200                          ; mov           %ecx,%r8d
2278  DB  65,128,224,7                        ; and           $0x7,%r8b
2279  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2280  DB  65,254,200                          ; dec           %r8b
2281  DB  65,128,248,6                        ; cmp           $0x6,%r8b
2282  DB  119,128                             ; ja            24b0 <_sk_load_565_hsw+0x10>
2283  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
2284  DB  76,141,13,73,0,0,0                  ; lea           0x49(%rip),%r9        # 2584 <_sk_load_565_hsw+0xe4>
2285  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
2286  DB  76,1,200                            ; add           %r9,%rax
2287  DB  255,224                             ; jmpq          *%rax
2288  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2289  DB  196,193,121,196,68,122,12,6         ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
2290  DB  196,193,121,196,68,122,10,5         ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
2291  DB  196,193,121,196,68,122,8,4          ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
2292  DB  196,193,121,196,68,122,6,3          ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
2293  DB  196,193,121,196,68,122,4,2          ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
2294  DB  196,193,121,196,68,122,2,1          ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
2295  DB  196,193,121,196,4,122,0             ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm0,%xmm0
2296  DB  233,44,255,255,255                  ; jmpq          24b0 <_sk_load_565_hsw+0x10>
2297  DB  244                                 ; hlt
2298  DB  255                                 ; (bad)
2299  DB  255                                 ; (bad)
2300  DB  255                                 ; (bad)
2301  DB  236                                 ; in            (%dx),%al
2302  DB  255                                 ; (bad)
2303  DB  255                                 ; (bad)
2304  DB  255,228                             ; jmpq          *%rsp
2305  DB  255                                 ; (bad)
2306  DB  255                                 ; (bad)
2307  DB  255                                 ; (bad)
2308  DB  220,255                             ; fdivr         %st,%st(7)
2309  DB  255                                 ; (bad)
2310  DB  255,212                             ; callq         *%rsp
2311  DB  255                                 ; (bad)
2312  DB  255                                 ; (bad)
2313  DB  255,204                             ; dec           %esp
2314  DB  255                                 ; (bad)
2315  DB  255                                 ; (bad)
2316  DB  255,192                             ; inc           %eax
2317  DB  255                                 ; (bad)
2318  DB  255                                 ; (bad)
2319  DB  255                                 ; .byte         0xff
2320
2321PUBLIC _sk_gather_565_hsw
2322_sk_gather_565_hsw LABEL PROC
2323  DB  65,87                               ; push          %r15
2324  DB  65,86                               ; push          %r14
2325  DB  65,84                               ; push          %r12
2326  DB  83                                  ; push          %rbx
2327  DB  72,173                              ; lods          %ds:(%rsi),%rax
2328  DB  76,139,0                            ; mov           (%rax),%r8
2329  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2330  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2331  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2332  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2333  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2334  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2335  DB  65,137,193                          ; mov           %eax,%r9d
2336  DB  72,193,232,32                       ; shr           $0x20,%rax
2337  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2338  DB  69,137,211                          ; mov           %r10d,%r11d
2339  DB  73,193,234,32                       ; shr           $0x20,%r10
2340  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2341  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2342  DB  65,137,222                          ; mov           %ebx,%r14d
2343  DB  72,193,235,32                       ; shr           $0x20,%rbx
2344  DB  196,193,249,126,199                 ; vmovq         %xmm0,%r15
2345  DB  69,137,252                          ; mov           %r15d,%r12d
2346  DB  73,193,239,32                       ; shr           $0x20,%r15
2347  DB  71,15,183,20,80                     ; movzwl        (%r8,%r10,2),%r10d
2348  DB  71,15,183,28,88                     ; movzwl        (%r8,%r11,2),%r11d
2349  DB  196,193,121,110,195                 ; vmovd         %r11d,%xmm0
2350  DB  196,193,121,196,194,1               ; vpinsrw       $0x1,%r10d,%xmm0,%xmm0
2351  DB  71,15,183,12,72                     ; movzwl        (%r8,%r9,2),%r9d
2352  DB  196,193,121,196,193,2               ; vpinsrw       $0x2,%r9d,%xmm0,%xmm0
2353  DB  65,15,183,4,64                      ; movzwl        (%r8,%rax,2),%eax
2354  DB  197,249,196,192,3                   ; vpinsrw       $0x3,%eax,%xmm0,%xmm0
2355  DB  67,15,183,4,96                      ; movzwl        (%r8,%r12,2),%eax
2356  DB  197,249,196,192,4                   ; vpinsrw       $0x4,%eax,%xmm0,%xmm0
2357  DB  67,15,183,4,120                     ; movzwl        (%r8,%r15,2),%eax
2358  DB  197,249,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm0,%xmm0
2359  DB  67,15,183,4,112                     ; movzwl        (%r8,%r14,2),%eax
2360  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
2361  DB  65,15,183,4,88                      ; movzwl        (%r8,%rbx,2),%eax
2362  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
2363  DB  196,226,125,51,208                  ; vpmovzxwd     %xmm0,%ymm2
2364  DB  196,226,125,88,5,89,25,0,0          ; vpbroadcastd  0x1959(%rip),%ymm0        # 3fb4 <_sk_callback_hsw+0x355>
2365  DB  197,237,219,192                     ; vpand         %ymm0,%ymm2,%ymm0
2366  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2367  DB  196,226,125,24,13,76,25,0,0         ; vbroadcastss  0x194c(%rip),%ymm1        # 3fb8 <_sk_callback_hsw+0x359>
2368  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2369  DB  196,226,125,88,13,67,25,0,0         ; vpbroadcastd  0x1943(%rip),%ymm1        # 3fbc <_sk_callback_hsw+0x35d>
2370  DB  197,237,219,201                     ; vpand         %ymm1,%ymm2,%ymm1
2371  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2372  DB  196,226,125,24,29,54,25,0,0         ; vbroadcastss  0x1936(%rip),%ymm3        # 3fc0 <_sk_callback_hsw+0x361>
2373  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
2374  DB  196,226,125,88,29,45,25,0,0         ; vpbroadcastd  0x192d(%rip),%ymm3        # 3fc4 <_sk_callback_hsw+0x365>
2375  DB  197,237,219,211                     ; vpand         %ymm3,%ymm2,%ymm2
2376  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2377  DB  196,226,125,24,29,32,25,0,0         ; vbroadcastss  0x1920(%rip),%ymm3        # 3fc8 <_sk_callback_hsw+0x369>
2378  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
2379  DB  72,173                              ; lods          %ds:(%rsi),%rax
2380  DB  196,226,125,24,29,21,25,0,0         ; vbroadcastss  0x1915(%rip),%ymm3        # 3fcc <_sk_callback_hsw+0x36d>
2381  DB  91                                  ; pop           %rbx
2382  DB  65,92                               ; pop           %r12
2383  DB  65,94                               ; pop           %r14
2384  DB  65,95                               ; pop           %r15
2385  DB  255,224                             ; jmpq          *%rax
2386
2387PUBLIC _sk_store_565_hsw
2388_sk_store_565_hsw LABEL PROC
2389  DB  72,173                              ; lods          %ds:(%rsi),%rax
2390  DB  76,139,16                           ; mov           (%rax),%r10
2391  DB  196,98,125,24,5,2,25,0,0            ; vbroadcastss  0x1902(%rip),%ymm8        # 3fd0 <_sk_callback_hsw+0x371>
2392  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
2393  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
2394  DB  196,193,53,114,241,11               ; vpslld        $0xb,%ymm9,%ymm9
2395  DB  196,98,125,24,21,237,24,0,0         ; vbroadcastss  0x18ed(%rip),%ymm10        # 3fd4 <_sk_callback_hsw+0x375>
2396  DB  196,65,116,89,210                   ; vmulps        %ymm10,%ymm1,%ymm10
2397  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
2398  DB  196,193,45,114,242,5                ; vpslld        $0x5,%ymm10,%ymm10
2399  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
2400  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
2401  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
2402  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
2403  DB  196,67,125,57,193,1                 ; vextracti128  $0x1,%ymm8,%xmm9
2404  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
2405  DB  72,133,201                          ; test          %rcx,%rcx
2406  DB  117,10                              ; jne           2725 <_sk_store_565_hsw+0x65>
2407  DB  196,65,122,127,4,122                ; vmovdqu       %xmm8,(%r10,%rdi,2)
2408  DB  72,173                              ; lods          %ds:(%rsi),%rax
2409  DB  255,224                             ; jmpq          *%rax
2410  DB  65,137,200                          ; mov           %ecx,%r8d
2411  DB  65,128,224,7                        ; and           $0x7,%r8b
2412  DB  65,254,200                          ; dec           %r8b
2413  DB  65,128,248,6                        ; cmp           $0x6,%r8b
2414  DB  119,236                             ; ja            2721 <_sk_store_565_hsw+0x61>
2415  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
2416  DB  76,141,13,68,0,0,0                  ; lea           0x44(%rip),%r9        # 2784 <_sk_store_565_hsw+0xc4>
2417  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
2418  DB  76,1,200                            ; add           %r9,%rax
2419  DB  255,224                             ; jmpq          *%rax
2420  DB  196,67,121,21,68,122,12,6           ; vpextrw       $0x6,%xmm8,0xc(%r10,%rdi,2)
2421  DB  196,67,121,21,68,122,10,5           ; vpextrw       $0x5,%xmm8,0xa(%r10,%rdi,2)
2422  DB  196,67,121,21,68,122,8,4            ; vpextrw       $0x4,%xmm8,0x8(%r10,%rdi,2)
2423  DB  196,67,121,21,68,122,6,3            ; vpextrw       $0x3,%xmm8,0x6(%r10,%rdi,2)
2424  DB  196,67,121,21,68,122,4,2            ; vpextrw       $0x2,%xmm8,0x4(%r10,%rdi,2)
2425  DB  196,67,121,21,68,122,2,1            ; vpextrw       $0x1,%xmm8,0x2(%r10,%rdi,2)
2426  DB  196,67,121,21,4,122,0               ; vpextrw       $0x0,%xmm8,(%r10,%rdi,2)
2427  DB  235,159                             ; jmp           2721 <_sk_store_565_hsw+0x61>
2428  DB  102,144                             ; xchg          %ax,%ax
2429  DB  245                                 ; cmc
2430  DB  255                                 ; (bad)
2431  DB  255                                 ; (bad)
2432  DB  255                                 ; (bad)
2433  DB  237                                 ; in            (%dx),%eax
2434  DB  255                                 ; (bad)
2435  DB  255                                 ; (bad)
2436  DB  255,229                             ; jmpq          *%rbp
2437  DB  255                                 ; (bad)
2438  DB  255                                 ; (bad)
2439  DB  255                                 ; (bad)
2440  DB  221,255                             ; (bad)
2441  DB  255                                 ; (bad)
2442  DB  255,213                             ; callq         *%rbp
2443  DB  255                                 ; (bad)
2444  DB  255                                 ; (bad)
2445  DB  255,205                             ; dec           %ebp
2446  DB  255                                 ; (bad)
2447  DB  255                                 ; (bad)
2448  DB  255,197                             ; inc           %ebp
2449  DB  255                                 ; (bad)
2450  DB  255                                 ; (bad)
2451  DB  255                                 ; .byte         0xff
2452
2453PUBLIC _sk_load_4444_hsw
2454_sk_load_4444_hsw LABEL PROC
2455  DB  72,173                              ; lods          %ds:(%rsi),%rax
2456  DB  76,139,16                           ; mov           (%rax),%r10
2457  DB  72,133,201                          ; test          %rcx,%rcx
2458  DB  15,133,138,0,0,0                    ; jne           2838 <_sk_load_4444_hsw+0x98>
2459  DB  196,193,122,111,4,122               ; vmovdqu       (%r10,%rdi,2),%xmm0
2460  DB  196,226,125,51,216                  ; vpmovzxwd     %xmm0,%ymm3
2461  DB  196,226,125,88,5,22,24,0,0          ; vpbroadcastd  0x1816(%rip),%ymm0        # 3fd8 <_sk_callback_hsw+0x379>
2462  DB  197,229,219,192                     ; vpand         %ymm0,%ymm3,%ymm0
2463  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2464  DB  196,226,125,24,13,9,24,0,0          ; vbroadcastss  0x1809(%rip),%ymm1        # 3fdc <_sk_callback_hsw+0x37d>
2465  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2466  DB  196,226,125,88,13,0,24,0,0          ; vpbroadcastd  0x1800(%rip),%ymm1        # 3fe0 <_sk_callback_hsw+0x381>
2467  DB  197,229,219,201                     ; vpand         %ymm1,%ymm3,%ymm1
2468  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2469  DB  196,226,125,24,21,243,23,0,0        ; vbroadcastss  0x17f3(%rip),%ymm2        # 3fe4 <_sk_callback_hsw+0x385>
2470  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
2471  DB  196,226,125,88,21,234,23,0,0        ; vpbroadcastd  0x17ea(%rip),%ymm2        # 3fe8 <_sk_callback_hsw+0x389>
2472  DB  197,229,219,210                     ; vpand         %ymm2,%ymm3,%ymm2
2473  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2474  DB  196,98,125,24,5,221,23,0,0          ; vbroadcastss  0x17dd(%rip),%ymm8        # 3fec <_sk_callback_hsw+0x38d>
2475  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2476  DB  196,98,125,88,5,211,23,0,0          ; vpbroadcastd  0x17d3(%rip),%ymm8        # 3ff0 <_sk_callback_hsw+0x391>
2477  DB  196,193,101,219,216                 ; vpand         %ymm8,%ymm3,%ymm3
2478  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2479  DB  196,98,125,24,5,197,23,0,0          ; vbroadcastss  0x17c5(%rip),%ymm8        # 3ff4 <_sk_callback_hsw+0x395>
2480  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2481  DB  72,173                              ; lods          %ds:(%rsi),%rax
2482  DB  255,224                             ; jmpq          *%rax
2483  DB  65,137,200                          ; mov           %ecx,%r8d
2484  DB  65,128,224,7                        ; and           $0x7,%r8b
2485  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2486  DB  65,254,200                          ; dec           %r8b
2487  DB  65,128,248,6                        ; cmp           $0x6,%r8b
2488  DB  15,135,100,255,255,255              ; ja            27b4 <_sk_load_4444_hsw+0x14>
2489  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
2490  DB  76,141,13,73,0,0,0                  ; lea           0x49(%rip),%r9        # 28a4 <_sk_load_4444_hsw+0x104>
2491  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
2492  DB  76,1,200                            ; add           %r9,%rax
2493  DB  255,224                             ; jmpq          *%rax
2494  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2495  DB  196,193,121,196,68,122,12,6         ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
2496  DB  196,193,121,196,68,122,10,5         ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
2497  DB  196,193,121,196,68,122,8,4          ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
2498  DB  196,193,121,196,68,122,6,3          ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
2499  DB  196,193,121,196,68,122,4,2          ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
2500  DB  196,193,121,196,68,122,2,1          ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
2501  DB  196,193,121,196,4,122,0             ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm0,%xmm0
2502  DB  233,16,255,255,255                  ; jmpq          27b4 <_sk_load_4444_hsw+0x14>
2503  DB  244                                 ; hlt
2504  DB  255                                 ; (bad)
2505  DB  255                                 ; (bad)
2506  DB  255                                 ; (bad)
2507  DB  236                                 ; in            (%dx),%al
2508  DB  255                                 ; (bad)
2509  DB  255                                 ; (bad)
2510  DB  255,228                             ; jmpq          *%rsp
2511  DB  255                                 ; (bad)
2512  DB  255                                 ; (bad)
2513  DB  255                                 ; (bad)
2514  DB  220,255                             ; fdivr         %st,%st(7)
2515  DB  255                                 ; (bad)
2516  DB  255,212                             ; callq         *%rsp
2517  DB  255                                 ; (bad)
2518  DB  255                                 ; (bad)
2519  DB  255,204                             ; dec           %esp
2520  DB  255                                 ; (bad)
2521  DB  255                                 ; (bad)
2522  DB  255,192                             ; inc           %eax
2523  DB  255                                 ; (bad)
2524  DB  255                                 ; (bad)
2525  DB  255                                 ; .byte         0xff
2526
2527PUBLIC _sk_gather_4444_hsw
2528_sk_gather_4444_hsw LABEL PROC
2529  DB  65,87                               ; push          %r15
2530  DB  65,86                               ; push          %r14
2531  DB  65,84                               ; push          %r12
2532  DB  83                                  ; push          %rbx
2533  DB  72,173                              ; lods          %ds:(%rsi),%rax
2534  DB  76,139,0                            ; mov           (%rax),%r8
2535  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2536  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2537  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2538  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2539  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2540  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2541  DB  65,137,193                          ; mov           %eax,%r9d
2542  DB  72,193,232,32                       ; shr           $0x20,%rax
2543  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2544  DB  69,137,211                          ; mov           %r10d,%r11d
2545  DB  73,193,234,32                       ; shr           $0x20,%r10
2546  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2547  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2548  DB  65,137,222                          ; mov           %ebx,%r14d
2549  DB  72,193,235,32                       ; shr           $0x20,%rbx
2550  DB  196,193,249,126,199                 ; vmovq         %xmm0,%r15
2551  DB  69,137,252                          ; mov           %r15d,%r12d
2552  DB  73,193,239,32                       ; shr           $0x20,%r15
2553  DB  71,15,183,20,80                     ; movzwl        (%r8,%r10,2),%r10d
2554  DB  71,15,183,28,88                     ; movzwl        (%r8,%r11,2),%r11d
2555  DB  196,193,121,110,195                 ; vmovd         %r11d,%xmm0
2556  DB  196,193,121,196,194,1               ; vpinsrw       $0x1,%r10d,%xmm0,%xmm0
2557  DB  71,15,183,12,72                     ; movzwl        (%r8,%r9,2),%r9d
2558  DB  196,193,121,196,193,2               ; vpinsrw       $0x2,%r9d,%xmm0,%xmm0
2559  DB  65,15,183,4,64                      ; movzwl        (%r8,%rax,2),%eax
2560  DB  197,249,196,192,3                   ; vpinsrw       $0x3,%eax,%xmm0,%xmm0
2561  DB  67,15,183,4,96                      ; movzwl        (%r8,%r12,2),%eax
2562  DB  197,249,196,192,4                   ; vpinsrw       $0x4,%eax,%xmm0,%xmm0
2563  DB  67,15,183,4,120                     ; movzwl        (%r8,%r15,2),%eax
2564  DB  197,249,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm0,%xmm0
2565  DB  67,15,183,4,112                     ; movzwl        (%r8,%r14,2),%eax
2566  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
2567  DB  65,15,183,4,88                      ; movzwl        (%r8,%rbx,2),%eax
2568  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
2569  DB  196,226,125,51,216                  ; vpmovzxwd     %xmm0,%ymm3
2570  DB  196,226,125,88,5,125,22,0,0         ; vpbroadcastd  0x167d(%rip),%ymm0        # 3ff8 <_sk_callback_hsw+0x399>
2571  DB  197,229,219,192                     ; vpand         %ymm0,%ymm3,%ymm0
2572  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2573  DB  196,226,125,24,13,112,22,0,0        ; vbroadcastss  0x1670(%rip),%ymm1        # 3ffc <_sk_callback_hsw+0x39d>
2574  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2575  DB  196,226,125,88,13,103,22,0,0        ; vpbroadcastd  0x1667(%rip),%ymm1        # 4000 <_sk_callback_hsw+0x3a1>
2576  DB  197,229,219,201                     ; vpand         %ymm1,%ymm3,%ymm1
2577  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2578  DB  196,226,125,24,21,90,22,0,0         ; vbroadcastss  0x165a(%rip),%ymm2        # 4004 <_sk_callback_hsw+0x3a5>
2579  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
2580  DB  196,226,125,88,21,81,22,0,0         ; vpbroadcastd  0x1651(%rip),%ymm2        # 4008 <_sk_callback_hsw+0x3a9>
2581  DB  197,229,219,210                     ; vpand         %ymm2,%ymm3,%ymm2
2582  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2583  DB  196,98,125,24,5,68,22,0,0           ; vbroadcastss  0x1644(%rip),%ymm8        # 400c <_sk_callback_hsw+0x3ad>
2584  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2585  DB  196,98,125,88,5,58,22,0,0           ; vpbroadcastd  0x163a(%rip),%ymm8        # 4010 <_sk_callback_hsw+0x3b1>
2586  DB  196,193,101,219,216                 ; vpand         %ymm8,%ymm3,%ymm3
2587  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2588  DB  196,98,125,24,5,44,22,0,0           ; vbroadcastss  0x162c(%rip),%ymm8        # 4014 <_sk_callback_hsw+0x3b5>
2589  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2590  DB  72,173                              ; lods          %ds:(%rsi),%rax
2591  DB  91                                  ; pop           %rbx
2592  DB  65,92                               ; pop           %r12
2593  DB  65,94                               ; pop           %r14
2594  DB  65,95                               ; pop           %r15
2595  DB  255,224                             ; jmpq          *%rax
2596
2597PUBLIC _sk_store_4444_hsw
2598_sk_store_4444_hsw LABEL PROC
2599  DB  72,173                              ; lods          %ds:(%rsi),%rax
2600  DB  76,139,16                           ; mov           (%rax),%r10
2601  DB  196,98,125,24,5,18,22,0,0           ; vbroadcastss  0x1612(%rip),%ymm8        # 4018 <_sk_callback_hsw+0x3b9>
2602  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
2603  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
2604  DB  196,193,53,114,241,12               ; vpslld        $0xc,%ymm9,%ymm9
2605  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
2606  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
2607  DB  196,193,45,114,242,8                ; vpslld        $0x8,%ymm10,%ymm10
2608  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
2609  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
2610  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
2611  DB  196,193,45,114,242,4                ; vpslld        $0x4,%ymm10,%ymm10
2612  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
2613  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
2614  DB  196,65,45,235,192                   ; vpor          %ymm8,%ymm10,%ymm8
2615  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
2616  DB  196,67,125,57,193,1                 ; vextracti128  $0x1,%ymm8,%xmm9
2617  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
2618  DB  72,133,201                          ; test          %rcx,%rcx
2619  DB  117,10                              ; jne           2a69 <_sk_store_4444_hsw+0x71>
2620  DB  196,65,122,127,4,122                ; vmovdqu       %xmm8,(%r10,%rdi,2)
2621  DB  72,173                              ; lods          %ds:(%rsi),%rax
2622  DB  255,224                             ; jmpq          *%rax
2623  DB  65,137,200                          ; mov           %ecx,%r8d
2624  DB  65,128,224,7                        ; and           $0x7,%r8b
2625  DB  65,254,200                          ; dec           %r8b
2626  DB  65,128,248,6                        ; cmp           $0x6,%r8b
2627  DB  119,236                             ; ja            2a65 <_sk_store_4444_hsw+0x6d>
2628  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
2629  DB  76,141,13,68,0,0,0                  ; lea           0x44(%rip),%r9        # 2ac8 <_sk_store_4444_hsw+0xd0>
2630  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
2631  DB  76,1,200                            ; add           %r9,%rax
2632  DB  255,224                             ; jmpq          *%rax
2633  DB  196,67,121,21,68,122,12,6           ; vpextrw       $0x6,%xmm8,0xc(%r10,%rdi,2)
2634  DB  196,67,121,21,68,122,10,5           ; vpextrw       $0x5,%xmm8,0xa(%r10,%rdi,2)
2635  DB  196,67,121,21,68,122,8,4            ; vpextrw       $0x4,%xmm8,0x8(%r10,%rdi,2)
2636  DB  196,67,121,21,68,122,6,3            ; vpextrw       $0x3,%xmm8,0x6(%r10,%rdi,2)
2637  DB  196,67,121,21,68,122,4,2            ; vpextrw       $0x2,%xmm8,0x4(%r10,%rdi,2)
2638  DB  196,67,121,21,68,122,2,1            ; vpextrw       $0x1,%xmm8,0x2(%r10,%rdi,2)
2639  DB  196,67,121,21,4,122,0               ; vpextrw       $0x0,%xmm8,(%r10,%rdi,2)
2640  DB  235,159                             ; jmp           2a65 <_sk_store_4444_hsw+0x6d>
2641  DB  102,144                             ; xchg          %ax,%ax
2642  DB  245                                 ; cmc
2643  DB  255                                 ; (bad)
2644  DB  255                                 ; (bad)
2645  DB  255                                 ; (bad)
2646  DB  237                                 ; in            (%dx),%eax
2647  DB  255                                 ; (bad)
2648  DB  255                                 ; (bad)
2649  DB  255,229                             ; jmpq          *%rbp
2650  DB  255                                 ; (bad)
2651  DB  255                                 ; (bad)
2652  DB  255                                 ; (bad)
2653  DB  221,255                             ; (bad)
2654  DB  255                                 ; (bad)
2655  DB  255,213                             ; callq         *%rbp
2656  DB  255                                 ; (bad)
2657  DB  255                                 ; (bad)
2658  DB  255,205                             ; dec           %ebp
2659  DB  255                                 ; (bad)
2660  DB  255                                 ; (bad)
2661  DB  255,197                             ; inc           %ebp
2662  DB  255                                 ; (bad)
2663  DB  255                                 ; (bad)
2664  DB  255                                 ; .byte         0xff
2665
2666PUBLIC _sk_load_8888_hsw
2667_sk_load_8888_hsw LABEL PROC
2668  DB  73,137,200                          ; mov           %rcx,%r8
2669  DB  72,173                              ; lods          %ds:(%rsi),%rax
2670  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
2671  DB  76,3,8                              ; add           (%rax),%r9
2672  DB  77,133,192                          ; test          %r8,%r8
2673  DB  117,88                              ; jne           2b51 <_sk_load_8888_hsw+0x6d>
2674  DB  196,193,126,111,25                  ; vmovdqu       (%r9),%ymm3
2675  DB  197,229,219,5,186,22,0,0            ; vpand         0x16ba(%rip),%ymm3,%ymm0        # 41c0 <_sk_callback_hsw+0x561>
2676  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2677  DB  196,98,125,24,5,9,21,0,0            ; vbroadcastss  0x1509(%rip),%ymm8        # 401c <_sk_callback_hsw+0x3bd>
2678  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2679  DB  196,226,101,0,13,191,22,0,0         ; vpshufb       0x16bf(%rip),%ymm3,%ymm1        # 41e0 <_sk_callback_hsw+0x581>
2680  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2681  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2682  DB  196,226,101,0,21,205,22,0,0         ; vpshufb       0x16cd(%rip),%ymm3,%ymm2        # 4200 <_sk_callback_hsw+0x5a1>
2683  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2684  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2685  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
2686  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2687  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2688  DB  72,173                              ; lods          %ds:(%rsi),%rax
2689  DB  76,137,193                          ; mov           %r8,%rcx
2690  DB  255,224                             ; jmpq          *%rax
2691  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
2692  DB  68,41,193                           ; sub           %r8d,%ecx
2693  DB  192,225,3                           ; shl           $0x3,%cl
2694  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
2695  DB  72,211,232                          ; shr           %cl,%rax
2696  DB  196,225,249,110,192                 ; vmovq         %rax,%xmm0
2697  DB  196,226,125,33,192                  ; vpmovsxbd     %xmm0,%ymm0
2698  DB  196,194,125,140,25                  ; vpmaskmovd    (%r9),%ymm0,%ymm3
2699  DB  235,135                             ; jmp           2afe <_sk_load_8888_hsw+0x1a>
2700
2701PUBLIC _sk_gather_8888_hsw
2702_sk_gather_8888_hsw LABEL PROC
2703  DB  72,173                              ; lods          %ds:(%rsi),%rax
2704  DB  76,139,0                            ; mov           (%rax),%r8
2705  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2706  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2707  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2708  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2709  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2710  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
2711  DB  196,194,117,144,28,128              ; vpgatherdd    %ymm1,(%r8,%ymm0,4),%ymm3
2712  DB  197,229,219,5,123,22,0,0            ; vpand         0x167b(%rip),%ymm3,%ymm0        # 4220 <_sk_callback_hsw+0x5c1>
2713  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2714  DB  196,98,125,24,5,110,20,0,0          ; vbroadcastss  0x146e(%rip),%ymm8        # 4020 <_sk_callback_hsw+0x3c1>
2715  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2716  DB  196,226,101,0,13,128,22,0,0         ; vpshufb       0x1680(%rip),%ymm3,%ymm1        # 4240 <_sk_callback_hsw+0x5e1>
2717  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2718  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2719  DB  196,226,101,0,21,142,22,0,0         ; vpshufb       0x168e(%rip),%ymm3,%ymm2        # 4260 <_sk_callback_hsw+0x601>
2720  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2721  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2722  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
2723  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2724  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2725  DB  72,173                              ; lods          %ds:(%rsi),%rax
2726  DB  255,224                             ; jmpq          *%rax
2727
2728PUBLIC _sk_store_8888_hsw
2729_sk_store_8888_hsw LABEL PROC
2730  DB  73,137,200                          ; mov           %rcx,%r8
2731  DB  72,173                              ; lods          %ds:(%rsi),%rax
2732  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
2733  DB  76,3,8                              ; add           (%rax),%r9
2734  DB  196,98,125,24,5,30,20,0,0           ; vbroadcastss  0x141e(%rip),%ymm8        # 4024 <_sk_callback_hsw+0x3c5>
2735  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
2736  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
2737  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
2738  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
2739  DB  196,193,45,114,242,8                ; vpslld        $0x8,%ymm10,%ymm10
2740  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
2741  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
2742  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
2743  DB  196,193,45,114,242,16               ; vpslld        $0x10,%ymm10,%ymm10
2744  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
2745  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
2746  DB  196,193,61,114,240,24               ; vpslld        $0x18,%ymm8,%ymm8
2747  DB  196,65,45,235,192                   ; vpor          %ymm8,%ymm10,%ymm8
2748  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
2749  DB  77,133,192                          ; test          %r8,%r8
2750  DB  117,12                              ; jne           2c60 <_sk_store_8888_hsw+0x73>
2751  DB  196,65,126,127,1                    ; vmovdqu       %ymm8,(%r9)
2752  DB  72,173                              ; lods          %ds:(%rsi),%rax
2753  DB  76,137,193                          ; mov           %r8,%rcx
2754  DB  255,224                             ; jmpq          *%rax
2755  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
2756  DB  68,41,193                           ; sub           %r8d,%ecx
2757  DB  192,225,3                           ; shl           $0x3,%cl
2758  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
2759  DB  72,211,232                          ; shr           %cl,%rax
2760  DB  196,97,249,110,200                  ; vmovq         %rax,%xmm9
2761  DB  196,66,125,33,201                   ; vpmovsxbd     %xmm9,%ymm9
2762  DB  196,66,53,142,1                     ; vpmaskmovd    %ymm8,%ymm9,(%r9)
2763  DB  235,211                             ; jmp           2c59 <_sk_store_8888_hsw+0x6c>
2764
2765PUBLIC _sk_load_f16_hsw
2766_sk_load_f16_hsw LABEL PROC
2767  DB  72,173                              ; lods          %ds:(%rsi),%rax
2768  DB  72,139,0                            ; mov           (%rax),%rax
2769  DB  72,133,201                          ; test          %rcx,%rcx
2770  DB  117,97                              ; jne           2cf1 <_sk_load_f16_hsw+0x6b>
2771  DB  197,121,16,4,248                    ; vmovupd       (%rax,%rdi,8),%xmm8
2772  DB  197,249,16,84,248,16                ; vmovupd       0x10(%rax,%rdi,8),%xmm2
2773  DB  197,249,16,92,248,32                ; vmovupd       0x20(%rax,%rdi,8),%xmm3
2774  DB  197,122,111,76,248,48               ; vmovdqu       0x30(%rax,%rdi,8),%xmm9
2775  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
2776  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
2777  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
2778  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
2779  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
2780  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
2781  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
2782  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
2783  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
2784  DB  196,226,125,19,192                  ; vcvtph2ps     %xmm0,%ymm0
2785  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
2786  DB  196,226,125,19,201                  ; vcvtph2ps     %xmm1,%ymm1
2787  DB  197,177,108,211                     ; vpunpcklqdq   %xmm3,%xmm9,%xmm2
2788  DB  196,226,125,19,210                  ; vcvtph2ps     %xmm2,%ymm2
2789  DB  197,177,109,219                     ; vpunpckhqdq   %xmm3,%xmm9,%xmm3
2790  DB  196,226,125,19,219                  ; vcvtph2ps     %xmm3,%ymm3
2791  DB  72,173                              ; lods          %ds:(%rsi),%rax
2792  DB  255,224                             ; jmpq          *%rax
2793  DB  197,123,16,4,248                    ; vmovsd        (%rax,%rdi,8),%xmm8
2794  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
2795  DB  72,131,249,1                        ; cmp           $0x1,%rcx
2796  DB  116,79                              ; je            2d50 <_sk_load_f16_hsw+0xca>
2797  DB  197,57,22,68,248,8                  ; vmovhpd       0x8(%rax,%rdi,8),%xmm8,%xmm8
2798  DB  72,131,249,3                        ; cmp           $0x3,%rcx
2799  DB  114,67                              ; jb            2d50 <_sk_load_f16_hsw+0xca>
2800  DB  197,251,16,84,248,16                ; vmovsd        0x10(%rax,%rdi,8),%xmm2
2801  DB  72,131,249,3                        ; cmp           $0x3,%rcx
2802  DB  116,68                              ; je            2d5d <_sk_load_f16_hsw+0xd7>
2803  DB  197,233,22,84,248,24                ; vmovhpd       0x18(%rax,%rdi,8),%xmm2,%xmm2
2804  DB  72,131,249,5                        ; cmp           $0x5,%rcx
2805  DB  114,56                              ; jb            2d5d <_sk_load_f16_hsw+0xd7>
2806  DB  197,251,16,92,248,32                ; vmovsd        0x20(%rax,%rdi,8),%xmm3
2807  DB  72,131,249,5                        ; cmp           $0x5,%rcx
2808  DB  15,132,114,255,255,255              ; je            2ca7 <_sk_load_f16_hsw+0x21>
2809  DB  197,225,22,92,248,40                ; vmovhpd       0x28(%rax,%rdi,8),%xmm3,%xmm3
2810  DB  72,131,249,7                        ; cmp           $0x7,%rcx
2811  DB  15,130,98,255,255,255               ; jb            2ca7 <_sk_load_f16_hsw+0x21>
2812  DB  197,122,126,76,248,48               ; vmovq         0x30(%rax,%rdi,8),%xmm9
2813  DB  233,87,255,255,255                  ; jmpq          2ca7 <_sk_load_f16_hsw+0x21>
2814  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
2815  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
2816  DB  233,74,255,255,255                  ; jmpq          2ca7 <_sk_load_f16_hsw+0x21>
2817  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
2818  DB  233,65,255,255,255                  ; jmpq          2ca7 <_sk_load_f16_hsw+0x21>
2819
2820PUBLIC _sk_gather_f16_hsw
2821_sk_gather_f16_hsw LABEL PROC
2822  DB  72,173                              ; lods          %ds:(%rsi),%rax
2823  DB  76,139,0                            ; mov           (%rax),%r8
2824  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2825  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2826  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2827  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2828  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2829  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
2830  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
2831  DB  196,194,237,144,28,192              ; vpgatherdq    %ymm2,(%r8,%xmm0,8),%ymm3
2832  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2833  DB  196,194,245,144,20,192              ; vpgatherdq    %ymm1,(%r8,%xmm0,8),%ymm2
2834  DB  196,227,125,57,216,1                ; vextracti128  $0x1,%ymm3,%xmm0
2835  DB  196,227,125,57,209,1                ; vextracti128  $0x1,%ymm2,%xmm1
2836  DB  197,97,97,192                       ; vpunpcklwd    %xmm0,%xmm3,%xmm8
2837  DB  197,225,105,192                     ; vpunpckhwd    %xmm0,%xmm3,%xmm0
2838  DB  197,233,97,217                      ; vpunpcklwd    %xmm1,%xmm2,%xmm3
2839  DB  197,233,105,201                     ; vpunpckhwd    %xmm1,%xmm2,%xmm1
2840  DB  197,57,97,200                       ; vpunpcklwd    %xmm0,%xmm8,%xmm9
2841  DB  197,57,105,192                      ; vpunpckhwd    %xmm0,%xmm8,%xmm8
2842  DB  197,225,97,209                      ; vpunpcklwd    %xmm1,%xmm3,%xmm2
2843  DB  197,225,105,217                     ; vpunpckhwd    %xmm1,%xmm3,%xmm3
2844  DB  197,177,108,194                     ; vpunpcklqdq   %xmm2,%xmm9,%xmm0
2845  DB  196,226,125,19,192                  ; vcvtph2ps     %xmm0,%ymm0
2846  DB  197,177,109,202                     ; vpunpckhqdq   %xmm2,%xmm9,%xmm1
2847  DB  196,226,125,19,201                  ; vcvtph2ps     %xmm1,%ymm1
2848  DB  197,185,108,211                     ; vpunpcklqdq   %xmm3,%xmm8,%xmm2
2849  DB  196,226,125,19,210                  ; vcvtph2ps     %xmm2,%ymm2
2850  DB  197,185,109,219                     ; vpunpckhqdq   %xmm3,%xmm8,%xmm3
2851  DB  196,226,125,19,219                  ; vcvtph2ps     %xmm3,%ymm3
2852  DB  72,173                              ; lods          %ds:(%rsi),%rax
2853  DB  255,224                             ; jmpq          *%rax
2854
2855PUBLIC _sk_store_f16_hsw
2856_sk_store_f16_hsw LABEL PROC
2857  DB  72,173                              ; lods          %ds:(%rsi),%rax
2858  DB  72,139,0                            ; mov           (%rax),%rax
2859  DB  196,195,125,29,192,4                ; vcvtps2ph     $0x4,%ymm0,%xmm8
2860  DB  196,195,125,29,201,4                ; vcvtps2ph     $0x4,%ymm1,%xmm9
2861  DB  196,195,125,29,210,4                ; vcvtps2ph     $0x4,%ymm2,%xmm10
2862  DB  196,195,125,29,219,4                ; vcvtps2ph     $0x4,%ymm3,%xmm11
2863  DB  196,65,57,97,225                    ; vpunpcklwd    %xmm9,%xmm8,%xmm12
2864  DB  196,65,57,105,193                   ; vpunpckhwd    %xmm9,%xmm8,%xmm8
2865  DB  196,65,41,97,203                    ; vpunpcklwd    %xmm11,%xmm10,%xmm9
2866  DB  196,65,41,105,235                   ; vpunpckhwd    %xmm11,%xmm10,%xmm13
2867  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
2868  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
2869  DB  196,65,57,98,205                    ; vpunpckldq    %xmm13,%xmm8,%xmm9
2870  DB  196,65,57,106,197                   ; vpunpckhdq    %xmm13,%xmm8,%xmm8
2871  DB  72,133,201                          ; test          %rcx,%rcx
2872  DB  117,27                              ; jne           2e55 <_sk_store_f16_hsw+0x65>
2873  DB  197,120,17,28,248                   ; vmovups       %xmm11,(%rax,%rdi,8)
2874  DB  197,120,17,84,248,16                ; vmovups       %xmm10,0x10(%rax,%rdi,8)
2875  DB  197,120,17,76,248,32                ; vmovups       %xmm9,0x20(%rax,%rdi,8)
2876  DB  197,122,127,68,248,48               ; vmovdqu       %xmm8,0x30(%rax,%rdi,8)
2877  DB  72,173                              ; lods          %ds:(%rsi),%rax
2878  DB  255,224                             ; jmpq          *%rax
2879  DB  197,121,214,28,248                  ; vmovq         %xmm11,(%rax,%rdi,8)
2880  DB  72,131,249,1                        ; cmp           $0x1,%rcx
2881  DB  116,241                             ; je            2e51 <_sk_store_f16_hsw+0x61>
2882  DB  197,121,23,92,248,8                 ; vmovhpd       %xmm11,0x8(%rax,%rdi,8)
2883  DB  72,131,249,3                        ; cmp           $0x3,%rcx
2884  DB  114,229                             ; jb            2e51 <_sk_store_f16_hsw+0x61>
2885  DB  197,121,214,84,248,16               ; vmovq         %xmm10,0x10(%rax,%rdi,8)
2886  DB  116,221                             ; je            2e51 <_sk_store_f16_hsw+0x61>
2887  DB  197,121,23,84,248,24                ; vmovhpd       %xmm10,0x18(%rax,%rdi,8)
2888  DB  72,131,249,5                        ; cmp           $0x5,%rcx
2889  DB  114,209                             ; jb            2e51 <_sk_store_f16_hsw+0x61>
2890  DB  197,121,214,76,248,32               ; vmovq         %xmm9,0x20(%rax,%rdi,8)
2891  DB  116,201                             ; je            2e51 <_sk_store_f16_hsw+0x61>
2892  DB  197,121,23,76,248,40                ; vmovhpd       %xmm9,0x28(%rax,%rdi,8)
2893  DB  72,131,249,7                        ; cmp           $0x7,%rcx
2894  DB  114,189                             ; jb            2e51 <_sk_store_f16_hsw+0x61>
2895  DB  197,121,214,68,248,48               ; vmovq         %xmm8,0x30(%rax,%rdi,8)
2896  DB  235,181                             ; jmp           2e51 <_sk_store_f16_hsw+0x61>
2897
2898PUBLIC _sk_load_u16_be_hsw
2899_sk_load_u16_be_hsw LABEL PROC
2900  DB  72,173                              ; lods          %ds:(%rsi),%rax
2901  DB  76,139,0                            ; mov           (%rax),%r8
2902  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
2903  DB  72,133,201                          ; test          %rcx,%rcx
2904  DB  15,133,204,0,0,0                    ; jne           2f7e <_sk_load_u16_be_hsw+0xe2>
2905  DB  196,65,121,16,4,64                  ; vmovupd       (%r8,%rax,2),%xmm8
2906  DB  196,193,121,16,84,64,16             ; vmovupd       0x10(%r8,%rax,2),%xmm2
2907  DB  196,193,121,16,92,64,32             ; vmovupd       0x20(%r8,%rax,2),%xmm3
2908  DB  196,65,122,111,76,64,48             ; vmovdqu       0x30(%r8,%rax,2),%xmm9
2909  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
2910  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
2911  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
2912  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
2913  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
2914  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
2915  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
2916  DB  197,113,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm11
2917  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
2918  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
2919  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
2920  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
2921  DB  196,226,125,51,192                  ; vpmovzxwd     %xmm0,%ymm0
2922  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2923  DB  196,98,125,24,21,21,17,0,0          ; vbroadcastss  0x1115(%rip),%ymm10        # 4028 <_sk_callback_hsw+0x3c9>
2924  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
2925  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
2926  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
2927  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
2928  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
2929  DB  196,226,125,51,201                  ; vpmovzxwd     %xmm1,%ymm1
2930  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2931  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
2932  DB  196,193,49,108,211                  ; vpunpcklqdq   %xmm11,%xmm9,%xmm2
2933  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
2934  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
2935  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
2936  DB  196,226,125,51,210                  ; vpmovzxwd     %xmm2,%ymm2
2937  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2938  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
2939  DB  196,193,49,109,219                  ; vpunpckhqdq   %xmm11,%xmm9,%xmm3
2940  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
2941  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
2942  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
2943  DB  196,226,125,51,219                  ; vpmovzxwd     %xmm3,%ymm3
2944  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2945  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
2946  DB  72,173                              ; lods          %ds:(%rsi),%rax
2947  DB  255,224                             ; jmpq          *%rax
2948  DB  196,65,123,16,4,64                  ; vmovsd        (%r8,%rax,2),%xmm8
2949  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
2950  DB  72,131,249,1                        ; cmp           $0x1,%rcx
2951  DB  116,85                              ; je            2fe4 <_sk_load_u16_be_hsw+0x148>
2952  DB  196,65,57,22,68,64,8                ; vmovhpd       0x8(%r8,%rax,2),%xmm8,%xmm8
2953  DB  72,131,249,3                        ; cmp           $0x3,%rcx
2954  DB  114,72                              ; jb            2fe4 <_sk_load_u16_be_hsw+0x148>
2955  DB  196,193,123,16,84,64,16             ; vmovsd        0x10(%r8,%rax,2),%xmm2
2956  DB  72,131,249,3                        ; cmp           $0x3,%rcx
2957  DB  116,72                              ; je            2ff1 <_sk_load_u16_be_hsw+0x155>
2958  DB  196,193,105,22,84,64,24             ; vmovhpd       0x18(%r8,%rax,2),%xmm2,%xmm2
2959  DB  72,131,249,5                        ; cmp           $0x5,%rcx
2960  DB  114,59                              ; jb            2ff1 <_sk_load_u16_be_hsw+0x155>
2961  DB  196,193,123,16,92,64,32             ; vmovsd        0x20(%r8,%rax,2),%xmm3
2962  DB  72,131,249,5                        ; cmp           $0x5,%rcx
2963  DB  15,132,6,255,255,255                ; je            2ecd <_sk_load_u16_be_hsw+0x31>
2964  DB  196,193,97,22,92,64,40              ; vmovhpd       0x28(%r8,%rax,2),%xmm3,%xmm3
2965  DB  72,131,249,7                        ; cmp           $0x7,%rcx
2966  DB  15,130,245,254,255,255              ; jb            2ecd <_sk_load_u16_be_hsw+0x31>
2967  DB  196,65,122,126,76,64,48             ; vmovq         0x30(%r8,%rax,2),%xmm9
2968  DB  233,233,254,255,255                 ; jmpq          2ecd <_sk_load_u16_be_hsw+0x31>
2969  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
2970  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
2971  DB  233,220,254,255,255                 ; jmpq          2ecd <_sk_load_u16_be_hsw+0x31>
2972  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
2973  DB  233,211,254,255,255                 ; jmpq          2ecd <_sk_load_u16_be_hsw+0x31>
2974
2975PUBLIC _sk_load_rgb_u16_be_hsw
2976_sk_load_rgb_u16_be_hsw LABEL PROC
2977  DB  72,173                              ; lods          %ds:(%rsi),%rax
2978  DB  76,139,0                            ; mov           (%rax),%r8
2979  DB  72,141,4,127                        ; lea           (%rdi,%rdi,2),%rax
2980  DB  72,133,201                          ; test          %rcx,%rcx
2981  DB  15,133,204,0,0,0                    ; jne           30d8 <_sk_load_rgb_u16_be_hsw+0xde>
2982  DB  196,193,122,111,4,64                ; vmovdqu       (%r8,%rax,2),%xmm0
2983  DB  196,193,122,111,84,64,12            ; vmovdqu       0xc(%r8,%rax,2),%xmm2
2984  DB  196,193,122,111,76,64,24            ; vmovdqu       0x18(%r8,%rax,2),%xmm1
2985  DB  196,193,122,111,92,64,32            ; vmovdqu       0x20(%r8,%rax,2),%xmm3
2986  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
2987  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
2988  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
2989  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
2990  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
2991  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
2992  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
2993  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
2994  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
2995  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
2996  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
2997  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
2998  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
2999  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
3000  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
3001  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
3002  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
3003  DB  196,226,125,51,192                  ; vpmovzxwd     %xmm0,%ymm0
3004  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3005  DB  196,98,125,24,21,166,15,0,0         ; vbroadcastss  0xfa6(%rip),%ymm10        # 402c <_sk_callback_hsw+0x3cd>
3006  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
3007  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
3008  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
3009  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
3010  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
3011  DB  196,226,125,51,201                  ; vpmovzxwd     %xmm1,%ymm1
3012  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3013  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
3014  DB  197,177,108,211                     ; vpunpcklqdq   %xmm3,%xmm9,%xmm2
3015  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
3016  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
3017  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
3018  DB  196,226,125,51,210                  ; vpmovzxwd     %xmm2,%ymm2
3019  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3020  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
3021  DB  72,173                              ; lods          %ds:(%rsi),%rax
3022  DB  196,226,125,24,29,90,15,0,0         ; vbroadcastss  0xf5a(%rip),%ymm3        # 4030 <_sk_callback_hsw+0x3d1>
3023  DB  255,224                             ; jmpq          *%rax
3024  DB  196,193,121,110,4,64                ; vmovd         (%r8,%rax,2),%xmm0
3025  DB  196,193,121,196,68,64,4,2           ; vpinsrw       $0x2,0x4(%r8,%rax,2),%xmm0,%xmm0
3026  DB  72,131,249,1                        ; cmp           $0x1,%rcx
3027  DB  117,5                               ; jne           30f1 <_sk_load_rgb_u16_be_hsw+0xf7>
3028  DB  233,79,255,255,255                  ; jmpq          3040 <_sk_load_rgb_u16_be_hsw+0x46>
3029  DB  196,193,121,110,76,64,6             ; vmovd         0x6(%r8,%rax,2),%xmm1
3030  DB  196,65,113,196,68,64,10,2           ; vpinsrw       $0x2,0xa(%r8,%rax,2),%xmm1,%xmm8
3031  DB  72,131,249,3                        ; cmp           $0x3,%rcx
3032  DB  114,26                              ; jb            3120 <_sk_load_rgb_u16_be_hsw+0x126>
3033  DB  196,193,121,110,76,64,12            ; vmovd         0xc(%r8,%rax,2),%xmm1
3034  DB  196,193,113,196,84,64,16,2          ; vpinsrw       $0x2,0x10(%r8,%rax,2),%xmm1,%xmm2
3035  DB  72,131,249,3                        ; cmp           $0x3,%rcx
3036  DB  117,10                              ; jne           3125 <_sk_load_rgb_u16_be_hsw+0x12b>
3037  DB  233,32,255,255,255                  ; jmpq          3040 <_sk_load_rgb_u16_be_hsw+0x46>
3038  DB  233,27,255,255,255                  ; jmpq          3040 <_sk_load_rgb_u16_be_hsw+0x46>
3039  DB  196,193,121,110,76,64,18            ; vmovd         0x12(%r8,%rax,2),%xmm1
3040  DB  196,65,113,196,76,64,22,2           ; vpinsrw       $0x2,0x16(%r8,%rax,2),%xmm1,%xmm9
3041  DB  72,131,249,5                        ; cmp           $0x5,%rcx
3042  DB  114,26                              ; jb            3154 <_sk_load_rgb_u16_be_hsw+0x15a>
3043  DB  196,193,121,110,76,64,24            ; vmovd         0x18(%r8,%rax,2),%xmm1
3044  DB  196,193,113,196,76,64,28,2          ; vpinsrw       $0x2,0x1c(%r8,%rax,2),%xmm1,%xmm1
3045  DB  72,131,249,5                        ; cmp           $0x5,%rcx
3046  DB  117,10                              ; jne           3159 <_sk_load_rgb_u16_be_hsw+0x15f>
3047  DB  233,236,254,255,255                 ; jmpq          3040 <_sk_load_rgb_u16_be_hsw+0x46>
3048  DB  233,231,254,255,255                 ; jmpq          3040 <_sk_load_rgb_u16_be_hsw+0x46>
3049  DB  196,193,121,110,92,64,30            ; vmovd         0x1e(%r8,%rax,2),%xmm3
3050  DB  196,65,97,196,92,64,34,2            ; vpinsrw       $0x2,0x22(%r8,%rax,2),%xmm3,%xmm11
3051  DB  72,131,249,7                        ; cmp           $0x7,%rcx
3052  DB  114,20                              ; jb            3182 <_sk_load_rgb_u16_be_hsw+0x188>
3053  DB  196,193,121,110,92,64,36            ; vmovd         0x24(%r8,%rax,2),%xmm3
3054  DB  196,193,97,196,92,64,40,2           ; vpinsrw       $0x2,0x28(%r8,%rax,2),%xmm3,%xmm3
3055  DB  233,190,254,255,255                 ; jmpq          3040 <_sk_load_rgb_u16_be_hsw+0x46>
3056  DB  233,185,254,255,255                 ; jmpq          3040 <_sk_load_rgb_u16_be_hsw+0x46>
3057
3058PUBLIC _sk_store_u16_be_hsw
3059_sk_store_u16_be_hsw LABEL PROC
3060  DB  72,173                              ; lods          %ds:(%rsi),%rax
3061  DB  76,139,0                            ; mov           (%rax),%r8
3062  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
3063  DB  196,98,125,24,5,151,14,0,0          ; vbroadcastss  0xe97(%rip),%ymm8        # 4034 <_sk_callback_hsw+0x3d5>
3064  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
3065  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
3066  DB  196,67,125,25,202,1                 ; vextractf128  $0x1,%ymm9,%xmm10
3067  DB  196,66,49,43,202                    ; vpackusdw     %xmm10,%xmm9,%xmm9
3068  DB  196,193,41,113,241,8                ; vpsllw        $0x8,%xmm9,%xmm10
3069  DB  196,193,49,113,209,8                ; vpsrlw        $0x8,%xmm9,%xmm9
3070  DB  196,65,41,235,201                   ; vpor          %xmm9,%xmm10,%xmm9
3071  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
3072  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3073  DB  196,67,125,25,211,1                 ; vextractf128  $0x1,%ymm10,%xmm11
3074  DB  196,66,41,43,211                    ; vpackusdw     %xmm11,%xmm10,%xmm10
3075  DB  196,193,33,113,242,8                ; vpsllw        $0x8,%xmm10,%xmm11
3076  DB  196,193,41,113,210,8                ; vpsrlw        $0x8,%xmm10,%xmm10
3077  DB  196,65,33,235,210                   ; vpor          %xmm10,%xmm11,%xmm10
3078  DB  196,65,108,89,216                   ; vmulps        %ymm8,%ymm2,%ymm11
3079  DB  196,65,125,91,219                   ; vcvtps2dq     %ymm11,%ymm11
3080  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
3081  DB  196,66,33,43,220                    ; vpackusdw     %xmm12,%xmm11,%xmm11
3082  DB  196,193,25,113,243,8                ; vpsllw        $0x8,%xmm11,%xmm12
3083  DB  196,193,33,113,211,8                ; vpsrlw        $0x8,%xmm11,%xmm11
3084  DB  196,65,25,235,219                   ; vpor          %xmm11,%xmm12,%xmm11
3085  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
3086  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
3087  DB  196,67,125,25,196,1                 ; vextractf128  $0x1,%ymm8,%xmm12
3088  DB  196,66,57,43,196                    ; vpackusdw     %xmm12,%xmm8,%xmm8
3089  DB  196,193,25,113,240,8                ; vpsllw        $0x8,%xmm8,%xmm12
3090  DB  196,193,57,113,208,8                ; vpsrlw        $0x8,%xmm8,%xmm8
3091  DB  196,65,25,235,192                   ; vpor          %xmm8,%xmm12,%xmm8
3092  DB  196,65,49,97,226                    ; vpunpcklwd    %xmm10,%xmm9,%xmm12
3093  DB  196,65,49,105,234                   ; vpunpckhwd    %xmm10,%xmm9,%xmm13
3094  DB  196,65,33,97,200                    ; vpunpcklwd    %xmm8,%xmm11,%xmm9
3095  DB  196,65,33,105,192                   ; vpunpckhwd    %xmm8,%xmm11,%xmm8
3096  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
3097  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
3098  DB  196,65,17,98,200                    ; vpunpckldq    %xmm8,%xmm13,%xmm9
3099  DB  196,65,17,106,192                   ; vpunpckhdq    %xmm8,%xmm13,%xmm8
3100  DB  72,133,201                          ; test          %rcx,%rcx
3101  DB  117,31                              ; jne           3281 <_sk_store_u16_be_hsw+0xfa>
3102  DB  196,65,120,17,28,64                 ; vmovups       %xmm11,(%r8,%rax,2)
3103  DB  196,65,120,17,84,64,16              ; vmovups       %xmm10,0x10(%r8,%rax,2)
3104  DB  196,65,120,17,76,64,32              ; vmovups       %xmm9,0x20(%r8,%rax,2)
3105  DB  196,65,122,127,68,64,48             ; vmovdqu       %xmm8,0x30(%r8,%rax,2)
3106  DB  72,173                              ; lods          %ds:(%rsi),%rax
3107  DB  255,224                             ; jmpq          *%rax
3108  DB  196,65,121,214,28,64                ; vmovq         %xmm11,(%r8,%rax,2)
3109  DB  72,131,249,1                        ; cmp           $0x1,%rcx
3110  DB  116,240                             ; je            327d <_sk_store_u16_be_hsw+0xf6>
3111  DB  196,65,121,23,92,64,8               ; vmovhpd       %xmm11,0x8(%r8,%rax,2)
3112  DB  72,131,249,3                        ; cmp           $0x3,%rcx
3113  DB  114,227                             ; jb            327d <_sk_store_u16_be_hsw+0xf6>
3114  DB  196,65,121,214,84,64,16             ; vmovq         %xmm10,0x10(%r8,%rax,2)
3115  DB  116,218                             ; je            327d <_sk_store_u16_be_hsw+0xf6>
3116  DB  196,65,121,23,84,64,24              ; vmovhpd       %xmm10,0x18(%r8,%rax,2)
3117  DB  72,131,249,5                        ; cmp           $0x5,%rcx
3118  DB  114,205                             ; jb            327d <_sk_store_u16_be_hsw+0xf6>
3119  DB  196,65,121,214,76,64,32             ; vmovq         %xmm9,0x20(%r8,%rax,2)
3120  DB  116,196                             ; je            327d <_sk_store_u16_be_hsw+0xf6>
3121  DB  196,65,121,23,76,64,40              ; vmovhpd       %xmm9,0x28(%r8,%rax,2)
3122  DB  72,131,249,7                        ; cmp           $0x7,%rcx
3123  DB  114,183                             ; jb            327d <_sk_store_u16_be_hsw+0xf6>
3124  DB  196,65,121,214,68,64,48             ; vmovq         %xmm8,0x30(%r8,%rax,2)
3125  DB  235,174                             ; jmp           327d <_sk_store_u16_be_hsw+0xf6>
3126
3127PUBLIC _sk_load_f32_hsw
3128_sk_load_f32_hsw LABEL PROC
3129  DB  72,173                              ; lods          %ds:(%rsi),%rax
3130  DB  72,131,249,7                        ; cmp           $0x7,%rcx
3131  DB  119,110                             ; ja            3345 <_sk_load_f32_hsw+0x76>
3132  DB  76,139,0                            ; mov           (%rax),%r8
3133  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
3134  DB  76,141,21,135,0,0,0                 ; lea           0x87(%rip),%r10        # 3370 <_sk_load_f32_hsw+0xa1>
3135  DB  73,99,4,138                         ; movslq        (%r10,%rcx,4),%rax
3136  DB  76,1,208                            ; add           %r10,%rax
3137  DB  255,224                             ; jmpq          *%rax
3138  DB  196,3,125,24,68,136,112,1           ; vinsertf128   $0x1,0x70(%r8,%r9,4),%ymm0,%ymm8
3139  DB  196,131,125,24,92,136,96,1          ; vinsertf128   $0x1,0x60(%r8,%r9,4),%ymm0,%ymm3
3140  DB  196,131,125,24,76,136,80,1          ; vinsertf128   $0x1,0x50(%r8,%r9,4),%ymm0,%ymm1
3141  DB  196,131,125,24,84,136,64,1          ; vinsertf128   $0x1,0x40(%r8,%r9,4),%ymm0,%ymm2
3142  DB  196,129,121,16,68,136,48            ; vmovupd       0x30(%r8,%r9,4),%xmm0
3143  DB  196,195,125,13,192,12               ; vblendpd      $0xc,%ymm8,%ymm0,%ymm0
3144  DB  196,1,121,16,68,136,32              ; vmovupd       0x20(%r8,%r9,4),%xmm8
3145  DB  196,99,61,13,203,12                 ; vblendpd      $0xc,%ymm3,%ymm8,%ymm9
3146  DB  196,129,121,16,92,136,16            ; vmovupd       0x10(%r8,%r9,4),%xmm3
3147  DB  196,99,101,13,209,12                ; vblendpd      $0xc,%ymm1,%ymm3,%ymm10
3148  DB  196,129,121,16,12,136               ; vmovupd       (%r8,%r9,4),%xmm1
3149  DB  196,227,117,13,202,12               ; vblendpd      $0xc,%ymm2,%ymm1,%ymm1
3150  DB  196,193,116,20,210                  ; vunpcklps     %ymm10,%ymm1,%ymm2
3151  DB  196,193,116,21,218                  ; vunpckhps     %ymm10,%ymm1,%ymm3
3152  DB  197,180,20,200                      ; vunpcklps     %ymm0,%ymm9,%ymm1
3153  DB  197,52,21,192                       ; vunpckhps     %ymm0,%ymm9,%ymm8
3154  DB  197,237,20,193                      ; vunpcklpd     %ymm1,%ymm2,%ymm0
3155  DB  197,237,21,201                      ; vunpckhpd     %ymm1,%ymm2,%ymm1
3156  DB  196,193,101,20,208                  ; vunpcklpd     %ymm8,%ymm3,%ymm2
3157  DB  196,193,101,21,216                  ; vunpckhpd     %ymm8,%ymm3,%ymm3
3158  DB  72,173                              ; lods          %ds:(%rsi),%rax
3159  DB  255,224                             ; jmpq          *%rax
3160  DB  15,31,0                             ; nopl          (%rax)
3161  DB  130                                 ; (bad)
3162  DB  255                                 ; (bad)
3163  DB  255                                 ; (bad)
3164  DB  255,201                             ; dec           %ecx
3165  DB  255                                 ; (bad)
3166  DB  255                                 ; (bad)
3167  DB  255                                 ; (bad)
3168  DB  188,255,255,255,175                 ; mov           $0xafffffff,%esp
3169  DB  255                                 ; (bad)
3170  DB  255                                 ; (bad)
3171  DB  255,162,255,255,255,154             ; jmpq          *-0x65000001(%rdx)
3172  DB  255                                 ; (bad)
3173  DB  255                                 ; (bad)
3174  DB  255,146,255,255,255,138             ; callq         *-0x75000001(%rdx)
3175  DB  255                                 ; (bad)
3176  DB  255                                 ; (bad)
3177  DB  255                                 ; .byte         0xff
3178
3179PUBLIC _sk_store_f32_hsw
3180_sk_store_f32_hsw LABEL PROC
3181  DB  72,173                              ; lods          %ds:(%rsi),%rax
3182  DB  76,139,0                            ; mov           (%rax),%r8
3183  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
3184  DB  197,124,20,193                      ; vunpcklps     %ymm1,%ymm0,%ymm8
3185  DB  197,124,21,217                      ; vunpckhps     %ymm1,%ymm0,%ymm11
3186  DB  197,108,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm9
3187  DB  197,108,21,227                      ; vunpckhps     %ymm3,%ymm2,%ymm12
3188  DB  196,65,61,20,209                    ; vunpcklpd     %ymm9,%ymm8,%ymm10
3189  DB  196,65,61,21,201                    ; vunpckhpd     %ymm9,%ymm8,%ymm9
3190  DB  196,65,37,20,196                    ; vunpcklpd     %ymm12,%ymm11,%ymm8
3191  DB  196,65,37,21,220                    ; vunpckhpd     %ymm12,%ymm11,%ymm11
3192  DB  72,133,201                          ; test          %rcx,%rcx
3193  DB  117,55                              ; jne           33fd <_sk_store_f32_hsw+0x6d>
3194  DB  196,67,45,24,225,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm12
3195  DB  196,67,61,24,235,1                  ; vinsertf128   $0x1,%xmm11,%ymm8,%ymm13
3196  DB  196,67,45,6,201,49                  ; vperm2f128    $0x31,%ymm9,%ymm10,%ymm9
3197  DB  196,67,61,6,195,49                  ; vperm2f128    $0x31,%ymm11,%ymm8,%ymm8
3198  DB  196,65,125,17,36,128                ; vmovupd       %ymm12,(%r8,%rax,4)
3199  DB  196,65,125,17,108,128,32            ; vmovupd       %ymm13,0x20(%r8,%rax,4)
3200  DB  196,65,125,17,76,128,64             ; vmovupd       %ymm9,0x40(%r8,%rax,4)
3201  DB  196,65,125,17,68,128,96             ; vmovupd       %ymm8,0x60(%r8,%rax,4)
3202  DB  72,173                              ; lods          %ds:(%rsi),%rax
3203  DB  255,224                             ; jmpq          *%rax
3204  DB  196,65,121,17,20,128                ; vmovupd       %xmm10,(%r8,%rax,4)
3205  DB  72,131,249,1                        ; cmp           $0x1,%rcx
3206  DB  116,240                             ; je            33f9 <_sk_store_f32_hsw+0x69>
3207  DB  196,65,121,17,76,128,16             ; vmovupd       %xmm9,0x10(%r8,%rax,4)
3208  DB  72,131,249,3                        ; cmp           $0x3,%rcx
3209  DB  114,227                             ; jb            33f9 <_sk_store_f32_hsw+0x69>
3210  DB  196,65,121,17,68,128,32             ; vmovupd       %xmm8,0x20(%r8,%rax,4)
3211  DB  116,218                             ; je            33f9 <_sk_store_f32_hsw+0x69>
3212  DB  196,65,121,17,92,128,48             ; vmovupd       %xmm11,0x30(%r8,%rax,4)
3213  DB  72,131,249,5                        ; cmp           $0x5,%rcx
3214  DB  114,205                             ; jb            33f9 <_sk_store_f32_hsw+0x69>
3215  DB  196,67,125,25,84,128,64,1           ; vextractf128  $0x1,%ymm10,0x40(%r8,%rax,4)
3216  DB  116,195                             ; je            33f9 <_sk_store_f32_hsw+0x69>
3217  DB  196,67,125,25,76,128,80,1           ; vextractf128  $0x1,%ymm9,0x50(%r8,%rax,4)
3218  DB  72,131,249,7                        ; cmp           $0x7,%rcx
3219  DB  114,181                             ; jb            33f9 <_sk_store_f32_hsw+0x69>
3220  DB  196,67,125,25,68,128,96,1           ; vextractf128  $0x1,%ymm8,0x60(%r8,%rax,4)
3221  DB  235,171                             ; jmp           33f9 <_sk_store_f32_hsw+0x69>
3222
3223PUBLIC _sk_clamp_x_hsw
3224_sk_clamp_x_hsw LABEL PROC
3225  DB  72,173                              ; lods          %ds:(%rsi),%rax
3226  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3227  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
3228  DB  196,98,125,88,0                     ; vpbroadcastd  (%rax),%ymm8
3229  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
3230  DB  196,65,61,254,193                   ; vpaddd        %ymm9,%ymm8,%ymm8
3231  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
3232  DB  72,173                              ; lods          %ds:(%rsi),%rax
3233  DB  255,224                             ; jmpq          *%rax
3234
3235PUBLIC _sk_clamp_y_hsw
3236_sk_clamp_y_hsw LABEL PROC
3237  DB  72,173                              ; lods          %ds:(%rsi),%rax
3238  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3239  DB  197,188,95,201                      ; vmaxps        %ymm1,%ymm8,%ymm1
3240  DB  196,98,125,88,0                     ; vpbroadcastd  (%rax),%ymm8
3241  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
3242  DB  196,65,61,254,193                   ; vpaddd        %ymm9,%ymm8,%ymm8
3243  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
3244  DB  72,173                              ; lods          %ds:(%rsi),%rax
3245  DB  255,224                             ; jmpq          *%rax
3246
3247PUBLIC _sk_repeat_x_hsw
3248_sk_repeat_x_hsw LABEL PROC
3249  DB  72,173                              ; lods          %ds:(%rsi),%rax
3250  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
3251  DB  196,65,124,94,200                   ; vdivps        %ymm8,%ymm0,%ymm9
3252  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
3253  DB  196,98,61,172,200                   ; vfnmadd213ps  %ymm0,%ymm8,%ymm9
3254  DB  197,253,118,192                     ; vpcmpeqd      %ymm0,%ymm0,%ymm0
3255  DB  197,189,254,192                     ; vpaddd        %ymm0,%ymm8,%ymm0
3256  DB  197,180,93,192                      ; vminps        %ymm0,%ymm9,%ymm0
3257  DB  72,173                              ; lods          %ds:(%rsi),%rax
3258  DB  255,224                             ; jmpq          *%rax
3259
3260PUBLIC _sk_repeat_y_hsw
3261_sk_repeat_y_hsw LABEL PROC
3262  DB  72,173                              ; lods          %ds:(%rsi),%rax
3263  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
3264  DB  196,65,116,94,200                   ; vdivps        %ymm8,%ymm1,%ymm9
3265  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
3266  DB  196,98,61,172,201                   ; vfnmadd213ps  %ymm1,%ymm8,%ymm9
3267  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
3268  DB  197,189,254,201                     ; vpaddd        %ymm1,%ymm8,%ymm1
3269  DB  197,180,93,201                      ; vminps        %ymm1,%ymm9,%ymm1
3270  DB  72,173                              ; lods          %ds:(%rsi),%rax
3271  DB  255,224                             ; jmpq          *%rax
3272
3273PUBLIC _sk_mirror_x_hsw
3274_sk_mirror_x_hsw LABEL PROC
3275  DB  72,173                              ; lods          %ds:(%rsi),%rax
3276  DB  197,122,16,0                        ; vmovss        (%rax),%xmm8
3277  DB  196,66,125,24,200                   ; vbroadcastss  %xmm8,%ymm9
3278  DB  196,65,124,92,209                   ; vsubps        %ymm9,%ymm0,%ymm10
3279  DB  196,193,58,88,192                   ; vaddss        %xmm8,%xmm8,%xmm0
3280  DB  196,226,125,24,192                  ; vbroadcastss  %xmm0,%ymm0
3281  DB  197,44,94,192                       ; vdivps        %ymm0,%ymm10,%ymm8
3282  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
3283  DB  196,66,125,172,194                  ; vfnmadd213ps  %ymm10,%ymm0,%ymm8
3284  DB  196,193,60,92,193                   ; vsubps        %ymm9,%ymm8,%ymm0
3285  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3286  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
3287  DB  197,188,84,192                      ; vandps        %ymm0,%ymm8,%ymm0
3288  DB  196,65,61,118,192                   ; vpcmpeqd      %ymm8,%ymm8,%ymm8
3289  DB  196,65,53,254,192                   ; vpaddd        %ymm8,%ymm9,%ymm8
3290  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
3291  DB  72,173                              ; lods          %ds:(%rsi),%rax
3292  DB  255,224                             ; jmpq          *%rax
3293
3294PUBLIC _sk_mirror_y_hsw
3295_sk_mirror_y_hsw LABEL PROC
3296  DB  72,173                              ; lods          %ds:(%rsi),%rax
3297  DB  197,122,16,0                        ; vmovss        (%rax),%xmm8
3298  DB  196,66,125,24,200                   ; vbroadcastss  %xmm8,%ymm9
3299  DB  196,65,116,92,209                   ; vsubps        %ymm9,%ymm1,%ymm10
3300  DB  196,193,58,88,200                   ; vaddss        %xmm8,%xmm8,%xmm1
3301  DB  196,226,125,24,201                  ; vbroadcastss  %xmm1,%ymm1
3302  DB  197,44,94,193                       ; vdivps        %ymm1,%ymm10,%ymm8
3303  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
3304  DB  196,66,117,172,194                  ; vfnmadd213ps  %ymm10,%ymm1,%ymm8
3305  DB  196,193,60,92,201                   ; vsubps        %ymm9,%ymm8,%ymm1
3306  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3307  DB  197,60,92,193                       ; vsubps        %ymm1,%ymm8,%ymm8
3308  DB  197,188,84,201                      ; vandps        %ymm1,%ymm8,%ymm1
3309  DB  196,65,61,118,192                   ; vpcmpeqd      %ymm8,%ymm8,%ymm8
3310  DB  196,65,53,254,192                   ; vpaddd        %ymm8,%ymm9,%ymm8
3311  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
3312  DB  72,173                              ; lods          %ds:(%rsi),%rax
3313  DB  255,224                             ; jmpq          *%rax
3314
3315PUBLIC _sk_luminance_to_alpha_hsw
3316_sk_luminance_to_alpha_hsw LABEL PROC
3317  DB  196,226,125,24,29,177,10,0,0        ; vbroadcastss  0xab1(%rip),%ymm3        # 4038 <_sk_callback_hsw+0x3d9>
3318  DB  196,98,125,24,5,172,10,0,0          ; vbroadcastss  0xaac(%rip),%ymm8        # 403c <_sk_callback_hsw+0x3dd>
3319  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
3320  DB  196,226,125,184,203                 ; vfmadd231ps   %ymm3,%ymm0,%ymm1
3321  DB  196,226,125,24,29,157,10,0,0        ; vbroadcastss  0xa9d(%rip),%ymm3        # 4040 <_sk_callback_hsw+0x3e1>
3322  DB  196,226,109,168,217                 ; vfmadd213ps   %ymm1,%ymm2,%ymm3
3323  DB  72,173                              ; lods          %ds:(%rsi),%rax
3324  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
3325  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
3326  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
3327  DB  255,224                             ; jmpq          *%rax
3328
3329PUBLIC _sk_matrix_2x3_hsw
3330_sk_matrix_2x3_hsw LABEL PROC
3331  DB  72,173                              ; lods          %ds:(%rsi),%rax
3332  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3333  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
3334  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
3335  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
3336  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
3337  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
3338  DB  196,98,125,24,88,12                 ; vbroadcastss  0xc(%rax),%ymm11
3339  DB  196,98,125,24,72,20                 ; vbroadcastss  0x14(%rax),%ymm9
3340  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
3341  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
3342  DB  72,173                              ; lods          %ds:(%rsi),%rax
3343  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3344  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
3345  DB  255,224                             ; jmpq          *%rax
3346
3347PUBLIC _sk_matrix_3x4_hsw
3348_sk_matrix_3x4_hsw LABEL PROC
3349  DB  72,173                              ; lods          %ds:(%rsi),%rax
3350  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3351  DB  196,98,125,24,80,12                 ; vbroadcastss  0xc(%rax),%ymm10
3352  DB  196,98,125,24,88,24                 ; vbroadcastss  0x18(%rax),%ymm11
3353  DB  196,98,125,24,64,36                 ; vbroadcastss  0x24(%rax),%ymm8
3354  DB  196,66,109,184,195                  ; vfmadd231ps   %ymm11,%ymm2,%ymm8
3355  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
3356  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
3357  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
3358  DB  196,98,125,24,88,16                 ; vbroadcastss  0x10(%rax),%ymm11
3359  DB  196,98,125,24,96,28                 ; vbroadcastss  0x1c(%rax),%ymm12
3360  DB  196,98,125,24,72,40                 ; vbroadcastss  0x28(%rax),%ymm9
3361  DB  196,66,109,184,204                  ; vfmadd231ps   %ymm12,%ymm2,%ymm9
3362  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
3363  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
3364  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
3365  DB  196,98,125,24,96,20                 ; vbroadcastss  0x14(%rax),%ymm12
3366  DB  196,98,125,24,104,32                ; vbroadcastss  0x20(%rax),%ymm13
3367  DB  196,98,125,24,80,44                 ; vbroadcastss  0x2c(%rax),%ymm10
3368  DB  196,66,109,184,213                  ; vfmadd231ps   %ymm13,%ymm2,%ymm10
3369  DB  196,66,117,184,212                  ; vfmadd231ps   %ymm12,%ymm1,%ymm10
3370  DB  196,66,125,184,211                  ; vfmadd231ps   %ymm11,%ymm0,%ymm10
3371  DB  72,173                              ; lods          %ds:(%rsi),%rax
3372  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3373  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
3374  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
3375  DB  255,224                             ; jmpq          *%rax
3376
3377PUBLIC _sk_matrix_4x5_hsw
3378_sk_matrix_4x5_hsw LABEL PROC
3379  DB  72,173                              ; lods          %ds:(%rsi),%rax
3380  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3381  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
3382  DB  196,98,125,24,88,32                 ; vbroadcastss  0x20(%rax),%ymm11
3383  DB  196,98,125,24,96,48                 ; vbroadcastss  0x30(%rax),%ymm12
3384  DB  196,98,125,24,64,64                 ; vbroadcastss  0x40(%rax),%ymm8
3385  DB  196,66,101,184,196                  ; vfmadd231ps   %ymm12,%ymm3,%ymm8
3386  DB  196,66,109,184,195                  ; vfmadd231ps   %ymm11,%ymm2,%ymm8
3387  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
3388  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
3389  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
3390  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
3391  DB  196,98,125,24,96,36                 ; vbroadcastss  0x24(%rax),%ymm12
3392  DB  196,98,125,24,104,52                ; vbroadcastss  0x34(%rax),%ymm13
3393  DB  196,98,125,24,72,68                 ; vbroadcastss  0x44(%rax),%ymm9
3394  DB  196,66,101,184,205                  ; vfmadd231ps   %ymm13,%ymm3,%ymm9
3395  DB  196,66,109,184,204                  ; vfmadd231ps   %ymm12,%ymm2,%ymm9
3396  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
3397  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
3398  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
3399  DB  196,98,125,24,96,24                 ; vbroadcastss  0x18(%rax),%ymm12
3400  DB  196,98,125,24,104,40                ; vbroadcastss  0x28(%rax),%ymm13
3401  DB  196,98,125,24,112,56                ; vbroadcastss  0x38(%rax),%ymm14
3402  DB  196,98,125,24,80,72                 ; vbroadcastss  0x48(%rax),%ymm10
3403  DB  196,66,101,184,214                  ; vfmadd231ps   %ymm14,%ymm3,%ymm10
3404  DB  196,66,109,184,213                  ; vfmadd231ps   %ymm13,%ymm2,%ymm10
3405  DB  196,66,117,184,212                  ; vfmadd231ps   %ymm12,%ymm1,%ymm10
3406  DB  196,66,125,184,211                  ; vfmadd231ps   %ymm11,%ymm0,%ymm10
3407  DB  196,98,125,24,96,12                 ; vbroadcastss  0xc(%rax),%ymm12
3408  DB  196,98,125,24,104,28                ; vbroadcastss  0x1c(%rax),%ymm13
3409  DB  196,98,125,24,112,44                ; vbroadcastss  0x2c(%rax),%ymm14
3410  DB  196,98,125,24,120,60                ; vbroadcastss  0x3c(%rax),%ymm15
3411  DB  196,98,125,24,88,76                 ; vbroadcastss  0x4c(%rax),%ymm11
3412  DB  196,66,101,184,223                  ; vfmadd231ps   %ymm15,%ymm3,%ymm11
3413  DB  196,66,109,184,222                  ; vfmadd231ps   %ymm14,%ymm2,%ymm11
3414  DB  196,66,117,184,221                  ; vfmadd231ps   %ymm13,%ymm1,%ymm11
3415  DB  196,66,125,184,220                  ; vfmadd231ps   %ymm12,%ymm0,%ymm11
3416  DB  72,173                              ; lods          %ds:(%rsi),%rax
3417  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3418  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
3419  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
3420  DB  197,124,41,219                      ; vmovaps       %ymm11,%ymm3
3421  DB  255,224                             ; jmpq          *%rax
3422
3423PUBLIC _sk_matrix_perspective_hsw
3424_sk_matrix_perspective_hsw LABEL PROC
3425  DB  72,173                              ; lods          %ds:(%rsi),%rax
3426  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
3427  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
3428  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
3429  DB  196,66,117,184,209                  ; vfmadd231ps   %ymm9,%ymm1,%ymm10
3430  DB  196,66,125,184,208                  ; vfmadd231ps   %ymm8,%ymm0,%ymm10
3431  DB  196,98,125,24,64,12                 ; vbroadcastss  0xc(%rax),%ymm8
3432  DB  196,98,125,24,72,16                 ; vbroadcastss  0x10(%rax),%ymm9
3433  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
3434  DB  196,66,117,184,217                  ; vfmadd231ps   %ymm9,%ymm1,%ymm11
3435  DB  196,66,125,184,216                  ; vfmadd231ps   %ymm8,%ymm0,%ymm11
3436  DB  196,98,125,24,64,24                 ; vbroadcastss  0x18(%rax),%ymm8
3437  DB  196,98,125,24,72,28                 ; vbroadcastss  0x1c(%rax),%ymm9
3438  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
3439  DB  196,66,117,184,225                  ; vfmadd231ps   %ymm9,%ymm1,%ymm12
3440  DB  196,66,125,184,224                  ; vfmadd231ps   %ymm8,%ymm0,%ymm12
3441  DB  196,193,124,83,204                  ; vrcpps        %ymm12,%ymm1
3442  DB  197,172,89,193                      ; vmulps        %ymm1,%ymm10,%ymm0
3443  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
3444  DB  72,173                              ; lods          %ds:(%rsi),%rax
3445  DB  255,224                             ; jmpq          *%rax
3446
3447PUBLIC _sk_linear_gradient_hsw
3448_sk_linear_gradient_hsw LABEL PROC
3449  DB  72,173                              ; lods          %ds:(%rsi),%rax
3450  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
3451  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
3452  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
3453  DB  196,98,125,24,72,28                 ; vbroadcastss  0x1c(%rax),%ymm9
3454  DB  76,139,0                            ; mov           (%rax),%r8
3455  DB  77,133,192                          ; test          %r8,%r8
3456  DB  15,132,143,0,0,0                    ; je            387b <_sk_linear_gradient_hsw+0xb5>
3457  DB  72,139,64,8                         ; mov           0x8(%rax),%rax
3458  DB  72,131,192,32                       ; add           $0x20,%rax
3459  DB  196,65,28,87,228                    ; vxorps        %ymm12,%ymm12,%ymm12
3460  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
3461  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
3462  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
3463  DB  196,98,125,24,104,224               ; vbroadcastss  -0x20(%rax),%ymm13
3464  DB  196,65,124,194,237,1                ; vcmpltps      %ymm13,%ymm0,%ymm13
3465  DB  196,98,125,24,112,228               ; vbroadcastss  -0x1c(%rax),%ymm14
3466  DB  196,67,13,74,228,208                ; vblendvps     %ymm13,%ymm12,%ymm14,%ymm12
3467  DB  196,98,125,24,112,232               ; vbroadcastss  -0x18(%rax),%ymm14
3468  DB  196,227,13,74,201,208               ; vblendvps     %ymm13,%ymm1,%ymm14,%ymm1
3469  DB  196,98,125,24,112,236               ; vbroadcastss  -0x14(%rax),%ymm14
3470  DB  196,227,13,74,210,208               ; vblendvps     %ymm13,%ymm2,%ymm14,%ymm2
3471  DB  196,98,125,24,112,240               ; vbroadcastss  -0x10(%rax),%ymm14
3472  DB  196,227,13,74,219,208               ; vblendvps     %ymm13,%ymm3,%ymm14,%ymm3
3473  DB  196,98,125,24,112,244               ; vbroadcastss  -0xc(%rax),%ymm14
3474  DB  196,67,13,74,192,208                ; vblendvps     %ymm13,%ymm8,%ymm14,%ymm8
3475  DB  196,98,125,24,112,248               ; vbroadcastss  -0x8(%rax),%ymm14
3476  DB  196,67,13,74,219,208                ; vblendvps     %ymm13,%ymm11,%ymm14,%ymm11
3477  DB  196,98,125,24,112,252               ; vbroadcastss  -0x4(%rax),%ymm14
3478  DB  196,67,13,74,210,208                ; vblendvps     %ymm13,%ymm10,%ymm14,%ymm10
3479  DB  196,98,125,24,48                    ; vbroadcastss  (%rax),%ymm14
3480  DB  196,67,13,74,201,208                ; vblendvps     %ymm13,%ymm9,%ymm14,%ymm9
3481  DB  72,131,192,36                       ; add           $0x24,%rax
3482  DB  73,255,200                          ; dec           %r8
3483  DB  117,140                             ; jne           3805 <_sk_linear_gradient_hsw+0x3f>
3484  DB  235,17                              ; jmp           388c <_sk_linear_gradient_hsw+0xc6>
3485  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
3486  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
3487  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
3488  DB  196,65,28,87,228                    ; vxorps        %ymm12,%ymm12,%ymm12
3489  DB  196,66,125,184,196                  ; vfmadd231ps   %ymm12,%ymm0,%ymm8
3490  DB  196,194,125,168,203                 ; vfmadd213ps   %ymm11,%ymm0,%ymm1
3491  DB  196,194,125,168,210                 ; vfmadd213ps   %ymm10,%ymm0,%ymm2
3492  DB  196,194,125,168,217                 ; vfmadd213ps   %ymm9,%ymm0,%ymm3
3493  DB  72,173                              ; lods          %ds:(%rsi),%rax
3494  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3495  DB  255,224                             ; jmpq          *%rax
3496
3497PUBLIC _sk_linear_gradient_2stops_hsw
3498_sk_linear_gradient_2stops_hsw LABEL PROC
3499  DB  72,173                              ; lods          %ds:(%rsi),%rax
3500  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
3501  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
3502  DB  196,98,125,184,193                  ; vfmadd231ps   %ymm1,%ymm0,%ymm8
3503  DB  196,226,125,24,80,4                 ; vbroadcastss  0x4(%rax),%ymm2
3504  DB  196,226,125,24,72,20                ; vbroadcastss  0x14(%rax),%ymm1
3505  DB  196,226,125,184,202                 ; vfmadd231ps   %ymm2,%ymm0,%ymm1
3506  DB  196,226,125,24,88,8                 ; vbroadcastss  0x8(%rax),%ymm3
3507  DB  196,226,125,24,80,24                ; vbroadcastss  0x18(%rax),%ymm2
3508  DB  196,226,125,184,211                 ; vfmadd231ps   %ymm3,%ymm0,%ymm2
3509  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
3510  DB  196,226,125,24,88,28                ; vbroadcastss  0x1c(%rax),%ymm3
3511  DB  196,194,125,184,217                 ; vfmadd231ps   %ymm9,%ymm0,%ymm3
3512  DB  72,173                              ; lods          %ds:(%rsi),%rax
3513  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3514  DB  255,224                             ; jmpq          *%rax
3515
3516PUBLIC _sk_save_xy_hsw
3517_sk_save_xy_hsw LABEL PROC
3518  DB  72,173                              ; lods          %ds:(%rsi),%rax
3519  DB  196,98,125,24,5,68,7,0,0            ; vbroadcastss  0x744(%rip),%ymm8        # 4044 <_sk_callback_hsw+0x3e5>
3520  DB  196,65,124,88,200                   ; vaddps        %ymm8,%ymm0,%ymm9
3521  DB  196,67,125,8,209,1                  ; vroundps      $0x1,%ymm9,%ymm10
3522  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
3523  DB  196,65,116,88,192                   ; vaddps        %ymm8,%ymm1,%ymm8
3524  DB  196,67,125,8,208,1                  ; vroundps      $0x1,%ymm8,%ymm10
3525  DB  196,65,60,92,194                    ; vsubps        %ymm10,%ymm8,%ymm8
3526  DB  197,252,17,0                        ; vmovups       %ymm0,(%rax)
3527  DB  197,252,17,72,32                    ; vmovups       %ymm1,0x20(%rax)
3528  DB  197,124,17,72,64                    ; vmovups       %ymm9,0x40(%rax)
3529  DB  197,124,17,64,96                    ; vmovups       %ymm8,0x60(%rax)
3530  DB  72,173                              ; lods          %ds:(%rsi),%rax
3531  DB  255,224                             ; jmpq          *%rax
3532
3533PUBLIC _sk_accumulate_hsw
3534_sk_accumulate_hsw LABEL PROC
3535  DB  72,173                              ; lods          %ds:(%rsi),%rax
3536  DB  197,124,16,128,128,0,0,0            ; vmovups       0x80(%rax),%ymm8
3537  DB  197,60,89,128,160,0,0,0             ; vmulps        0xa0(%rax),%ymm8,%ymm8
3538  DB  196,226,61,184,224                  ; vfmadd231ps   %ymm0,%ymm8,%ymm4
3539  DB  196,226,61,184,233                  ; vfmadd231ps   %ymm1,%ymm8,%ymm5
3540  DB  196,226,61,184,242                  ; vfmadd231ps   %ymm2,%ymm8,%ymm6
3541  DB  196,98,101,168,199                  ; vfmadd213ps   %ymm7,%ymm3,%ymm8
3542  DB  72,173                              ; lods          %ds:(%rsi),%rax
3543  DB  197,124,41,199                      ; vmovaps       %ymm8,%ymm7
3544  DB  255,224                             ; jmpq          *%rax
3545
3546PUBLIC _sk_bilinear_nx_hsw
3547_sk_bilinear_nx_hsw LABEL PROC
3548  DB  72,173                              ; lods          %ds:(%rsi),%rax
3549  DB  196,226,125,24,5,216,6,0,0          ; vbroadcastss  0x6d8(%rip),%ymm0        # 4048 <_sk_callback_hsw+0x3e9>
3550  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
3551  DB  196,98,125,24,5,207,6,0,0           ; vbroadcastss  0x6cf(%rip),%ymm8        # 404c <_sk_callback_hsw+0x3ed>
3552  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
3553  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
3554  DB  72,173                              ; lods          %ds:(%rsi),%rax
3555  DB  255,224                             ; jmpq          *%rax
3556
3557PUBLIC _sk_bilinear_px_hsw
3558_sk_bilinear_px_hsw LABEL PROC
3559  DB  72,173                              ; lods          %ds:(%rsi),%rax
3560  DB  196,226,125,24,5,183,6,0,0          ; vbroadcastss  0x6b7(%rip),%ymm0        # 4050 <_sk_callback_hsw+0x3f1>
3561  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
3562  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
3563  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
3564  DB  72,173                              ; lods          %ds:(%rsi),%rax
3565  DB  255,224                             ; jmpq          *%rax
3566
3567PUBLIC _sk_bilinear_ny_hsw
3568_sk_bilinear_ny_hsw LABEL PROC
3569  DB  72,173                              ; lods          %ds:(%rsi),%rax
3570  DB  196,226,125,24,13,155,6,0,0         ; vbroadcastss  0x69b(%rip),%ymm1        # 4054 <_sk_callback_hsw+0x3f5>
3571  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
3572  DB  196,98,125,24,5,145,6,0,0           ; vbroadcastss  0x691(%rip),%ymm8        # 4058 <_sk_callback_hsw+0x3f9>
3573  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
3574  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
3575  DB  72,173                              ; lods          %ds:(%rsi),%rax
3576  DB  255,224                             ; jmpq          *%rax
3577
3578PUBLIC _sk_bilinear_py_hsw
3579_sk_bilinear_py_hsw LABEL PROC
3580  DB  72,173                              ; lods          %ds:(%rsi),%rax
3581  DB  196,226,125,24,13,121,6,0,0         ; vbroadcastss  0x679(%rip),%ymm1        # 405c <_sk_callback_hsw+0x3fd>
3582  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
3583  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
3584  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
3585  DB  72,173                              ; lods          %ds:(%rsi),%rax
3586  DB  255,224                             ; jmpq          *%rax
3587
3588PUBLIC _sk_bicubic_n3x_hsw
3589_sk_bicubic_n3x_hsw LABEL PROC
3590  DB  72,173                              ; lods          %ds:(%rsi),%rax
3591  DB  196,226,125,24,5,92,6,0,0           ; vbroadcastss  0x65c(%rip),%ymm0        # 4060 <_sk_callback_hsw+0x401>
3592  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
3593  DB  196,98,125,24,5,83,6,0,0            ; vbroadcastss  0x653(%rip),%ymm8        # 4064 <_sk_callback_hsw+0x405>
3594  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
3595  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
3596  DB  196,98,125,24,21,68,6,0,0           ; vbroadcastss  0x644(%rip),%ymm10        # 4068 <_sk_callback_hsw+0x409>
3597  DB  196,98,125,24,29,63,6,0,0           ; vbroadcastss  0x63f(%rip),%ymm11        # 406c <_sk_callback_hsw+0x40d>
3598  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
3599  DB  196,65,36,89,193                    ; vmulps        %ymm9,%ymm11,%ymm8
3600  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
3601  DB  72,173                              ; lods          %ds:(%rsi),%rax
3602  DB  255,224                             ; jmpq          *%rax
3603
3604PUBLIC _sk_bicubic_n1x_hsw
3605_sk_bicubic_n1x_hsw LABEL PROC
3606  DB  72,173                              ; lods          %ds:(%rsi),%rax
3607  DB  196,226,125,24,5,34,6,0,0           ; vbroadcastss  0x622(%rip),%ymm0        # 4070 <_sk_callback_hsw+0x411>
3608  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
3609  DB  196,98,125,24,5,25,6,0,0            ; vbroadcastss  0x619(%rip),%ymm8        # 4074 <_sk_callback_hsw+0x415>
3610  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
3611  DB  196,98,125,24,13,15,6,0,0           ; vbroadcastss  0x60f(%rip),%ymm9        # 4078 <_sk_callback_hsw+0x419>
3612  DB  196,98,125,24,21,10,6,0,0           ; vbroadcastss  0x60a(%rip),%ymm10        # 407c <_sk_callback_hsw+0x41d>
3613  DB  196,66,61,168,209                   ; vfmadd213ps   %ymm9,%ymm8,%ymm10
3614  DB  196,98,125,24,13,0,6,0,0            ; vbroadcastss  0x600(%rip),%ymm9        # 4080 <_sk_callback_hsw+0x421>
3615  DB  196,66,61,184,202                   ; vfmadd231ps   %ymm10,%ymm8,%ymm9
3616  DB  196,98,125,24,21,246,5,0,0          ; vbroadcastss  0x5f6(%rip),%ymm10        # 4084 <_sk_callback_hsw+0x425>
3617  DB  196,66,61,184,209                   ; vfmadd231ps   %ymm9,%ymm8,%ymm10
3618  DB  197,124,17,144,128,0,0,0            ; vmovups       %ymm10,0x80(%rax)
3619  DB  72,173                              ; lods          %ds:(%rsi),%rax
3620  DB  255,224                             ; jmpq          *%rax
3621
3622PUBLIC _sk_bicubic_p1x_hsw
3623_sk_bicubic_p1x_hsw LABEL PROC
3624  DB  72,173                              ; lods          %ds:(%rsi),%rax
3625  DB  196,98,125,24,5,222,5,0,0           ; vbroadcastss  0x5de(%rip),%ymm8        # 4088 <_sk_callback_hsw+0x429>
3626  DB  197,188,88,0                        ; vaddps        (%rax),%ymm8,%ymm0
3627  DB  197,124,16,72,64                    ; vmovups       0x40(%rax),%ymm9
3628  DB  196,98,125,24,21,208,5,0,0          ; vbroadcastss  0x5d0(%rip),%ymm10        # 408c <_sk_callback_hsw+0x42d>
3629  DB  196,98,125,24,29,203,5,0,0          ; vbroadcastss  0x5cb(%rip),%ymm11        # 4090 <_sk_callback_hsw+0x431>
3630  DB  196,66,53,168,218                   ; vfmadd213ps   %ymm10,%ymm9,%ymm11
3631  DB  196,66,53,168,216                   ; vfmadd213ps   %ymm8,%ymm9,%ymm11
3632  DB  196,98,125,24,5,188,5,0,0           ; vbroadcastss  0x5bc(%rip),%ymm8        # 4094 <_sk_callback_hsw+0x435>
3633  DB  196,66,53,184,195                   ; vfmadd231ps   %ymm11,%ymm9,%ymm8
3634  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
3635  DB  72,173                              ; lods          %ds:(%rsi),%rax
3636  DB  255,224                             ; jmpq          *%rax
3637
3638PUBLIC _sk_bicubic_p3x_hsw
3639_sk_bicubic_p3x_hsw LABEL PROC
3640  DB  72,173                              ; lods          %ds:(%rsi),%rax
3641  DB  196,226,125,24,5,164,5,0,0          ; vbroadcastss  0x5a4(%rip),%ymm0        # 4098 <_sk_callback_hsw+0x439>
3642  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
3643  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
3644  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
3645  DB  196,98,125,24,21,145,5,0,0          ; vbroadcastss  0x591(%rip),%ymm10        # 409c <_sk_callback_hsw+0x43d>
3646  DB  196,98,125,24,29,140,5,0,0          ; vbroadcastss  0x58c(%rip),%ymm11        # 40a0 <_sk_callback_hsw+0x441>
3647  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
3648  DB  196,65,52,89,195                    ; vmulps        %ymm11,%ymm9,%ymm8
3649  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
3650  DB  72,173                              ; lods          %ds:(%rsi),%rax
3651  DB  255,224                             ; jmpq          *%rax
3652
3653PUBLIC _sk_bicubic_n3y_hsw
3654_sk_bicubic_n3y_hsw LABEL PROC
3655  DB  72,173                              ; lods          %ds:(%rsi),%rax
3656  DB  196,226,125,24,13,111,5,0,0         ; vbroadcastss  0x56f(%rip),%ymm1        # 40a4 <_sk_callback_hsw+0x445>
3657  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
3658  DB  196,98,125,24,5,101,5,0,0           ; vbroadcastss  0x565(%rip),%ymm8        # 40a8 <_sk_callback_hsw+0x449>
3659  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
3660  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
3661  DB  196,98,125,24,21,86,5,0,0           ; vbroadcastss  0x556(%rip),%ymm10        # 40ac <_sk_callback_hsw+0x44d>
3662  DB  196,98,125,24,29,81,5,0,0           ; vbroadcastss  0x551(%rip),%ymm11        # 40b0 <_sk_callback_hsw+0x451>
3663  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
3664  DB  196,65,36,89,193                    ; vmulps        %ymm9,%ymm11,%ymm8
3665  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
3666  DB  72,173                              ; lods          %ds:(%rsi),%rax
3667  DB  255,224                             ; jmpq          *%rax
3668
3669PUBLIC _sk_bicubic_n1y_hsw
3670_sk_bicubic_n1y_hsw LABEL PROC
3671  DB  72,173                              ; lods          %ds:(%rsi),%rax
3672  DB  196,226,125,24,13,52,5,0,0          ; vbroadcastss  0x534(%rip),%ymm1        # 40b4 <_sk_callback_hsw+0x455>
3673  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
3674  DB  196,98,125,24,5,42,5,0,0            ; vbroadcastss  0x52a(%rip),%ymm8        # 40b8 <_sk_callback_hsw+0x459>
3675  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
3676  DB  196,98,125,24,13,32,5,0,0           ; vbroadcastss  0x520(%rip),%ymm9        # 40bc <_sk_callback_hsw+0x45d>
3677  DB  196,98,125,24,21,27,5,0,0           ; vbroadcastss  0x51b(%rip),%ymm10        # 40c0 <_sk_callback_hsw+0x461>
3678  DB  196,66,61,168,209                   ; vfmadd213ps   %ymm9,%ymm8,%ymm10
3679  DB  196,98,125,24,13,17,5,0,0           ; vbroadcastss  0x511(%rip),%ymm9        # 40c4 <_sk_callback_hsw+0x465>
3680  DB  196,66,61,184,202                   ; vfmadd231ps   %ymm10,%ymm8,%ymm9
3681  DB  196,98,125,24,21,7,5,0,0            ; vbroadcastss  0x507(%rip),%ymm10        # 40c8 <_sk_callback_hsw+0x469>
3682  DB  196,66,61,184,209                   ; vfmadd231ps   %ymm9,%ymm8,%ymm10
3683  DB  197,124,17,144,160,0,0,0            ; vmovups       %ymm10,0xa0(%rax)
3684  DB  72,173                              ; lods          %ds:(%rsi),%rax
3685  DB  255,224                             ; jmpq          *%rax
3686
3687PUBLIC _sk_bicubic_p1y_hsw
3688_sk_bicubic_p1y_hsw LABEL PROC
3689  DB  72,173                              ; lods          %ds:(%rsi),%rax
3690  DB  196,98,125,24,5,239,4,0,0           ; vbroadcastss  0x4ef(%rip),%ymm8        # 40cc <_sk_callback_hsw+0x46d>
3691  DB  197,188,88,72,32                    ; vaddps        0x20(%rax),%ymm8,%ymm1
3692  DB  197,124,16,72,96                    ; vmovups       0x60(%rax),%ymm9
3693  DB  196,98,125,24,21,224,4,0,0          ; vbroadcastss  0x4e0(%rip),%ymm10        # 40d0 <_sk_callback_hsw+0x471>
3694  DB  196,98,125,24,29,219,4,0,0          ; vbroadcastss  0x4db(%rip),%ymm11        # 40d4 <_sk_callback_hsw+0x475>
3695  DB  196,66,53,168,218                   ; vfmadd213ps   %ymm10,%ymm9,%ymm11
3696  DB  196,66,53,168,216                   ; vfmadd213ps   %ymm8,%ymm9,%ymm11
3697  DB  196,98,125,24,5,204,4,0,0           ; vbroadcastss  0x4cc(%rip),%ymm8        # 40d8 <_sk_callback_hsw+0x479>
3698  DB  196,66,53,184,195                   ; vfmadd231ps   %ymm11,%ymm9,%ymm8
3699  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
3700  DB  72,173                              ; lods          %ds:(%rsi),%rax
3701  DB  255,224                             ; jmpq          *%rax
3702
3703PUBLIC _sk_bicubic_p3y_hsw
3704_sk_bicubic_p3y_hsw LABEL PROC
3705  DB  72,173                              ; lods          %ds:(%rsi),%rax
3706  DB  196,226,125,24,13,180,4,0,0         ; vbroadcastss  0x4b4(%rip),%ymm1        # 40dc <_sk_callback_hsw+0x47d>
3707  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
3708  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
3709  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
3710  DB  196,98,125,24,21,160,4,0,0          ; vbroadcastss  0x4a0(%rip),%ymm10        # 40e0 <_sk_callback_hsw+0x481>
3711  DB  196,98,125,24,29,155,4,0,0          ; vbroadcastss  0x49b(%rip),%ymm11        # 40e4 <_sk_callback_hsw+0x485>
3712  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
3713  DB  196,65,52,89,195                    ; vmulps        %ymm11,%ymm9,%ymm8
3714  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
3715  DB  72,173                              ; lods          %ds:(%rsi),%rax
3716  DB  255,224                             ; jmpq          *%rax
3717
3718PUBLIC _sk_callback_hsw
3719_sk_callback_hsw LABEL PROC
3720  DB  65,87                               ; push          %r15
3721  DB  65,86                               ; push          %r14
3722  DB  83                                  ; push          %rbx
3723  DB  72,129,236,160,0,0,0                ; sub           $0xa0,%rsp
3724  DB  197,252,17,188,36,128,0,0,0         ; vmovups       %ymm7,0x80(%rsp)
3725  DB  197,252,17,116,36,96                ; vmovups       %ymm6,0x60(%rsp)
3726  DB  197,252,17,108,36,64                ; vmovups       %ymm5,0x40(%rsp)
3727  DB  197,252,17,100,36,32                ; vmovups       %ymm4,0x20(%rsp)
3728  DB  73,137,207                          ; mov           %rcx,%r15
3729  DB  73,137,214                          ; mov           %rdx,%r14
3730  DB  72,173                              ; lods          %ds:(%rsi),%rax
3731  DB  72,137,195                          ; mov           %rax,%rbx
3732  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
3733  DB  197,252,21,193                      ; vunpckhps     %ymm1,%ymm0,%ymm0
3734  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
3735  DB  197,236,21,211                      ; vunpckhps     %ymm3,%ymm2,%ymm2
3736  DB  197,221,20,217                      ; vunpcklpd     %ymm1,%ymm4,%ymm3
3737  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
3738  DB  197,253,20,226                      ; vunpcklpd     %ymm2,%ymm0,%ymm4
3739  DB  197,253,21,194                      ; vunpckhpd     %ymm2,%ymm0,%ymm0
3740  DB  196,227,101,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm2
3741  DB  196,227,93,24,232,1                 ; vinsertf128   $0x1,%xmm0,%ymm4,%ymm5
3742  DB  196,227,101,6,201,49                ; vperm2f128    $0x31,%ymm1,%ymm3,%ymm1
3743  DB  196,227,93,6,192,49                 ; vperm2f128    $0x31,%ymm0,%ymm4,%ymm0
3744  DB  197,253,17,83,8                     ; vmovupd       %ymm2,0x8(%rbx)
3745  DB  197,253,17,107,40                   ; vmovupd       %ymm5,0x28(%rbx)
3746  DB  197,253,17,75,72                    ; vmovupd       %ymm1,0x48(%rbx)
3747  DB  197,253,17,67,104                   ; vmovupd       %ymm0,0x68(%rbx)
3748  DB  77,133,255                          ; test          %r15,%r15
3749  DB  186,8,0,0,0                         ; mov           $0x8,%edx
3750  DB  65,15,69,215                        ; cmovne        %r15d,%edx
3751  DB  72,137,217                          ; mov           %rbx,%rcx
3752  DB  197,248,119                         ; vzeroupper
3753  DB  255,19                              ; callq         *(%rbx)
3754  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
3755  DB  197,248,16,0                        ; vmovups       (%rax),%xmm0
3756  DB  197,248,16,72,16                    ; vmovups       0x10(%rax),%xmm1
3757  DB  197,248,16,80,32                    ; vmovups       0x20(%rax),%xmm2
3758  DB  197,248,16,88,48                    ; vmovups       0x30(%rax),%xmm3
3759  DB  196,227,101,24,88,112,1             ; vinsertf128   $0x1,0x70(%rax),%ymm3,%ymm3
3760  DB  196,227,109,24,80,96,1              ; vinsertf128   $0x1,0x60(%rax),%ymm2,%ymm2
3761  DB  196,227,117,24,72,80,1              ; vinsertf128   $0x1,0x50(%rax),%ymm1,%ymm1
3762  DB  196,227,125,24,64,64,1              ; vinsertf128   $0x1,0x40(%rax),%ymm0,%ymm0
3763  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
3764  DB  197,252,21,233                      ; vunpckhps     %ymm1,%ymm0,%ymm5
3765  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
3766  DB  197,236,21,219                      ; vunpckhps     %ymm3,%ymm2,%ymm3
3767  DB  197,221,20,193                      ; vunpcklpd     %ymm1,%ymm4,%ymm0
3768  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
3769  DB  197,213,20,211                      ; vunpcklpd     %ymm3,%ymm5,%ymm2
3770  DB  197,213,21,219                      ; vunpckhpd     %ymm3,%ymm5,%ymm3
3771  DB  72,173                              ; lods          %ds:(%rsi),%rax
3772  DB  76,137,242                          ; mov           %r14,%rdx
3773  DB  76,137,249                          ; mov           %r15,%rcx
3774  DB  197,252,16,100,36,32                ; vmovups       0x20(%rsp),%ymm4
3775  DB  197,252,16,108,36,64                ; vmovups       0x40(%rsp),%ymm5
3776  DB  197,252,16,116,36,96                ; vmovups       0x60(%rsp),%ymm6
3777  DB  197,252,16,188,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm7
3778  DB  72,129,196,160,0,0,0                ; add           $0xa0,%rsp
3779  DB  91                                  ; pop           %rbx
3780  DB  65,94                               ; pop           %r14
3781  DB  65,95                               ; pop           %r15
3782  DB  255,224                             ; jmpq          *%rax
3783
3784ALIGN 4
3785  DB  0,0                                 ; add           %al,(%rax)
3786  DB  0,63                                ; add           %bh,(%rdi)
3787  DB  0,0                                 ; add           %al,(%rax)
3788  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3789  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3790  DB  63                                  ; (bad)
3791  DB  0,0                                 ; add           %al,(%rax)
3792  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3793  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3794  DB  63                                  ; (bad)
3795  DB  0,0                                 ; add           %al,(%rax)
3796  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3797  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3798  DB  63                                  ; (bad)
3799  DB  0,0                                 ; add           %al,(%rax)
3800  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3801  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3802  DB  63                                  ; (bad)
3803  DB  0,0                                 ; add           %al,(%rax)
3804  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3805  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3806  DB  63                                  ; (bad)
3807  DB  0,0                                 ; add           %al,(%rax)
3808  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3809  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3810  DB  63                                  ; (bad)
3811  DB  0,0                                 ; add           %al,(%rax)
3812  DB  128,191,0,0,224,64,0                ; cmpb          $0x0,0x40e00000(%rdi)
3813  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3814  DB  63                                  ; (bad)
3815  DB  0,0                                 ; add           %al,(%rax)
3816  DB  128,63,145                          ; cmpb          $0x91,(%rdi)
3817  DB  131,158,61,92,143,50,63             ; sbbl          $0x3f,0x328f5c3d(%rsi)
3818  DB  154                                 ; (bad)
3819  DB  153                                 ; cltd
3820  DB  153                                 ; cltd
3821  DB  62,10,215                           ; ds            or  %bh,%dl
3822  DB  35,59                               ; and           (%rbx),%edi
3823  DB  174                                 ; scas          %es:(%rdi),%al
3824  DB  71,97                               ; rex.RXB       (bad)
3825  DB  61,41,92,71,65                      ; cmp           $0x41475c29,%eax
3826  DB  168,87                              ; test          $0x57,%al
3827  DB  202,189,206                         ; lret          $0xcebd
3828  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
3829  DB  48,63                               ; xor           %bh,(%rdi)
3830  DB  194,135,210                         ; retq          $0xd287
3831  DB  62,0,0                              ; add           %al,%ds:(%rax)
3832  DB  128,63,4                            ; cmpb          $0x4,(%rdi)
3833  DB  231,140                             ; out           %eax,$0x8c
3834  DB  59,0                                ; cmp           (%rax),%eax
3835  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
3836  DB  64,0,0                              ; add           %al,(%rax)
3837  DB  0,64,0                              ; add           %al,0x0(%rax)
3838  DB  0,128,64,171,170,42                 ; add           %al,0x2aaaab40(%rax)
3839  DB  62,0,0                              ; add           %al,%ds:(%rax)
3840  DB  0,63                                ; add           %bh,(%rdi)
3841  DB  0,0                                 ; add           %al,(%rax)
3842  DB  0,63                                ; add           %bh,(%rdi)
3843  DB  0,0                                 ; add           %al,(%rax)
3844  DB  0,64,171                            ; add           %al,-0x55(%rax)
3845  DB  170                                 ; stos          %al,%es:(%rdi)
3846  DB  170                                 ; stos          %al,%es:(%rdi)
3847  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
3848  DB  170                                 ; stos          %al,%es:(%rdi)
3849  DB  42,63                               ; sub           (%rdi),%bh
3850  DB  0,0                                 ; add           %al,(%rax)
3851  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
3852  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
3853  DB  42,62                               ; sub           (%rsi),%bh
3854  DB  171                                 ; stos          %eax,%es:(%rdi)
3855  DB  170                                 ; stos          %al,%es:(%rdi)
3856  DB  170                                 ; stos          %al,%es:(%rdi)
3857  DB  190,129,128,128,59                  ; mov           $0x3b808081,%esi
3858  DB  129,128,128,59,0,248,0,0,8,33       ; addl          $0x21080000,-0x7ffc480(%rax)
3859  DB  132,55                              ; test          %dh,(%rdi)
3860  DB  224,7                               ; loopne        3e55 <.literal4+0xdd>
3861  DB  0,0                                 ; add           %al,(%rax)
3862  DB  33,8                                ; and           %ecx,(%rax)
3863  DB  2,58                                ; add           (%rdx),%bh
3864  DB  31                                  ; (bad)
3865  DB  0,0                                 ; add           %al,(%rax)
3866  DB  0,8                                 ; add           %cl,(%rax)
3867  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
3868  DB  129,128,128,59,128,0,128,55,0,0     ; addl          $0x3780,0x803b80(%rax)
3869  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3870  DB  0,127,67                            ; add           %bh,0x43(%rdi)
3871  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
3872  DB  0,52,255                            ; add           %dh,(%rdi,%rdi,8)
3873  DB  255                                 ; (bad)
3874  DB  127,0                               ; jg            3e80 <.literal4+0x108>
3875  DB  0,0                                 ; add           %al,(%rax)
3876  DB  0,63                                ; add           %bh,(%rdi)
3877  DB  119,115                             ; ja            3ef9 <.literal4+0x181>
3878  DB  248                                 ; clc
3879  DB  194,117,191                         ; retq          $0xbf75
3880  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
3881  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
3882  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
3883  DB  154                                 ; (bad)
3884  DB  64,254                              ; rex           (bad)
3885  DB  210,221                             ; rcr           %cl,%ch
3886  DB  65,0,0                              ; add           %al,(%r8)
3887  DB  0,75,0                              ; add           %cl,0x0(%rbx)
3888  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
3889  DB  52,255                              ; xor           $0xff,%al
3890  DB  255                                 ; (bad)
3891  DB  127,0                               ; jg            3eb4 <.literal4+0x13c>
3892  DB  0,0                                 ; add           %al,(%rax)
3893  DB  0,63                                ; add           %bh,(%rdi)
3894  DB  119,115                             ; ja            3f2d <.literal4+0x1b5>
3895  DB  248                                 ; clc
3896  DB  194,117,191                         ; retq          $0xbf75
3897  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
3898  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
3899  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
3900  DB  154                                 ; (bad)
3901  DB  64,254                              ; rex           (bad)
3902  DB  210,221                             ; rcr           %cl,%ch
3903  DB  65,0,0                              ; add           %al,(%r8)
3904  DB  0,75,0                              ; add           %cl,0x0(%rbx)
3905  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
3906  DB  52,255                              ; xor           $0xff,%al
3907  DB  255                                 ; (bad)
3908  DB  127,0                               ; jg            3ee8 <.literal4+0x170>
3909  DB  0,0                                 ; add           %al,(%rax)
3910  DB  0,63                                ; add           %bh,(%rdi)
3911  DB  119,115                             ; ja            3f61 <.literal4+0x1e9>
3912  DB  248                                 ; clc
3913  DB  194,117,191                         ; retq          $0xbf75
3914  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
3915  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
3916  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
3917  DB  154                                 ; (bad)
3918  DB  64,254                              ; rex           (bad)
3919  DB  210,221                             ; rcr           %cl,%ch
3920  DB  65,0,0                              ; add           %al,(%r8)
3921  DB  0,75,0                              ; add           %cl,0x0(%rbx)
3922  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
3923  DB  52,255                              ; xor           $0xff,%al
3924  DB  255                                 ; (bad)
3925  DB  127,0                               ; jg            3f1c <.literal4+0x1a4>
3926  DB  0,0                                 ; add           %al,(%rax)
3927  DB  0,63                                ; add           %bh,(%rdi)
3928  DB  119,115                             ; ja            3f95 <.literal4+0x21d>
3929  DB  248                                 ; clc
3930  DB  194,117,191                         ; retq          $0xbf75
3931  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
3932  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
3933  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
3934  DB  154                                 ; (bad)
3935  DB  64,254                              ; rex           (bad)
3936  DB  210,221                             ; rcr           %cl,%ch
3937  DB  65,0,0                              ; add           %al,(%r8)
3938  DB  0,75,0                              ; add           %cl,0x0(%rbx)
3939  DB  0,128,63,0,0,200                    ; add           %al,-0x37ffffc1(%rax)
3940  DB  66,0,0                              ; rex.X         add %al,(%rax)
3941  DB  127,67                              ; jg            3f93 <.literal4+0x21b>
3942  DB  0,0                                 ; add           %al,(%rax)
3943  DB  0,195                               ; add           %al,%bl
3944  DB  0,0                                 ; add           %al,(%rax)
3945  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
3946  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
3947  DB  59,10                               ; cmp           (%rdx),%ecx
3948  DB  215                                 ; xlat          %ds:(%rbx)
3949  DB  163,59,194,24,17,60,203,61,13       ; movabs        %eax,0xd3dcb3c1118c23b
3950  DB  190,80,128,3,62                     ; mov           $0x3e038050,%esi
3951  DB  31                                  ; (bad)
3952  DB  215                                 ; xlat          %ds:(%rbx)
3953  DB  118,63                              ; jbe           3fb3 <.literal4+0x23b>
3954  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
3955  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
3956  DB  127,67                              ; jg            3fc7 <.literal4+0x24f>
3957  DB  129,128,128,59,0,0,128,63,129,128   ; addl          $0x80813f80,0x3b80(%rax)
3958  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
3959  DB  0,128,63,129,128,128                ; add           %al,-0x7f7f7ec1(%rax)
3960  DB  59,0                                ; cmp           (%rax),%eax
3961  DB  248                                 ; clc
3962  DB  0,0                                 ; add           %al,(%rax)
3963  DB  8,33                                ; or            %ah,(%rcx)
3964  DB  132,55                              ; test          %dh,(%rdi)
3965  DB  224,7                               ; loopne        3fa9 <.literal4+0x231>
3966  DB  0,0                                 ; add           %al,(%rax)
3967  DB  33,8                                ; and           %ecx,(%rax)
3968  DB  2,58                                ; add           (%rdx),%bh
3969  DB  31                                  ; (bad)
3970  DB  0,0                                 ; add           %al,(%rax)
3971  DB  0,8                                 ; add           %cl,(%rax)
3972  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
3973  DB  0,248                               ; add           %bh,%al
3974  DB  0,0                                 ; add           %al,(%rax)
3975  DB  8,33                                ; or            %ah,(%rcx)
3976  DB  132,55                              ; test          %dh,(%rdi)
3977  DB  224,7                               ; loopne        3fc5 <.literal4+0x24d>
3978  DB  0,0                                 ; add           %al,(%rax)
3979  DB  33,8                                ; and           %ecx,(%rax)
3980  DB  2,58                                ; add           (%rdx),%bh
3981  DB  31                                  ; (bad)
3982  DB  0,0                                 ; add           %al,(%rax)
3983  DB  0,8                                 ; add           %cl,(%rax)
3984  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
3985  DB  0,0                                 ; add           %al,(%rax)
3986  DB  248                                 ; clc
3987  DB  65,0,0                              ; add           %al,(%r8)
3988  DB  124,66                              ; jl            401a <.literal4+0x2a2>
3989  DB  0,240                               ; add           %dh,%al
3990  DB  0,0                                 ; add           %al,(%rax)
3991  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
3992  DB  0,0                                 ; add           %al,(%rax)
3993  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
3994  DB  0,0                                 ; add           %al,(%rax)
3995  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
3996  DB  0,0                                 ; add           %al,(%rax)
3997  DB  137,136,136,61,0,240                ; mov           %ecx,-0xfffc278(%rax)
3998  DB  0,0                                 ; add           %al,(%rax)
3999  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
4000  DB  0,0                                 ; add           %al,(%rax)
4001  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
4002  DB  0,0                                 ; add           %al,(%rax)
4003  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
4004  DB  0,0                                 ; add           %al,(%rax)
4005  DB  137,136,136,61,0,0                  ; mov           %ecx,0x3d88(%rax)
4006  DB  112,65                              ; jo            405d <.literal4+0x2e5>
4007  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
4008  DB  127,67                              ; jg            406b <.literal4+0x2f3>
4009  DB  128,0,128                           ; addb          $0x80,(%rax)
4010  DB  55                                  ; (bad)
4011  DB  128,0,128                           ; addb          $0x80,(%rax)
4012  DB  55                                  ; (bad)
4013  DB  0,0                                 ; add           %al,(%rax)
4014  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4015  DB  255                                 ; (bad)
4016  DB  127,71                              ; jg            407f <.literal4+0x307>
4017  DB  208                                 ; (bad)
4018  DB  179,89                              ; mov           $0x59,%bl
4019  DB  62,89                               ; ds            pop %rcx
4020  DB  23                                  ; (bad)
4021  DB  55                                  ; (bad)
4022  DB  63                                  ; (bad)
4023  DB  152                                 ; cwtl
4024  DB  221,147,61,0,0,0                    ; fstl          0x3d(%rbx)
4025  DB  63                                  ; (bad)
4026  DB  0,0                                 ; add           %al,(%rax)
4027  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4028  DB  0,0                                 ; add           %al,(%rax)
4029  DB  0,63                                ; add           %bh,(%rdi)
4030  DB  0,0                                 ; add           %al,(%rax)
4031  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4032  DB  0,0                                 ; add           %al,(%rax)
4033  DB  0,63                                ; add           %bh,(%rdi)
4034  DB  0,0                                 ; add           %al,(%rax)
4035  DB  192,191,0,0,128,63,171              ; sarb          $0xab,0x3f800000(%rdi)
4036  DB  170                                 ; stos          %al,%es:(%rdi)
4037  DB  170                                 ; stos          %al,%es:(%rdi)
4038  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4039  DB  0,0                                 ; add           %al,(%rax)
4040  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4041  DB  0,0                                 ; add           %al,(%rax)
4042  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4043  DB  85                                  ; push          %rbp
4044  DB  149                                 ; xchg          %eax,%ebp
4045  DB  191,0,0,0,63                        ; mov           $0x3f000000,%edi
4046  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
4047  DB  0,63                                ; add           %bh,(%rdi)
4048  DB  0,0                                 ; add           %al,(%rax)
4049  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4050  DB  85                                  ; push          %rbp
4051  DB  149                                 ; xchg          %eax,%ebp
4052  DB  191,57,142,99,61                    ; mov           $0x3d638e39,%edi
4053  DB  0,0                                 ; add           %al,(%rax)
4054  DB  192,63,171                          ; sarb          $0xab,(%rdi)
4055  DB  170                                 ; stos          %al,%es:(%rdi)
4056  DB  170                                 ; stos          %al,%es:(%rdi)
4057  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4058  DB  0,0                                 ; add           %al,(%rax)
4059  DB  192,191,0,0,128,63,171              ; sarb          $0xab,0x3f800000(%rdi)
4060  DB  170                                 ; stos          %al,%es:(%rdi)
4061  DB  170                                 ; stos          %al,%es:(%rdi)
4062  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4063  DB  0,0                                 ; add           %al,(%rax)
4064  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4065  DB  0,0                                 ; add           %al,(%rax)
4066  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4067  DB  85                                  ; push          %rbp
4068  DB  149                                 ; xchg          %eax,%ebp
4069  DB  191,0,0,0,63                        ; mov           $0x3f000000,%edi
4070  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
4071  DB  0,63                                ; add           %bh,(%rdi)
4072  DB  0,0                                 ; add           %al,(%rax)
4073  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4074  DB  85                                  ; push          %rbp
4075  DB  149                                 ; xchg          %eax,%ebp
4076  DB  191,57,142,99,61                    ; mov           $0x3d638e39,%edi
4077  DB  0,0                                 ; add           %al,(%rax)
4078  DB  192,63,171                          ; sarb          $0xab,(%rdi)
4079  DB  170                                 ; stos          %al,%es:(%rdi)
4080  DB  170                                 ; stos          %al,%es:(%rdi)
4081  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4082
4083ALIGN 32
4084  DB  255,0                               ; incl          (%rax)
4085  DB  0,0                                 ; add           %al,(%rax)
4086  DB  255,0                               ; incl          (%rax)
4087  DB  0,0                                 ; add           %al,(%rax)
4088  DB  255,0                               ; incl          (%rax)
4089  DB  0,0                                 ; add           %al,(%rax)
4090  DB  255,0                               ; incl          (%rax)
4091  DB  0,0                                 ; add           %al,(%rax)
4092  DB  255,0                               ; incl          (%rax)
4093  DB  0,0                                 ; add           %al,(%rax)
4094  DB  255,0                               ; incl          (%rax)
4095  DB  0,0                                 ; add           %al,(%rax)
4096  DB  255,0                               ; incl          (%rax)
4097  DB  0,0                                 ; add           %al,(%rax)
4098  DB  255,0                               ; incl          (%rax)
4099  DB  0,0                                 ; add           %al,(%rax)
4100  DB  1,255                               ; add           %edi,%edi
4101  DB  255                                 ; (bad)
4102  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a004128 <_sk_callback_hsw+0xa0004c9>
4103  DB  255                                 ; (bad)
4104  DB  255                                 ; (bad)
4105  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12004130 <_sk_callback_hsw+0x120004d1>
4106  DB  255                                 ; (bad)
4107  DB  255                                 ; (bad)
4108  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a004138 <_sk_callback_hsw+0x1a0004d9>
4109  DB  255                                 ; (bad)
4110  DB  255                                 ; (bad)
4111  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3004140 <_sk_callback_hsw+0x30004e1>
4112  DB  255                                 ; (bad)
4113  DB  255                                 ; (bad)
4114  DB  255,6                               ; incl          (%rsi)
4115  DB  255                                 ; (bad)
4116  DB  255                                 ; (bad)
4117  DB  255,10                              ; decl          (%rdx)
4118  DB  255                                 ; (bad)
4119  DB  255                                 ; (bad)
4120  DB  255,14                              ; decl          (%rsi)
4121  DB  255                                 ; (bad)
4122  DB  255                                 ; (bad)
4123  DB  255,18                              ; callq         *(%rdx)
4124  DB  255                                 ; (bad)
4125  DB  255                                 ; (bad)
4126  DB  255,22                              ; callq         *(%rsi)
4127  DB  255                                 ; (bad)
4128  DB  255                                 ; (bad)
4129  DB  255,26                              ; lcall         *(%rdx)
4130  DB  255                                 ; (bad)
4131  DB  255                                 ; (bad)
4132  DB  255,30                              ; lcall         *(%rsi)
4133  DB  255                                 ; (bad)
4134  DB  255                                 ; (bad)
4135  DB  255                                 ; (bad)
4136  DB  255,0                               ; incl          (%rax)
4137  DB  0,0                                 ; add           %al,(%rax)
4138  DB  255,0                               ; incl          (%rax)
4139  DB  0,0                                 ; add           %al,(%rax)
4140  DB  255,0                               ; incl          (%rax)
4141  DB  0,0                                 ; add           %al,(%rax)
4142  DB  255,0                               ; incl          (%rax)
4143  DB  0,0                                 ; add           %al,(%rax)
4144  DB  255,0                               ; incl          (%rax)
4145  DB  0,0                                 ; add           %al,(%rax)
4146  DB  255,0                               ; incl          (%rax)
4147  DB  0,0                                 ; add           %al,(%rax)
4148  DB  255,0                               ; incl          (%rax)
4149  DB  0,0                                 ; add           %al,(%rax)
4150  DB  255,0                               ; incl          (%rax)
4151  DB  0,0                                 ; add           %al,(%rax)
4152  DB  1,255                               ; add           %edi,%edi
4153  DB  255                                 ; (bad)
4154  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a004188 <_sk_callback_hsw+0xa000529>
4155  DB  255                                 ; (bad)
4156  DB  255                                 ; (bad)
4157  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12004190 <_sk_callback_hsw+0x12000531>
4158  DB  255                                 ; (bad)
4159  DB  255                                 ; (bad)
4160  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a004198 <_sk_callback_hsw+0x1a000539>
4161  DB  255                                 ; (bad)
4162  DB  255                                 ; (bad)
4163  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 30041a0 <_sk_callback_hsw+0x3000541>
4164  DB  255                                 ; (bad)
4165  DB  255                                 ; (bad)
4166  DB  255,6                               ; incl          (%rsi)
4167  DB  255                                 ; (bad)
4168  DB  255                                 ; (bad)
4169  DB  255,10                              ; decl          (%rdx)
4170  DB  255                                 ; (bad)
4171  DB  255                                 ; (bad)
4172  DB  255,14                              ; decl          (%rsi)
4173  DB  255                                 ; (bad)
4174  DB  255                                 ; (bad)
4175  DB  255,18                              ; callq         *(%rdx)
4176  DB  255                                 ; (bad)
4177  DB  255                                 ; (bad)
4178  DB  255,22                              ; callq         *(%rsi)
4179  DB  255                                 ; (bad)
4180  DB  255                                 ; (bad)
4181  DB  255,26                              ; lcall         *(%rdx)
4182  DB  255                                 ; (bad)
4183  DB  255                                 ; (bad)
4184  DB  255,30                              ; lcall         *(%rsi)
4185  DB  255                                 ; (bad)
4186  DB  255                                 ; (bad)
4187  DB  255                                 ; (bad)
4188  DB  255,0                               ; incl          (%rax)
4189  DB  0,0                                 ; add           %al,(%rax)
4190  DB  255,0                               ; incl          (%rax)
4191  DB  0,0                                 ; add           %al,(%rax)
4192  DB  255,0                               ; incl          (%rax)
4193  DB  0,0                                 ; add           %al,(%rax)
4194  DB  255,0                               ; incl          (%rax)
4195  DB  0,0                                 ; add           %al,(%rax)
4196  DB  255,0                               ; incl          (%rax)
4197  DB  0,0                                 ; add           %al,(%rax)
4198  DB  255,0                               ; incl          (%rax)
4199  DB  0,0                                 ; add           %al,(%rax)
4200  DB  255,0                               ; incl          (%rax)
4201  DB  0,0                                 ; add           %al,(%rax)
4202  DB  255,0                               ; incl          (%rax)
4203  DB  0,0                                 ; add           %al,(%rax)
4204  DB  1,255                               ; add           %edi,%edi
4205  DB  255                                 ; (bad)
4206  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a0041e8 <_sk_callback_hsw+0xa000589>
4207  DB  255                                 ; (bad)
4208  DB  255                                 ; (bad)
4209  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 120041f0 <_sk_callback_hsw+0x12000591>
4210  DB  255                                 ; (bad)
4211  DB  255                                 ; (bad)
4212  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a0041f8 <_sk_callback_hsw+0x1a000599>
4213  DB  255                                 ; (bad)
4214  DB  255                                 ; (bad)
4215  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3004200 <_sk_callback_hsw+0x30005a1>
4216  DB  255                                 ; (bad)
4217  DB  255                                 ; (bad)
4218  DB  255,6                               ; incl          (%rsi)
4219  DB  255                                 ; (bad)
4220  DB  255                                 ; (bad)
4221  DB  255,10                              ; decl          (%rdx)
4222  DB  255                                 ; (bad)
4223  DB  255                                 ; (bad)
4224  DB  255,14                              ; decl          (%rsi)
4225  DB  255                                 ; (bad)
4226  DB  255                                 ; (bad)
4227  DB  255,18                              ; callq         *(%rdx)
4228  DB  255                                 ; (bad)
4229  DB  255                                 ; (bad)
4230  DB  255,22                              ; callq         *(%rsi)
4231  DB  255                                 ; (bad)
4232  DB  255                                 ; (bad)
4233  DB  255,26                              ; lcall         *(%rdx)
4234  DB  255                                 ; (bad)
4235  DB  255                                 ; (bad)
4236  DB  255,30                              ; lcall         *(%rsi)
4237  DB  255                                 ; (bad)
4238  DB  255                                 ; (bad)
4239  DB  255                                 ; (bad)
4240  DB  255,0                               ; incl          (%rax)
4241  DB  0,0                                 ; add           %al,(%rax)
4242  DB  255,0                               ; incl          (%rax)
4243  DB  0,0                                 ; add           %al,(%rax)
4244  DB  255,0                               ; incl          (%rax)
4245  DB  0,0                                 ; add           %al,(%rax)
4246  DB  255,0                               ; incl          (%rax)
4247  DB  0,0                                 ; add           %al,(%rax)
4248  DB  255,0                               ; incl          (%rax)
4249  DB  0,0                                 ; add           %al,(%rax)
4250  DB  255,0                               ; incl          (%rax)
4251  DB  0,0                                 ; add           %al,(%rax)
4252  DB  255,0                               ; incl          (%rax)
4253  DB  0,0                                 ; add           %al,(%rax)
4254  DB  255,0                               ; incl          (%rax)
4255  DB  0,0                                 ; add           %al,(%rax)
4256  DB  1,255                               ; add           %edi,%edi
4257  DB  255                                 ; (bad)
4258  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a004248 <_sk_callback_hsw+0xa0005e9>
4259  DB  255                                 ; (bad)
4260  DB  255                                 ; (bad)
4261  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12004250 <_sk_callback_hsw+0x120005f1>
4262  DB  255                                 ; (bad)
4263  DB  255                                 ; (bad)
4264  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a004258 <_sk_callback_hsw+0x1a0005f9>
4265  DB  255                                 ; (bad)
4266  DB  255                                 ; (bad)
4267  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3004260 <_sk_callback_hsw+0x3000601>
4268  DB  255                                 ; (bad)
4269  DB  255                                 ; (bad)
4270  DB  255,6                               ; incl          (%rsi)
4271  DB  255                                 ; (bad)
4272  DB  255                                 ; (bad)
4273  DB  255,10                              ; decl          (%rdx)
4274  DB  255                                 ; (bad)
4275  DB  255                                 ; (bad)
4276  DB  255,14                              ; decl          (%rsi)
4277  DB  255                                 ; (bad)
4278  DB  255                                 ; (bad)
4279  DB  255,18                              ; callq         *(%rdx)
4280  DB  255                                 ; (bad)
4281  DB  255                                 ; (bad)
4282  DB  255,22                              ; callq         *(%rsi)
4283  DB  255                                 ; (bad)
4284  DB  255                                 ; (bad)
4285  DB  255,26                              ; lcall         *(%rdx)
4286  DB  255                                 ; (bad)
4287  DB  255                                 ; (bad)
4288  DB  255,30                              ; lcall         *(%rsi)
4289  DB  255                                 ; (bad)
4290  DB  255                                 ; (bad)
4291  DB  255                                 ; .byte         0xff
4292
4293ALIGN 16
4294  DB  255,0                               ; incl          (%rax)
4295  DB  255,0                               ; incl          (%rax)
4296  DB  255,0                               ; incl          (%rax)
4297  DB  255,0                               ; incl          (%rax)
4298  DB  255,0                               ; incl          (%rax)
4299  DB  255,0                               ; incl          (%rax)
4300  DB  255,0                               ; incl          (%rax)
4301  DB  255,0                               ; incl          (%rax)
4302  DB  255,0                               ; incl          (%rax)
4303  DB  255,0                               ; incl          (%rax)
4304  DB  255,0                               ; incl          (%rax)
4305  DB  255,0                               ; incl          (%rax)
4306  DB  255,0                               ; incl          (%rax)
4307  DB  255,0                               ; incl          (%rax)
4308  DB  255,0                               ; incl          (%rax)
4309  DB  255,0                               ; incl          (%rax)
4310ALIGN 32
4311
4312PUBLIC _sk_start_pipeline_avx
4313_sk_start_pipeline_avx LABEL PROC
4314  DB  65,87                               ; push          %r15
4315  DB  65,86                               ; push          %r14
4316  DB  65,85                               ; push          %r13
4317  DB  65,84                               ; push          %r12
4318  DB  86                                  ; push          %rsi
4319  DB  87                                  ; push          %rdi
4320  DB  83                                  ; push          %rbx
4321  DB  72,129,236,160,0,0,0                ; sub           $0xa0,%rsp
4322  DB  197,120,41,188,36,144,0,0,0         ; vmovaps       %xmm15,0x90(%rsp)
4323  DB  197,120,41,180,36,128,0,0,0         ; vmovaps       %xmm14,0x80(%rsp)
4324  DB  197,120,41,108,36,112               ; vmovaps       %xmm13,0x70(%rsp)
4325  DB  197,120,41,100,36,96                ; vmovaps       %xmm12,0x60(%rsp)
4326  DB  197,120,41,92,36,80                 ; vmovaps       %xmm11,0x50(%rsp)
4327  DB  197,120,41,84,36,64                 ; vmovaps       %xmm10,0x40(%rsp)
4328  DB  197,120,41,76,36,48                 ; vmovaps       %xmm9,0x30(%rsp)
4329  DB  197,120,41,68,36,32                 ; vmovaps       %xmm8,0x20(%rsp)
4330  DB  197,248,41,124,36,16                ; vmovaps       %xmm7,0x10(%rsp)
4331  DB  197,248,41,52,36                    ; vmovaps       %xmm6,(%rsp)
4332  DB  77,137,205                          ; mov           %r9,%r13
4333  DB  77,137,198                          ; mov           %r8,%r14
4334  DB  72,137,203                          ; mov           %rcx,%rbx
4335  DB  72,137,214                          ; mov           %rdx,%rsi
4336  DB  72,173                              ; lods          %ds:(%rsi),%rax
4337  DB  73,137,199                          ; mov           %rax,%r15
4338  DB  73,137,244                          ; mov           %rsi,%r12
4339  DB  72,141,67,8                         ; lea           0x8(%rbx),%rax
4340  DB  76,57,232                           ; cmp           %r13,%rax
4341  DB  118,5                               ; jbe           75 <_sk_start_pipeline_avx+0x75>
4342  DB  72,137,223                          ; mov           %rbx,%rdi
4343  DB  235,65                              ; jmp           b6 <_sk_start_pipeline_avx+0xb6>
4344  DB  185,0,0,0,0                         ; mov           $0x0,%ecx
4345  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
4346  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
4347  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
4348  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
4349  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
4350  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
4351  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
4352  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
4353  DB  72,137,223                          ; mov           %rbx,%rdi
4354  DB  76,137,230                          ; mov           %r12,%rsi
4355  DB  76,137,242                          ; mov           %r14,%rdx
4356  DB  65,255,215                          ; callq         *%r15
4357  DB  72,141,123,8                        ; lea           0x8(%rbx),%rdi
4358  DB  72,131,195,16                       ; add           $0x10,%rbx
4359  DB  76,57,235                           ; cmp           %r13,%rbx
4360  DB  72,137,251                          ; mov           %rdi,%rbx
4361  DB  118,191                             ; jbe           75 <_sk_start_pipeline_avx+0x75>
4362  DB  76,137,233                          ; mov           %r13,%rcx
4363  DB  72,41,249                           ; sub           %rdi,%rcx
4364  DB  116,41                              ; je            e7 <_sk_start_pipeline_avx+0xe7>
4365  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
4366  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
4367  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
4368  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
4369  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
4370  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
4371  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
4372  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
4373  DB  76,137,230                          ; mov           %r12,%rsi
4374  DB  76,137,242                          ; mov           %r14,%rdx
4375  DB  65,255,215                          ; callq         *%r15
4376  DB  76,137,232                          ; mov           %r13,%rax
4377  DB  197,248,40,52,36                    ; vmovaps       (%rsp),%xmm6
4378  DB  197,248,40,124,36,16                ; vmovaps       0x10(%rsp),%xmm7
4379  DB  197,120,40,68,36,32                 ; vmovaps       0x20(%rsp),%xmm8
4380  DB  197,120,40,76,36,48                 ; vmovaps       0x30(%rsp),%xmm9
4381  DB  197,120,40,84,36,64                 ; vmovaps       0x40(%rsp),%xmm10
4382  DB  197,120,40,92,36,80                 ; vmovaps       0x50(%rsp),%xmm11
4383  DB  197,120,40,100,36,96                ; vmovaps       0x60(%rsp),%xmm12
4384  DB  197,120,40,108,36,112               ; vmovaps       0x70(%rsp),%xmm13
4385  DB  197,120,40,180,36,128,0,0,0         ; vmovaps       0x80(%rsp),%xmm14
4386  DB  197,120,40,188,36,144,0,0,0         ; vmovaps       0x90(%rsp),%xmm15
4387  DB  72,129,196,160,0,0,0                ; add           $0xa0,%rsp
4388  DB  91                                  ; pop           %rbx
4389  DB  95                                  ; pop           %rdi
4390  DB  94                                  ; pop           %rsi
4391  DB  65,92                               ; pop           %r12
4392  DB  65,93                               ; pop           %r13
4393  DB  65,94                               ; pop           %r14
4394  DB  65,95                               ; pop           %r15
4395  DB  197,248,119                         ; vzeroupper
4396  DB  195                                 ; retq
4397
4398PUBLIC _sk_just_return_avx
4399_sk_just_return_avx LABEL PROC
4400  DB  195                                 ; retq
4401
4402PUBLIC _sk_seed_shader_avx
4403_sk_seed_shader_avx LABEL PROC
4404  DB  72,173                              ; lods          %ds:(%rsi),%rax
4405  DB  197,249,110,199                     ; vmovd         %edi,%xmm0
4406  DB  197,249,112,192,0                   ; vpshufd       $0x0,%xmm0,%xmm0
4407  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
4408  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
4409  DB  196,226,125,24,13,216,82,0,0        ; vbroadcastss  0x52d8(%rip),%ymm1        # 5438 <_sk_callback_avx+0x11a>
4410  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
4411  DB  197,252,88,2                        ; vaddps        (%rdx),%ymm0,%ymm0
4412  DB  196,226,125,24,16                   ; vbroadcastss  (%rax),%ymm2
4413  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
4414  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
4415  DB  72,173                              ; lods          %ds:(%rsi),%rax
4416  DB  196,226,125,24,21,188,82,0,0        ; vbroadcastss  0x52bc(%rip),%ymm2        # 543c <_sk_callback_avx+0x11e>
4417  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
4418  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
4419  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
4420  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
4421  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
4422  DB  255,224                             ; jmpq          *%rax
4423
4424PUBLIC _sk_constant_color_avx
4425_sk_constant_color_avx LABEL PROC
4426  DB  72,173                              ; lods          %ds:(%rsi),%rax
4427  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
4428  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
4429  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
4430  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
4431  DB  72,173                              ; lods          %ds:(%rsi),%rax
4432  DB  255,224                             ; jmpq          *%rax
4433
4434PUBLIC _sk_clear_avx
4435_sk_clear_avx LABEL PROC
4436  DB  72,173                              ; lods          %ds:(%rsi),%rax
4437  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
4438  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
4439  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
4440  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
4441  DB  255,224                             ; jmpq          *%rax
4442
4443PUBLIC _sk_srcatop_avx
4444_sk_srcatop_avx LABEL PROC
4445  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
4446  DB  196,98,125,24,5,108,82,0,0          ; vbroadcastss  0x526c(%rip),%ymm8        # 5440 <_sk_callback_avx+0x122>
4447  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4448  DB  197,60,89,204                       ; vmulps        %ymm4,%ymm8,%ymm9
4449  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
4450  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
4451  DB  197,60,89,205                       ; vmulps        %ymm5,%ymm8,%ymm9
4452  DB  197,180,88,201                      ; vaddps        %ymm1,%ymm9,%ymm1
4453  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
4454  DB  197,60,89,206                       ; vmulps        %ymm6,%ymm8,%ymm9
4455  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
4456  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4457  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4458  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
4459  DB  72,173                              ; lods          %ds:(%rsi),%rax
4460  DB  255,224                             ; jmpq          *%rax
4461
4462PUBLIC _sk_dstatop_avx
4463_sk_dstatop_avx LABEL PROC
4464  DB  197,100,89,196                      ; vmulps        %ymm4,%ymm3,%ymm8
4465  DB  196,98,125,24,13,46,82,0,0          ; vbroadcastss  0x522e(%rip),%ymm9        # 5444 <_sk_callback_avx+0x126>
4466  DB  197,52,92,207                       ; vsubps        %ymm7,%ymm9,%ymm9
4467  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
4468  DB  197,188,88,192                      ; vaddps        %ymm0,%ymm8,%ymm0
4469  DB  197,100,89,197                      ; vmulps        %ymm5,%ymm3,%ymm8
4470  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
4471  DB  197,188,88,201                      ; vaddps        %ymm1,%ymm8,%ymm1
4472  DB  197,100,89,198                      ; vmulps        %ymm6,%ymm3,%ymm8
4473  DB  197,180,89,210                      ; vmulps        %ymm2,%ymm9,%ymm2
4474  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
4475  DB  197,100,89,199                      ; vmulps        %ymm7,%ymm3,%ymm8
4476  DB  197,180,89,219                      ; vmulps        %ymm3,%ymm9,%ymm3
4477  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4478  DB  72,173                              ; lods          %ds:(%rsi),%rax
4479  DB  255,224                             ; jmpq          *%rax
4480
4481PUBLIC _sk_srcin_avx
4482_sk_srcin_avx LABEL PROC
4483  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
4484  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
4485  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
4486  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4487  DB  72,173                              ; lods          %ds:(%rsi),%rax
4488  DB  255,224                             ; jmpq          *%rax
4489
4490PUBLIC _sk_dstin_avx
4491_sk_dstin_avx LABEL PROC
4492  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
4493  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
4494  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
4495  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4496  DB  72,173                              ; lods          %ds:(%rsi),%rax
4497  DB  255,224                             ; jmpq          *%rax
4498
4499PUBLIC _sk_srcout_avx
4500_sk_srcout_avx LABEL PROC
4501  DB  196,98,125,24,5,205,81,0,0          ; vbroadcastss  0x51cd(%rip),%ymm8        # 5448 <_sk_callback_avx+0x12a>
4502  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
4503  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
4504  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
4505  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
4506  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
4507  DB  72,173                              ; lods          %ds:(%rsi),%rax
4508  DB  255,224                             ; jmpq          *%rax
4509
4510PUBLIC _sk_dstout_avx
4511_sk_dstout_avx LABEL PROC
4512  DB  196,226,125,24,5,176,81,0,0         ; vbroadcastss  0x51b0(%rip),%ymm0        # 544c <_sk_callback_avx+0x12e>
4513  DB  197,252,92,219                      ; vsubps        %ymm3,%ymm0,%ymm3
4514  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
4515  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
4516  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
4517  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4518  DB  72,173                              ; lods          %ds:(%rsi),%rax
4519  DB  255,224                             ; jmpq          *%rax
4520
4521PUBLIC _sk_srcover_avx
4522_sk_srcover_avx LABEL PROC
4523  DB  196,98,125,24,5,147,81,0,0          ; vbroadcastss  0x5193(%rip),%ymm8        # 5450 <_sk_callback_avx+0x132>
4524  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4525  DB  197,60,89,204                       ; vmulps        %ymm4,%ymm8,%ymm9
4526  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
4527  DB  197,60,89,205                       ; vmulps        %ymm5,%ymm8,%ymm9
4528  DB  197,180,88,201                      ; vaddps        %ymm1,%ymm9,%ymm1
4529  DB  197,60,89,206                       ; vmulps        %ymm6,%ymm8,%ymm9
4530  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
4531  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4532  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4533  DB  72,173                              ; lods          %ds:(%rsi),%rax
4534  DB  255,224                             ; jmpq          *%rax
4535
4536PUBLIC _sk_dstover_avx
4537_sk_dstover_avx LABEL PROC
4538  DB  196,98,125,24,5,102,81,0,0          ; vbroadcastss  0x5166(%rip),%ymm8        # 5454 <_sk_callback_avx+0x136>
4539  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
4540  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
4541  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
4542  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
4543  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
4544  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
4545  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
4546  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
4547  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
4548  DB  72,173                              ; lods          %ds:(%rsi),%rax
4549  DB  255,224                             ; jmpq          *%rax
4550
4551PUBLIC _sk_modulate_avx
4552_sk_modulate_avx LABEL PROC
4553  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
4554  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
4555  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
4556  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4557  DB  72,173                              ; lods          %ds:(%rsi),%rax
4558  DB  255,224                             ; jmpq          *%rax
4559
4560PUBLIC _sk_multiply_avx
4561_sk_multiply_avx LABEL PROC
4562  DB  196,98,125,24,5,37,81,0,0           ; vbroadcastss  0x5125(%rip),%ymm8        # 5458 <_sk_callback_avx+0x13a>
4563  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
4564  DB  197,52,89,208                       ; vmulps        %ymm0,%ymm9,%ymm10
4565  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4566  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
4567  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
4568  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
4569  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
4570  DB  197,52,89,209                       ; vmulps        %ymm1,%ymm9,%ymm10
4571  DB  197,60,89,221                       ; vmulps        %ymm5,%ymm8,%ymm11
4572  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
4573  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
4574  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
4575  DB  197,52,89,210                       ; vmulps        %ymm2,%ymm9,%ymm10
4576  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
4577  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
4578  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
4579  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
4580  DB  197,52,89,203                       ; vmulps        %ymm3,%ymm9,%ymm9
4581  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4582  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
4583  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4584  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
4585  DB  72,173                              ; lods          %ds:(%rsi),%rax
4586  DB  255,224                             ; jmpq          *%rax
4587
4588PUBLIC _sk_plus__avx
4589_sk_plus__avx LABEL PROC
4590  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
4591  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
4592  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
4593  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
4594  DB  72,173                              ; lods          %ds:(%rsi),%rax
4595  DB  255,224                             ; jmpq          *%rax
4596
4597PUBLIC _sk_screen_avx
4598_sk_screen_avx LABEL PROC
4599  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
4600  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
4601  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
4602  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
4603  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
4604  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
4605  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
4606  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
4607  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
4608  DB  197,100,88,199                      ; vaddps        %ymm7,%ymm3,%ymm8
4609  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4610  DB  197,188,92,219                      ; vsubps        %ymm3,%ymm8,%ymm3
4611  DB  72,173                              ; lods          %ds:(%rsi),%rax
4612  DB  255,224                             ; jmpq          *%rax
4613
4614PUBLIC _sk_xor__avx
4615_sk_xor__avx LABEL PROC
4616  DB  196,98,125,24,5,116,80,0,0          ; vbroadcastss  0x5074(%rip),%ymm8        # 545c <_sk_callback_avx+0x13e>
4617  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
4618  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
4619  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4620  DB  197,60,89,212                       ; vmulps        %ymm4,%ymm8,%ymm10
4621  DB  197,172,88,192                      ; vaddps        %ymm0,%ymm10,%ymm0
4622  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
4623  DB  197,60,89,213                       ; vmulps        %ymm5,%ymm8,%ymm10
4624  DB  197,172,88,201                      ; vaddps        %ymm1,%ymm10,%ymm1
4625  DB  197,180,89,210                      ; vmulps        %ymm2,%ymm9,%ymm2
4626  DB  197,60,89,214                       ; vmulps        %ymm6,%ymm8,%ymm10
4627  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
4628  DB  197,180,89,219                      ; vmulps        %ymm3,%ymm9,%ymm3
4629  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4630  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4631  DB  72,173                              ; lods          %ds:(%rsi),%rax
4632  DB  255,224                             ; jmpq          *%rax
4633
4634PUBLIC _sk_darken_avx
4635_sk_darken_avx LABEL PROC
4636  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
4637  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
4638  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
4639  DB  196,193,124,95,193                  ; vmaxps        %ymm9,%ymm0,%ymm0
4640  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
4641  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
4642  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
4643  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
4644  DB  196,193,116,95,201                  ; vmaxps        %ymm9,%ymm1,%ymm1
4645  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
4646  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
4647  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
4648  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
4649  DB  196,193,108,95,209                  ; vmaxps        %ymm9,%ymm2,%ymm2
4650  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
4651  DB  196,98,125,24,5,244,79,0,0          ; vbroadcastss  0x4ff4(%rip),%ymm8        # 5460 <_sk_callback_avx+0x142>
4652  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4653  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4654  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4655  DB  72,173                              ; lods          %ds:(%rsi),%rax
4656  DB  255,224                             ; jmpq          *%rax
4657
4658PUBLIC _sk_lighten_avx
4659_sk_lighten_avx LABEL PROC
4660  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
4661  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
4662  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
4663  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
4664  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
4665  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
4666  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
4667  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
4668  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
4669  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
4670  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
4671  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
4672  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
4673  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
4674  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
4675  DB  196,98,125,24,5,160,79,0,0          ; vbroadcastss  0x4fa0(%rip),%ymm8        # 5464 <_sk_callback_avx+0x146>
4676  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4677  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4678  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4679  DB  72,173                              ; lods          %ds:(%rsi),%rax
4680  DB  255,224                             ; jmpq          *%rax
4681
4682PUBLIC _sk_difference_avx
4683_sk_difference_avx LABEL PROC
4684  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
4685  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
4686  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
4687  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
4688  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
4689  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
4690  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
4691  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
4692  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
4693  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
4694  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
4695  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
4696  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
4697  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
4698  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
4699  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
4700  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
4701  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
4702  DB  196,98,125,24,5,64,79,0,0           ; vbroadcastss  0x4f40(%rip),%ymm8        # 5468 <_sk_callback_avx+0x14a>
4703  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4704  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4705  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4706  DB  72,173                              ; lods          %ds:(%rsi),%rax
4707  DB  255,224                             ; jmpq          *%rax
4708
4709PUBLIC _sk_exclusion_avx
4710_sk_exclusion_avx LABEL PROC
4711  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
4712  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
4713  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
4714  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
4715  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
4716  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
4717  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
4718  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
4719  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
4720  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
4721  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
4722  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
4723  DB  196,98,125,24,5,251,78,0,0          ; vbroadcastss  0x4efb(%rip),%ymm8        # 546c <_sk_callback_avx+0x14e>
4724  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4725  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4726  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4727  DB  72,173                              ; lods          %ds:(%rsi),%rax
4728  DB  255,224                             ; jmpq          *%rax
4729
4730PUBLIC _sk_colorburn_avx
4731_sk_colorburn_avx LABEL PROC
4732  DB  196,98,125,24,5,230,78,0,0          ; vbroadcastss  0x4ee6(%rip),%ymm8        # 5470 <_sk_callback_avx+0x152>
4733  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
4734  DB  197,52,89,216                       ; vmulps        %ymm0,%ymm9,%ymm11
4735  DB  196,65,44,87,210                    ; vxorps        %ymm10,%ymm10,%ymm10
4736  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4737  DB  197,60,89,228                       ; vmulps        %ymm4,%ymm8,%ymm12
4738  DB  197,68,92,236                       ; vsubps        %ymm4,%ymm7,%ymm13
4739  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
4740  DB  197,20,94,232                       ; vdivps        %ymm0,%ymm13,%ymm13
4741  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
4742  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
4743  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
4744  DB  196,65,36,88,237                    ; vaddps        %ymm13,%ymm11,%ymm13
4745  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
4746  DB  197,28,88,224                       ; vaddps        %ymm0,%ymm12,%ymm12
4747  DB  196,193,124,194,194,0               ; vcmpeqps      %ymm10,%ymm0,%ymm0
4748  DB  196,195,21,74,196,0                 ; vblendvps     %ymm0,%ymm12,%ymm13,%ymm0
4749  DB  197,92,194,231,0                    ; vcmpeqps      %ymm7,%ymm4,%ymm12
4750  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
4751  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
4752  DB  197,52,89,217                       ; vmulps        %ymm1,%ymm9,%ymm11
4753  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
4754  DB  197,68,92,237                       ; vsubps        %ymm5,%ymm7,%ymm13
4755  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
4756  DB  197,20,94,233                       ; vdivps        %ymm1,%ymm13,%ymm13
4757  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
4758  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
4759  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
4760  DB  196,65,36,88,237                    ; vaddps        %ymm13,%ymm11,%ymm13
4761  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
4762  DB  197,28,88,225                       ; vaddps        %ymm1,%ymm12,%ymm12
4763  DB  196,193,116,194,202,0               ; vcmpeqps      %ymm10,%ymm1,%ymm1
4764  DB  196,195,21,74,204,16                ; vblendvps     %ymm1,%ymm12,%ymm13,%ymm1
4765  DB  197,84,194,231,0                    ; vcmpeqps      %ymm7,%ymm5,%ymm12
4766  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
4767  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
4768  DB  197,52,89,202                       ; vmulps        %ymm2,%ymm9,%ymm9
4769  DB  196,65,108,194,210,0                ; vcmpeqps      %ymm10,%ymm2,%ymm10
4770  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
4771  DB  197,68,92,230                       ; vsubps        %ymm6,%ymm7,%ymm12
4772  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
4773  DB  197,28,94,226                       ; vdivps        %ymm2,%ymm12,%ymm12
4774  DB  197,164,88,210                      ; vaddps        %ymm2,%ymm11,%ymm2
4775  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
4776  DB  196,65,68,92,228                    ; vsubps        %ymm12,%ymm7,%ymm12
4777  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
4778  DB  196,65,52,88,228                    ; vaddps        %ymm12,%ymm9,%ymm12
4779  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
4780  DB  196,227,37,74,210,160               ; vblendvps     %ymm10,%ymm2,%ymm11,%ymm2
4781  DB  197,76,194,215,0                    ; vcmpeqps      %ymm7,%ymm6,%ymm10
4782  DB  197,52,88,206                       ; vaddps        %ymm6,%ymm9,%ymm9
4783  DB  196,195,109,74,209,160              ; vblendvps     %ymm10,%ymm9,%ymm2,%ymm2
4784  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4785  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4786  DB  72,173                              ; lods          %ds:(%rsi),%rax
4787  DB  255,224                             ; jmpq          *%rax
4788
4789PUBLIC _sk_colordodge_avx
4790_sk_colordodge_avx LABEL PROC
4791  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
4792  DB  196,98,125,24,13,226,77,0,0         ; vbroadcastss  0x4de2(%rip),%ymm9        # 5474 <_sk_callback_avx+0x156>
4793  DB  197,52,92,215                       ; vsubps        %ymm7,%ymm9,%ymm10
4794  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
4795  DB  197,52,92,203                       ; vsubps        %ymm3,%ymm9,%ymm9
4796  DB  197,100,89,228                      ; vmulps        %ymm4,%ymm3,%ymm12
4797  DB  197,100,92,232                      ; vsubps        %ymm0,%ymm3,%ymm13
4798  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
4799  DB  197,52,89,236                       ; vmulps        %ymm4,%ymm9,%ymm13
4800  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
4801  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
4802  DB  196,65,36,88,228                    ; vaddps        %ymm12,%ymm11,%ymm12
4803  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
4804  DB  197,20,88,232                       ; vaddps        %ymm0,%ymm13,%ymm13
4805  DB  197,252,194,195,0                   ; vcmpeqps      %ymm3,%ymm0,%ymm0
4806  DB  196,195,29,74,197,0                 ; vblendvps     %ymm0,%ymm13,%ymm12,%ymm0
4807  DB  196,65,92,194,224,0                 ; vcmpeqps      %ymm8,%ymm4,%ymm12
4808  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
4809  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
4810  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
4811  DB  197,100,89,229                      ; vmulps        %ymm5,%ymm3,%ymm12
4812  DB  197,100,92,233                      ; vsubps        %ymm1,%ymm3,%ymm13
4813  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
4814  DB  197,52,89,237                       ; vmulps        %ymm5,%ymm9,%ymm13
4815  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
4816  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
4817  DB  196,65,36,88,228                    ; vaddps        %ymm12,%ymm11,%ymm12
4818  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
4819  DB  197,20,88,233                       ; vaddps        %ymm1,%ymm13,%ymm13
4820  DB  197,244,194,203,0                   ; vcmpeqps      %ymm3,%ymm1,%ymm1
4821  DB  196,195,29,74,205,16                ; vblendvps     %ymm1,%ymm13,%ymm12,%ymm1
4822  DB  196,65,84,194,224,0                 ; vcmpeqps      %ymm8,%ymm5,%ymm12
4823  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
4824  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
4825  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
4826  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
4827  DB  197,100,92,226                      ; vsubps        %ymm2,%ymm3,%ymm12
4828  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
4829  DB  197,52,89,230                       ; vmulps        %ymm6,%ymm9,%ymm12
4830  DB  196,65,68,93,219                    ; vminps        %ymm11,%ymm7,%ymm11
4831  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
4832  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
4833  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
4834  DB  197,28,88,226                       ; vaddps        %ymm2,%ymm12,%ymm12
4835  DB  197,236,194,211,0                   ; vcmpeqps      %ymm3,%ymm2,%ymm2
4836  DB  196,195,37,74,212,32                ; vblendvps     %ymm2,%ymm12,%ymm11,%ymm2
4837  DB  196,65,76,194,192,0                 ; vcmpeqps      %ymm8,%ymm6,%ymm8
4838  DB  197,44,88,214                       ; vaddps        %ymm6,%ymm10,%ymm10
4839  DB  196,195,109,74,210,128              ; vblendvps     %ymm8,%ymm10,%ymm2,%ymm2
4840  DB  197,52,89,199                       ; vmulps        %ymm7,%ymm9,%ymm8
4841  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4842  DB  72,173                              ; lods          %ds:(%rsi),%rax
4843  DB  255,224                             ; jmpq          *%rax
4844
4845PUBLIC _sk_hardlight_avx
4846_sk_hardlight_avx LABEL PROC
4847  DB  196,98,125,24,5,244,76,0,0          ; vbroadcastss  0x4cf4(%rip),%ymm8        # 5478 <_sk_callback_avx+0x15a>
4848  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
4849  DB  197,44,89,200                       ; vmulps        %ymm0,%ymm10,%ymm9
4850  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4851  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
4852  DB  196,65,36,88,217                    ; vaddps        %ymm9,%ymm11,%ymm11
4853  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
4854  DB  197,52,194,227,2                    ; vcmpleps      %ymm3,%ymm9,%ymm12
4855  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
4856  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
4857  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
4858  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
4859  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
4860  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
4861  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
4862  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
4863  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
4864  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
4865  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
4866  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
4867  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
4868  DB  197,116,88,225                      ; vaddps        %ymm1,%ymm1,%ymm12
4869  DB  197,28,194,227,2                    ; vcmpleps      %ymm3,%ymm12,%ymm12
4870  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
4871  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
4872  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
4873  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
4874  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
4875  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
4876  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
4877  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
4878  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
4879  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
4880  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
4881  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
4882  DB  197,108,88,218                      ; vaddps        %ymm2,%ymm2,%ymm11
4883  DB  197,36,194,219,2                    ; vcmpleps      %ymm3,%ymm11,%ymm11
4884  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
4885  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
4886  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
4887  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
4888  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
4889  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
4890  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
4891  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
4892  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
4893  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4894  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4895  DB  72,173                              ; lods          %ds:(%rsi),%rax
4896  DB  255,224                             ; jmpq          *%rax
4897
4898PUBLIC _sk_overlay_avx
4899_sk_overlay_avx LABEL PROC
4900  DB  196,98,125,24,5,29,76,0,0           ; vbroadcastss  0x4c1d(%rip),%ymm8        # 547c <_sk_callback_avx+0x15e>
4901  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
4902  DB  197,44,89,200                       ; vmulps        %ymm0,%ymm10,%ymm9
4903  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4904  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
4905  DB  196,65,36,88,217                    ; vaddps        %ymm9,%ymm11,%ymm11
4906  DB  197,92,88,204                       ; vaddps        %ymm4,%ymm4,%ymm9
4907  DB  197,52,194,231,2                    ; vcmpleps      %ymm7,%ymm9,%ymm12
4908  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
4909  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
4910  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
4911  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
4912  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
4913  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
4914  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
4915  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
4916  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
4917  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
4918  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
4919  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
4920  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
4921  DB  197,84,88,229                       ; vaddps        %ymm5,%ymm5,%ymm12
4922  DB  197,28,194,231,2                    ; vcmpleps      %ymm7,%ymm12,%ymm12
4923  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
4924  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
4925  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
4926  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
4927  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
4928  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
4929  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
4930  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
4931  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
4932  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
4933  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
4934  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
4935  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
4936  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
4937  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
4938  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
4939  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
4940  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
4941  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
4942  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
4943  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
4944  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
4945  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
4946  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4947  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4948  DB  72,173                              ; lods          %ds:(%rsi),%rax
4949  DB  255,224                             ; jmpq          *%rax
4950
4951PUBLIC _sk_softlight_avx
4952_sk_softlight_avx LABEL PROC
4953  DB  72,131,236,88                       ; sub           $0x58,%rsp
4954  DB  197,252,17,84,36,32                 ; vmovups       %ymm2,0x20(%rsp)
4955  DB  197,252,40,209                      ; vmovaps       %ymm1,%ymm2
4956  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
4957  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
4958  DB  197,52,194,215,1                    ; vcmpltps      %ymm7,%ymm9,%ymm10
4959  DB  197,92,94,199                       ; vdivps        %ymm7,%ymm4,%ymm8
4960  DB  196,67,53,74,224,160                ; vblendvps     %ymm10,%ymm8,%ymm9,%ymm12
4961  DB  196,65,28,88,196                    ; vaddps        %ymm12,%ymm12,%ymm8
4962  DB  196,65,60,88,192                    ; vaddps        %ymm8,%ymm8,%ymm8
4963  DB  196,65,60,89,216                    ; vmulps        %ymm8,%ymm8,%ymm11
4964  DB  196,65,60,88,195                    ; vaddps        %ymm11,%ymm8,%ymm8
4965  DB  196,98,125,24,29,16,75,0,0          ; vbroadcastss  0x4b10(%rip),%ymm11        # 5484 <_sk_callback_avx+0x166>
4966  DB  196,65,28,88,235                    ; vaddps        %ymm11,%ymm12,%ymm13
4967  DB  196,65,20,89,192                    ; vmulps        %ymm8,%ymm13,%ymm8
4968  DB  196,98,125,24,45,1,75,0,0           ; vbroadcastss  0x4b01(%rip),%ymm13        # 5488 <_sk_callback_avx+0x16a>
4969  DB  196,65,28,89,245                    ; vmulps        %ymm13,%ymm12,%ymm14
4970  DB  196,65,12,88,192                    ; vaddps        %ymm8,%ymm14,%ymm8
4971  DB  196,65,124,82,244                   ; vrsqrtps      %ymm12,%ymm14
4972  DB  196,65,124,83,246                   ; vrcpps        %ymm14,%ymm14
4973  DB  196,65,12,92,244                    ; vsubps        %ymm12,%ymm14,%ymm14
4974  DB  197,92,88,252                       ; vaddps        %ymm4,%ymm4,%ymm15
4975  DB  196,65,4,88,255                     ; vaddps        %ymm15,%ymm15,%ymm15
4976  DB  197,4,194,255,2                     ; vcmpleps      %ymm7,%ymm15,%ymm15
4977  DB  196,67,13,74,240,240                ; vblendvps     %ymm15,%ymm8,%ymm14,%ymm14
4978  DB  197,116,88,249                      ; vaddps        %ymm1,%ymm1,%ymm15
4979  DB  196,98,125,24,5,191,74,0,0          ; vbroadcastss  0x4abf(%rip),%ymm8        # 5480 <_sk_callback_avx+0x162>
4980  DB  196,65,60,92,228                    ; vsubps        %ymm12,%ymm8,%ymm12
4981  DB  197,132,92,195                      ; vsubps        %ymm3,%ymm15,%ymm0
4982  DB  196,65,124,89,228                   ; vmulps        %ymm12,%ymm0,%ymm12
4983  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
4984  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
4985  DB  197,100,89,244                      ; vmulps        %ymm4,%ymm3,%ymm14
4986  DB  197,140,88,192                      ; vaddps        %ymm0,%ymm14,%ymm0
4987  DB  197,28,88,227                       ; vaddps        %ymm3,%ymm12,%ymm12
4988  DB  197,28,89,228                       ; vmulps        %ymm4,%ymm12,%ymm12
4989  DB  197,4,194,243,2                     ; vcmpleps      %ymm3,%ymm15,%ymm14
4990  DB  196,195,125,74,196,224              ; vblendvps     %ymm14,%ymm12,%ymm0,%ymm0
4991  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
4992  DB  197,212,94,199                      ; vdivps        %ymm7,%ymm5,%ymm0
4993  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
4994  DB  197,124,88,240                      ; vaddps        %ymm0,%ymm0,%ymm14
4995  DB  196,65,12,88,246                    ; vaddps        %ymm14,%ymm14,%ymm14
4996  DB  196,65,12,89,254                    ; vmulps        %ymm14,%ymm14,%ymm15
4997  DB  196,65,12,88,247                    ; vaddps        %ymm15,%ymm14,%ymm14
4998  DB  196,65,124,88,251                   ; vaddps        %ymm11,%ymm0,%ymm15
4999  DB  196,65,4,89,246                     ; vmulps        %ymm14,%ymm15,%ymm14
5000  DB  196,65,124,89,253                   ; vmulps        %ymm13,%ymm0,%ymm15
5001  DB  196,65,4,88,246                     ; vaddps        %ymm14,%ymm15,%ymm14
5002  DB  197,124,82,248                      ; vrsqrtps      %ymm0,%ymm15
5003  DB  196,65,124,83,255                   ; vrcpps        %ymm15,%ymm15
5004  DB  197,4,92,248                        ; vsubps        %ymm0,%ymm15,%ymm15
5005  DB  197,84,88,229                       ; vaddps        %ymm5,%ymm5,%ymm12
5006  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
5007  DB  197,28,194,231,2                    ; vcmpleps      %ymm7,%ymm12,%ymm12
5008  DB  196,67,5,74,230,192                 ; vblendvps     %ymm12,%ymm14,%ymm15,%ymm12
5009  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5010  DB  197,108,88,242                      ; vaddps        %ymm2,%ymm2,%ymm14
5011  DB  197,12,92,251                       ; vsubps        %ymm3,%ymm14,%ymm15
5012  DB  197,132,89,192                      ; vmulps        %ymm0,%ymm15,%ymm0
5013  DB  197,4,89,255                        ; vmulps        %ymm7,%ymm15,%ymm15
5014  DB  196,65,4,89,228                     ; vmulps        %ymm12,%ymm15,%ymm12
5015  DB  197,100,89,253                      ; vmulps        %ymm5,%ymm3,%ymm15
5016  DB  196,65,4,88,228                     ; vaddps        %ymm12,%ymm15,%ymm12
5017  DB  197,252,88,195                      ; vaddps        %ymm3,%ymm0,%ymm0
5018  DB  197,252,89,197                      ; vmulps        %ymm5,%ymm0,%ymm0
5019  DB  197,12,194,243,2                    ; vcmpleps      %ymm3,%ymm14,%ymm14
5020  DB  196,99,29,74,240,224                ; vblendvps     %ymm14,%ymm0,%ymm12,%ymm14
5021  DB  197,204,94,199                      ; vdivps        %ymm7,%ymm6,%ymm0
5022  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
5023  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
5024  DB  196,65,52,88,201                    ; vaddps        %ymm9,%ymm9,%ymm9
5025  DB  196,65,52,89,209                    ; vmulps        %ymm9,%ymm9,%ymm10
5026  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
5027  DB  196,65,124,88,211                   ; vaddps        %ymm11,%ymm0,%ymm10
5028  DB  196,65,44,89,201                    ; vmulps        %ymm9,%ymm10,%ymm9
5029  DB  196,65,124,89,213                   ; vmulps        %ymm13,%ymm0,%ymm10
5030  DB  196,65,44,88,201                    ; vaddps        %ymm9,%ymm10,%ymm9
5031  DB  197,124,82,208                      ; vrsqrtps      %ymm0,%ymm10
5032  DB  196,65,124,83,210                   ; vrcpps        %ymm10,%ymm10
5033  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
5034  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
5035  DB  196,65,36,88,219                    ; vaddps        %ymm11,%ymm11,%ymm11
5036  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
5037  DB  196,67,45,74,201,176                ; vblendvps     %ymm11,%ymm9,%ymm10,%ymm9
5038  DB  197,124,16,100,36,32                ; vmovups       0x20(%rsp),%ymm12
5039  DB  196,65,28,88,212                    ; vaddps        %ymm12,%ymm12,%ymm10
5040  DB  197,44,92,219                       ; vsubps        %ymm3,%ymm10,%ymm11
5041  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5042  DB  197,164,89,192                      ; vmulps        %ymm0,%ymm11,%ymm0
5043  DB  197,36,89,223                       ; vmulps        %ymm7,%ymm11,%ymm11
5044  DB  196,65,36,89,201                    ; vmulps        %ymm9,%ymm11,%ymm9
5045  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
5046  DB  196,65,36,88,201                    ; vaddps        %ymm9,%ymm11,%ymm9
5047  DB  197,252,88,195                      ; vaddps        %ymm3,%ymm0,%ymm0
5048  DB  197,252,89,198                      ; vmulps        %ymm6,%ymm0,%ymm0
5049  DB  197,44,194,211,2                    ; vcmpleps      %ymm3,%ymm10,%ymm10
5050  DB  196,99,53,74,200,160                ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm9
5051  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
5052  DB  197,172,89,193                      ; vmulps        %ymm1,%ymm10,%ymm0
5053  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5054  DB  197,188,89,204                      ; vmulps        %ymm4,%ymm8,%ymm1
5055  DB  197,244,88,192                      ; vaddps        %ymm0,%ymm1,%ymm0
5056  DB  197,252,88,4,36                     ; vaddps        (%rsp),%ymm0,%ymm0
5057  DB  197,172,89,202                      ; vmulps        %ymm2,%ymm10,%ymm1
5058  DB  197,188,89,213                      ; vmulps        %ymm5,%ymm8,%ymm2
5059  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
5060  DB  196,193,116,88,206                  ; vaddps        %ymm14,%ymm1,%ymm1
5061  DB  196,193,44,89,212                   ; vmulps        %ymm12,%ymm10,%ymm2
5062  DB  197,60,89,214                       ; vmulps        %ymm6,%ymm8,%ymm10
5063  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
5064  DB  196,193,108,88,209                  ; vaddps        %ymm9,%ymm2,%ymm2
5065  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5066  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5067  DB  72,173                              ; lods          %ds:(%rsi),%rax
5068  DB  72,131,196,88                       ; add           $0x58,%rsp
5069  DB  255,224                             ; jmpq          *%rax
5070
5071PUBLIC _sk_clamp_0_avx
5072_sk_clamp_0_avx LABEL PROC
5073  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
5074  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
5075  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
5076  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
5077  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
5078  DB  72,173                              ; lods          %ds:(%rsi),%rax
5079  DB  255,224                             ; jmpq          *%rax
5080
5081PUBLIC _sk_clamp_1_avx
5082_sk_clamp_1_avx LABEL PROC
5083  DB  196,98,125,24,5,13,73,0,0           ; vbroadcastss  0x490d(%rip),%ymm8        # 548c <_sk_callback_avx+0x16e>
5084  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
5085  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
5086  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
5087  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
5088  DB  72,173                              ; lods          %ds:(%rsi),%rax
5089  DB  255,224                             ; jmpq          *%rax
5090
5091PUBLIC _sk_clamp_a_avx
5092_sk_clamp_a_avx LABEL PROC
5093  DB  196,98,125,24,5,240,72,0,0          ; vbroadcastss  0x48f0(%rip),%ymm8        # 5490 <_sk_callback_avx+0x172>
5094  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
5095  DB  197,252,93,195                      ; vminps        %ymm3,%ymm0,%ymm0
5096  DB  197,244,93,203                      ; vminps        %ymm3,%ymm1,%ymm1
5097  DB  197,236,93,211                      ; vminps        %ymm3,%ymm2,%ymm2
5098  DB  72,173                              ; lods          %ds:(%rsi),%rax
5099  DB  255,224                             ; jmpq          *%rax
5100
5101PUBLIC _sk_set_rgb_avx
5102_sk_set_rgb_avx LABEL PROC
5103  DB  72,173                              ; lods          %ds:(%rsi),%rax
5104  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
5105  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
5106  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
5107  DB  72,173                              ; lods          %ds:(%rsi),%rax
5108  DB  255,224                             ; jmpq          *%rax
5109
5110PUBLIC _sk_swap_rb_avx
5111_sk_swap_rb_avx LABEL PROC
5112  DB  197,124,40,192                      ; vmovaps       %ymm0,%ymm8
5113  DB  72,173                              ; lods          %ds:(%rsi),%rax
5114  DB  197,252,40,194                      ; vmovaps       %ymm2,%ymm0
5115  DB  197,124,41,194                      ; vmovaps       %ymm8,%ymm2
5116  DB  255,224                             ; jmpq          *%rax
5117
5118PUBLIC _sk_swap_avx
5119_sk_swap_avx LABEL PROC
5120  DB  197,124,40,195                      ; vmovaps       %ymm3,%ymm8
5121  DB  197,124,40,202                      ; vmovaps       %ymm2,%ymm9
5122  DB  197,124,40,209                      ; vmovaps       %ymm1,%ymm10
5123  DB  197,124,40,216                      ; vmovaps       %ymm0,%ymm11
5124  DB  72,173                              ; lods          %ds:(%rsi),%rax
5125  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
5126  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
5127  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
5128  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
5129  DB  197,124,41,220                      ; vmovaps       %ymm11,%ymm4
5130  DB  197,124,41,213                      ; vmovaps       %ymm10,%ymm5
5131  DB  197,124,41,206                      ; vmovaps       %ymm9,%ymm6
5132  DB  197,124,41,199                      ; vmovaps       %ymm8,%ymm7
5133  DB  255,224                             ; jmpq          *%rax
5134
5135PUBLIC _sk_move_src_dst_avx
5136_sk_move_src_dst_avx LABEL PROC
5137  DB  72,173                              ; lods          %ds:(%rsi),%rax
5138  DB  197,252,40,224                      ; vmovaps       %ymm0,%ymm4
5139  DB  197,252,40,233                      ; vmovaps       %ymm1,%ymm5
5140  DB  197,252,40,242                      ; vmovaps       %ymm2,%ymm6
5141  DB  197,252,40,251                      ; vmovaps       %ymm3,%ymm7
5142  DB  255,224                             ; jmpq          *%rax
5143
5144PUBLIC _sk_move_dst_src_avx
5145_sk_move_dst_src_avx LABEL PROC
5146  DB  72,173                              ; lods          %ds:(%rsi),%rax
5147  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
5148  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
5149  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
5150  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
5151  DB  255,224                             ; jmpq          *%rax
5152
5153PUBLIC _sk_premul_avx
5154_sk_premul_avx LABEL PROC
5155  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
5156  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
5157  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
5158  DB  72,173                              ; lods          %ds:(%rsi),%rax
5159  DB  255,224                             ; jmpq          *%rax
5160
5161PUBLIC _sk_unpremul_avx
5162_sk_unpremul_avx LABEL PROC
5163  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
5164  DB  196,65,100,194,200,0                ; vcmpeqps      %ymm8,%ymm3,%ymm9
5165  DB  196,98,125,24,21,56,72,0,0          ; vbroadcastss  0x4838(%rip),%ymm10        # 5494 <_sk_callback_avx+0x176>
5166  DB  197,44,94,211                       ; vdivps        %ymm3,%ymm10,%ymm10
5167  DB  196,67,45,74,192,144                ; vblendvps     %ymm9,%ymm8,%ymm10,%ymm8
5168  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
5169  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
5170  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
5171  DB  72,173                              ; lods          %ds:(%rsi),%rax
5172  DB  255,224                             ; jmpq          *%rax
5173
5174PUBLIC _sk_from_srgb_avx
5175_sk_from_srgb_avx LABEL PROC
5176  DB  196,98,125,24,5,25,72,0,0           ; vbroadcastss  0x4819(%rip),%ymm8        # 5498 <_sk_callback_avx+0x17a>
5177  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
5178  DB  197,124,89,208                      ; vmulps        %ymm0,%ymm0,%ymm10
5179  DB  196,98,125,24,29,11,72,0,0          ; vbroadcastss  0x480b(%rip),%ymm11        # 549c <_sk_callback_avx+0x17e>
5180  DB  196,65,124,89,227                   ; vmulps        %ymm11,%ymm0,%ymm12
5181  DB  196,98,125,24,45,1,72,0,0           ; vbroadcastss  0x4801(%rip),%ymm13        # 54a0 <_sk_callback_avx+0x182>
5182  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
5183  DB  196,65,44,89,212                    ; vmulps        %ymm12,%ymm10,%ymm10
5184  DB  196,98,125,24,37,242,71,0,0         ; vbroadcastss  0x47f2(%rip),%ymm12        # 54a4 <_sk_callback_avx+0x186>
5185  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
5186  DB  196,98,125,24,53,232,71,0,0         ; vbroadcastss  0x47e8(%rip),%ymm14        # 54a8 <_sk_callback_avx+0x18a>
5187  DB  196,193,124,194,198,1               ; vcmpltps      %ymm14,%ymm0,%ymm0
5188  DB  196,195,45,74,193,0                 ; vblendvps     %ymm0,%ymm9,%ymm10,%ymm0
5189  DB  196,65,116,89,200                   ; vmulps        %ymm8,%ymm1,%ymm9
5190  DB  197,116,89,209                      ; vmulps        %ymm1,%ymm1,%ymm10
5191  DB  196,65,116,89,251                   ; vmulps        %ymm11,%ymm1,%ymm15
5192  DB  196,65,4,88,253                     ; vaddps        %ymm13,%ymm15,%ymm15
5193  DB  196,65,44,89,215                    ; vmulps        %ymm15,%ymm10,%ymm10
5194  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
5195  DB  196,193,116,194,206,1               ; vcmpltps      %ymm14,%ymm1,%ymm1
5196  DB  196,195,45,74,201,16                ; vblendvps     %ymm1,%ymm9,%ymm10,%ymm1
5197  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
5198  DB  197,108,89,202                      ; vmulps        %ymm2,%ymm2,%ymm9
5199  DB  196,65,108,89,211                   ; vmulps        %ymm11,%ymm2,%ymm10
5200  DB  196,65,44,88,213                    ; vaddps        %ymm13,%ymm10,%ymm10
5201  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
5202  DB  196,65,52,88,204                    ; vaddps        %ymm12,%ymm9,%ymm9
5203  DB  196,193,108,194,214,1               ; vcmpltps      %ymm14,%ymm2,%ymm2
5204  DB  196,195,53,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm9,%ymm2
5205  DB  72,173                              ; lods          %ds:(%rsi),%rax
5206  DB  255,224                             ; jmpq          *%rax
5207
5208PUBLIC _sk_to_srgb_avx
5209_sk_to_srgb_avx LABEL PROC
5210  DB  197,124,82,192                      ; vrsqrtps      %ymm0,%ymm8
5211  DB  196,65,124,83,200                   ; vrcpps        %ymm8,%ymm9
5212  DB  196,65,124,82,208                   ; vrsqrtps      %ymm8,%ymm10
5213  DB  196,98,125,24,5,115,71,0,0          ; vbroadcastss  0x4773(%rip),%ymm8        # 54ac <_sk_callback_avx+0x18e>
5214  DB  196,65,124,89,216                   ; vmulps        %ymm8,%ymm0,%ymm11
5215  DB  196,98,125,24,37,105,71,0,0         ; vbroadcastss  0x4769(%rip),%ymm12        # 54b0 <_sk_callback_avx+0x192>
5216  DB  196,65,52,89,204                    ; vmulps        %ymm12,%ymm9,%ymm9
5217  DB  196,98,125,24,45,95,71,0,0          ; vbroadcastss  0x475f(%rip),%ymm13        # 54b4 <_sk_callback_avx+0x196>
5218  DB  196,65,52,88,205                    ; vaddps        %ymm13,%ymm9,%ymm9
5219  DB  196,98,125,24,53,85,71,0,0          ; vbroadcastss  0x4755(%rip),%ymm14        # 54b8 <_sk_callback_avx+0x19a>
5220  DB  196,65,44,89,214                    ; vmulps        %ymm14,%ymm10,%ymm10
5221  DB  196,65,44,88,201                    ; vaddps        %ymm9,%ymm10,%ymm9
5222  DB  196,98,125,24,21,70,71,0,0          ; vbroadcastss  0x4746(%rip),%ymm10        # 54bc <_sk_callback_avx+0x19e>
5223  DB  196,65,44,93,201                    ; vminps        %ymm9,%ymm10,%ymm9
5224  DB  196,98,125,24,61,60,71,0,0          ; vbroadcastss  0x473c(%rip),%ymm15        # 54c0 <_sk_callback_avx+0x1a2>
5225  DB  196,193,124,194,199,1               ; vcmpltps      %ymm15,%ymm0,%ymm0
5226  DB  196,195,53,74,195,0                 ; vblendvps     %ymm0,%ymm11,%ymm9,%ymm0
5227  DB  197,124,82,201                      ; vrsqrtps      %ymm1,%ymm9
5228  DB  196,65,124,83,217                   ; vrcpps        %ymm9,%ymm11
5229  DB  196,65,124,82,201                   ; vrsqrtps      %ymm9,%ymm9
5230  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
5231  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
5232  DB  196,65,52,89,206                    ; vmulps        %ymm14,%ymm9,%ymm9
5233  DB  196,65,52,88,203                    ; vaddps        %ymm11,%ymm9,%ymm9
5234  DB  196,65,116,89,216                   ; vmulps        %ymm8,%ymm1,%ymm11
5235  DB  196,65,44,93,201                    ; vminps        %ymm9,%ymm10,%ymm9
5236  DB  196,193,116,194,207,1               ; vcmpltps      %ymm15,%ymm1,%ymm1
5237  DB  196,195,53,74,203,16                ; vblendvps     %ymm1,%ymm11,%ymm9,%ymm1
5238  DB  197,124,82,202                      ; vrsqrtps      %ymm2,%ymm9
5239  DB  196,65,124,83,217                   ; vrcpps        %ymm9,%ymm11
5240  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
5241  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
5242  DB  196,65,124,82,201                   ; vrsqrtps      %ymm9,%ymm9
5243  DB  196,65,52,89,206                    ; vmulps        %ymm14,%ymm9,%ymm9
5244  DB  196,65,52,88,203                    ; vaddps        %ymm11,%ymm9,%ymm9
5245  DB  196,65,44,93,201                    ; vminps        %ymm9,%ymm10,%ymm9
5246  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
5247  DB  196,193,108,194,215,1               ; vcmpltps      %ymm15,%ymm2,%ymm2
5248  DB  196,195,53,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm9,%ymm2
5249  DB  72,173                              ; lods          %ds:(%rsi),%rax
5250  DB  255,224                             ; jmpq          *%rax
5251
5252PUBLIC _sk_rgb_to_hsl_avx
5253_sk_rgb_to_hsl_avx LABEL PROC
5254  DB  197,124,95,193                      ; vmaxps        %ymm1,%ymm0,%ymm8
5255  DB  197,60,95,194                       ; vmaxps        %ymm2,%ymm8,%ymm8
5256  DB  197,124,93,201                      ; vminps        %ymm1,%ymm0,%ymm9
5257  DB  197,52,93,202                       ; vminps        %ymm2,%ymm9,%ymm9
5258  DB  196,65,60,92,209                    ; vsubps        %ymm9,%ymm8,%ymm10
5259  DB  196,98,125,24,29,162,70,0,0         ; vbroadcastss  0x46a2(%rip),%ymm11        # 54c4 <_sk_callback_avx+0x1a6>
5260  DB  196,65,36,94,218                    ; vdivps        %ymm10,%ymm11,%ymm11
5261  DB  197,116,92,226                      ; vsubps        %ymm2,%ymm1,%ymm12
5262  DB  196,65,28,89,227                    ; vmulps        %ymm11,%ymm12,%ymm12
5263  DB  197,116,194,234,1                   ; vcmpltps      %ymm2,%ymm1,%ymm13
5264  DB  197,60,194,241,0                    ; vcmpeqps      %ymm1,%ymm8,%ymm14
5265  DB  197,236,92,208                      ; vsubps        %ymm0,%ymm2,%ymm2
5266  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
5267  DB  197,252,92,201                      ; vsubps        %ymm1,%ymm0,%ymm1
5268  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
5269  DB  196,98,125,24,29,123,70,0,0         ; vbroadcastss  0x467b(%rip),%ymm11        # 54d0 <_sk_callback_avx+0x1b2>
5270  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
5271  DB  196,98,125,24,29,105,70,0,0         ; vbroadcastss  0x4669(%rip),%ymm11        # 54cc <_sk_callback_avx+0x1ae>
5272  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
5273  DB  196,227,117,74,202,224              ; vblendvps     %ymm14,%ymm2,%ymm1,%ymm1
5274  DB  196,226,125,24,21,81,70,0,0         ; vbroadcastss  0x4651(%rip),%ymm2        # 54c8 <_sk_callback_avx+0x1aa>
5275  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
5276  DB  196,227,13,74,210,208               ; vblendvps     %ymm13,%ymm2,%ymm14,%ymm2
5277  DB  197,188,194,192,0                   ; vcmpeqps      %ymm0,%ymm8,%ymm0
5278  DB  196,193,108,88,212                  ; vaddps        %ymm12,%ymm2,%ymm2
5279  DB  196,227,117,74,194,0                ; vblendvps     %ymm0,%ymm2,%ymm1,%ymm0
5280  DB  196,193,60,88,201                   ; vaddps        %ymm9,%ymm8,%ymm1
5281  DB  196,98,125,24,37,56,70,0,0          ; vbroadcastss  0x4638(%rip),%ymm12        # 54d8 <_sk_callback_avx+0x1ba>
5282  DB  196,193,116,89,212                  ; vmulps        %ymm12,%ymm1,%ymm2
5283  DB  197,28,194,226,1                    ; vcmpltps      %ymm2,%ymm12,%ymm12
5284  DB  196,65,36,92,216                    ; vsubps        %ymm8,%ymm11,%ymm11
5285  DB  196,65,36,92,217                    ; vsubps        %ymm9,%ymm11,%ymm11
5286  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
5287  DB  196,65,60,194,193,0                 ; vcmpeqps      %ymm9,%ymm8,%ymm8
5288  DB  197,172,94,201                      ; vdivps        %ymm1,%ymm10,%ymm1
5289  DB  196,195,125,74,198,128              ; vblendvps     %ymm8,%ymm14,%ymm0,%ymm0
5290  DB  196,195,117,74,206,128              ; vblendvps     %ymm8,%ymm14,%ymm1,%ymm1
5291  DB  196,98,125,24,5,251,69,0,0          ; vbroadcastss  0x45fb(%rip),%ymm8        # 54d4 <_sk_callback_avx+0x1b6>
5292  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
5293  DB  72,173                              ; lods          %ds:(%rsi),%rax
5294  DB  255,224                             ; jmpq          *%rax
5295
5296PUBLIC _sk_hsl_to_rgb_avx
5297_sk_hsl_to_rgb_avx LABEL PROC
5298  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
5299  DB  197,252,17,188,36,128,0,0,0         ; vmovups       %ymm7,0x80(%rsp)
5300  DB  197,252,17,116,36,96                ; vmovups       %ymm6,0x60(%rsp)
5301  DB  197,252,17,108,36,64                ; vmovups       %ymm5,0x40(%rsp)
5302  DB  197,252,17,100,36,32                ; vmovups       %ymm4,0x20(%rsp)
5303  DB  197,252,17,28,36                    ; vmovups       %ymm3,(%rsp)
5304  DB  197,252,40,225                      ; vmovaps       %ymm1,%ymm4
5305  DB  197,252,40,216                      ; vmovaps       %ymm0,%ymm3
5306  DB  196,98,125,24,5,194,69,0,0          ; vbroadcastss  0x45c2(%rip),%ymm8        # 54dc <_sk_callback_avx+0x1be>
5307  DB  197,60,194,202,2                    ; vcmpleps      %ymm2,%ymm8,%ymm9
5308  DB  197,92,89,210                       ; vmulps        %ymm2,%ymm4,%ymm10
5309  DB  196,65,92,92,218                    ; vsubps        %ymm10,%ymm4,%ymm11
5310  DB  196,67,45,74,203,144                ; vblendvps     %ymm9,%ymm11,%ymm10,%ymm9
5311  DB  197,52,88,210                       ; vaddps        %ymm2,%ymm9,%ymm10
5312  DB  197,108,88,202                      ; vaddps        %ymm2,%ymm2,%ymm9
5313  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
5314  DB  196,98,125,24,29,156,69,0,0         ; vbroadcastss  0x459c(%rip),%ymm11        # 54e0 <_sk_callback_avx+0x1c2>
5315  DB  196,65,100,88,219                   ; vaddps        %ymm11,%ymm3,%ymm11
5316  DB  196,67,125,8,227,1                  ; vroundps      $0x1,%ymm11,%ymm12
5317  DB  196,65,36,92,252                    ; vsubps        %ymm12,%ymm11,%ymm15
5318  DB  196,65,44,92,217                    ; vsubps        %ymm9,%ymm10,%ymm11
5319  DB  196,98,125,24,37,134,69,0,0         ; vbroadcastss  0x4586(%rip),%ymm12        # 54e8 <_sk_callback_avx+0x1ca>
5320  DB  196,193,4,89,196                    ; vmulps        %ymm12,%ymm15,%ymm0
5321  DB  196,98,125,24,45,124,69,0,0         ; vbroadcastss  0x457c(%rip),%ymm13        # 54ec <_sk_callback_avx+0x1ce>
5322  DB  197,20,92,240                       ; vsubps        %ymm0,%ymm13,%ymm14
5323  DB  196,65,36,89,246                    ; vmulps        %ymm14,%ymm11,%ymm14
5324  DB  196,65,52,88,246                    ; vaddps        %ymm14,%ymm9,%ymm14
5325  DB  196,226,125,24,13,93,69,0,0         ; vbroadcastss  0x455d(%rip),%ymm1        # 54e4 <_sk_callback_avx+0x1c6>
5326  DB  196,193,116,194,255,2               ; vcmpleps      %ymm15,%ymm1,%ymm7
5327  DB  196,195,13,74,249,112               ; vblendvps     %ymm7,%ymm9,%ymm14,%ymm7
5328  DB  196,65,60,194,247,2                 ; vcmpleps      %ymm15,%ymm8,%ymm14
5329  DB  196,227,45,74,255,224               ; vblendvps     %ymm14,%ymm7,%ymm10,%ymm7
5330  DB  196,98,125,24,53,72,69,0,0          ; vbroadcastss  0x4548(%rip),%ymm14        # 54f0 <_sk_callback_avx+0x1d2>
5331  DB  196,65,12,194,255,2                 ; vcmpleps      %ymm15,%ymm14,%ymm15
5332  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
5333  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
5334  DB  196,99,125,74,255,240               ; vblendvps     %ymm15,%ymm7,%ymm0,%ymm15
5335  DB  196,227,125,8,195,1                 ; vroundps      $0x1,%ymm3,%ymm0
5336  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
5337  DB  196,193,124,89,252                  ; vmulps        %ymm12,%ymm0,%ymm7
5338  DB  197,148,92,247                      ; vsubps        %ymm7,%ymm13,%ymm6
5339  DB  197,164,89,246                      ; vmulps        %ymm6,%ymm11,%ymm6
5340  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
5341  DB  197,244,194,232,2                   ; vcmpleps      %ymm0,%ymm1,%ymm5
5342  DB  196,195,77,74,233,80                ; vblendvps     %ymm5,%ymm9,%ymm6,%ymm5
5343  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
5344  DB  196,227,45,74,237,96                ; vblendvps     %ymm6,%ymm5,%ymm10,%ymm5
5345  DB  197,140,194,192,2                   ; vcmpleps      %ymm0,%ymm14,%ymm0
5346  DB  197,164,89,247                      ; vmulps        %ymm7,%ymm11,%ymm6
5347  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
5348  DB  196,227,77,74,237,0                 ; vblendvps     %ymm0,%ymm5,%ymm6,%ymm5
5349  DB  196,226,125,24,5,234,68,0,0         ; vbroadcastss  0x44ea(%rip),%ymm0        # 54f4 <_sk_callback_avx+0x1d6>
5350  DB  197,228,88,192                      ; vaddps        %ymm0,%ymm3,%ymm0
5351  DB  196,227,125,8,216,1                 ; vroundps      $0x1,%ymm0,%ymm3
5352  DB  197,252,92,195                      ; vsubps        %ymm3,%ymm0,%ymm0
5353  DB  197,244,194,200,2                   ; vcmpleps      %ymm0,%ymm1,%ymm1
5354  DB  196,193,124,89,220                  ; vmulps        %ymm12,%ymm0,%ymm3
5355  DB  197,148,92,243                      ; vsubps        %ymm3,%ymm13,%ymm6
5356  DB  197,164,89,246                      ; vmulps        %ymm6,%ymm11,%ymm6
5357  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
5358  DB  196,195,77,74,201,16                ; vblendvps     %ymm1,%ymm9,%ymm6,%ymm1
5359  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
5360  DB  196,227,45,74,201,96                ; vblendvps     %ymm6,%ymm1,%ymm10,%ymm1
5361  DB  197,140,194,192,2                   ; vcmpleps      %ymm0,%ymm14,%ymm0
5362  DB  197,164,89,219                      ; vmulps        %ymm3,%ymm11,%ymm3
5363  DB  197,180,88,219                      ; vaddps        %ymm3,%ymm9,%ymm3
5364  DB  196,227,101,74,217,0                ; vblendvps     %ymm0,%ymm1,%ymm3,%ymm3
5365  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
5366  DB  197,220,194,224,0                   ; vcmpeqps      %ymm0,%ymm4,%ymm4
5367  DB  196,227,5,74,194,64                 ; vblendvps     %ymm4,%ymm2,%ymm15,%ymm0
5368  DB  196,227,85,74,202,64                ; vblendvps     %ymm4,%ymm2,%ymm5,%ymm1
5369  DB  196,227,101,74,210,64               ; vblendvps     %ymm4,%ymm2,%ymm3,%ymm2
5370  DB  72,173                              ; lods          %ds:(%rsi),%rax
5371  DB  197,252,16,28,36                    ; vmovups       (%rsp),%ymm3
5372  DB  197,252,16,100,36,32                ; vmovups       0x20(%rsp),%ymm4
5373  DB  197,252,16,108,36,64                ; vmovups       0x40(%rsp),%ymm5
5374  DB  197,252,16,116,36,96                ; vmovups       0x60(%rsp),%ymm6
5375  DB  197,252,16,188,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm7
5376  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
5377  DB  255,224                             ; jmpq          *%rax
5378
5379PUBLIC _sk_scale_1_float_avx
5380_sk_scale_1_float_avx LABEL PROC
5381  DB  72,173                              ; lods          %ds:(%rsi),%rax
5382  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
5383  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
5384  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
5385  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
5386  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
5387  DB  72,173                              ; lods          %ds:(%rsi),%rax
5388  DB  255,224                             ; jmpq          *%rax
5389
5390PUBLIC _sk_scale_u8_avx
5391_sk_scale_u8_avx LABEL PROC
5392  DB  73,137,200                          ; mov           %rcx,%r8
5393  DB  72,173                              ; lods          %ds:(%rsi),%rax
5394  DB  72,139,0                            ; mov           (%rax),%rax
5395  DB  72,1,248                            ; add           %rdi,%rax
5396  DB  77,133,192                          ; test          %r8,%r8
5397  DB  117,68                              ; jne           1107 <_sk_scale_u8_avx+0x54>
5398  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
5399  DB  196,66,121,49,200                   ; vpmovzxbd     %xmm8,%xmm9
5400  DB  196,67,121,4,192,229                ; vpermilps     $0xe5,%xmm8,%xmm8
5401  DB  196,66,121,49,192                   ; vpmovzxbd     %xmm8,%xmm8
5402  DB  196,67,53,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm9,%ymm8
5403  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
5404  DB  196,98,125,24,13,13,68,0,0          ; vbroadcastss  0x440d(%rip),%ymm9        # 54f8 <_sk_callback_avx+0x1da>
5405  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
5406  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
5407  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
5408  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
5409  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
5410  DB  72,173                              ; lods          %ds:(%rsi),%rax
5411  DB  76,137,193                          ; mov           %r8,%rcx
5412  DB  255,224                             ; jmpq          *%rax
5413  DB  49,201                              ; xor           %ecx,%ecx
5414  DB  77,137,194                          ; mov           %r8,%r10
5415  DB  69,49,201                           ; xor           %r9d,%r9d
5416  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
5417  DB  72,255,192                          ; inc           %rax
5418  DB  73,211,227                          ; shl           %cl,%r11
5419  DB  77,9,217                            ; or            %r11,%r9
5420  DB  72,131,193,8                        ; add           $0x8,%rcx
5421  DB  73,255,202                          ; dec           %r10
5422  DB  117,234                             ; jne           110f <_sk_scale_u8_avx+0x5c>
5423  DB  196,65,249,110,193                  ; vmovq         %r9,%xmm8
5424  DB  235,155                             ; jmp           10c7 <_sk_scale_u8_avx+0x14>
5425
5426PUBLIC _sk_lerp_1_float_avx
5427_sk_lerp_1_float_avx LABEL PROC
5428  DB  72,173                              ; lods          %ds:(%rsi),%rax
5429  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
5430  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
5431  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
5432  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
5433  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
5434  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
5435  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
5436  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
5437  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
5438  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
5439  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
5440  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
5441  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
5442  DB  72,173                              ; lods          %ds:(%rsi),%rax
5443  DB  255,224                             ; jmpq          *%rax
5444
5445PUBLIC _sk_lerp_u8_avx
5446_sk_lerp_u8_avx LABEL PROC
5447  DB  73,137,200                          ; mov           %rcx,%r8
5448  DB  72,173                              ; lods          %ds:(%rsi),%rax
5449  DB  72,139,0                            ; mov           (%rax),%rax
5450  DB  72,1,248                            ; add           %rdi,%rax
5451  DB  77,133,192                          ; test          %r8,%r8
5452  DB  117,104                             ; jne           11e3 <_sk_lerp_u8_avx+0x78>
5453  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
5454  DB  196,66,121,49,200                   ; vpmovzxbd     %xmm8,%xmm9
5455  DB  196,67,121,4,192,229                ; vpermilps     $0xe5,%xmm8,%xmm8
5456  DB  196,66,121,49,192                   ; vpmovzxbd     %xmm8,%xmm8
5457  DB  196,67,53,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm9,%ymm8
5458  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
5459  DB  196,98,125,24,13,89,67,0,0          ; vbroadcastss  0x4359(%rip),%ymm9        # 54fc <_sk_callback_avx+0x1de>
5460  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
5461  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
5462  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
5463  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
5464  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
5465  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
5466  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
5467  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
5468  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
5469  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
5470  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
5471  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
5472  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
5473  DB  72,173                              ; lods          %ds:(%rsi),%rax
5474  DB  76,137,193                          ; mov           %r8,%rcx
5475  DB  255,224                             ; jmpq          *%rax
5476  DB  49,201                              ; xor           %ecx,%ecx
5477  DB  77,137,194                          ; mov           %r8,%r10
5478  DB  69,49,201                           ; xor           %r9d,%r9d
5479  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
5480  DB  72,255,192                          ; inc           %rax
5481  DB  73,211,227                          ; shl           %cl,%r11
5482  DB  77,9,217                            ; or            %r11,%r9
5483  DB  72,131,193,8                        ; add           $0x8,%rcx
5484  DB  73,255,202                          ; dec           %r10
5485  DB  117,234                             ; jne           11eb <_sk_lerp_u8_avx+0x80>
5486  DB  196,65,249,110,193                  ; vmovq         %r9,%xmm8
5487  DB  233,116,255,255,255                 ; jmpq          117f <_sk_lerp_u8_avx+0x14>
5488
5489PUBLIC _sk_lerp_565_avx
5490_sk_lerp_565_avx LABEL PROC
5491  DB  72,173                              ; lods          %ds:(%rsi),%rax
5492  DB  76,139,16                           ; mov           (%rax),%r10
5493  DB  72,133,201                          ; test          %rcx,%rcx
5494  DB  15,133,174,0,0,0                    ; jne           12c7 <_sk_lerp_565_avx+0xbc>
5495  DB  196,65,122,111,4,122                ; vmovdqu       (%r10,%rdi,2),%xmm8
5496  DB  197,225,239,219                     ; vpxor         %xmm3,%xmm3,%xmm3
5497  DB  197,185,105,219                     ; vpunpckhwd    %xmm3,%xmm8,%xmm3
5498  DB  196,66,121,51,192                   ; vpmovzxwd     %xmm8,%xmm8
5499  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
5500  DB  196,98,125,24,5,197,66,0,0          ; vbroadcastss  0x42c5(%rip),%ymm8        # 5500 <_sk_callback_avx+0x1e2>
5501  DB  196,65,100,84,192                   ; vandps        %ymm8,%ymm3,%ymm8
5502  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
5503  DB  196,98,125,24,13,182,66,0,0         ; vbroadcastss  0x42b6(%rip),%ymm9        # 5504 <_sk_callback_avx+0x1e6>
5504  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
5505  DB  196,98,125,24,13,172,66,0,0         ; vbroadcastss  0x42ac(%rip),%ymm9        # 5508 <_sk_callback_avx+0x1ea>
5506  DB  196,65,100,84,201                   ; vandps        %ymm9,%ymm3,%ymm9
5507  DB  196,65,124,91,201                   ; vcvtdq2ps     %ymm9,%ymm9
5508  DB  196,98,125,24,21,157,66,0,0         ; vbroadcastss  0x429d(%rip),%ymm10        # 550c <_sk_callback_avx+0x1ee>
5509  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
5510  DB  196,98,125,24,21,147,66,0,0         ; vbroadcastss  0x4293(%rip),%ymm10        # 5510 <_sk_callback_avx+0x1f2>
5511  DB  196,193,100,84,218                  ; vandps        %ymm10,%ymm3,%ymm3
5512  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
5513  DB  196,98,125,24,21,133,66,0,0         ; vbroadcastss  0x4285(%rip),%ymm10        # 5514 <_sk_callback_avx+0x1f6>
5514  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
5515  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
5516  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
5517  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
5518  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
5519  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
5520  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
5521  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
5522  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
5523  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
5524  DB  72,173                              ; lods          %ds:(%rsi),%rax
5525  DB  196,226,125,24,29,83,66,0,0         ; vbroadcastss  0x4253(%rip),%ymm3        # 5518 <_sk_callback_avx+0x1fa>
5526  DB  255,224                             ; jmpq          *%rax
5527  DB  65,137,200                          ; mov           %ecx,%r8d
5528  DB  65,128,224,7                        ; and           $0x7,%r8b
5529  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
5530  DB  65,254,200                          ; dec           %r8b
5531  DB  65,128,248,6                        ; cmp           $0x6,%r8b
5532  DB  15,135,63,255,255,255               ; ja            121f <_sk_lerp_565_avx+0x14>
5533  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
5534  DB  76,141,13,73,0,0,0                  ; lea           0x49(%rip),%r9        # 1334 <_sk_lerp_565_avx+0x129>
5535  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
5536  DB  76,1,200                            ; add           %r9,%rax
5537  DB  255,224                             ; jmpq          *%rax
5538  DB  197,225,239,219                     ; vpxor         %xmm3,%xmm3,%xmm3
5539  DB  196,65,97,196,68,122,12,6           ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm3,%xmm8
5540  DB  196,65,57,196,68,122,10,5           ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm8,%xmm8
5541  DB  196,65,57,196,68,122,8,4            ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm8,%xmm8
5542  DB  196,65,57,196,68,122,6,3            ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm8,%xmm8
5543  DB  196,65,57,196,68,122,4,2            ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm8,%xmm8
5544  DB  196,65,57,196,68,122,2,1            ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm8,%xmm8
5545  DB  196,65,57,196,4,122,0               ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm8,%xmm8
5546  DB  233,235,254,255,255                 ; jmpq          121f <_sk_lerp_565_avx+0x14>
5547  DB  244                                 ; hlt
5548  DB  255                                 ; (bad)
5549  DB  255                                 ; (bad)
5550  DB  255                                 ; (bad)
5551  DB  236                                 ; in            (%dx),%al
5552  DB  255                                 ; (bad)
5553  DB  255                                 ; (bad)
5554  DB  255,228                             ; jmpq          *%rsp
5555  DB  255                                 ; (bad)
5556  DB  255                                 ; (bad)
5557  DB  255                                 ; (bad)
5558  DB  220,255                             ; fdivr         %st,%st(7)
5559  DB  255                                 ; (bad)
5560  DB  255,212                             ; callq         *%rsp
5561  DB  255                                 ; (bad)
5562  DB  255                                 ; (bad)
5563  DB  255,204                             ; dec           %esp
5564  DB  255                                 ; (bad)
5565  DB  255                                 ; (bad)
5566  DB  255,192                             ; inc           %eax
5567  DB  255                                 ; (bad)
5568  DB  255                                 ; (bad)
5569  DB  255                                 ; .byte         0xff
5570
5571PUBLIC _sk_load_tables_avx
5572_sk_load_tables_avx LABEL PROC
5573  DB  72,173                              ; lods          %ds:(%rsi),%rax
5574  DB  76,139,0                            ; mov           (%rax),%r8
5575  DB  72,133,201                          ; test          %rcx,%rcx
5576  DB  15,133,26,2,0,0                     ; jne           1578 <_sk_load_tables_avx+0x228>
5577  DB  196,65,124,16,4,184                 ; vmovups       (%r8,%rdi,4),%ymm8
5578  DB  85                                  ; push          %rbp
5579  DB  65,87                               ; push          %r15
5580  DB  65,86                               ; push          %r14
5581  DB  65,85                               ; push          %r13
5582  DB  65,84                               ; push          %r12
5583  DB  83                                  ; push          %rbx
5584  DB  197,124,40,13,106,68,0,0            ; vmovaps       0x446a(%rip),%ymm9        # 57e0 <_sk_callback_avx+0x4c2>
5585  DB  196,193,60,84,193                   ; vandps        %ymm9,%ymm8,%ymm0
5586  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
5587  DB  69,137,203                          ; mov           %r9d,%r11d
5588  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
5589  DB  69,137,214                          ; mov           %r10d,%r14d
5590  DB  73,193,234,32                       ; shr           $0x20,%r10
5591  DB  73,193,233,32                       ; shr           $0x20,%r9
5592  DB  196,227,125,25,192,1                ; vextractf128  $0x1,%ymm0,%xmm0
5593  DB  196,193,249,126,196                 ; vmovq         %xmm0,%r12
5594  DB  69,137,231                          ; mov           %r12d,%r15d
5595  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
5596  DB  65,137,221                          ; mov           %ebx,%r13d
5597  DB  72,193,235,32                       ; shr           $0x20,%rbx
5598  DB  73,193,236,32                       ; shr           $0x20,%r12
5599  DB  72,139,104,8                        ; mov           0x8(%rax),%rbp
5600  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
5601  DB  196,161,122,16,68,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm0
5602  DB  196,163,121,33,68,165,0,16          ; vinsertps     $0x10,0x0(%rbp,%r12,4),%xmm0,%xmm0
5603  DB  196,163,121,33,68,173,0,32          ; vinsertps     $0x20,0x0(%rbp,%r13,4),%xmm0,%xmm0
5604  DB  196,227,121,33,68,157,0,48          ; vinsertps     $0x30,0x0(%rbp,%rbx,4),%xmm0,%xmm0
5605  DB  196,161,122,16,76,157,0             ; vmovss        0x0(%rbp,%r11,4),%xmm1
5606  DB  196,163,113,33,76,141,0,16          ; vinsertps     $0x10,0x0(%rbp,%r9,4),%xmm1,%xmm1
5607  DB  196,163,113,33,76,181,0,32          ; vinsertps     $0x20,0x0(%rbp,%r14,4),%xmm1,%xmm1
5608  DB  196,163,113,33,76,149,0,48          ; vinsertps     $0x30,0x0(%rbp,%r10,4),%xmm1,%xmm1
5609  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
5610  DB  196,193,113,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm1
5611  DB  196,67,125,25,194,1                 ; vextractf128  $0x1,%ymm8,%xmm10
5612  DB  196,193,105,114,210,8               ; vpsrld        $0x8,%xmm10,%xmm2
5613  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
5614  DB  196,193,116,84,201                  ; vandps        %ymm9,%ymm1,%ymm1
5615  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
5616  DB  69,137,203                          ; mov           %r9d,%r11d
5617  DB  196,195,249,22,202,1                ; vpextrq       $0x1,%xmm1,%r10
5618  DB  69,137,214                          ; mov           %r10d,%r14d
5619  DB  73,193,234,32                       ; shr           $0x20,%r10
5620  DB  73,193,233,32                       ; shr           $0x20,%r9
5621  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
5622  DB  196,225,249,126,205                 ; vmovq         %xmm1,%rbp
5623  DB  65,137,239                          ; mov           %ebp,%r15d
5624  DB  196,227,249,22,203,1                ; vpextrq       $0x1,%xmm1,%rbx
5625  DB  65,137,220                          ; mov           %ebx,%r12d
5626  DB  72,193,235,32                       ; shr           $0x20,%rbx
5627  DB  72,193,237,32                       ; shr           $0x20,%rbp
5628  DB  196,129,122,16,12,184               ; vmovss        (%r8,%r15,4),%xmm1
5629  DB  196,195,113,33,12,168,16            ; vinsertps     $0x10,(%r8,%rbp,4),%xmm1,%xmm1
5630  DB  196,129,122,16,20,160               ; vmovss        (%r8,%r12,4),%xmm2
5631  DB  196,227,113,33,202,32               ; vinsertps     $0x20,%xmm2,%xmm1,%xmm1
5632  DB  196,193,122,16,20,152               ; vmovss        (%r8,%rbx,4),%xmm2
5633  DB  196,227,113,33,202,48               ; vinsertps     $0x30,%xmm2,%xmm1,%xmm1
5634  DB  196,129,122,16,20,152               ; vmovss        (%r8,%r11,4),%xmm2
5635  DB  196,131,105,33,20,136,16            ; vinsertps     $0x10,(%r8,%r9,4),%xmm2,%xmm2
5636  DB  196,129,122,16,28,176               ; vmovss        (%r8,%r14,4),%xmm3
5637  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
5638  DB  196,129,122,16,28,144               ; vmovss        (%r8,%r10,4),%xmm3
5639  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
5640  DB  196,227,109,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm1
5641  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
5642  DB  196,193,105,114,208,16              ; vpsrld        $0x10,%xmm8,%xmm2
5643  DB  196,193,97,114,210,16               ; vpsrld        $0x10,%xmm10,%xmm3
5644  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
5645  DB  196,193,108,84,209                  ; vandps        %ymm9,%ymm2,%ymm2
5646  DB  196,193,249,126,208                 ; vmovq         %xmm2,%r8
5647  DB  69,137,194                          ; mov           %r8d,%r10d
5648  DB  196,195,249,22,209,1                ; vpextrq       $0x1,%xmm2,%r9
5649  DB  69,137,203                          ; mov           %r9d,%r11d
5650  DB  73,193,233,32                       ; shr           $0x20,%r9
5651  DB  73,193,232,32                       ; shr           $0x20,%r8
5652  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
5653  DB  196,225,249,126,213                 ; vmovq         %xmm2,%rbp
5654  DB  65,137,238                          ; mov           %ebp,%r14d
5655  DB  196,227,249,22,211,1                ; vpextrq       $0x1,%xmm2,%rbx
5656  DB  65,137,223                          ; mov           %ebx,%r15d
5657  DB  72,193,235,32                       ; shr           $0x20,%rbx
5658  DB  72,193,237,32                       ; shr           $0x20,%rbp
5659  DB  196,161,122,16,20,176               ; vmovss        (%rax,%r14,4),%xmm2
5660  DB  196,227,105,33,20,168,16            ; vinsertps     $0x10,(%rax,%rbp,4),%xmm2,%xmm2
5661  DB  196,161,122,16,28,184               ; vmovss        (%rax,%r15,4),%xmm3
5662  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
5663  DB  197,250,16,28,152                   ; vmovss        (%rax,%rbx,4),%xmm3
5664  DB  196,99,105,33,203,48                ; vinsertps     $0x30,%xmm3,%xmm2,%xmm9
5665  DB  196,161,122,16,28,144               ; vmovss        (%rax,%r10,4),%xmm3
5666  DB  196,163,97,33,28,128,16             ; vinsertps     $0x10,(%rax,%r8,4),%xmm3,%xmm3
5667  DB  196,161,122,16,20,152               ; vmovss        (%rax,%r11,4),%xmm2
5668  DB  196,227,97,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm3,%xmm2
5669  DB  196,161,122,16,28,136               ; vmovss        (%rax,%r9,4),%xmm3
5670  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
5671  DB  196,195,109,24,209,1                ; vinsertf128   $0x1,%xmm9,%ymm2,%ymm2
5672  DB  196,193,57,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm8
5673  DB  196,193,97,114,210,24               ; vpsrld        $0x18,%xmm10,%xmm3
5674  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
5675  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
5676  DB  196,98,125,24,5,183,63,0,0          ; vbroadcastss  0x3fb7(%rip),%ymm8        # 551c <_sk_callback_avx+0x1fe>
5677  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
5678  DB  72,173                              ; lods          %ds:(%rsi),%rax
5679  DB  91                                  ; pop           %rbx
5680  DB  65,92                               ; pop           %r12
5681  DB  65,93                               ; pop           %r13
5682  DB  65,94                               ; pop           %r14
5683  DB  65,95                               ; pop           %r15
5684  DB  93                                  ; pop           %rbp
5685  DB  255,224                             ; jmpq          *%rax
5686  DB  65,137,201                          ; mov           %ecx,%r9d
5687  DB  65,128,225,7                        ; and           $0x7,%r9b
5688  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
5689  DB  65,254,201                          ; dec           %r9b
5690  DB  65,128,249,6                        ; cmp           $0x6,%r9b
5691  DB  15,135,211,253,255,255              ; ja            1364 <_sk_load_tables_avx+0x14>
5692  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
5693  DB  76,141,21,140,0,0,0                 ; lea           0x8c(%rip),%r10        # 1628 <_sk_load_tables_avx+0x2d8>
5694  DB  79,99,12,138                        ; movslq        (%r10,%r9,4),%r9
5695  DB  77,1,209                            ; add           %r10,%r9
5696  DB  65,255,225                          ; jmpq          *%r9
5697  DB  196,193,121,110,68,184,24           ; vmovd         0x18(%r8,%rdi,4),%xmm0
5698  DB  197,249,112,192,68                  ; vpshufd       $0x44,%xmm0,%xmm0
5699  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
5700  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
5701  DB  196,99,117,12,192,64                ; vblendps      $0x40,%ymm0,%ymm1,%ymm8
5702  DB  196,99,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm0
5703  DB  196,195,121,34,68,184,20,1          ; vpinsrd       $0x1,0x14(%r8,%rdi,4),%xmm0,%xmm0
5704  DB  196,99,61,24,192,1                  ; vinsertf128   $0x1,%xmm0,%ymm8,%ymm8
5705  DB  196,99,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm0
5706  DB  196,195,121,34,68,184,16,0          ; vpinsrd       $0x0,0x10(%r8,%rdi,4),%xmm0,%xmm0
5707  DB  196,99,61,24,192,1                  ; vinsertf128   $0x1,%xmm0,%ymm8,%ymm8
5708  DB  196,195,57,34,68,184,12,3           ; vpinsrd       $0x3,0xc(%r8,%rdi,4),%xmm8,%xmm0
5709  DB  196,99,61,12,192,15                 ; vblendps      $0xf,%ymm0,%ymm8,%ymm8
5710  DB  196,195,57,34,68,184,8,2            ; vpinsrd       $0x2,0x8(%r8,%rdi,4),%xmm8,%xmm0
5711  DB  196,99,61,12,192,15                 ; vblendps      $0xf,%ymm0,%ymm8,%ymm8
5712  DB  196,195,57,34,68,184,4,1            ; vpinsrd       $0x1,0x4(%r8,%rdi,4),%xmm8,%xmm0
5713  DB  196,99,61,12,192,15                 ; vblendps      $0xf,%ymm0,%ymm8,%ymm8
5714  DB  196,195,57,34,4,184,0               ; vpinsrd       $0x0,(%r8,%rdi,4),%xmm8,%xmm0
5715  DB  196,99,61,12,192,15                 ; vblendps      $0xf,%ymm0,%ymm8,%ymm8
5716  DB  233,62,253,255,255                  ; jmpq          1364 <_sk_load_tables_avx+0x14>
5717  DB  102,144                             ; xchg          %ax,%ax
5718  DB  236                                 ; in            (%dx),%al
5719  DB  255                                 ; (bad)
5720  DB  255                                 ; (bad)
5721  DB  255                                 ; (bad)
5722  DB  222,255                             ; fdivrp        %st,%st(7)
5723  DB  255                                 ; (bad)
5724  DB  255,208                             ; callq         *%rax
5725  DB  255                                 ; (bad)
5726  DB  255                                 ; (bad)
5727  DB  255,194                             ; inc           %edx
5728  DB  255                                 ; (bad)
5729  DB  255                                 ; (bad)
5730  DB  255,174,255,255,255,154             ; ljmp          *-0x65000001(%rsi)
5731  DB  255                                 ; (bad)
5732  DB  255                                 ; (bad)
5733  DB  255                                 ; (bad)
5734  DB  126,255                             ; jle           1641 <_sk_load_tables_avx+0x2f1>
5735  DB  255                                 ; (bad)
5736  DB  255                                 ; .byte         0xff
5737
5738PUBLIC _sk_load_tables_u16_be_avx
5739_sk_load_tables_u16_be_avx LABEL PROC
5740  DB  72,173                              ; lods          %ds:(%rsi),%rax
5741  DB  76,139,0                            ; mov           (%rax),%r8
5742  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
5743  DB  72,133,201                          ; test          %rcx,%rcx
5744  DB  15,133,113,2,0,0                    ; jne           18cb <_sk_load_tables_u16_be_avx+0x287>
5745  DB  196,1,121,16,4,72                   ; vmovupd       (%r8,%r9,2),%xmm8
5746  DB  196,129,121,16,84,72,16             ; vmovupd       0x10(%r8,%r9,2),%xmm2
5747  DB  196,129,121,16,92,72,32             ; vmovupd       0x20(%r8,%r9,2),%xmm3
5748  DB  196,1,122,111,76,72,48              ; vmovdqu       0x30(%r8,%r9,2),%xmm9
5749  DB  85                                  ; push          %rbp
5750  DB  65,87                               ; push          %r15
5751  DB  65,86                               ; push          %r14
5752  DB  65,85                               ; push          %r13
5753  DB  65,84                               ; push          %r12
5754  DB  83                                  ; push          %rbx
5755  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
5756  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
5757  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
5758  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
5759  DB  197,121,97,202                      ; vpunpcklwd    %xmm2,%xmm0,%xmm9
5760  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
5761  DB  197,241,97,195                      ; vpunpcklwd    %xmm3,%xmm1,%xmm0
5762  DB  197,113,105,227                     ; vpunpckhwd    %xmm3,%xmm1,%xmm12
5763  DB  197,177,108,208                     ; vpunpcklqdq   %xmm0,%xmm9,%xmm2
5764  DB  197,177,109,200                     ; vpunpckhqdq   %xmm0,%xmm9,%xmm1
5765  DB  196,65,57,108,212                   ; vpunpcklqdq   %xmm12,%xmm8,%xmm10
5766  DB  197,121,111,29,170,65,0,0           ; vmovdqa       0x41aa(%rip),%xmm11        # 5860 <_sk_callback_avx+0x542>
5767  DB  196,193,105,219,195                 ; vpand         %xmm11,%xmm2,%xmm0
5768  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
5769  DB  196,193,121,105,209                 ; vpunpckhwd    %xmm9,%xmm0,%xmm2
5770  DB  196,195,249,22,208,1                ; vpextrq       $0x1,%xmm2,%r8
5771  DB  69,137,193                          ; mov           %r8d,%r9d
5772  DB  77,137,194                          ; mov           %r8,%r10
5773  DB  73,193,234,32                       ; shr           $0x20,%r10
5774  DB  196,193,249,126,208                 ; vmovq         %xmm2,%r8
5775  DB  69,137,195                          ; mov           %r8d,%r11d
5776  DB  77,137,198                          ; mov           %r8,%r14
5777  DB  73,193,238,32                       ; shr           $0x20,%r14
5778  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
5779  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
5780  DB  65,137,223                          ; mov           %ebx,%r15d
5781  DB  72,193,235,30                       ; shr           $0x1e,%rbx
5782  DB  196,195,249,22,196,1                ; vpextrq       $0x1,%xmm0,%r12
5783  DB  69,137,229                          ; mov           %r12d,%r13d
5784  DB  73,193,236,30                       ; shr           $0x1e,%r12
5785  DB  72,139,104,8                        ; mov           0x8(%rax),%rbp
5786  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
5787  DB  196,161,122,16,68,157,0             ; vmovss        0x0(%rbp,%r11,4),%xmm0
5788  DB  196,163,121,33,68,181,0,16          ; vinsertps     $0x10,0x0(%rbp,%r14,4),%xmm0,%xmm0
5789  DB  196,161,122,16,84,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm2
5790  DB  196,227,121,33,194,32               ; vinsertps     $0x20,%xmm2,%xmm0,%xmm0
5791  DB  196,161,122,16,84,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm2
5792  DB  196,227,121,33,194,48               ; vinsertps     $0x30,%xmm2,%xmm0,%xmm0
5793  DB  196,161,122,16,84,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm2
5794  DB  196,227,105,33,84,29,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,1),%xmm2,%xmm2
5795  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
5796  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
5797  DB  196,161,122,16,92,37,0              ; vmovss        0x0(%rbp,%r12,1),%xmm3
5798  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
5799  DB  196,227,109,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm2,%ymm0
5800  DB  196,193,113,219,203                 ; vpand         %xmm11,%xmm1,%xmm1
5801  DB  196,193,113,105,209                 ; vpunpckhwd    %xmm9,%xmm1,%xmm2
5802  DB  196,227,249,22,213,1                ; vpextrq       $0x1,%xmm2,%rbp
5803  DB  65,137,233                          ; mov           %ebp,%r9d
5804  DB  72,193,237,32                       ; shr           $0x20,%rbp
5805  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
5806  DB  65,137,218                          ; mov           %ebx,%r10d
5807  DB  72,193,235,32                       ; shr           $0x20,%rbx
5808  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
5809  DB  196,193,249,126,203                 ; vmovq         %xmm1,%r11
5810  DB  69,137,222                          ; mov           %r11d,%r14d
5811  DB  73,193,235,30                       ; shr           $0x1e,%r11
5812  DB  196,195,249,22,207,1                ; vpextrq       $0x1,%xmm1,%r15
5813  DB  69,137,252                          ; mov           %r15d,%r12d
5814  DB  73,193,239,30                       ; shr           $0x1e,%r15
5815  DB  196,129,122,16,12,144               ; vmovss        (%r8,%r10,4),%xmm1
5816  DB  196,195,113,33,12,152,16            ; vinsertps     $0x10,(%r8,%rbx,4),%xmm1,%xmm1
5817  DB  196,129,122,16,20,136               ; vmovss        (%r8,%r9,4),%xmm2
5818  DB  196,227,113,33,202,32               ; vinsertps     $0x20,%xmm2,%xmm1,%xmm1
5819  DB  196,193,122,16,20,168               ; vmovss        (%r8,%rbp,4),%xmm2
5820  DB  196,227,113,33,202,48               ; vinsertps     $0x30,%xmm2,%xmm1,%xmm1
5821  DB  196,129,122,16,20,176               ; vmovss        (%r8,%r14,4),%xmm2
5822  DB  196,131,105,33,20,24,16             ; vinsertps     $0x10,(%r8,%r11,1),%xmm2,%xmm2
5823  DB  196,129,122,16,28,160               ; vmovss        (%r8,%r12,4),%xmm3
5824  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
5825  DB  196,129,122,16,28,56                ; vmovss        (%r8,%r15,1),%xmm3
5826  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
5827  DB  196,227,109,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm1
5828  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
5829  DB  196,193,41,219,211                  ; vpand         %xmm11,%xmm10,%xmm2
5830  DB  196,193,105,105,217                 ; vpunpckhwd    %xmm9,%xmm2,%xmm3
5831  DB  196,227,249,22,221,1                ; vpextrq       $0x1,%xmm3,%rbp
5832  DB  65,137,232                          ; mov           %ebp,%r8d
5833  DB  72,193,237,32                       ; shr           $0x20,%rbp
5834  DB  196,225,249,126,219                 ; vmovq         %xmm3,%rbx
5835  DB  65,137,217                          ; mov           %ebx,%r9d
5836  DB  72,193,235,32                       ; shr           $0x20,%rbx
5837  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
5838  DB  196,225,249,126,208                 ; vmovq         %xmm2,%rax
5839  DB  65,137,195                          ; mov           %eax,%r11d
5840  DB  72,193,232,30                       ; shr           $0x1e,%rax
5841  DB  196,195,249,22,214,1                ; vpextrq       $0x1,%xmm2,%r14
5842  DB  69,137,247                          ; mov           %r14d,%r15d
5843  DB  73,193,238,30                       ; shr           $0x1e,%r14
5844  DB  196,129,122,16,20,138               ; vmovss        (%r10,%r9,4),%xmm2
5845  DB  196,195,105,33,20,154,16            ; vinsertps     $0x10,(%r10,%rbx,4),%xmm2,%xmm2
5846  DB  196,129,122,16,28,130               ; vmovss        (%r10,%r8,4),%xmm3
5847  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
5848  DB  196,193,122,16,28,170               ; vmovss        (%r10,%rbp,4),%xmm3
5849  DB  196,99,105,33,211,48                ; vinsertps     $0x30,%xmm3,%xmm2,%xmm10
5850  DB  196,129,122,16,28,154               ; vmovss        (%r10,%r11,4),%xmm3
5851  DB  196,195,97,33,28,2,16               ; vinsertps     $0x10,(%r10,%rax,1),%xmm3,%xmm3
5852  DB  196,129,122,16,20,186               ; vmovss        (%r10,%r15,4),%xmm2
5853  DB  196,227,97,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm3,%xmm2
5854  DB  196,129,122,16,28,50                ; vmovss        (%r10,%r14,1),%xmm3
5855  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
5856  DB  196,195,109,24,210,1                ; vinsertf128   $0x1,%xmm10,%ymm2,%ymm2
5857  DB  196,193,57,109,220                  ; vpunpckhqdq   %xmm12,%xmm8,%xmm3
5858  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
5859  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
5860  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
5861  DB  196,65,97,105,193                   ; vpunpckhwd    %xmm9,%xmm3,%xmm8
5862  DB  196,226,121,51,219                  ; vpmovzxwd     %xmm3,%xmm3
5863  DB  196,195,101,24,216,1                ; vinsertf128   $0x1,%xmm8,%ymm3,%ymm3
5864  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
5865  DB  196,98,125,24,5,104,60,0,0          ; vbroadcastss  0x3c68(%rip),%ymm8        # 5520 <_sk_callback_avx+0x202>
5866  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
5867  DB  72,173                              ; lods          %ds:(%rsi),%rax
5868  DB  91                                  ; pop           %rbx
5869  DB  65,92                               ; pop           %r12
5870  DB  65,93                               ; pop           %r13
5871  DB  65,94                               ; pop           %r14
5872  DB  65,95                               ; pop           %r15
5873  DB  93                                  ; pop           %rbp
5874  DB  255,224                             ; jmpq          *%rax
5875  DB  196,1,123,16,4,72                   ; vmovsd        (%r8,%r9,2),%xmm8
5876  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
5877  DB  72,131,249,1                        ; cmp           $0x1,%rcx
5878  DB  116,85                              ; je            1931 <_sk_load_tables_u16_be_avx+0x2ed>
5879  DB  196,1,57,22,68,72,8                 ; vmovhpd       0x8(%r8,%r9,2),%xmm8,%xmm8
5880  DB  72,131,249,3                        ; cmp           $0x3,%rcx
5881  DB  114,72                              ; jb            1931 <_sk_load_tables_u16_be_avx+0x2ed>
5882  DB  196,129,123,16,84,72,16             ; vmovsd        0x10(%r8,%r9,2),%xmm2
5883  DB  72,131,249,3                        ; cmp           $0x3,%rcx
5884  DB  116,72                              ; je            193e <_sk_load_tables_u16_be_avx+0x2fa>
5885  DB  196,129,105,22,84,72,24             ; vmovhpd       0x18(%r8,%r9,2),%xmm2,%xmm2
5886  DB  72,131,249,5                        ; cmp           $0x5,%rcx
5887  DB  114,59                              ; jb            193e <_sk_load_tables_u16_be_avx+0x2fa>
5888  DB  196,129,123,16,92,72,32             ; vmovsd        0x20(%r8,%r9,2),%xmm3
5889  DB  72,131,249,5                        ; cmp           $0x5,%rcx
5890  DB  15,132,97,253,255,255               ; je            1675 <_sk_load_tables_u16_be_avx+0x31>
5891  DB  196,129,97,22,92,72,40              ; vmovhpd       0x28(%r8,%r9,2),%xmm3,%xmm3
5892  DB  72,131,249,7                        ; cmp           $0x7,%rcx
5893  DB  15,130,80,253,255,255               ; jb            1675 <_sk_load_tables_u16_be_avx+0x31>
5894  DB  196,1,122,126,76,72,48              ; vmovq         0x30(%r8,%r9,2),%xmm9
5895  DB  233,68,253,255,255                  ; jmpq          1675 <_sk_load_tables_u16_be_avx+0x31>
5896  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
5897  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
5898  DB  233,55,253,255,255                  ; jmpq          1675 <_sk_load_tables_u16_be_avx+0x31>
5899  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
5900  DB  233,46,253,255,255                  ; jmpq          1675 <_sk_load_tables_u16_be_avx+0x31>
5901
5902PUBLIC _sk_load_tables_rgb_u16_be_avx
5903_sk_load_tables_rgb_u16_be_avx LABEL PROC
5904  DB  72,173                              ; lods          %ds:(%rsi),%rax
5905  DB  76,139,0                            ; mov           (%rax),%r8
5906  DB  76,141,12,127                       ; lea           (%rdi,%rdi,2),%r9
5907  DB  72,133,201                          ; test          %rcx,%rcx
5908  DB  15,133,93,2,0,0                     ; jne           1bb6 <_sk_load_tables_rgb_u16_be_avx+0x26f>
5909  DB  196,129,122,111,4,72                ; vmovdqu       (%r8,%r9,2),%xmm0
5910  DB  196,129,122,111,84,72,12            ; vmovdqu       0xc(%r8,%r9,2),%xmm2
5911  DB  196,129,122,111,76,72,24            ; vmovdqu       0x18(%r8,%r9,2),%xmm1
5912  DB  196,129,122,111,92,72,32            ; vmovdqu       0x20(%r8,%r9,2),%xmm3
5913  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
5914  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
5915  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
5916  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
5917  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
5918  DB  85                                  ; push          %rbp
5919  DB  65,87                               ; push          %r15
5920  DB  65,86                               ; push          %r14
5921  DB  65,85                               ; push          %r13
5922  DB  65,84                               ; push          %r12
5923  DB  83                                  ; push          %rbx
5924  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
5925  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
5926  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
5927  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
5928  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
5929  DB  197,249,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm0
5930  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
5931  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
5932  DB  197,185,108,202                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm1
5933  DB  197,185,109,210                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm2
5934  DB  197,121,108,195                     ; vpunpcklqdq   %xmm3,%xmm0,%xmm8
5935  DB  197,121,111,13,163,62,0,0           ; vmovdqa       0x3ea3(%rip),%xmm9        # 5870 <_sk_callback_avx+0x552>
5936  DB  196,193,113,219,193                 ; vpand         %xmm9,%xmm1,%xmm0
5937  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
5938  DB  196,193,121,105,202                 ; vpunpckhwd    %xmm10,%xmm0,%xmm1
5939  DB  196,195,249,22,200,1                ; vpextrq       $0x1,%xmm1,%r8
5940  DB  69,137,193                          ; mov           %r8d,%r9d
5941  DB  77,137,194                          ; mov           %r8,%r10
5942  DB  73,193,234,32                       ; shr           $0x20,%r10
5943  DB  196,193,249,126,200                 ; vmovq         %xmm1,%r8
5944  DB  69,137,195                          ; mov           %r8d,%r11d
5945  DB  77,137,198                          ; mov           %r8,%r14
5946  DB  73,193,238,32                       ; shr           $0x20,%r14
5947  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
5948  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
5949  DB  65,137,223                          ; mov           %ebx,%r15d
5950  DB  72,193,235,30                       ; shr           $0x1e,%rbx
5951  DB  196,195,249,22,196,1                ; vpextrq       $0x1,%xmm0,%r12
5952  DB  69,137,229                          ; mov           %r12d,%r13d
5953  DB  73,193,236,30                       ; shr           $0x1e,%r12
5954  DB  72,139,104,8                        ; mov           0x8(%rax),%rbp
5955  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
5956  DB  196,161,122,16,68,157,0             ; vmovss        0x0(%rbp,%r11,4),%xmm0
5957  DB  196,163,121,33,68,181,0,16          ; vinsertps     $0x10,0x0(%rbp,%r14,4),%xmm0,%xmm0
5958  DB  196,161,122,16,76,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm1
5959  DB  196,227,121,33,193,32               ; vinsertps     $0x20,%xmm1,%xmm0,%xmm0
5960  DB  196,161,122,16,76,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm1
5961  DB  196,227,121,33,193,48               ; vinsertps     $0x30,%xmm1,%xmm0,%xmm0
5962  DB  196,161,122,16,76,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm1
5963  DB  196,227,113,33,76,29,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,1),%xmm1,%xmm1
5964  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
5965  DB  196,227,113,33,203,32               ; vinsertps     $0x20,%xmm3,%xmm1,%xmm1
5966  DB  196,161,122,16,92,37,0              ; vmovss        0x0(%rbp,%r12,1),%xmm3
5967  DB  196,227,113,33,203,48               ; vinsertps     $0x30,%xmm3,%xmm1,%xmm1
5968  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
5969  DB  196,193,105,219,201                 ; vpand         %xmm9,%xmm2,%xmm1
5970  DB  196,193,113,105,210                 ; vpunpckhwd    %xmm10,%xmm1,%xmm2
5971  DB  196,227,249,22,213,1                ; vpextrq       $0x1,%xmm2,%rbp
5972  DB  65,137,233                          ; mov           %ebp,%r9d
5973  DB  72,193,237,32                       ; shr           $0x20,%rbp
5974  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
5975  DB  65,137,218                          ; mov           %ebx,%r10d
5976  DB  72,193,235,32                       ; shr           $0x20,%rbx
5977  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
5978  DB  196,193,249,126,203                 ; vmovq         %xmm1,%r11
5979  DB  69,137,222                          ; mov           %r11d,%r14d
5980  DB  73,193,235,30                       ; shr           $0x1e,%r11
5981  DB  196,195,249,22,207,1                ; vpextrq       $0x1,%xmm1,%r15
5982  DB  69,137,252                          ; mov           %r15d,%r12d
5983  DB  73,193,239,30                       ; shr           $0x1e,%r15
5984  DB  196,129,122,16,12,144               ; vmovss        (%r8,%r10,4),%xmm1
5985  DB  196,195,113,33,12,152,16            ; vinsertps     $0x10,(%r8,%rbx,4),%xmm1,%xmm1
5986  DB  196,129,122,16,20,136               ; vmovss        (%r8,%r9,4),%xmm2
5987  DB  196,227,113,33,202,32               ; vinsertps     $0x20,%xmm2,%xmm1,%xmm1
5988  DB  196,193,122,16,20,168               ; vmovss        (%r8,%rbp,4),%xmm2
5989  DB  196,227,113,33,202,48               ; vinsertps     $0x30,%xmm2,%xmm1,%xmm1
5990  DB  196,129,122,16,20,176               ; vmovss        (%r8,%r14,4),%xmm2
5991  DB  196,131,105,33,20,24,16             ; vinsertps     $0x10,(%r8,%r11,1),%xmm2,%xmm2
5992  DB  196,129,122,16,28,160               ; vmovss        (%r8,%r12,4),%xmm3
5993  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
5994  DB  196,129,122,16,28,56                ; vmovss        (%r8,%r15,1),%xmm3
5995  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
5996  DB  196,227,109,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm1
5997  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
5998  DB  196,193,57,219,209                  ; vpand         %xmm9,%xmm8,%xmm2
5999  DB  196,193,105,105,218                 ; vpunpckhwd    %xmm10,%xmm2,%xmm3
6000  DB  196,227,249,22,221,1                ; vpextrq       $0x1,%xmm3,%rbp
6001  DB  65,137,232                          ; mov           %ebp,%r8d
6002  DB  72,193,237,32                       ; shr           $0x20,%rbp
6003  DB  196,225,249,126,219                 ; vmovq         %xmm3,%rbx
6004  DB  65,137,217                          ; mov           %ebx,%r9d
6005  DB  72,193,235,32                       ; shr           $0x20,%rbx
6006  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
6007  DB  196,225,249,126,208                 ; vmovq         %xmm2,%rax
6008  DB  65,137,195                          ; mov           %eax,%r11d
6009  DB  72,193,232,30                       ; shr           $0x1e,%rax
6010  DB  196,195,249,22,214,1                ; vpextrq       $0x1,%xmm2,%r14
6011  DB  69,137,247                          ; mov           %r14d,%r15d
6012  DB  73,193,238,30                       ; shr           $0x1e,%r14
6013  DB  196,129,122,16,20,138               ; vmovss        (%r10,%r9,4),%xmm2
6014  DB  196,195,105,33,20,154,16            ; vinsertps     $0x10,(%r10,%rbx,4),%xmm2,%xmm2
6015  DB  196,129,122,16,28,130               ; vmovss        (%r10,%r8,4),%xmm3
6016  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
6017  DB  196,193,122,16,28,170               ; vmovss        (%r10,%rbp,4),%xmm3
6018  DB  196,99,105,33,195,48                ; vinsertps     $0x30,%xmm3,%xmm2,%xmm8
6019  DB  196,129,122,16,28,154               ; vmovss        (%r10,%r11,4),%xmm3
6020  DB  196,195,97,33,28,2,16               ; vinsertps     $0x10,(%r10,%rax,1),%xmm3,%xmm3
6021  DB  196,129,122,16,20,186               ; vmovss        (%r10,%r15,4),%xmm2
6022  DB  196,227,97,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm3,%xmm2
6023  DB  196,129,122,16,28,50                ; vmovss        (%r10,%r14,1),%xmm3
6024  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
6025  DB  196,195,109,24,208,1                ; vinsertf128   $0x1,%xmm8,%ymm2,%ymm2
6026  DB  72,173                              ; lods          %ds:(%rsi),%rax
6027  DB  196,226,125,24,29,122,57,0,0        ; vbroadcastss  0x397a(%rip),%ymm3        # 5524 <_sk_callback_avx+0x206>
6028  DB  91                                  ; pop           %rbx
6029  DB  65,92                               ; pop           %r12
6030  DB  65,93                               ; pop           %r13
6031  DB  65,94                               ; pop           %r14
6032  DB  65,95                               ; pop           %r15
6033  DB  93                                  ; pop           %rbp
6034  DB  255,224                             ; jmpq          *%rax
6035  DB  196,129,121,110,4,72                ; vmovd         (%r8,%r9,2),%xmm0
6036  DB  196,129,121,196,68,72,4,2           ; vpinsrw       $0x2,0x4(%r8,%r9,2),%xmm0,%xmm0
6037  DB  72,131,249,1                        ; cmp           $0x1,%rcx
6038  DB  117,5                               ; jne           1bcf <_sk_load_tables_rgb_u16_be_avx+0x288>
6039  DB  233,190,253,255,255                 ; jmpq          198d <_sk_load_tables_rgb_u16_be_avx+0x46>
6040  DB  196,129,121,110,76,72,6             ; vmovd         0x6(%r8,%r9,2),%xmm1
6041  DB  196,1,113,196,68,72,10,2            ; vpinsrw       $0x2,0xa(%r8,%r9,2),%xmm1,%xmm8
6042  DB  72,131,249,3                        ; cmp           $0x3,%rcx
6043  DB  114,26                              ; jb            1bfe <_sk_load_tables_rgb_u16_be_avx+0x2b7>
6044  DB  196,129,121,110,76,72,12            ; vmovd         0xc(%r8,%r9,2),%xmm1
6045  DB  196,129,113,196,84,72,16,2          ; vpinsrw       $0x2,0x10(%r8,%r9,2),%xmm1,%xmm2
6046  DB  72,131,249,3                        ; cmp           $0x3,%rcx
6047  DB  117,10                              ; jne           1c03 <_sk_load_tables_rgb_u16_be_avx+0x2bc>
6048  DB  233,143,253,255,255                 ; jmpq          198d <_sk_load_tables_rgb_u16_be_avx+0x46>
6049  DB  233,138,253,255,255                 ; jmpq          198d <_sk_load_tables_rgb_u16_be_avx+0x46>
6050  DB  196,129,121,110,76,72,18            ; vmovd         0x12(%r8,%r9,2),%xmm1
6051  DB  196,1,113,196,76,72,22,2            ; vpinsrw       $0x2,0x16(%r8,%r9,2),%xmm1,%xmm9
6052  DB  72,131,249,5                        ; cmp           $0x5,%rcx
6053  DB  114,26                              ; jb            1c32 <_sk_load_tables_rgb_u16_be_avx+0x2eb>
6054  DB  196,129,121,110,76,72,24            ; vmovd         0x18(%r8,%r9,2),%xmm1
6055  DB  196,129,113,196,76,72,28,2          ; vpinsrw       $0x2,0x1c(%r8,%r9,2),%xmm1,%xmm1
6056  DB  72,131,249,5                        ; cmp           $0x5,%rcx
6057  DB  117,10                              ; jne           1c37 <_sk_load_tables_rgb_u16_be_avx+0x2f0>
6058  DB  233,91,253,255,255                  ; jmpq          198d <_sk_load_tables_rgb_u16_be_avx+0x46>
6059  DB  233,86,253,255,255                  ; jmpq          198d <_sk_load_tables_rgb_u16_be_avx+0x46>
6060  DB  196,129,121,110,92,72,30            ; vmovd         0x1e(%r8,%r9,2),%xmm3
6061  DB  196,1,97,196,92,72,34,2             ; vpinsrw       $0x2,0x22(%r8,%r9,2),%xmm3,%xmm11
6062  DB  72,131,249,7                        ; cmp           $0x7,%rcx
6063  DB  114,20                              ; jb            1c60 <_sk_load_tables_rgb_u16_be_avx+0x319>
6064  DB  196,129,121,110,92,72,36            ; vmovd         0x24(%r8,%r9,2),%xmm3
6065  DB  196,129,97,196,92,72,40,2           ; vpinsrw       $0x2,0x28(%r8,%r9,2),%xmm3,%xmm3
6066  DB  233,45,253,255,255                  ; jmpq          198d <_sk_load_tables_rgb_u16_be_avx+0x46>
6067  DB  233,40,253,255,255                  ; jmpq          198d <_sk_load_tables_rgb_u16_be_avx+0x46>
6068
6069PUBLIC _sk_byte_tables_avx
6070_sk_byte_tables_avx LABEL PROC
6071  DB  85                                  ; push          %rbp
6072  DB  65,87                               ; push          %r15
6073  DB  65,86                               ; push          %r14
6074  DB  65,85                               ; push          %r13
6075  DB  65,84                               ; push          %r12
6076  DB  83                                  ; push          %rbx
6077  DB  72,173                              ; lods          %ds:(%rsi),%rax
6078  DB  196,98,125,24,5,174,56,0,0          ; vbroadcastss  0x38ae(%rip),%ymm8        # 5528 <_sk_callback_avx+0x20a>
6079  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
6080  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
6081  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
6082  DB  68,137,197                          ; mov           %r8d,%ebp
6083  DB  77,137,194                          ; mov           %r8,%r10
6084  DB  73,193,234,32                       ; shr           $0x20,%r10
6085  DB  196,193,249,126,192                 ; vmovq         %xmm0,%r8
6086  DB  69,137,195                          ; mov           %r8d,%r11d
6087  DB  77,137,199                          ; mov           %r8,%r15
6088  DB  73,193,239,32                       ; shr           $0x20,%r15
6089  DB  196,227,125,25,192,1                ; vextractf128  $0x1,%ymm0,%xmm0
6090  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
6091  DB  69,137,198                          ; mov           %r8d,%r14d
6092  DB  77,137,196                          ; mov           %r8,%r12
6093  DB  73,193,236,32                       ; shr           $0x20,%r12
6094  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
6095  DB  65,137,221                          ; mov           %ebx,%r13d
6096  DB  72,193,235,32                       ; shr           $0x20,%rbx
6097  DB  76,139,8                            ; mov           (%rax),%r9
6098  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
6099  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
6100  DB  196,131,121,32,4,57,1               ; vpinsrb       $0x1,(%r9,%r15,1),%xmm0,%xmm0
6101  DB  65,15,182,44,41                     ; movzbl        (%r9,%rbp,1),%ebp
6102  DB  196,227,121,32,197,2                ; vpinsrb       $0x2,%ebp,%xmm0,%xmm0
6103  DB  67,15,182,44,17                     ; movzbl        (%r9,%r10,1),%ebp
6104  DB  196,227,121,32,197,3                ; vpinsrb       $0x3,%ebp,%xmm0,%xmm0
6105  DB  196,98,121,49,200                   ; vpmovzxbd     %xmm0,%xmm9
6106  DB  196,131,121,32,4,41,0               ; vpinsrb       $0x0,(%r9,%r13,1),%xmm0,%xmm0
6107  DB  196,195,121,32,4,25,1               ; vpinsrb       $0x1,(%r9,%rbx,1),%xmm0,%xmm0
6108  DB  67,15,182,44,49                     ; movzbl        (%r9,%r14,1),%ebp
6109  DB  196,227,121,32,197,2                ; vpinsrb       $0x2,%ebp,%xmm0,%xmm0
6110  DB  67,15,182,44,33                     ; movzbl        (%r9,%r12,1),%ebp
6111  DB  196,227,121,32,197,3                ; vpinsrb       $0x3,%ebp,%xmm0,%xmm0
6112  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
6113  DB  196,227,53,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm9,%ymm0
6114  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
6115  DB  196,98,125,24,13,252,55,0,0         ; vbroadcastss  0x37fc(%rip),%ymm9        # 552c <_sk_callback_avx+0x20e>
6116  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
6117  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
6118  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
6119  DB  196,227,249,22,205,1                ; vpextrq       $0x1,%xmm1,%rbp
6120  DB  65,137,233                          ; mov           %ebp,%r9d
6121  DB  72,193,237,32                       ; shr           $0x20,%rbp
6122  DB  196,225,249,126,203                 ; vmovq         %xmm1,%rbx
6123  DB  65,137,218                          ; mov           %ebx,%r10d
6124  DB  72,193,235,32                       ; shr           $0x20,%rbx
6125  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
6126  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
6127  DB  69,137,222                          ; mov           %r11d,%r14d
6128  DB  73,193,235,32                       ; shr           $0x20,%r11
6129  DB  196,193,249,126,207                 ; vmovq         %xmm1,%r15
6130  DB  69,137,252                          ; mov           %r15d,%r12d
6131  DB  73,193,239,32                       ; shr           $0x20,%r15
6132  DB  196,131,121,32,12,16,0              ; vpinsrb       $0x0,(%r8,%r10,1),%xmm0,%xmm1
6133  DB  196,195,113,32,12,24,1              ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm1,%xmm1
6134  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
6135  DB  196,227,113,32,203,2                ; vpinsrb       $0x2,%ebx,%xmm1,%xmm1
6136  DB  65,15,182,44,40                     ; movzbl        (%r8,%rbp,1),%ebp
6137  DB  196,227,113,32,205,3                ; vpinsrb       $0x3,%ebp,%xmm1,%xmm1
6138  DB  196,98,121,49,209                   ; vpmovzxbd     %xmm1,%xmm10
6139  DB  196,131,121,32,12,32,0              ; vpinsrb       $0x0,(%r8,%r12,1),%xmm0,%xmm1
6140  DB  196,131,113,32,12,56,1              ; vpinsrb       $0x1,(%r8,%r15,1),%xmm1,%xmm1
6141  DB  67,15,182,44,48                     ; movzbl        (%r8,%r14,1),%ebp
6142  DB  196,227,113,32,205,2                ; vpinsrb       $0x2,%ebp,%xmm1,%xmm1
6143  DB  67,15,182,44,24                     ; movzbl        (%r8,%r11,1),%ebp
6144  DB  196,227,113,32,205,3                ; vpinsrb       $0x3,%ebp,%xmm1,%xmm1
6145  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
6146  DB  196,227,45,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm10,%ymm1
6147  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
6148  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
6149  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
6150  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
6151  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
6152  DB  196,227,249,22,213,1                ; vpextrq       $0x1,%xmm2,%rbp
6153  DB  65,137,233                          ; mov           %ebp,%r9d
6154  DB  72,193,237,32                       ; shr           $0x20,%rbp
6155  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
6156  DB  65,137,218                          ; mov           %ebx,%r10d
6157  DB  72,193,235,32                       ; shr           $0x20,%rbx
6158  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
6159  DB  196,195,249,22,211,1                ; vpextrq       $0x1,%xmm2,%r11
6160  DB  69,137,222                          ; mov           %r11d,%r14d
6161  DB  73,193,235,32                       ; shr           $0x20,%r11
6162  DB  196,193,249,126,215                 ; vmovq         %xmm2,%r15
6163  DB  69,137,252                          ; mov           %r15d,%r12d
6164  DB  73,193,239,32                       ; shr           $0x20,%r15
6165  DB  196,131,121,32,20,16,0              ; vpinsrb       $0x0,(%r8,%r10,1),%xmm0,%xmm2
6166  DB  196,195,105,32,20,24,1              ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm2,%xmm2
6167  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
6168  DB  196,227,105,32,211,2                ; vpinsrb       $0x2,%ebx,%xmm2,%xmm2
6169  DB  65,15,182,44,40                     ; movzbl        (%r8,%rbp,1),%ebp
6170  DB  196,227,105,32,213,3                ; vpinsrb       $0x3,%ebp,%xmm2,%xmm2
6171  DB  196,98,121,49,210                   ; vpmovzxbd     %xmm2,%xmm10
6172  DB  196,131,121,32,20,32,0              ; vpinsrb       $0x0,(%r8,%r12,1),%xmm0,%xmm2
6173  DB  196,131,105,32,20,56,1              ; vpinsrb       $0x1,(%r8,%r15,1),%xmm2,%xmm2
6174  DB  67,15,182,44,48                     ; movzbl        (%r8,%r14,1),%ebp
6175  DB  196,227,105,32,213,2                ; vpinsrb       $0x2,%ebp,%xmm2,%xmm2
6176  DB  67,15,182,44,24                     ; movzbl        (%r8,%r11,1),%ebp
6177  DB  196,227,105,32,213,3                ; vpinsrb       $0x3,%ebp,%xmm2,%xmm2
6178  DB  196,226,121,49,210                  ; vpmovzxbd     %xmm2,%xmm2
6179  DB  196,227,45,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm10,%ymm2
6180  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
6181  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
6182  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
6183  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
6184  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
6185  DB  196,227,249,22,221,1                ; vpextrq       $0x1,%xmm3,%rbp
6186  DB  65,137,232                          ; mov           %ebp,%r8d
6187  DB  72,193,237,32                       ; shr           $0x20,%rbp
6188  DB  196,225,249,126,219                 ; vmovq         %xmm3,%rbx
6189  DB  65,137,217                          ; mov           %ebx,%r9d
6190  DB  72,193,235,32                       ; shr           $0x20,%rbx
6191  DB  196,227,125,25,219,1                ; vextractf128  $0x1,%ymm3,%xmm3
6192  DB  196,195,249,22,218,1                ; vpextrq       $0x1,%xmm3,%r10
6193  DB  69,137,211                          ; mov           %r10d,%r11d
6194  DB  73,193,234,32                       ; shr           $0x20,%r10
6195  DB  196,193,249,126,222                 ; vmovq         %xmm3,%r14
6196  DB  69,137,247                          ; mov           %r14d,%r15d
6197  DB  73,193,238,32                       ; shr           $0x20,%r14
6198  DB  196,163,121,32,28,8,0               ; vpinsrb       $0x0,(%rax,%r9,1),%xmm0,%xmm3
6199  DB  196,227,97,32,28,24,1               ; vpinsrb       $0x1,(%rax,%rbx,1),%xmm3,%xmm3
6200  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
6201  DB  196,227,97,32,219,2                 ; vpinsrb       $0x2,%ebx,%xmm3,%xmm3
6202  DB  15,182,44,40                        ; movzbl        (%rax,%rbp,1),%ebp
6203  DB  196,227,97,32,221,3                 ; vpinsrb       $0x3,%ebp,%xmm3,%xmm3
6204  DB  196,98,121,49,195                   ; vpmovzxbd     %xmm3,%xmm8
6205  DB  196,163,121,32,28,56,0              ; vpinsrb       $0x0,(%rax,%r15,1),%xmm0,%xmm3
6206  DB  196,163,97,32,28,48,1               ; vpinsrb       $0x1,(%rax,%r14,1),%xmm3,%xmm3
6207  DB  66,15,182,44,24                     ; movzbl        (%rax,%r11,1),%ebp
6208  DB  196,227,97,32,221,2                 ; vpinsrb       $0x2,%ebp,%xmm3,%xmm3
6209  DB  66,15,182,4,16                      ; movzbl        (%rax,%r10,1),%eax
6210  DB  196,227,97,32,216,3                 ; vpinsrb       $0x3,%eax,%xmm3,%xmm3
6211  DB  196,226,121,49,219                  ; vpmovzxbd     %xmm3,%xmm3
6212  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
6213  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
6214  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
6215  DB  72,173                              ; lods          %ds:(%rsi),%rax
6216  DB  91                                  ; pop           %rbx
6217  DB  65,92                               ; pop           %r12
6218  DB  65,93                               ; pop           %r13
6219  DB  65,94                               ; pop           %r14
6220  DB  65,95                               ; pop           %r15
6221  DB  93                                  ; pop           %rbp
6222  DB  255,224                             ; jmpq          *%rax
6223
6224PUBLIC _sk_byte_tables_rgb_avx
6225_sk_byte_tables_rgb_avx LABEL PROC
6226  DB  85                                  ; push          %rbp
6227  DB  65,87                               ; push          %r15
6228  DB  65,86                               ; push          %r14
6229  DB  65,85                               ; push          %r13
6230  DB  65,84                               ; push          %r12
6231  DB  83                                  ; push          %rbx
6232  DB  72,173                              ; lods          %ds:(%rsi),%rax
6233  DB  68,139,64,24                        ; mov           0x18(%rax),%r8d
6234  DB  65,255,200                          ; dec           %r8d
6235  DB  196,65,121,110,192                  ; vmovd         %r8d,%xmm8
6236  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
6237  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
6238  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6239  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
6240  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
6241  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
6242  DB  68,137,197                          ; mov           %r8d,%ebp
6243  DB  77,137,194                          ; mov           %r8,%r10
6244  DB  73,193,234,32                       ; shr           $0x20,%r10
6245  DB  196,193,249,126,192                 ; vmovq         %xmm0,%r8
6246  DB  69,137,195                          ; mov           %r8d,%r11d
6247  DB  77,137,199                          ; mov           %r8,%r15
6248  DB  73,193,239,32                       ; shr           $0x20,%r15
6249  DB  196,227,125,25,192,1                ; vextractf128  $0x1,%ymm0,%xmm0
6250  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
6251  DB  69,137,198                          ; mov           %r8d,%r14d
6252  DB  77,137,196                          ; mov           %r8,%r12
6253  DB  73,193,236,32                       ; shr           $0x20,%r12
6254  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
6255  DB  65,137,221                          ; mov           %ebx,%r13d
6256  DB  72,193,235,32                       ; shr           $0x20,%rbx
6257  DB  76,139,8                            ; mov           (%rax),%r9
6258  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
6259  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
6260  DB  196,131,121,32,4,57,1               ; vpinsrb       $0x1,(%r9,%r15,1),%xmm0,%xmm0
6261  DB  65,15,182,44,41                     ; movzbl        (%r9,%rbp,1),%ebp
6262  DB  196,227,121,32,197,2                ; vpinsrb       $0x2,%ebp,%xmm0,%xmm0
6263  DB  67,15,182,44,17                     ; movzbl        (%r9,%r10,1),%ebp
6264  DB  196,227,121,32,197,3                ; vpinsrb       $0x3,%ebp,%xmm0,%xmm0
6265  DB  196,98,121,49,200                   ; vpmovzxbd     %xmm0,%xmm9
6266  DB  196,131,121,32,4,41,0               ; vpinsrb       $0x0,(%r9,%r13,1),%xmm0,%xmm0
6267  DB  196,195,121,32,4,25,1               ; vpinsrb       $0x1,(%r9,%rbx,1),%xmm0,%xmm0
6268  DB  67,15,182,44,49                     ; movzbl        (%r9,%r14,1),%ebp
6269  DB  196,227,121,32,197,2                ; vpinsrb       $0x2,%ebp,%xmm0,%xmm0
6270  DB  67,15,182,44,33                     ; movzbl        (%r9,%r12,1),%ebp
6271  DB  196,227,121,32,197,3                ; vpinsrb       $0x3,%ebp,%xmm0,%xmm0
6272  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
6273  DB  196,227,53,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm9,%ymm0
6274  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
6275  DB  196,98,125,24,13,34,53,0,0          ; vbroadcastss  0x3522(%rip),%ymm9        # 5530 <_sk_callback_avx+0x212>
6276  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
6277  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
6278  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
6279  DB  196,227,249,22,205,1                ; vpextrq       $0x1,%xmm1,%rbp
6280  DB  65,137,233                          ; mov           %ebp,%r9d
6281  DB  72,193,237,32                       ; shr           $0x20,%rbp
6282  DB  196,225,249,126,203                 ; vmovq         %xmm1,%rbx
6283  DB  65,137,218                          ; mov           %ebx,%r10d
6284  DB  72,193,235,32                       ; shr           $0x20,%rbx
6285  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
6286  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
6287  DB  69,137,222                          ; mov           %r11d,%r14d
6288  DB  73,193,235,32                       ; shr           $0x20,%r11
6289  DB  196,193,249,126,207                 ; vmovq         %xmm1,%r15
6290  DB  69,137,252                          ; mov           %r15d,%r12d
6291  DB  73,193,239,32                       ; shr           $0x20,%r15
6292  DB  196,131,121,32,12,16,0              ; vpinsrb       $0x0,(%r8,%r10,1),%xmm0,%xmm1
6293  DB  196,195,113,32,12,24,1              ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm1,%xmm1
6294  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
6295  DB  196,227,113,32,203,2                ; vpinsrb       $0x2,%ebx,%xmm1,%xmm1
6296  DB  65,15,182,44,40                     ; movzbl        (%r8,%rbp,1),%ebp
6297  DB  196,227,113,32,205,3                ; vpinsrb       $0x3,%ebp,%xmm1,%xmm1
6298  DB  196,98,121,49,209                   ; vpmovzxbd     %xmm1,%xmm10
6299  DB  196,131,121,32,12,32,0              ; vpinsrb       $0x0,(%r8,%r12,1),%xmm0,%xmm1
6300  DB  196,131,113,32,12,56,1              ; vpinsrb       $0x1,(%r8,%r15,1),%xmm1,%xmm1
6301  DB  67,15,182,44,48                     ; movzbl        (%r8,%r14,1),%ebp
6302  DB  196,227,113,32,205,2                ; vpinsrb       $0x2,%ebp,%xmm1,%xmm1
6303  DB  67,15,182,44,24                     ; movzbl        (%r8,%r11,1),%ebp
6304  DB  196,227,113,32,205,3                ; vpinsrb       $0x3,%ebp,%xmm1,%xmm1
6305  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
6306  DB  196,227,45,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm10,%ymm1
6307  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
6308  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
6309  DB  72,139,64,16                        ; mov           0x10(%rax),%rax
6310  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
6311  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
6312  DB  196,227,249,22,213,1                ; vpextrq       $0x1,%xmm2,%rbp
6313  DB  65,137,232                          ; mov           %ebp,%r8d
6314  DB  72,193,237,32                       ; shr           $0x20,%rbp
6315  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
6316  DB  65,137,217                          ; mov           %ebx,%r9d
6317  DB  72,193,235,32                       ; shr           $0x20,%rbx
6318  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
6319  DB  196,195,249,22,210,1                ; vpextrq       $0x1,%xmm2,%r10
6320  DB  69,137,211                          ; mov           %r10d,%r11d
6321  DB  73,193,234,32                       ; shr           $0x20,%r10
6322  DB  196,193,249,126,214                 ; vmovq         %xmm2,%r14
6323  DB  69,137,247                          ; mov           %r14d,%r15d
6324  DB  73,193,238,32                       ; shr           $0x20,%r14
6325  DB  196,163,121,32,20,8,0               ; vpinsrb       $0x0,(%rax,%r9,1),%xmm0,%xmm2
6326  DB  196,227,105,32,20,24,1              ; vpinsrb       $0x1,(%rax,%rbx,1),%xmm2,%xmm2
6327  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
6328  DB  196,227,105,32,211,2                ; vpinsrb       $0x2,%ebx,%xmm2,%xmm2
6329  DB  15,182,44,40                        ; movzbl        (%rax,%rbp,1),%ebp
6330  DB  196,227,105,32,213,3                ; vpinsrb       $0x3,%ebp,%xmm2,%xmm2
6331  DB  196,98,121,49,194                   ; vpmovzxbd     %xmm2,%xmm8
6332  DB  196,163,121,32,20,56,0              ; vpinsrb       $0x0,(%rax,%r15,1),%xmm0,%xmm2
6333  DB  196,163,105,32,20,48,1              ; vpinsrb       $0x1,(%rax,%r14,1),%xmm2,%xmm2
6334  DB  66,15,182,44,24                     ; movzbl        (%rax,%r11,1),%ebp
6335  DB  196,227,105,32,213,2                ; vpinsrb       $0x2,%ebp,%xmm2,%xmm2
6336  DB  66,15,182,4,16                      ; movzbl        (%rax,%r10,1),%eax
6337  DB  196,227,105,32,208,3                ; vpinsrb       $0x3,%eax,%xmm2,%xmm2
6338  DB  196,226,121,49,210                  ; vpmovzxbd     %xmm2,%xmm2
6339  DB  196,227,61,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm8,%ymm2
6340  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
6341  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
6342  DB  72,173                              ; lods          %ds:(%rsi),%rax
6343  DB  91                                  ; pop           %rbx
6344  DB  65,92                               ; pop           %r12
6345  DB  65,93                               ; pop           %r13
6346  DB  65,94                               ; pop           %r14
6347  DB  65,95                               ; pop           %r15
6348  DB  93                                  ; pop           %rbp
6349  DB  255,224                             ; jmpq          *%rax
6350
6351PUBLIC _sk_table_r_avx
6352_sk_table_r_avx LABEL PROC
6353  DB  65,87                               ; push          %r15
6354  DB  65,86                               ; push          %r14
6355  DB  65,84                               ; push          %r12
6356  DB  83                                  ; push          %rbx
6357  DB  72,173                              ; lods          %ds:(%rsi),%rax
6358  DB  76,139,0                            ; mov           (%rax),%r8
6359  DB  139,64,8                            ; mov           0x8(%rax),%eax
6360  DB  255,200                             ; dec           %eax
6361  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
6362  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
6363  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
6364  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6365  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
6366  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
6367  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
6368  DB  65,137,193                          ; mov           %eax,%r9d
6369  DB  72,193,232,32                       ; shr           $0x20,%rax
6370  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
6371  DB  69,137,211                          ; mov           %r10d,%r11d
6372  DB  73,193,234,32                       ; shr           $0x20,%r10
6373  DB  196,227,125,25,192,1                ; vextractf128  $0x1,%ymm0,%xmm0
6374  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
6375  DB  65,137,222                          ; mov           %ebx,%r14d
6376  DB  72,193,235,32                       ; shr           $0x20,%rbx
6377  DB  196,193,249,126,199                 ; vmovq         %xmm0,%r15
6378  DB  69,137,252                          ; mov           %r15d,%r12d
6379  DB  73,193,239,32                       ; shr           $0x20,%r15
6380  DB  196,129,122,16,4,160                ; vmovss        (%r8,%r12,4),%xmm0
6381  DB  196,3,121,33,4,184,16               ; vinsertps     $0x10,(%r8,%r15,4),%xmm0,%xmm8
6382  DB  196,129,122,16,4,176                ; vmovss        (%r8,%r14,4),%xmm0
6383  DB  196,99,57,33,192,32                 ; vinsertps     $0x20,%xmm0,%xmm8,%xmm8
6384  DB  196,193,122,16,4,152                ; vmovss        (%r8,%rbx,4),%xmm0
6385  DB  196,99,57,33,192,48                 ; vinsertps     $0x30,%xmm0,%xmm8,%xmm8
6386  DB  196,129,122,16,4,152                ; vmovss        (%r8,%r11,4),%xmm0
6387  DB  196,3,121,33,12,144,16              ; vinsertps     $0x10,(%r8,%r10,4),%xmm0,%xmm9
6388  DB  196,129,122,16,4,136                ; vmovss        (%r8,%r9,4),%xmm0
6389  DB  196,99,49,33,200,32                 ; vinsertps     $0x20,%xmm0,%xmm9,%xmm9
6390  DB  196,193,122,16,4,128                ; vmovss        (%r8,%rax,4),%xmm0
6391  DB  196,227,49,33,192,48                ; vinsertps     $0x30,%xmm0,%xmm9,%xmm0
6392  DB  196,195,125,24,192,1                ; vinsertf128   $0x1,%xmm8,%ymm0,%ymm0
6393  DB  72,173                              ; lods          %ds:(%rsi),%rax
6394  DB  91                                  ; pop           %rbx
6395  DB  65,92                               ; pop           %r12
6396  DB  65,94                               ; pop           %r14
6397  DB  65,95                               ; pop           %r15
6398  DB  255,224                             ; jmpq          *%rax
6399
6400PUBLIC _sk_table_g_avx
6401_sk_table_g_avx LABEL PROC
6402  DB  65,87                               ; push          %r15
6403  DB  65,86                               ; push          %r14
6404  DB  65,84                               ; push          %r12
6405  DB  83                                  ; push          %rbx
6406  DB  72,173                              ; lods          %ds:(%rsi),%rax
6407  DB  76,139,0                            ; mov           (%rax),%r8
6408  DB  139,64,8                            ; mov           0x8(%rax),%eax
6409  DB  255,200                             ; dec           %eax
6410  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
6411  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
6412  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
6413  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6414  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
6415  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
6416  DB  196,227,249,22,200,1                ; vpextrq       $0x1,%xmm1,%rax
6417  DB  65,137,193                          ; mov           %eax,%r9d
6418  DB  72,193,232,32                       ; shr           $0x20,%rax
6419  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
6420  DB  69,137,211                          ; mov           %r10d,%r11d
6421  DB  73,193,234,32                       ; shr           $0x20,%r10
6422  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
6423  DB  196,227,249,22,203,1                ; vpextrq       $0x1,%xmm1,%rbx
6424  DB  65,137,222                          ; mov           %ebx,%r14d
6425  DB  72,193,235,32                       ; shr           $0x20,%rbx
6426  DB  196,193,249,126,207                 ; vmovq         %xmm1,%r15
6427  DB  69,137,252                          ; mov           %r15d,%r12d
6428  DB  73,193,239,32                       ; shr           $0x20,%r15
6429  DB  196,129,122,16,12,160               ; vmovss        (%r8,%r12,4),%xmm1
6430  DB  196,3,113,33,4,184,16               ; vinsertps     $0x10,(%r8,%r15,4),%xmm1,%xmm8
6431  DB  196,129,122,16,12,176               ; vmovss        (%r8,%r14,4),%xmm1
6432  DB  196,99,57,33,193,32                 ; vinsertps     $0x20,%xmm1,%xmm8,%xmm8
6433  DB  196,193,122,16,12,152               ; vmovss        (%r8,%rbx,4),%xmm1
6434  DB  196,99,57,33,193,48                 ; vinsertps     $0x30,%xmm1,%xmm8,%xmm8
6435  DB  196,129,122,16,12,152               ; vmovss        (%r8,%r11,4),%xmm1
6436  DB  196,3,113,33,12,144,16              ; vinsertps     $0x10,(%r8,%r10,4),%xmm1,%xmm9
6437  DB  196,129,122,16,12,136               ; vmovss        (%r8,%r9,4),%xmm1
6438  DB  196,99,49,33,201,32                 ; vinsertps     $0x20,%xmm1,%xmm9,%xmm9
6439  DB  196,193,122,16,12,128               ; vmovss        (%r8,%rax,4),%xmm1
6440  DB  196,227,49,33,201,48                ; vinsertps     $0x30,%xmm1,%xmm9,%xmm1
6441  DB  196,195,117,24,200,1                ; vinsertf128   $0x1,%xmm8,%ymm1,%ymm1
6442  DB  72,173                              ; lods          %ds:(%rsi),%rax
6443  DB  91                                  ; pop           %rbx
6444  DB  65,92                               ; pop           %r12
6445  DB  65,94                               ; pop           %r14
6446  DB  65,95                               ; pop           %r15
6447  DB  255,224                             ; jmpq          *%rax
6448
6449PUBLIC _sk_table_b_avx
6450_sk_table_b_avx LABEL PROC
6451  DB  65,87                               ; push          %r15
6452  DB  65,86                               ; push          %r14
6453  DB  65,84                               ; push          %r12
6454  DB  83                                  ; push          %rbx
6455  DB  72,173                              ; lods          %ds:(%rsi),%rax
6456  DB  76,139,0                            ; mov           (%rax),%r8
6457  DB  139,64,8                            ; mov           0x8(%rax),%eax
6458  DB  255,200                             ; dec           %eax
6459  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
6460  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
6461  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
6462  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6463  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
6464  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
6465  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
6466  DB  65,137,193                          ; mov           %eax,%r9d
6467  DB  72,193,232,32                       ; shr           $0x20,%rax
6468  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
6469  DB  69,137,211                          ; mov           %r10d,%r11d
6470  DB  73,193,234,32                       ; shr           $0x20,%r10
6471  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
6472  DB  196,227,249,22,211,1                ; vpextrq       $0x1,%xmm2,%rbx
6473  DB  65,137,222                          ; mov           %ebx,%r14d
6474  DB  72,193,235,32                       ; shr           $0x20,%rbx
6475  DB  196,193,249,126,215                 ; vmovq         %xmm2,%r15
6476  DB  69,137,252                          ; mov           %r15d,%r12d
6477  DB  73,193,239,32                       ; shr           $0x20,%r15
6478  DB  196,129,122,16,20,160               ; vmovss        (%r8,%r12,4),%xmm2
6479  DB  196,3,105,33,4,184,16               ; vinsertps     $0x10,(%r8,%r15,4),%xmm2,%xmm8
6480  DB  196,129,122,16,20,176               ; vmovss        (%r8,%r14,4),%xmm2
6481  DB  196,99,57,33,194,32                 ; vinsertps     $0x20,%xmm2,%xmm8,%xmm8
6482  DB  196,193,122,16,20,152               ; vmovss        (%r8,%rbx,4),%xmm2
6483  DB  196,99,57,33,194,48                 ; vinsertps     $0x30,%xmm2,%xmm8,%xmm8
6484  DB  196,129,122,16,20,152               ; vmovss        (%r8,%r11,4),%xmm2
6485  DB  196,3,105,33,12,144,16              ; vinsertps     $0x10,(%r8,%r10,4),%xmm2,%xmm9
6486  DB  196,129,122,16,20,136               ; vmovss        (%r8,%r9,4),%xmm2
6487  DB  196,99,49,33,202,32                 ; vinsertps     $0x20,%xmm2,%xmm9,%xmm9
6488  DB  196,193,122,16,20,128               ; vmovss        (%r8,%rax,4),%xmm2
6489  DB  196,227,49,33,210,48                ; vinsertps     $0x30,%xmm2,%xmm9,%xmm2
6490  DB  196,195,109,24,208,1                ; vinsertf128   $0x1,%xmm8,%ymm2,%ymm2
6491  DB  72,173                              ; lods          %ds:(%rsi),%rax
6492  DB  91                                  ; pop           %rbx
6493  DB  65,92                               ; pop           %r12
6494  DB  65,94                               ; pop           %r14
6495  DB  65,95                               ; pop           %r15
6496  DB  255,224                             ; jmpq          *%rax
6497
6498PUBLIC _sk_table_a_avx
6499_sk_table_a_avx LABEL PROC
6500  DB  65,87                               ; push          %r15
6501  DB  65,86                               ; push          %r14
6502  DB  65,84                               ; push          %r12
6503  DB  83                                  ; push          %rbx
6504  DB  72,173                              ; lods          %ds:(%rsi),%rax
6505  DB  76,139,0                            ; mov           (%rax),%r8
6506  DB  139,64,8                            ; mov           0x8(%rax),%eax
6507  DB  255,200                             ; dec           %eax
6508  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
6509  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
6510  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
6511  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6512  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
6513  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
6514  DB  196,227,249,22,216,1                ; vpextrq       $0x1,%xmm3,%rax
6515  DB  65,137,193                          ; mov           %eax,%r9d
6516  DB  72,193,232,32                       ; shr           $0x20,%rax
6517  DB  196,193,249,126,218                 ; vmovq         %xmm3,%r10
6518  DB  69,137,211                          ; mov           %r10d,%r11d
6519  DB  73,193,234,32                       ; shr           $0x20,%r10
6520  DB  196,227,125,25,219,1                ; vextractf128  $0x1,%ymm3,%xmm3
6521  DB  196,227,249,22,219,1                ; vpextrq       $0x1,%xmm3,%rbx
6522  DB  65,137,222                          ; mov           %ebx,%r14d
6523  DB  72,193,235,32                       ; shr           $0x20,%rbx
6524  DB  196,193,249,126,223                 ; vmovq         %xmm3,%r15
6525  DB  69,137,252                          ; mov           %r15d,%r12d
6526  DB  73,193,239,32                       ; shr           $0x20,%r15
6527  DB  196,129,122,16,28,160               ; vmovss        (%r8,%r12,4),%xmm3
6528  DB  196,3,97,33,4,184,16                ; vinsertps     $0x10,(%r8,%r15,4),%xmm3,%xmm8
6529  DB  196,129,122,16,28,176               ; vmovss        (%r8,%r14,4),%xmm3
6530  DB  196,99,57,33,195,32                 ; vinsertps     $0x20,%xmm3,%xmm8,%xmm8
6531  DB  196,193,122,16,28,152               ; vmovss        (%r8,%rbx,4),%xmm3
6532  DB  196,99,57,33,195,48                 ; vinsertps     $0x30,%xmm3,%xmm8,%xmm8
6533  DB  196,129,122,16,28,152               ; vmovss        (%r8,%r11,4),%xmm3
6534  DB  196,3,97,33,12,144,16               ; vinsertps     $0x10,(%r8,%r10,4),%xmm3,%xmm9
6535  DB  196,129,122,16,28,136               ; vmovss        (%r8,%r9,4),%xmm3
6536  DB  196,99,49,33,203,32                 ; vinsertps     $0x20,%xmm3,%xmm9,%xmm9
6537  DB  196,193,122,16,28,128               ; vmovss        (%r8,%rax,4),%xmm3
6538  DB  196,227,49,33,219,48                ; vinsertps     $0x30,%xmm3,%xmm9,%xmm3
6539  DB  196,195,101,24,216,1                ; vinsertf128   $0x1,%xmm8,%ymm3,%ymm3
6540  DB  72,173                              ; lods          %ds:(%rsi),%rax
6541  DB  91                                  ; pop           %rbx
6542  DB  65,92                               ; pop           %r12
6543  DB  65,94                               ; pop           %r14
6544  DB  65,95                               ; pop           %r15
6545  DB  255,224                             ; jmpq          *%rax
6546
6547PUBLIC _sk_parametric_r_avx
6548_sk_parametric_r_avx LABEL PROC
6549  DB  72,173                              ; lods          %ds:(%rsi),%rax
6550  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
6551  DB  196,65,124,194,192,2                ; vcmpleps      %ymm8,%ymm0,%ymm8
6552  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
6553  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
6554  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
6555  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
6556  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
6557  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
6558  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
6559  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
6560  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
6561  DB  197,124,91,216                      ; vcvtdq2ps     %ymm0,%ymm11
6562  DB  196,98,125,24,37,128,48,0,0         ; vbroadcastss  0x3080(%rip),%ymm12        # 5534 <_sk_callback_avx+0x216>
6563  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
6564  DB  196,98,125,24,37,118,48,0,0         ; vbroadcastss  0x3076(%rip),%ymm12        # 5538 <_sk_callback_avx+0x21a>
6565  DB  196,193,124,84,196                  ; vandps        %ymm12,%ymm0,%ymm0
6566  DB  196,98,125,24,37,108,48,0,0         ; vbroadcastss  0x306c(%rip),%ymm12        # 553c <_sk_callback_avx+0x21e>
6567  DB  196,193,124,86,196                  ; vorps         %ymm12,%ymm0,%ymm0
6568  DB  196,98,125,24,37,98,48,0,0          ; vbroadcastss  0x3062(%rip),%ymm12        # 5540 <_sk_callback_avx+0x222>
6569  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6570  DB  196,98,125,24,37,88,48,0,0          ; vbroadcastss  0x3058(%rip),%ymm12        # 5544 <_sk_callback_avx+0x226>
6571  DB  196,65,124,89,228                   ; vmulps        %ymm12,%ymm0,%ymm12
6572  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
6573  DB  196,98,125,24,37,73,48,0,0          ; vbroadcastss  0x3049(%rip),%ymm12        # 5548 <_sk_callback_avx+0x22a>
6574  DB  196,193,124,88,196                  ; vaddps        %ymm12,%ymm0,%ymm0
6575  DB  196,98,125,24,37,63,48,0,0          ; vbroadcastss  0x303f(%rip),%ymm12        # 554c <_sk_callback_avx+0x22e>
6576  DB  197,156,94,192                      ; vdivps        %ymm0,%ymm12,%ymm0
6577  DB  197,164,92,192                      ; vsubps        %ymm0,%ymm11,%ymm0
6578  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
6579  DB  196,99,125,8,208,1                  ; vroundps      $0x1,%ymm0,%ymm10
6580  DB  196,65,124,92,210                   ; vsubps        %ymm10,%ymm0,%ymm10
6581  DB  196,98,125,24,29,35,48,0,0          ; vbroadcastss  0x3023(%rip),%ymm11        # 5550 <_sk_callback_avx+0x232>
6582  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
6583  DB  196,98,125,24,29,25,48,0,0          ; vbroadcastss  0x3019(%rip),%ymm11        # 5554 <_sk_callback_avx+0x236>
6584  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
6585  DB  196,193,124,92,195                  ; vsubps        %ymm11,%ymm0,%ymm0
6586  DB  196,98,125,24,29,10,48,0,0          ; vbroadcastss  0x300a(%rip),%ymm11        # 5558 <_sk_callback_avx+0x23a>
6587  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
6588  DB  196,98,125,24,29,0,48,0,0           ; vbroadcastss  0x3000(%rip),%ymm11        # 555c <_sk_callback_avx+0x23e>
6589  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
6590  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
6591  DB  196,98,125,24,21,241,47,0,0         ; vbroadcastss  0x2ff1(%rip),%ymm10        # 5560 <_sk_callback_avx+0x242>
6592  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
6593  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
6594  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
6595  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
6596  DB  196,195,125,74,193,128              ; vblendvps     %ymm8,%ymm9,%ymm0,%ymm0
6597  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6598  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
6599  DB  196,98,125,24,5,200,47,0,0          ; vbroadcastss  0x2fc8(%rip),%ymm8        # 5564 <_sk_callback_avx+0x246>
6600  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
6601  DB  72,173                              ; lods          %ds:(%rsi),%rax
6602  DB  255,224                             ; jmpq          *%rax
6603
6604PUBLIC _sk_parametric_g_avx
6605_sk_parametric_g_avx LABEL PROC
6606  DB  72,173                              ; lods          %ds:(%rsi),%rax
6607  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
6608  DB  196,65,116,194,192,2                ; vcmpleps      %ymm8,%ymm1,%ymm8
6609  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
6610  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
6611  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
6612  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
6613  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
6614  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
6615  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
6616  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
6617  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
6618  DB  197,124,91,217                      ; vcvtdq2ps     %ymm1,%ymm11
6619  DB  196,98,125,24,37,121,47,0,0         ; vbroadcastss  0x2f79(%rip),%ymm12        # 5568 <_sk_callback_avx+0x24a>
6620  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
6621  DB  196,98,125,24,37,111,47,0,0         ; vbroadcastss  0x2f6f(%rip),%ymm12        # 556c <_sk_callback_avx+0x24e>
6622  DB  196,193,116,84,204                  ; vandps        %ymm12,%ymm1,%ymm1
6623  DB  196,98,125,24,37,101,47,0,0         ; vbroadcastss  0x2f65(%rip),%ymm12        # 5570 <_sk_callback_avx+0x252>
6624  DB  196,193,116,86,204                  ; vorps         %ymm12,%ymm1,%ymm1
6625  DB  196,98,125,24,37,91,47,0,0          ; vbroadcastss  0x2f5b(%rip),%ymm12        # 5574 <_sk_callback_avx+0x256>
6626  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6627  DB  196,98,125,24,37,81,47,0,0          ; vbroadcastss  0x2f51(%rip),%ymm12        # 5578 <_sk_callback_avx+0x25a>
6628  DB  196,65,116,89,228                   ; vmulps        %ymm12,%ymm1,%ymm12
6629  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
6630  DB  196,98,125,24,37,66,47,0,0          ; vbroadcastss  0x2f42(%rip),%ymm12        # 557c <_sk_callback_avx+0x25e>
6631  DB  196,193,116,88,204                  ; vaddps        %ymm12,%ymm1,%ymm1
6632  DB  196,98,125,24,37,56,47,0,0          ; vbroadcastss  0x2f38(%rip),%ymm12        # 5580 <_sk_callback_avx+0x262>
6633  DB  197,156,94,201                      ; vdivps        %ymm1,%ymm12,%ymm1
6634  DB  197,164,92,201                      ; vsubps        %ymm1,%ymm11,%ymm1
6635  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
6636  DB  196,99,125,8,209,1                  ; vroundps      $0x1,%ymm1,%ymm10
6637  DB  196,65,116,92,210                   ; vsubps        %ymm10,%ymm1,%ymm10
6638  DB  196,98,125,24,29,28,47,0,0          ; vbroadcastss  0x2f1c(%rip),%ymm11        # 5584 <_sk_callback_avx+0x266>
6639  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
6640  DB  196,98,125,24,29,18,47,0,0          ; vbroadcastss  0x2f12(%rip),%ymm11        # 5588 <_sk_callback_avx+0x26a>
6641  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
6642  DB  196,193,116,92,203                  ; vsubps        %ymm11,%ymm1,%ymm1
6643  DB  196,98,125,24,29,3,47,0,0           ; vbroadcastss  0x2f03(%rip),%ymm11        # 558c <_sk_callback_avx+0x26e>
6644  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
6645  DB  196,98,125,24,29,249,46,0,0         ; vbroadcastss  0x2ef9(%rip),%ymm11        # 5590 <_sk_callback_avx+0x272>
6646  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
6647  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
6648  DB  196,98,125,24,21,234,46,0,0         ; vbroadcastss  0x2eea(%rip),%ymm10        # 5594 <_sk_callback_avx+0x276>
6649  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
6650  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
6651  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
6652  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
6653  DB  196,195,117,74,201,128              ; vblendvps     %ymm8,%ymm9,%ymm1,%ymm1
6654  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6655  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
6656  DB  196,98,125,24,5,193,46,0,0          ; vbroadcastss  0x2ec1(%rip),%ymm8        # 5598 <_sk_callback_avx+0x27a>
6657  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
6658  DB  72,173                              ; lods          %ds:(%rsi),%rax
6659  DB  255,224                             ; jmpq          *%rax
6660
6661PUBLIC _sk_parametric_b_avx
6662_sk_parametric_b_avx LABEL PROC
6663  DB  72,173                              ; lods          %ds:(%rsi),%rax
6664  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
6665  DB  196,65,108,194,192,2                ; vcmpleps      %ymm8,%ymm2,%ymm8
6666  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
6667  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
6668  DB  197,52,89,202                       ; vmulps        %ymm2,%ymm9,%ymm9
6669  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
6670  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
6671  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
6672  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
6673  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
6674  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
6675  DB  197,124,91,218                      ; vcvtdq2ps     %ymm2,%ymm11
6676  DB  196,98,125,24,37,114,46,0,0         ; vbroadcastss  0x2e72(%rip),%ymm12        # 559c <_sk_callback_avx+0x27e>
6677  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
6678  DB  196,98,125,24,37,104,46,0,0         ; vbroadcastss  0x2e68(%rip),%ymm12        # 55a0 <_sk_callback_avx+0x282>
6679  DB  196,193,108,84,212                  ; vandps        %ymm12,%ymm2,%ymm2
6680  DB  196,98,125,24,37,94,46,0,0          ; vbroadcastss  0x2e5e(%rip),%ymm12        # 55a4 <_sk_callback_avx+0x286>
6681  DB  196,193,108,86,212                  ; vorps         %ymm12,%ymm2,%ymm2
6682  DB  196,98,125,24,37,84,46,0,0          ; vbroadcastss  0x2e54(%rip),%ymm12        # 55a8 <_sk_callback_avx+0x28a>
6683  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6684  DB  196,98,125,24,37,74,46,0,0          ; vbroadcastss  0x2e4a(%rip),%ymm12        # 55ac <_sk_callback_avx+0x28e>
6685  DB  196,65,108,89,228                   ; vmulps        %ymm12,%ymm2,%ymm12
6686  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
6687  DB  196,98,125,24,37,59,46,0,0          ; vbroadcastss  0x2e3b(%rip),%ymm12        # 55b0 <_sk_callback_avx+0x292>
6688  DB  196,193,108,88,212                  ; vaddps        %ymm12,%ymm2,%ymm2
6689  DB  196,98,125,24,37,49,46,0,0          ; vbroadcastss  0x2e31(%rip),%ymm12        # 55b4 <_sk_callback_avx+0x296>
6690  DB  197,156,94,210                      ; vdivps        %ymm2,%ymm12,%ymm2
6691  DB  197,164,92,210                      ; vsubps        %ymm2,%ymm11,%ymm2
6692  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
6693  DB  196,99,125,8,210,1                  ; vroundps      $0x1,%ymm2,%ymm10
6694  DB  196,65,108,92,210                   ; vsubps        %ymm10,%ymm2,%ymm10
6695  DB  196,98,125,24,29,21,46,0,0          ; vbroadcastss  0x2e15(%rip),%ymm11        # 55b8 <_sk_callback_avx+0x29a>
6696  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
6697  DB  196,98,125,24,29,11,46,0,0          ; vbroadcastss  0x2e0b(%rip),%ymm11        # 55bc <_sk_callback_avx+0x29e>
6698  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
6699  DB  196,193,108,92,211                  ; vsubps        %ymm11,%ymm2,%ymm2
6700  DB  196,98,125,24,29,252,45,0,0         ; vbroadcastss  0x2dfc(%rip),%ymm11        # 55c0 <_sk_callback_avx+0x2a2>
6701  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
6702  DB  196,98,125,24,29,242,45,0,0         ; vbroadcastss  0x2df2(%rip),%ymm11        # 55c4 <_sk_callback_avx+0x2a6>
6703  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
6704  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
6705  DB  196,98,125,24,21,227,45,0,0         ; vbroadcastss  0x2de3(%rip),%ymm10        # 55c8 <_sk_callback_avx+0x2aa>
6706  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
6707  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
6708  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
6709  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
6710  DB  196,195,109,74,209,128              ; vblendvps     %ymm8,%ymm9,%ymm2,%ymm2
6711  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6712  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
6713  DB  196,98,125,24,5,186,45,0,0          ; vbroadcastss  0x2dba(%rip),%ymm8        # 55cc <_sk_callback_avx+0x2ae>
6714  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
6715  DB  72,173                              ; lods          %ds:(%rsi),%rax
6716  DB  255,224                             ; jmpq          *%rax
6717
6718PUBLIC _sk_parametric_a_avx
6719_sk_parametric_a_avx LABEL PROC
6720  DB  72,173                              ; lods          %ds:(%rsi),%rax
6721  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
6722  DB  196,65,100,194,192,2                ; vcmpleps      %ymm8,%ymm3,%ymm8
6723  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
6724  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
6725  DB  197,52,89,203                       ; vmulps        %ymm3,%ymm9,%ymm9
6726  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
6727  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
6728  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
6729  DB  197,172,89,219                      ; vmulps        %ymm3,%ymm10,%ymm3
6730  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
6731  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
6732  DB  197,124,91,219                      ; vcvtdq2ps     %ymm3,%ymm11
6733  DB  196,98,125,24,37,107,45,0,0         ; vbroadcastss  0x2d6b(%rip),%ymm12        # 55d0 <_sk_callback_avx+0x2b2>
6734  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
6735  DB  196,98,125,24,37,97,45,0,0          ; vbroadcastss  0x2d61(%rip),%ymm12        # 55d4 <_sk_callback_avx+0x2b6>
6736  DB  196,193,100,84,220                  ; vandps        %ymm12,%ymm3,%ymm3
6737  DB  196,98,125,24,37,87,45,0,0          ; vbroadcastss  0x2d57(%rip),%ymm12        # 55d8 <_sk_callback_avx+0x2ba>
6738  DB  196,193,100,86,220                  ; vorps         %ymm12,%ymm3,%ymm3
6739  DB  196,98,125,24,37,77,45,0,0          ; vbroadcastss  0x2d4d(%rip),%ymm12        # 55dc <_sk_callback_avx+0x2be>
6740  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6741  DB  196,98,125,24,37,67,45,0,0          ; vbroadcastss  0x2d43(%rip),%ymm12        # 55e0 <_sk_callback_avx+0x2c2>
6742  DB  196,65,100,89,228                   ; vmulps        %ymm12,%ymm3,%ymm12
6743  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
6744  DB  196,98,125,24,37,52,45,0,0          ; vbroadcastss  0x2d34(%rip),%ymm12        # 55e4 <_sk_callback_avx+0x2c6>
6745  DB  196,193,100,88,220                  ; vaddps        %ymm12,%ymm3,%ymm3
6746  DB  196,98,125,24,37,42,45,0,0          ; vbroadcastss  0x2d2a(%rip),%ymm12        # 55e8 <_sk_callback_avx+0x2ca>
6747  DB  197,156,94,219                      ; vdivps        %ymm3,%ymm12,%ymm3
6748  DB  197,164,92,219                      ; vsubps        %ymm3,%ymm11,%ymm3
6749  DB  197,172,89,219                      ; vmulps        %ymm3,%ymm10,%ymm3
6750  DB  196,99,125,8,211,1                  ; vroundps      $0x1,%ymm3,%ymm10
6751  DB  196,65,100,92,210                   ; vsubps        %ymm10,%ymm3,%ymm10
6752  DB  196,98,125,24,29,14,45,0,0          ; vbroadcastss  0x2d0e(%rip),%ymm11        # 55ec <_sk_callback_avx+0x2ce>
6753  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
6754  DB  196,98,125,24,29,4,45,0,0           ; vbroadcastss  0x2d04(%rip),%ymm11        # 55f0 <_sk_callback_avx+0x2d2>
6755  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
6756  DB  196,193,100,92,219                  ; vsubps        %ymm11,%ymm3,%ymm3
6757  DB  196,98,125,24,29,245,44,0,0         ; vbroadcastss  0x2cf5(%rip),%ymm11        # 55f4 <_sk_callback_avx+0x2d6>
6758  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
6759  DB  196,98,125,24,29,235,44,0,0         ; vbroadcastss  0x2ceb(%rip),%ymm11        # 55f8 <_sk_callback_avx+0x2da>
6760  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
6761  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
6762  DB  196,98,125,24,21,220,44,0,0         ; vbroadcastss  0x2cdc(%rip),%ymm10        # 55fc <_sk_callback_avx+0x2de>
6763  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
6764  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
6765  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
6766  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
6767  DB  196,195,101,74,217,128              ; vblendvps     %ymm8,%ymm9,%ymm3,%ymm3
6768  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6769  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
6770  DB  196,98,125,24,5,179,44,0,0          ; vbroadcastss  0x2cb3(%rip),%ymm8        # 5600 <_sk_callback_avx+0x2e2>
6771  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
6772  DB  72,173                              ; lods          %ds:(%rsi),%rax
6773  DB  255,224                             ; jmpq          *%rax
6774
6775PUBLIC _sk_lab_to_xyz_avx
6776_sk_lab_to_xyz_avx LABEL PROC
6777  DB  196,98,125,24,5,165,44,0,0          ; vbroadcastss  0x2ca5(%rip),%ymm8        # 5604 <_sk_callback_avx+0x2e6>
6778  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
6779  DB  196,98,125,24,5,155,44,0,0          ; vbroadcastss  0x2c9b(%rip),%ymm8        # 5608 <_sk_callback_avx+0x2ea>
6780  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
6781  DB  196,98,125,24,13,145,44,0,0         ; vbroadcastss  0x2c91(%rip),%ymm9        # 560c <_sk_callback_avx+0x2ee>
6782  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
6783  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
6784  DB  196,193,108,88,209                  ; vaddps        %ymm9,%ymm2,%ymm2
6785  DB  196,98,125,24,5,125,44,0,0          ; vbroadcastss  0x2c7d(%rip),%ymm8        # 5610 <_sk_callback_avx+0x2f2>
6786  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
6787  DB  196,98,125,24,5,115,44,0,0          ; vbroadcastss  0x2c73(%rip),%ymm8        # 5614 <_sk_callback_avx+0x2f6>
6788  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
6789  DB  196,98,125,24,5,105,44,0,0          ; vbroadcastss  0x2c69(%rip),%ymm8        # 5618 <_sk_callback_avx+0x2fa>
6790  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
6791  DB  197,252,88,201                      ; vaddps        %ymm1,%ymm0,%ymm1
6792  DB  196,98,125,24,5,91,44,0,0           ; vbroadcastss  0x2c5b(%rip),%ymm8        # 561c <_sk_callback_avx+0x2fe>
6793  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
6794  DB  197,252,92,210                      ; vsubps        %ymm2,%ymm0,%ymm2
6795  DB  197,116,89,193                      ; vmulps        %ymm1,%ymm1,%ymm8
6796  DB  196,65,116,89,192                   ; vmulps        %ymm8,%ymm1,%ymm8
6797  DB  196,98,125,24,13,68,44,0,0          ; vbroadcastss  0x2c44(%rip),%ymm9        # 5620 <_sk_callback_avx+0x302>
6798  DB  196,65,52,194,208,1                 ; vcmpltps      %ymm8,%ymm9,%ymm10
6799  DB  196,98,125,24,29,57,44,0,0          ; vbroadcastss  0x2c39(%rip),%ymm11        # 5624 <_sk_callback_avx+0x306>
6800  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
6801  DB  196,98,125,24,37,47,44,0,0          ; vbroadcastss  0x2c2f(%rip),%ymm12        # 5628 <_sk_callback_avx+0x30a>
6802  DB  196,193,116,89,204                  ; vmulps        %ymm12,%ymm1,%ymm1
6803  DB  196,67,117,74,192,160               ; vblendvps     %ymm10,%ymm8,%ymm1,%ymm8
6804  DB  197,252,89,200                      ; vmulps        %ymm0,%ymm0,%ymm1
6805  DB  197,252,89,201                      ; vmulps        %ymm1,%ymm0,%ymm1
6806  DB  197,52,194,209,1                    ; vcmpltps      %ymm1,%ymm9,%ymm10
6807  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
6808  DB  196,193,124,89,196                  ; vmulps        %ymm12,%ymm0,%ymm0
6809  DB  196,227,125,74,201,160              ; vblendvps     %ymm10,%ymm1,%ymm0,%ymm1
6810  DB  197,236,89,194                      ; vmulps        %ymm2,%ymm2,%ymm0
6811  DB  197,236,89,192                      ; vmulps        %ymm0,%ymm2,%ymm0
6812  DB  197,52,194,200,1                    ; vcmpltps      %ymm0,%ymm9,%ymm9
6813  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
6814  DB  196,193,108,89,212                  ; vmulps        %ymm12,%ymm2,%ymm2
6815  DB  196,227,109,74,208,144              ; vblendvps     %ymm9,%ymm0,%ymm2,%ymm2
6816  DB  196,226,125,24,5,229,43,0,0         ; vbroadcastss  0x2be5(%rip),%ymm0        # 562c <_sk_callback_avx+0x30e>
6817  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
6818  DB  196,98,125,24,5,220,43,0,0          ; vbroadcastss  0x2bdc(%rip),%ymm8        # 5630 <_sk_callback_avx+0x312>
6819  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
6820  DB  72,173                              ; lods          %ds:(%rsi),%rax
6821  DB  255,224                             ; jmpq          *%rax
6822
6823PUBLIC _sk_load_a8_avx
6824_sk_load_a8_avx LABEL PROC
6825  DB  73,137,200                          ; mov           %rcx,%r8
6826  DB  72,173                              ; lods          %ds:(%rsi),%rax
6827  DB  72,139,0                            ; mov           (%rax),%rax
6828  DB  72,1,248                            ; add           %rdi,%rax
6829  DB  77,133,192                          ; test          %r8,%r8
6830  DB  117,62                              ; jne           2aab <_sk_load_a8_avx+0x4e>
6831  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
6832  DB  196,226,121,49,200                  ; vpmovzxbd     %xmm0,%xmm1
6833  DB  196,227,121,4,192,229               ; vpermilps     $0xe5,%xmm0,%xmm0
6834  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
6835  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
6836  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
6837  DB  196,226,125,24,13,160,43,0,0        ; vbroadcastss  0x2ba0(%rip),%ymm1        # 5634 <_sk_callback_avx+0x316>
6838  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
6839  DB  72,173                              ; lods          %ds:(%rsi),%rax
6840  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
6841  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
6842  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
6843  DB  76,137,193                          ; mov           %r8,%rcx
6844  DB  255,224                             ; jmpq          *%rax
6845  DB  49,201                              ; xor           %ecx,%ecx
6846  DB  77,137,194                          ; mov           %r8,%r10
6847  DB  69,49,201                           ; xor           %r9d,%r9d
6848  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
6849  DB  72,255,192                          ; inc           %rax
6850  DB  73,211,227                          ; shl           %cl,%r11
6851  DB  77,9,217                            ; or            %r11,%r9
6852  DB  72,131,193,8                        ; add           $0x8,%rcx
6853  DB  73,255,202                          ; dec           %r10
6854  DB  117,234                             ; jne           2ab3 <_sk_load_a8_avx+0x56>
6855  DB  196,193,249,110,193                 ; vmovq         %r9,%xmm0
6856  DB  235,161                             ; jmp           2a71 <_sk_load_a8_avx+0x14>
6857
6858PUBLIC _sk_gather_a8_avx
6859_sk_gather_a8_avx LABEL PROC
6860  DB  65,87                               ; push          %r15
6861  DB  65,86                               ; push          %r14
6862  DB  65,84                               ; push          %r12
6863  DB  83                                  ; push          %rbx
6864  DB  72,173                              ; lods          %ds:(%rsi),%rax
6865  DB  76,139,0                            ; mov           (%rax),%r8
6866  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
6867  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
6868  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
6869  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
6870  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
6871  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
6872  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
6873  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
6874  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
6875  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
6876  DB  65,137,193                          ; mov           %eax,%r9d
6877  DB  72,193,232,32                       ; shr           $0x20,%rax
6878  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
6879  DB  69,137,211                          ; mov           %r10d,%r11d
6880  DB  73,193,234,32                       ; shr           $0x20,%r10
6881  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
6882  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
6883  DB  65,137,222                          ; mov           %ebx,%r14d
6884  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
6885  DB  69,137,252                          ; mov           %r15d,%r12d
6886  DB  73,193,239,32                       ; shr           $0x20,%r15
6887  DB  72,193,235,32                       ; shr           $0x20,%rbx
6888  DB  196,131,121,32,4,48,0               ; vpinsrb       $0x0,(%r8,%r14,1),%xmm0,%xmm0
6889  DB  196,195,121,32,4,24,1               ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm0,%xmm0
6890  DB  67,15,182,28,32                     ; movzbl        (%r8,%r12,1),%ebx
6891  DB  196,227,121,32,195,2                ; vpinsrb       $0x2,%ebx,%xmm0,%xmm0
6892  DB  67,15,182,28,56                     ; movzbl        (%r8,%r15,1),%ebx
6893  DB  196,227,121,32,195,3                ; vpinsrb       $0x3,%ebx,%xmm0,%xmm0
6894  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
6895  DB  196,131,121,32,12,24,0              ; vpinsrb       $0x0,(%r8,%r11,1),%xmm0,%xmm1
6896  DB  196,131,113,32,12,16,1              ; vpinsrb       $0x1,(%r8,%r10,1),%xmm1,%xmm1
6897  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
6898  DB  196,227,113,32,203,2                ; vpinsrb       $0x2,%ebx,%xmm1,%xmm1
6899  DB  65,15,182,4,0                       ; movzbl        (%r8,%rax,1),%eax
6900  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
6901  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
6902  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
6903  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
6904  DB  196,226,125,24,13,149,42,0,0        ; vbroadcastss  0x2a95(%rip),%ymm1        # 5638 <_sk_callback_avx+0x31a>
6905  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
6906  DB  72,173                              ; lods          %ds:(%rsi),%rax
6907  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
6908  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
6909  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
6910  DB  91                                  ; pop           %rbx
6911  DB  65,92                               ; pop           %r12
6912  DB  65,94                               ; pop           %r14
6913  DB  65,95                               ; pop           %r15
6914  DB  255,224                             ; jmpq          *%rax
6915
6916PUBLIC _sk_store_a8_avx
6917_sk_store_a8_avx LABEL PROC
6918  DB  72,173                              ; lods          %ds:(%rsi),%rax
6919  DB  76,139,16                           ; mov           (%rax),%r10
6920  DB  196,98,125,24,5,112,42,0,0          ; vbroadcastss  0x2a70(%rip),%ymm8        # 563c <_sk_callback_avx+0x31e>
6921  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
6922  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
6923  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
6924  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
6925  DB  196,65,57,103,192                   ; vpackuswb     %xmm8,%xmm8,%xmm8
6926  DB  72,133,201                          ; test          %rcx,%rcx
6927  DB  117,10                              ; jne           2bf5 <_sk_store_a8_avx+0x37>
6928  DB  196,65,123,17,4,58                  ; vmovsd        %xmm8,(%r10,%rdi,1)
6929  DB  72,173                              ; lods          %ds:(%rsi),%rax
6930  DB  255,224                             ; jmpq          *%rax
6931  DB  65,137,200                          ; mov           %ecx,%r8d
6932  DB  65,128,224,7                        ; and           $0x7,%r8b
6933  DB  65,254,200                          ; dec           %r8b
6934  DB  65,128,248,6                        ; cmp           $0x6,%r8b
6935  DB  119,236                             ; ja            2bf1 <_sk_store_a8_avx+0x33>
6936  DB  196,66,121,48,192                   ; vpmovzxbw     %xmm8,%xmm8
6937  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
6938  DB  76,141,13,67,0,0,0                  ; lea           0x43(%rip),%r9        # 2c58 <_sk_store_a8_avx+0x9a>
6939  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
6940  DB  76,1,200                            ; add           %r9,%rax
6941  DB  255,224                             ; jmpq          *%rax
6942  DB  196,67,121,20,68,58,6,12            ; vpextrb       $0xc,%xmm8,0x6(%r10,%rdi,1)
6943  DB  196,67,121,20,68,58,5,10            ; vpextrb       $0xa,%xmm8,0x5(%r10,%rdi,1)
6944  DB  196,67,121,20,68,58,4,8             ; vpextrb       $0x8,%xmm8,0x4(%r10,%rdi,1)
6945  DB  196,67,121,20,68,58,3,6             ; vpextrb       $0x6,%xmm8,0x3(%r10,%rdi,1)
6946  DB  196,67,121,20,68,58,2,4             ; vpextrb       $0x4,%xmm8,0x2(%r10,%rdi,1)
6947  DB  196,67,121,20,68,58,1,2             ; vpextrb       $0x2,%xmm8,0x1(%r10,%rdi,1)
6948  DB  196,67,121,20,4,58,0                ; vpextrb       $0x0,%xmm8,(%r10,%rdi,1)
6949  DB  235,154                             ; jmp           2bf1 <_sk_store_a8_avx+0x33>
6950  DB  144                                 ; nop
6951  DB  246,255                             ; idiv          %bh
6952  DB  255                                 ; (bad)
6953  DB  255                                 ; (bad)
6954  DB  238                                 ; out           %al,(%dx)
6955  DB  255                                 ; (bad)
6956  DB  255                                 ; (bad)
6957  DB  255,230                             ; jmpq          *%rsi
6958  DB  255                                 ; (bad)
6959  DB  255                                 ; (bad)
6960  DB  255                                 ; (bad)
6961  DB  222,255                             ; fdivrp        %st,%st(7)
6962  DB  255                                 ; (bad)
6963  DB  255,214                             ; callq         *%rsi
6964  DB  255                                 ; (bad)
6965  DB  255                                 ; (bad)
6966  DB  255,206                             ; dec           %esi
6967  DB  255                                 ; (bad)
6968  DB  255                                 ; (bad)
6969  DB  255,198                             ; inc           %esi
6970  DB  255                                 ; (bad)
6971  DB  255                                 ; (bad)
6972  DB  255                                 ; .byte         0xff
6973
6974PUBLIC _sk_load_g8_avx
6975_sk_load_g8_avx LABEL PROC
6976  DB  73,137,200                          ; mov           %rcx,%r8
6977  DB  72,173                              ; lods          %ds:(%rsi),%rax
6978  DB  72,139,0                            ; mov           (%rax),%rax
6979  DB  72,1,248                            ; add           %rdi,%rax
6980  DB  77,133,192                          ; test          %r8,%r8
6981  DB  117,67                              ; jne           2cc7 <_sk_load_g8_avx+0x53>
6982  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
6983  DB  196,226,121,49,200                  ; vpmovzxbd     %xmm0,%xmm1
6984  DB  196,227,121,4,192,229               ; vpermilps     $0xe5,%xmm0,%xmm0
6985  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
6986  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
6987  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
6988  DB  196,226,125,24,13,149,41,0,0        ; vbroadcastss  0x2995(%rip),%ymm1        # 5640 <_sk_callback_avx+0x322>
6989  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
6990  DB  72,173                              ; lods          %ds:(%rsi),%rax
6991  DB  196,226,125,24,29,138,41,0,0        ; vbroadcastss  0x298a(%rip),%ymm3        # 5644 <_sk_callback_avx+0x326>
6992  DB  76,137,193                          ; mov           %r8,%rcx
6993  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
6994  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
6995  DB  255,224                             ; jmpq          *%rax
6996  DB  49,201                              ; xor           %ecx,%ecx
6997  DB  77,137,194                          ; mov           %r8,%r10
6998  DB  69,49,201                           ; xor           %r9d,%r9d
6999  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
7000  DB  72,255,192                          ; inc           %rax
7001  DB  73,211,227                          ; shl           %cl,%r11
7002  DB  77,9,217                            ; or            %r11,%r9
7003  DB  72,131,193,8                        ; add           $0x8,%rcx
7004  DB  73,255,202                          ; dec           %r10
7005  DB  117,234                             ; jne           2ccf <_sk_load_g8_avx+0x5b>
7006  DB  196,193,249,110,193                 ; vmovq         %r9,%xmm0
7007  DB  235,156                             ; jmp           2c88 <_sk_load_g8_avx+0x14>
7008
7009PUBLIC _sk_gather_g8_avx
7010_sk_gather_g8_avx LABEL PROC
7011  DB  65,87                               ; push          %r15
7012  DB  65,86                               ; push          %r14
7013  DB  65,84                               ; push          %r12
7014  DB  83                                  ; push          %rbx
7015  DB  72,173                              ; lods          %ds:(%rsi),%rax
7016  DB  76,139,0                            ; mov           (%rax),%r8
7017  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
7018  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
7019  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
7020  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
7021  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
7022  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
7023  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
7024  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
7025  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
7026  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7027  DB  65,137,193                          ; mov           %eax,%r9d
7028  DB  72,193,232,32                       ; shr           $0x20,%rax
7029  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
7030  DB  69,137,211                          ; mov           %r10d,%r11d
7031  DB  73,193,234,32                       ; shr           $0x20,%r10
7032  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
7033  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
7034  DB  65,137,222                          ; mov           %ebx,%r14d
7035  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
7036  DB  69,137,252                          ; mov           %r15d,%r12d
7037  DB  73,193,239,32                       ; shr           $0x20,%r15
7038  DB  72,193,235,32                       ; shr           $0x20,%rbx
7039  DB  196,131,121,32,4,48,0               ; vpinsrb       $0x0,(%r8,%r14,1),%xmm0,%xmm0
7040  DB  196,195,121,32,4,24,1               ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm0,%xmm0
7041  DB  67,15,182,28,32                     ; movzbl        (%r8,%r12,1),%ebx
7042  DB  196,227,121,32,195,2                ; vpinsrb       $0x2,%ebx,%xmm0,%xmm0
7043  DB  67,15,182,28,56                     ; movzbl        (%r8,%r15,1),%ebx
7044  DB  196,227,121,32,195,3                ; vpinsrb       $0x3,%ebx,%xmm0,%xmm0
7045  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
7046  DB  196,131,121,32,12,24,0              ; vpinsrb       $0x0,(%r8,%r11,1),%xmm0,%xmm1
7047  DB  196,131,113,32,12,16,1              ; vpinsrb       $0x1,(%r8,%r10,1),%xmm1,%xmm1
7048  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
7049  DB  196,227,113,32,203,2                ; vpinsrb       $0x2,%ebx,%xmm1,%xmm1
7050  DB  65,15,182,4,0                       ; movzbl        (%r8,%rax,1),%eax
7051  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
7052  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
7053  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
7054  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7055  DB  196,226,125,24,13,137,40,0,0        ; vbroadcastss  0x2889(%rip),%ymm1        # 5648 <_sk_callback_avx+0x32a>
7056  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
7057  DB  72,173                              ; lods          %ds:(%rsi),%rax
7058  DB  196,226,125,24,29,126,40,0,0        ; vbroadcastss  0x287e(%rip),%ymm3        # 564c <_sk_callback_avx+0x32e>
7059  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
7060  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
7061  DB  91                                  ; pop           %rbx
7062  DB  65,92                               ; pop           %r12
7063  DB  65,94                               ; pop           %r14
7064  DB  65,95                               ; pop           %r15
7065  DB  255,224                             ; jmpq          *%rax
7066
7067PUBLIC _sk_gather_i8_avx
7068_sk_gather_i8_avx LABEL PROC
7069  DB  72,173                              ; lods          %ds:(%rsi),%rax
7070  DB  73,137,192                          ; mov           %rax,%r8
7071  DB  77,133,192                          ; test          %r8,%r8
7072  DB  116,5                               ; je            2dee <_sk_gather_i8_avx+0xf>
7073  DB  76,137,192                          ; mov           %r8,%rax
7074  DB  235,2                               ; jmp           2df0 <_sk_gather_i8_avx+0x11>
7075  DB  72,173                              ; lods          %ds:(%rsi),%rax
7076  DB  65,87                               ; push          %r15
7077  DB  65,86                               ; push          %r14
7078  DB  65,85                               ; push          %r13
7079  DB  65,84                               ; push          %r12
7080  DB  83                                  ; push          %rbx
7081  DB  76,139,8                            ; mov           (%rax),%r9
7082  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
7083  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
7084  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
7085  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
7086  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
7087  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
7088  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
7089  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
7090  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
7091  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7092  DB  65,137,194                          ; mov           %eax,%r10d
7093  DB  72,193,232,32                       ; shr           $0x20,%rax
7094  DB  196,193,249,126,211                 ; vmovq         %xmm2,%r11
7095  DB  69,137,222                          ; mov           %r11d,%r14d
7096  DB  73,193,235,32                       ; shr           $0x20,%r11
7097  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
7098  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
7099  DB  65,137,223                          ; mov           %ebx,%r15d
7100  DB  196,195,249,22,196,1                ; vpextrq       $0x1,%xmm0,%r12
7101  DB  69,137,229                          ; mov           %r12d,%r13d
7102  DB  73,193,236,32                       ; shr           $0x20,%r12
7103  DB  72,193,235,32                       ; shr           $0x20,%rbx
7104  DB  196,131,121,32,4,49,0               ; vpinsrb       $0x0,(%r9,%r14,1),%xmm0,%xmm0
7105  DB  196,131,121,32,4,25,1               ; vpinsrb       $0x1,(%r9,%r11,1),%xmm0,%xmm0
7106  DB  196,131,121,32,4,17,2               ; vpinsrb       $0x2,(%r9,%r10,1),%xmm0,%xmm0
7107  DB  196,195,121,32,4,1,3                ; vpinsrb       $0x3,(%r9,%rax,1),%xmm0,%xmm0
7108  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
7109  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
7110  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
7111  DB  196,131,121,32,4,57,0               ; vpinsrb       $0x0,(%r9,%r15,1),%xmm0,%xmm0
7112  DB  196,195,121,32,4,25,1               ; vpinsrb       $0x1,(%r9,%rbx,1),%xmm0,%xmm0
7113  DB  196,131,121,32,4,41,2               ; vpinsrb       $0x2,(%r9,%r13,1),%xmm0,%xmm0
7114  DB  196,131,121,32,4,33,3               ; vpinsrb       $0x3,(%r9,%r12,1),%xmm0,%xmm0
7115  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
7116  DB  73,139,88,8                         ; mov           0x8(%r8),%rbx
7117  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7118  DB  69,137,200                          ; mov           %r9d,%r8d
7119  DB  73,193,233,30                       ; shr           $0x1e,%r9
7120  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
7121  DB  65,137,198                          ; mov           %eax,%r14d
7122  DB  72,193,232,30                       ; shr           $0x1e,%rax
7123  DB  69,137,223                          ; mov           %r11d,%r15d
7124  DB  73,193,235,30                       ; shr           $0x1e,%r11
7125  DB  69,137,212                          ; mov           %r10d,%r12d
7126  DB  73,193,234,30                       ; shr           $0x1e,%r10
7127  DB  196,161,121,110,4,131               ; vmovd         (%rbx,%r8,4),%xmm0
7128  DB  196,163,121,34,4,11,1               ; vpinsrd       $0x1,(%rbx,%r9,1),%xmm0,%xmm0
7129  DB  196,163,121,34,4,179,2              ; vpinsrd       $0x2,(%rbx,%r14,4),%xmm0,%xmm0
7130  DB  196,99,121,34,4,3,3                 ; vpinsrd       $0x3,(%rbx,%rax,1),%xmm0,%xmm8
7131  DB  196,161,121,110,4,187               ; vmovd         (%rbx,%r15,4),%xmm0
7132  DB  196,163,121,34,4,27,1               ; vpinsrd       $0x1,(%rbx,%r11,1),%xmm0,%xmm0
7133  DB  196,163,121,34,4,163,2              ; vpinsrd       $0x2,(%rbx,%r12,4),%xmm0,%xmm0
7134  DB  196,163,121,34,28,19,3              ; vpinsrd       $0x3,(%rbx,%r10,1),%xmm0,%xmm3
7135  DB  196,227,61,24,195,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm0
7136  DB  197,124,40,21,230,40,0,0            ; vmovaps       0x28e6(%rip),%ymm10        # 5800 <_sk_callback_avx+0x4e2>
7137  DB  196,193,124,84,194                  ; vandps        %ymm10,%ymm0,%ymm0
7138  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7139  DB  196,98,125,24,13,36,39,0,0          ; vbroadcastss  0x2724(%rip),%ymm9        # 5650 <_sk_callback_avx+0x332>
7140  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
7141  DB  196,193,113,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm1
7142  DB  197,233,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm2
7143  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7144  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
7145  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7146  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
7147  DB  196,193,33,114,208,16               ; vpsrld        $0x10,%xmm8,%xmm11
7148  DB  197,233,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm2
7149  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
7150  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
7151  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7152  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
7153  DB  196,193,57,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm8
7154  DB  197,225,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm3
7155  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
7156  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7157  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
7158  DB  72,173                              ; lods          %ds:(%rsi),%rax
7159  DB  91                                  ; pop           %rbx
7160  DB  65,92                               ; pop           %r12
7161  DB  65,93                               ; pop           %r13
7162  DB  65,94                               ; pop           %r14
7163  DB  65,95                               ; pop           %r15
7164  DB  255,224                             ; jmpq          *%rax
7165
7166PUBLIC _sk_load_565_avx
7167_sk_load_565_avx LABEL PROC
7168  DB  72,173                              ; lods          %ds:(%rsi),%rax
7169  DB  76,139,16                           ; mov           (%rax),%r10
7170  DB  72,133,201                          ; test          %rcx,%rcx
7171  DB  15,133,128,0,0,0                    ; jne           3024 <_sk_load_565_avx+0x8e>
7172  DB  196,193,122,111,4,122               ; vmovdqu       (%r10,%rdi,2),%xmm0
7173  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
7174  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
7175  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
7176  DB  196,227,125,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm2
7177  DB  196,226,125,24,5,142,38,0,0         ; vbroadcastss  0x268e(%rip),%ymm0        # 5654 <_sk_callback_avx+0x336>
7178  DB  197,236,84,192                      ; vandps        %ymm0,%ymm2,%ymm0
7179  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7180  DB  196,226,125,24,13,129,38,0,0        ; vbroadcastss  0x2681(%rip),%ymm1        # 5658 <_sk_callback_avx+0x33a>
7181  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
7182  DB  196,226,125,24,13,120,38,0,0        ; vbroadcastss  0x2678(%rip),%ymm1        # 565c <_sk_callback_avx+0x33e>
7183  DB  197,236,84,201                      ; vandps        %ymm1,%ymm2,%ymm1
7184  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7185  DB  196,226,125,24,29,107,38,0,0        ; vbroadcastss  0x266b(%rip),%ymm3        # 5660 <_sk_callback_avx+0x342>
7186  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
7187  DB  196,226,125,24,29,98,38,0,0         ; vbroadcastss  0x2662(%rip),%ymm3        # 5664 <_sk_callback_avx+0x346>
7188  DB  197,236,84,211                      ; vandps        %ymm3,%ymm2,%ymm2
7189  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7190  DB  196,226,125,24,29,85,38,0,0         ; vbroadcastss  0x2655(%rip),%ymm3        # 5668 <_sk_callback_avx+0x34a>
7191  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
7192  DB  72,173                              ; lods          %ds:(%rsi),%rax
7193  DB  196,226,125,24,29,74,38,0,0         ; vbroadcastss  0x264a(%rip),%ymm3        # 566c <_sk_callback_avx+0x34e>
7194  DB  255,224                             ; jmpq          *%rax
7195  DB  65,137,200                          ; mov           %ecx,%r8d
7196  DB  65,128,224,7                        ; and           $0x7,%r8b
7197  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
7198  DB  65,254,200                          ; dec           %r8b
7199  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7200  DB  15,135,110,255,255,255              ; ja            2faa <_sk_load_565_avx+0x14>
7201  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7202  DB  76,141,13,73,0,0,0                  ; lea           0x49(%rip),%r9        # 3090 <_sk_load_565_avx+0xfa>
7203  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7204  DB  76,1,200                            ; add           %r9,%rax
7205  DB  255,224                             ; jmpq          *%rax
7206  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
7207  DB  196,193,121,196,68,122,12,6         ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
7208  DB  196,193,121,196,68,122,10,5         ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
7209  DB  196,193,121,196,68,122,8,4          ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
7210  DB  196,193,121,196,68,122,6,3          ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
7211  DB  196,193,121,196,68,122,4,2          ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
7212  DB  196,193,121,196,68,122,2,1          ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
7213  DB  196,193,121,196,4,122,0             ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm0,%xmm0
7214  DB  233,26,255,255,255                  ; jmpq          2faa <_sk_load_565_avx+0x14>
7215  DB  244                                 ; hlt
7216  DB  255                                 ; (bad)
7217  DB  255                                 ; (bad)
7218  DB  255                                 ; (bad)
7219  DB  236                                 ; in            (%dx),%al
7220  DB  255                                 ; (bad)
7221  DB  255                                 ; (bad)
7222  DB  255,228                             ; jmpq          *%rsp
7223  DB  255                                 ; (bad)
7224  DB  255                                 ; (bad)
7225  DB  255                                 ; (bad)
7226  DB  220,255                             ; fdivr         %st,%st(7)
7227  DB  255                                 ; (bad)
7228  DB  255,212                             ; callq         *%rsp
7229  DB  255                                 ; (bad)
7230  DB  255                                 ; (bad)
7231  DB  255,204                             ; dec           %esp
7232  DB  255                                 ; (bad)
7233  DB  255                                 ; (bad)
7234  DB  255,192                             ; inc           %eax
7235  DB  255                                 ; (bad)
7236  DB  255                                 ; (bad)
7237  DB  255                                 ; .byte         0xff
7238
7239PUBLIC _sk_gather_565_avx
7240_sk_gather_565_avx LABEL PROC
7241  DB  85                                  ; push          %rbp
7242  DB  65,87                               ; push          %r15
7243  DB  65,86                               ; push          %r14
7244  DB  65,84                               ; push          %r12
7245  DB  83                                  ; push          %rbx
7246  DB  72,173                              ; lods          %ds:(%rsi),%rax
7247  DB  76,139,0                            ; mov           (%rax),%r8
7248  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
7249  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
7250  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
7251  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
7252  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
7253  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
7254  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
7255  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
7256  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
7257  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7258  DB  65,137,193                          ; mov           %eax,%r9d
7259  DB  72,193,232,32                       ; shr           $0x20,%rax
7260  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
7261  DB  69,137,211                          ; mov           %r10d,%r11d
7262  DB  73,193,234,32                       ; shr           $0x20,%r10
7263  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
7264  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
7265  DB  65,137,222                          ; mov           %ebx,%r14d
7266  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
7267  DB  69,137,252                          ; mov           %r15d,%r12d
7268  DB  73,193,239,32                       ; shr           $0x20,%r15
7269  DB  72,193,235,32                       ; shr           $0x20,%rbx
7270  DB  65,15,183,28,88                     ; movzwl        (%r8,%rbx,2),%ebx
7271  DB  67,15,183,44,112                    ; movzwl        (%r8,%r14,2),%ebp
7272  DB  197,249,110,197                     ; vmovd         %ebp,%xmm0
7273  DB  197,249,196,195,1                   ; vpinsrw       $0x1,%ebx,%xmm0,%xmm0
7274  DB  67,15,183,28,96                     ; movzwl        (%r8,%r12,2),%ebx
7275  DB  197,249,196,195,2                   ; vpinsrw       $0x2,%ebx,%xmm0,%xmm0
7276  DB  67,15,183,28,120                    ; movzwl        (%r8,%r15,2),%ebx
7277  DB  197,249,196,195,3                   ; vpinsrw       $0x3,%ebx,%xmm0,%xmm0
7278  DB  67,15,183,44,88                     ; movzwl        (%r8,%r11,2),%ebp
7279  DB  197,249,196,197,4                   ; vpinsrw       $0x4,%ebp,%xmm0,%xmm0
7280  DB  67,15,183,44,80                     ; movzwl        (%r8,%r10,2),%ebp
7281  DB  197,249,196,197,5                   ; vpinsrw       $0x5,%ebp,%xmm0,%xmm0
7282  DB  67,15,183,44,72                     ; movzwl        (%r8,%r9,2),%ebp
7283  DB  197,249,196,197,6                   ; vpinsrw       $0x6,%ebp,%xmm0,%xmm0
7284  DB  65,15,183,4,64                      ; movzwl        (%r8,%rax,2),%eax
7285  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
7286  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
7287  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
7288  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
7289  DB  196,227,125,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm2
7290  DB  196,226,125,24,5,234,36,0,0         ; vbroadcastss  0x24ea(%rip),%ymm0        # 5670 <_sk_callback_avx+0x352>
7291  DB  197,236,84,192                      ; vandps        %ymm0,%ymm2,%ymm0
7292  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7293  DB  196,226,125,24,13,221,36,0,0        ; vbroadcastss  0x24dd(%rip),%ymm1        # 5674 <_sk_callback_avx+0x356>
7294  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
7295  DB  196,226,125,24,13,212,36,0,0        ; vbroadcastss  0x24d4(%rip),%ymm1        # 5678 <_sk_callback_avx+0x35a>
7296  DB  197,236,84,201                      ; vandps        %ymm1,%ymm2,%ymm1
7297  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7298  DB  196,226,125,24,29,199,36,0,0        ; vbroadcastss  0x24c7(%rip),%ymm3        # 567c <_sk_callback_avx+0x35e>
7299  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
7300  DB  196,226,125,24,29,190,36,0,0        ; vbroadcastss  0x24be(%rip),%ymm3        # 5680 <_sk_callback_avx+0x362>
7301  DB  197,236,84,211                      ; vandps        %ymm3,%ymm2,%ymm2
7302  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7303  DB  196,226,125,24,29,177,36,0,0        ; vbroadcastss  0x24b1(%rip),%ymm3        # 5684 <_sk_callback_avx+0x366>
7304  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
7305  DB  72,173                              ; lods          %ds:(%rsi),%rax
7306  DB  196,226,125,24,29,166,36,0,0        ; vbroadcastss  0x24a6(%rip),%ymm3        # 5688 <_sk_callback_avx+0x36a>
7307  DB  91                                  ; pop           %rbx
7308  DB  65,92                               ; pop           %r12
7309  DB  65,94                               ; pop           %r14
7310  DB  65,95                               ; pop           %r15
7311  DB  93                                  ; pop           %rbp
7312  DB  255,224                             ; jmpq          *%rax
7313
7314PUBLIC _sk_store_565_avx
7315_sk_store_565_avx LABEL PROC
7316  DB  72,173                              ; lods          %ds:(%rsi),%rax
7317  DB  76,139,16                           ; mov           (%rax),%r10
7318  DB  196,98,125,24,5,146,36,0,0          ; vbroadcastss  0x2492(%rip),%ymm8        # 568c <_sk_callback_avx+0x36e>
7319  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
7320  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
7321  DB  196,193,41,114,241,11               ; vpslld        $0xb,%xmm9,%xmm10
7322  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
7323  DB  196,193,49,114,241,11               ; vpslld        $0xb,%xmm9,%xmm9
7324  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
7325  DB  196,98,125,24,21,107,36,0,0         ; vbroadcastss  0x246b(%rip),%ymm10        # 5690 <_sk_callback_avx+0x372>
7326  DB  196,65,116,89,210                   ; vmulps        %ymm10,%ymm1,%ymm10
7327  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
7328  DB  196,193,33,114,242,5                ; vpslld        $0x5,%xmm10,%xmm11
7329  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
7330  DB  196,193,41,114,242,5                ; vpslld        $0x5,%xmm10,%xmm10
7331  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
7332  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
7333  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
7334  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
7335  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
7336  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
7337  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
7338  DB  72,133,201                          ; test          %rcx,%rcx
7339  DB  117,10                              ; jne           3275 <_sk_store_565_avx+0x89>
7340  DB  196,65,122,127,4,122                ; vmovdqu       %xmm8,(%r10,%rdi,2)
7341  DB  72,173                              ; lods          %ds:(%rsi),%rax
7342  DB  255,224                             ; jmpq          *%rax
7343  DB  65,137,200                          ; mov           %ecx,%r8d
7344  DB  65,128,224,7                        ; and           $0x7,%r8b
7345  DB  65,254,200                          ; dec           %r8b
7346  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7347  DB  119,236                             ; ja            3271 <_sk_store_565_avx+0x85>
7348  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7349  DB  76,141,13,68,0,0,0                  ; lea           0x44(%rip),%r9        # 32d4 <_sk_store_565_avx+0xe8>
7350  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7351  DB  76,1,200                            ; add           %r9,%rax
7352  DB  255,224                             ; jmpq          *%rax
7353  DB  196,67,121,21,68,122,12,6           ; vpextrw       $0x6,%xmm8,0xc(%r10,%rdi,2)
7354  DB  196,67,121,21,68,122,10,5           ; vpextrw       $0x5,%xmm8,0xa(%r10,%rdi,2)
7355  DB  196,67,121,21,68,122,8,4            ; vpextrw       $0x4,%xmm8,0x8(%r10,%rdi,2)
7356  DB  196,67,121,21,68,122,6,3            ; vpextrw       $0x3,%xmm8,0x6(%r10,%rdi,2)
7357  DB  196,67,121,21,68,122,4,2            ; vpextrw       $0x2,%xmm8,0x4(%r10,%rdi,2)
7358  DB  196,67,121,21,68,122,2,1            ; vpextrw       $0x1,%xmm8,0x2(%r10,%rdi,2)
7359  DB  196,67,121,21,4,122,0               ; vpextrw       $0x0,%xmm8,(%r10,%rdi,2)
7360  DB  235,159                             ; jmp           3271 <_sk_store_565_avx+0x85>
7361  DB  102,144                             ; xchg          %ax,%ax
7362  DB  245                                 ; cmc
7363  DB  255                                 ; (bad)
7364  DB  255                                 ; (bad)
7365  DB  255                                 ; (bad)
7366  DB  237                                 ; in            (%dx),%eax
7367  DB  255                                 ; (bad)
7368  DB  255                                 ; (bad)
7369  DB  255,229                             ; jmpq          *%rbp
7370  DB  255                                 ; (bad)
7371  DB  255                                 ; (bad)
7372  DB  255                                 ; (bad)
7373  DB  221,255                             ; (bad)
7374  DB  255                                 ; (bad)
7375  DB  255,213                             ; callq         *%rbp
7376  DB  255                                 ; (bad)
7377  DB  255                                 ; (bad)
7378  DB  255,205                             ; dec           %ebp
7379  DB  255                                 ; (bad)
7380  DB  255                                 ; (bad)
7381  DB  255,197                             ; inc           %ebp
7382  DB  255                                 ; (bad)
7383  DB  255                                 ; (bad)
7384  DB  255                                 ; .byte         0xff
7385
7386PUBLIC _sk_load_4444_avx
7387_sk_load_4444_avx LABEL PROC
7388  DB  72,173                              ; lods          %ds:(%rsi),%rax
7389  DB  76,139,16                           ; mov           (%rax),%r10
7390  DB  72,133,201                          ; test          %rcx,%rcx
7391  DB  15,133,152,0,0,0                    ; jne           3396 <_sk_load_4444_avx+0xa6>
7392  DB  196,193,122,111,4,122               ; vmovdqu       (%r10,%rdi,2),%xmm0
7393  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
7394  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
7395  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
7396  DB  196,227,125,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm3
7397  DB  196,226,125,24,5,116,35,0,0         ; vbroadcastss  0x2374(%rip),%ymm0        # 5694 <_sk_callback_avx+0x376>
7398  DB  197,228,84,192                      ; vandps        %ymm0,%ymm3,%ymm0
7399  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7400  DB  196,226,125,24,13,103,35,0,0        ; vbroadcastss  0x2367(%rip),%ymm1        # 5698 <_sk_callback_avx+0x37a>
7401  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
7402  DB  196,226,125,24,13,94,35,0,0         ; vbroadcastss  0x235e(%rip),%ymm1        # 569c <_sk_callback_avx+0x37e>
7403  DB  197,228,84,201                      ; vandps        %ymm1,%ymm3,%ymm1
7404  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7405  DB  196,226,125,24,21,81,35,0,0         ; vbroadcastss  0x2351(%rip),%ymm2        # 56a0 <_sk_callback_avx+0x382>
7406  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
7407  DB  196,226,125,24,21,72,35,0,0         ; vbroadcastss  0x2348(%rip),%ymm2        # 56a4 <_sk_callback_avx+0x386>
7408  DB  197,228,84,210                      ; vandps        %ymm2,%ymm3,%ymm2
7409  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7410  DB  196,98,125,24,5,59,35,0,0           ; vbroadcastss  0x233b(%rip),%ymm8        # 56a8 <_sk_callback_avx+0x38a>
7411  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
7412  DB  196,98,125,24,5,49,35,0,0           ; vbroadcastss  0x2331(%rip),%ymm8        # 56ac <_sk_callback_avx+0x38e>
7413  DB  196,193,100,84,216                  ; vandps        %ymm8,%ymm3,%ymm3
7414  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7415  DB  196,98,125,24,5,35,35,0,0           ; vbroadcastss  0x2323(%rip),%ymm8        # 56b0 <_sk_callback_avx+0x392>
7416  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
7417  DB  72,173                              ; lods          %ds:(%rsi),%rax
7418  DB  255,224                             ; jmpq          *%rax
7419  DB  65,137,200                          ; mov           %ecx,%r8d
7420  DB  65,128,224,7                        ; and           $0x7,%r8b
7421  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
7422  DB  65,254,200                          ; dec           %r8b
7423  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7424  DB  15,135,86,255,255,255               ; ja            3304 <_sk_load_4444_avx+0x14>
7425  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7426  DB  76,141,13,75,0,0,0                  ; lea           0x4b(%rip),%r9        # 3404 <_sk_load_4444_avx+0x114>
7427  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7428  DB  76,1,200                            ; add           %r9,%rax
7429  DB  255,224                             ; jmpq          *%rax
7430  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
7431  DB  196,193,121,196,68,122,12,6         ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
7432  DB  196,193,121,196,68,122,10,5         ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
7433  DB  196,193,121,196,68,122,8,4          ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
7434  DB  196,193,121,196,68,122,6,3          ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
7435  DB  196,193,121,196,68,122,4,2          ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
7436  DB  196,193,121,196,68,122,2,1          ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
7437  DB  196,193,121,196,4,122,0             ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm0,%xmm0
7438  DB  233,2,255,255,255                   ; jmpq          3304 <_sk_load_4444_avx+0x14>
7439  DB  102,144                             ; xchg          %ax,%ax
7440  DB  242,255                             ; repnz         (bad)
7441  DB  255                                 ; (bad)
7442  DB  255                                 ; (bad)
7443  DB  234                                 ; (bad)
7444  DB  255                                 ; (bad)
7445  DB  255                                 ; (bad)
7446  DB  255,226                             ; jmpq          *%rdx
7447  DB  255                                 ; (bad)
7448  DB  255                                 ; (bad)
7449  DB  255                                 ; (bad)
7450  DB  218,255                             ; (bad)
7451  DB  255                                 ; (bad)
7452  DB  255,210                             ; callq         *%rdx
7453  DB  255                                 ; (bad)
7454  DB  255                                 ; (bad)
7455  DB  255,202                             ; dec           %edx
7456  DB  255                                 ; (bad)
7457  DB  255                                 ; (bad)
7458  DB  255                                 ; (bad)
7459  DB  190                                 ; .byte         0xbe
7460  DB  255                                 ; (bad)
7461  DB  255                                 ; (bad)
7462  DB  255                                 ; .byte         0xff
7463
7464PUBLIC _sk_gather_4444_avx
7465_sk_gather_4444_avx LABEL PROC
7466  DB  85                                  ; push          %rbp
7467  DB  65,87                               ; push          %r15
7468  DB  65,86                               ; push          %r14
7469  DB  65,84                               ; push          %r12
7470  DB  83                                  ; push          %rbx
7471  DB  72,173                              ; lods          %ds:(%rsi),%rax
7472  DB  76,139,0                            ; mov           (%rax),%r8
7473  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
7474  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
7475  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
7476  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
7477  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
7478  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
7479  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
7480  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
7481  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
7482  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7483  DB  65,137,193                          ; mov           %eax,%r9d
7484  DB  72,193,232,32                       ; shr           $0x20,%rax
7485  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
7486  DB  69,137,211                          ; mov           %r10d,%r11d
7487  DB  73,193,234,32                       ; shr           $0x20,%r10
7488  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
7489  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
7490  DB  65,137,222                          ; mov           %ebx,%r14d
7491  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
7492  DB  69,137,252                          ; mov           %r15d,%r12d
7493  DB  73,193,239,32                       ; shr           $0x20,%r15
7494  DB  72,193,235,32                       ; shr           $0x20,%rbx
7495  DB  65,15,183,28,88                     ; movzwl        (%r8,%rbx,2),%ebx
7496  DB  67,15,183,44,112                    ; movzwl        (%r8,%r14,2),%ebp
7497  DB  197,249,110,197                     ; vmovd         %ebp,%xmm0
7498  DB  197,249,196,195,1                   ; vpinsrw       $0x1,%ebx,%xmm0,%xmm0
7499  DB  67,15,183,28,96                     ; movzwl        (%r8,%r12,2),%ebx
7500  DB  197,249,196,195,2                   ; vpinsrw       $0x2,%ebx,%xmm0,%xmm0
7501  DB  67,15,183,28,120                    ; movzwl        (%r8,%r15,2),%ebx
7502  DB  197,249,196,195,3                   ; vpinsrw       $0x3,%ebx,%xmm0,%xmm0
7503  DB  67,15,183,44,88                     ; movzwl        (%r8,%r11,2),%ebp
7504  DB  197,249,196,197,4                   ; vpinsrw       $0x4,%ebp,%xmm0,%xmm0
7505  DB  67,15,183,44,80                     ; movzwl        (%r8,%r10,2),%ebp
7506  DB  197,249,196,197,5                   ; vpinsrw       $0x5,%ebp,%xmm0,%xmm0
7507  DB  67,15,183,44,72                     ; movzwl        (%r8,%r9,2),%ebp
7508  DB  197,249,196,197,6                   ; vpinsrw       $0x6,%ebp,%xmm0,%xmm0
7509  DB  65,15,183,4,64                      ; movzwl        (%r8,%rax,2),%eax
7510  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
7511  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
7512  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
7513  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
7514  DB  196,227,125,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm3
7515  DB  196,226,125,24,5,186,33,0,0         ; vbroadcastss  0x21ba(%rip),%ymm0        # 56b4 <_sk_callback_avx+0x396>
7516  DB  197,228,84,192                      ; vandps        %ymm0,%ymm3,%ymm0
7517  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7518  DB  196,226,125,24,13,173,33,0,0        ; vbroadcastss  0x21ad(%rip),%ymm1        # 56b8 <_sk_callback_avx+0x39a>
7519  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
7520  DB  196,226,125,24,13,164,33,0,0        ; vbroadcastss  0x21a4(%rip),%ymm1        # 56bc <_sk_callback_avx+0x39e>
7521  DB  197,228,84,201                      ; vandps        %ymm1,%ymm3,%ymm1
7522  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7523  DB  196,226,125,24,21,151,33,0,0        ; vbroadcastss  0x2197(%rip),%ymm2        # 56c0 <_sk_callback_avx+0x3a2>
7524  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
7525  DB  196,226,125,24,21,142,33,0,0        ; vbroadcastss  0x218e(%rip),%ymm2        # 56c4 <_sk_callback_avx+0x3a6>
7526  DB  197,228,84,210                      ; vandps        %ymm2,%ymm3,%ymm2
7527  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7528  DB  196,98,125,24,5,129,33,0,0          ; vbroadcastss  0x2181(%rip),%ymm8        # 56c8 <_sk_callback_avx+0x3aa>
7529  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
7530  DB  196,98,125,24,5,119,33,0,0          ; vbroadcastss  0x2177(%rip),%ymm8        # 56cc <_sk_callback_avx+0x3ae>
7531  DB  196,193,100,84,216                  ; vandps        %ymm8,%ymm3,%ymm3
7532  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7533  DB  196,98,125,24,5,105,33,0,0          ; vbroadcastss  0x2169(%rip),%ymm8        # 56d0 <_sk_callback_avx+0x3b2>
7534  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
7535  DB  72,173                              ; lods          %ds:(%rsi),%rax
7536  DB  91                                  ; pop           %rbx
7537  DB  65,92                               ; pop           %r12
7538  DB  65,94                               ; pop           %r14
7539  DB  65,95                               ; pop           %r15
7540  DB  93                                  ; pop           %rbp
7541  DB  255,224                             ; jmpq          *%rax
7542
7543PUBLIC _sk_store_4444_avx
7544_sk_store_4444_avx LABEL PROC
7545  DB  72,173                              ; lods          %ds:(%rsi),%rax
7546  DB  76,139,16                           ; mov           (%rax),%r10
7547  DB  196,98,125,24,5,78,33,0,0           ; vbroadcastss  0x214e(%rip),%ymm8        # 56d4 <_sk_callback_avx+0x3b6>
7548  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
7549  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
7550  DB  196,193,41,114,241,12               ; vpslld        $0xc,%xmm9,%xmm10
7551  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
7552  DB  196,193,49,114,241,12               ; vpslld        $0xc,%xmm9,%xmm9
7553  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
7554  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
7555  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
7556  DB  196,193,33,114,242,8                ; vpslld        $0x8,%xmm10,%xmm11
7557  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
7558  DB  196,193,41,114,242,8                ; vpslld        $0x8,%xmm10,%xmm10
7559  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
7560  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
7561  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
7562  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
7563  DB  196,193,33,114,242,4                ; vpslld        $0x4,%xmm10,%xmm11
7564  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
7565  DB  196,193,41,114,242,4                ; vpslld        $0x4,%xmm10,%xmm10
7566  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
7567  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
7568  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
7569  DB  196,65,45,86,192                    ; vorpd         %ymm8,%ymm10,%ymm8
7570  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
7571  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
7572  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
7573  DB  72,133,201                          ; test          %rcx,%rcx
7574  DB  117,10                              ; jne           361f <_sk_store_4444_avx+0xa7>
7575  DB  196,65,122,127,4,122                ; vmovdqu       %xmm8,(%r10,%rdi,2)
7576  DB  72,173                              ; lods          %ds:(%rsi),%rax
7577  DB  255,224                             ; jmpq          *%rax
7578  DB  65,137,200                          ; mov           %ecx,%r8d
7579  DB  65,128,224,7                        ; and           $0x7,%r8b
7580  DB  65,254,200                          ; dec           %r8b
7581  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7582  DB  119,236                             ; ja            361b <_sk_store_4444_avx+0xa3>
7583  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7584  DB  76,141,13,66,0,0,0                  ; lea           0x42(%rip),%r9        # 367c <_sk_store_4444_avx+0x104>
7585  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7586  DB  76,1,200                            ; add           %r9,%rax
7587  DB  255,224                             ; jmpq          *%rax
7588  DB  196,67,121,21,68,122,12,6           ; vpextrw       $0x6,%xmm8,0xc(%r10,%rdi,2)
7589  DB  196,67,121,21,68,122,10,5           ; vpextrw       $0x5,%xmm8,0xa(%r10,%rdi,2)
7590  DB  196,67,121,21,68,122,8,4            ; vpextrw       $0x4,%xmm8,0x8(%r10,%rdi,2)
7591  DB  196,67,121,21,68,122,6,3            ; vpextrw       $0x3,%xmm8,0x6(%r10,%rdi,2)
7592  DB  196,67,121,21,68,122,4,2            ; vpextrw       $0x2,%xmm8,0x4(%r10,%rdi,2)
7593  DB  196,67,121,21,68,122,2,1            ; vpextrw       $0x1,%xmm8,0x2(%r10,%rdi,2)
7594  DB  196,67,121,21,4,122,0               ; vpextrw       $0x0,%xmm8,(%r10,%rdi,2)
7595  DB  235,159                             ; jmp           361b <_sk_store_4444_avx+0xa3>
7596  DB  247,255                             ; idiv          %edi
7597  DB  255                                 ; (bad)
7598  DB  255                                 ; (bad)
7599  DB  239                                 ; out           %eax,(%dx)
7600  DB  255                                 ; (bad)
7601  DB  255                                 ; (bad)
7602  DB  255,231                             ; jmpq          *%rdi
7603  DB  255                                 ; (bad)
7604  DB  255                                 ; (bad)
7605  DB  255                                 ; (bad)
7606  DB  223,255                             ; (bad)
7607  DB  255                                 ; (bad)
7608  DB  255,215                             ; callq         *%rdi
7609  DB  255                                 ; (bad)
7610  DB  255                                 ; (bad)
7611  DB  255,207                             ; dec           %edi
7612  DB  255                                 ; (bad)
7613  DB  255                                 ; (bad)
7614  DB  255,199                             ; inc           %edi
7615  DB  255                                 ; (bad)
7616  DB  255                                 ; (bad)
7617  DB  255                                 ; .byte         0xff
7618
7619PUBLIC _sk_load_8888_avx
7620_sk_load_8888_avx LABEL PROC
7621  DB  72,173                              ; lods          %ds:(%rsi),%rax
7622  DB  76,139,16                           ; mov           (%rax),%r10
7623  DB  72,133,201                          ; test          %rcx,%rcx
7624  DB  15,133,135,0,0,0                    ; jne           372d <_sk_load_8888_avx+0x95>
7625  DB  196,65,124,16,12,186                ; vmovups       (%r10,%rdi,4),%ymm9
7626  DB  197,124,40,21,108,33,0,0            ; vmovaps       0x216c(%rip),%ymm10        # 5820 <_sk_callback_avx+0x502>
7627  DB  196,193,52,84,194                   ; vandps        %ymm10,%ymm9,%ymm0
7628  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7629  DB  196,98,125,24,5,18,32,0,0           ; vbroadcastss  0x2012(%rip),%ymm8        # 56d8 <_sk_callback_avx+0x3ba>
7630  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
7631  DB  196,193,113,114,209,8               ; vpsrld        $0x8,%xmm9,%xmm1
7632  DB  196,99,125,25,203,1                 ; vextractf128  $0x1,%ymm9,%xmm3
7633  DB  197,233,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm2
7634  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7635  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
7636  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7637  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
7638  DB  196,193,33,114,209,16               ; vpsrld        $0x10,%xmm9,%xmm11
7639  DB  197,233,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm2
7640  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
7641  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
7642  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7643  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
7644  DB  196,193,49,114,209,24               ; vpsrld        $0x18,%xmm9,%xmm9
7645  DB  197,225,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm3
7646  DB  196,227,53,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm9,%ymm3
7647  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7648  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
7649  DB  72,173                              ; lods          %ds:(%rsi),%rax
7650  DB  255,224                             ; jmpq          *%rax
7651  DB  65,137,200                          ; mov           %ecx,%r8d
7652  DB  65,128,224,7                        ; and           $0x7,%r8b
7653  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
7654  DB  65,254,200                          ; dec           %r8b
7655  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7656  DB  15,135,102,255,255,255              ; ja            36ac <_sk_load_8888_avx+0x14>
7657  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7658  DB  76,141,13,139,0,0,0                 ; lea           0x8b(%rip),%r9        # 37dc <_sk_load_8888_avx+0x144>
7659  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7660  DB  76,1,200                            ; add           %r9,%rax
7661  DB  255,224                             ; jmpq          *%rax
7662  DB  196,193,121,110,68,186,24           ; vmovd         0x18(%r10,%rdi,4),%xmm0
7663  DB  197,249,112,192,68                  ; vpshufd       $0x44,%xmm0,%xmm0
7664  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
7665  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
7666  DB  196,99,117,12,200,64                ; vblendps      $0x40,%ymm0,%ymm1,%ymm9
7667  DB  196,99,125,25,200,1                 ; vextractf128  $0x1,%ymm9,%xmm0
7668  DB  196,195,121,34,68,186,20,1          ; vpinsrd       $0x1,0x14(%r10,%rdi,4),%xmm0,%xmm0
7669  DB  196,99,53,24,200,1                  ; vinsertf128   $0x1,%xmm0,%ymm9,%ymm9
7670  DB  196,99,125,25,200,1                 ; vextractf128  $0x1,%ymm9,%xmm0
7671  DB  196,195,121,34,68,186,16,0          ; vpinsrd       $0x0,0x10(%r10,%rdi,4),%xmm0,%xmm0
7672  DB  196,99,53,24,200,1                  ; vinsertf128   $0x1,%xmm0,%ymm9,%ymm9
7673  DB  196,195,49,34,68,186,12,3           ; vpinsrd       $0x3,0xc(%r10,%rdi,4),%xmm9,%xmm0
7674  DB  196,99,53,12,200,15                 ; vblendps      $0xf,%ymm0,%ymm9,%ymm9
7675  DB  196,195,49,34,68,186,8,2            ; vpinsrd       $0x2,0x8(%r10,%rdi,4),%xmm9,%xmm0
7676  DB  196,99,53,12,200,15                 ; vblendps      $0xf,%ymm0,%ymm9,%ymm9
7677  DB  196,195,49,34,68,186,4,1            ; vpinsrd       $0x1,0x4(%r10,%rdi,4),%xmm9,%xmm0
7678  DB  196,99,53,12,200,15                 ; vblendps      $0xf,%ymm0,%ymm9,%ymm9
7679  DB  196,195,49,34,4,186,0               ; vpinsrd       $0x0,(%r10,%rdi,4),%xmm9,%xmm0
7680  DB  196,99,53,12,200,15                 ; vblendps      $0xf,%ymm0,%ymm9,%ymm9
7681  DB  233,210,254,255,255                 ; jmpq          36ac <_sk_load_8888_avx+0x14>
7682  DB  102,144                             ; xchg          %ax,%ax
7683  DB  236                                 ; in            (%dx),%al
7684  DB  255                                 ; (bad)
7685  DB  255                                 ; (bad)
7686  DB  255                                 ; (bad)
7687  DB  222,255                             ; fdivrp        %st,%st(7)
7688  DB  255                                 ; (bad)
7689  DB  255,208                             ; callq         *%rax
7690  DB  255                                 ; (bad)
7691  DB  255                                 ; (bad)
7692  DB  255,194                             ; inc           %edx
7693  DB  255                                 ; (bad)
7694  DB  255                                 ; (bad)
7695  DB  255,174,255,255,255,154             ; ljmp          *-0x65000001(%rsi)
7696  DB  255                                 ; (bad)
7697  DB  255                                 ; (bad)
7698  DB  255                                 ; (bad)
7699  DB  126,255                             ; jle           37f5 <_sk_load_8888_avx+0x15d>
7700  DB  255                                 ; (bad)
7701  DB  255                                 ; .byte         0xff
7702
7703PUBLIC _sk_gather_8888_avx
7704_sk_gather_8888_avx LABEL PROC
7705  DB  65,87                               ; push          %r15
7706  DB  65,86                               ; push          %r14
7707  DB  65,84                               ; push          %r12
7708  DB  83                                  ; push          %rbx
7709  DB  72,173                              ; lods          %ds:(%rsi),%rax
7710  DB  76,139,0                            ; mov           (%rax),%r8
7711  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
7712  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
7713  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
7714  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
7715  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
7716  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
7717  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
7718  DB  196,227,125,25,194,1                ; vextractf128  $0x1,%ymm0,%xmm2
7719  DB  197,241,254,202                     ; vpaddd        %xmm2,%xmm1,%xmm1
7720  DB  196,225,249,126,200                 ; vmovq         %xmm1,%rax
7721  DB  65,137,193                          ; mov           %eax,%r9d
7722  DB  72,193,232,32                       ; shr           $0x20,%rax
7723  DB  196,195,249,22,202,1                ; vpextrq       $0x1,%xmm1,%r10
7724  DB  69,137,211                          ; mov           %r10d,%r11d
7725  DB  73,193,234,32                       ; shr           $0x20,%r10
7726  DB  197,225,254,192                     ; vpaddd        %xmm0,%xmm3,%xmm0
7727  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
7728  DB  65,137,222                          ; mov           %ebx,%r14d
7729  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
7730  DB  69,137,252                          ; mov           %r15d,%r12d
7731  DB  72,193,235,32                       ; shr           $0x20,%rbx
7732  DB  73,193,239,32                       ; shr           $0x20,%r15
7733  DB  196,129,121,110,4,176               ; vmovd         (%r8,%r14,4),%xmm0
7734  DB  196,195,121,34,4,152,1              ; vpinsrd       $0x1,(%r8,%rbx,4),%xmm0,%xmm0
7735  DB  196,131,121,34,4,160,2              ; vpinsrd       $0x2,(%r8,%r12,4),%xmm0,%xmm0
7736  DB  196,3,121,34,4,184,3                ; vpinsrd       $0x3,(%r8,%r15,4),%xmm0,%xmm8
7737  DB  196,129,121,110,4,136               ; vmovd         (%r8,%r9,4),%xmm0
7738  DB  196,195,121,34,4,128,1              ; vpinsrd       $0x1,(%r8,%rax,4),%xmm0,%xmm0
7739  DB  196,131,121,34,4,152,2              ; vpinsrd       $0x2,(%r8,%r11,4),%xmm0,%xmm0
7740  DB  196,131,121,34,28,144,3             ; vpinsrd       $0x3,(%r8,%r10,4),%xmm0,%xmm3
7741  DB  196,227,61,24,195,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm0
7742  DB  197,124,40,21,150,31,0,0            ; vmovaps       0x1f96(%rip),%ymm10        # 5840 <_sk_callback_avx+0x522>
7743  DB  196,193,124,84,194                  ; vandps        %ymm10,%ymm0,%ymm0
7744  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7745  DB  196,98,125,24,13,32,30,0,0          ; vbroadcastss  0x1e20(%rip),%ymm9        # 56dc <_sk_callback_avx+0x3be>
7746  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
7747  DB  196,193,113,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm1
7748  DB  197,233,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm2
7749  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7750  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
7751  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7752  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
7753  DB  196,193,33,114,208,16               ; vpsrld        $0x10,%xmm8,%xmm11
7754  DB  197,233,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm2
7755  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
7756  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
7757  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7758  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
7759  DB  196,193,57,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm8
7760  DB  197,225,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm3
7761  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
7762  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7763  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
7764  DB  72,173                              ; lods          %ds:(%rsi),%rax
7765  DB  91                                  ; pop           %rbx
7766  DB  65,92                               ; pop           %r12
7767  DB  65,94                               ; pop           %r14
7768  DB  65,95                               ; pop           %r15
7769  DB  255,224                             ; jmpq          *%rax
7770
7771PUBLIC _sk_store_8888_avx
7772_sk_store_8888_avx LABEL PROC
7773  DB  72,173                              ; lods          %ds:(%rsi),%rax
7774  DB  76,139,16                           ; mov           (%rax),%r10
7775  DB  196,98,125,24,5,174,29,0,0          ; vbroadcastss  0x1dae(%rip),%ymm8        # 56e0 <_sk_callback_avx+0x3c2>
7776  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
7777  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
7778  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
7779  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
7780  DB  196,193,33,114,242,8                ; vpslld        $0x8,%xmm10,%xmm11
7781  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
7782  DB  196,193,41,114,242,8                ; vpslld        $0x8,%xmm10,%xmm10
7783  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
7784  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
7785  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
7786  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
7787  DB  196,193,33,114,242,16               ; vpslld        $0x10,%xmm10,%xmm11
7788  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
7789  DB  196,193,41,114,242,16               ; vpslld        $0x10,%xmm10,%xmm10
7790  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
7791  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
7792  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
7793  DB  196,193,33,114,240,24               ; vpslld        $0x18,%xmm8,%xmm11
7794  DB  196,67,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm8
7795  DB  196,193,57,114,240,24               ; vpslld        $0x18,%xmm8,%xmm8
7796  DB  196,67,37,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm11,%ymm8
7797  DB  196,65,45,86,192                    ; vorpd         %ymm8,%ymm10,%ymm8
7798  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
7799  DB  72,133,201                          ; test          %rcx,%rcx
7800  DB  117,10                              ; jne           39c0 <_sk_store_8888_avx+0x9c>
7801  DB  196,65,124,17,4,186                 ; vmovups       %ymm8,(%r10,%rdi,4)
7802  DB  72,173                              ; lods          %ds:(%rsi),%rax
7803  DB  255,224                             ; jmpq          *%rax
7804  DB  65,137,200                          ; mov           %ecx,%r8d
7805  DB  65,128,224,7                        ; and           $0x7,%r8b
7806  DB  65,254,200                          ; dec           %r8b
7807  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7808  DB  119,236                             ; ja            39bc <_sk_store_8888_avx+0x98>
7809  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7810  DB  76,141,13,85,0,0,0                  ; lea           0x55(%rip),%r9        # 3a30 <_sk_store_8888_avx+0x10c>
7811  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7812  DB  76,1,200                            ; add           %r9,%rax
7813  DB  255,224                             ; jmpq          *%rax
7814  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
7815  DB  196,67,121,22,76,186,24,2           ; vpextrd       $0x2,%xmm9,0x18(%r10,%rdi,4)
7816  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
7817  DB  196,67,121,22,76,186,20,1           ; vpextrd       $0x1,%xmm9,0x14(%r10,%rdi,4)
7818  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
7819  DB  196,65,122,17,76,186,16             ; vmovss        %xmm9,0x10(%r10,%rdi,4)
7820  DB  196,67,121,22,68,186,12,3           ; vpextrd       $0x3,%xmm8,0xc(%r10,%rdi,4)
7821  DB  196,67,121,22,68,186,8,2            ; vpextrd       $0x2,%xmm8,0x8(%r10,%rdi,4)
7822  DB  196,67,121,22,68,186,4,1            ; vpextrd       $0x1,%xmm8,0x4(%r10,%rdi,4)
7823  DB  196,65,121,126,4,186                ; vmovd         %xmm8,(%r10,%rdi,4)
7824  DB  235,143                             ; jmp           39bc <_sk_store_8888_avx+0x98>
7825  DB  15,31,0                             ; nopl          (%rax)
7826  DB  245                                 ; cmc
7827  DB  255                                 ; (bad)
7828  DB  255                                 ; (bad)
7829  DB  255                                 ; (bad)
7830  DB  237                                 ; in            (%dx),%eax
7831  DB  255                                 ; (bad)
7832  DB  255                                 ; (bad)
7833  DB  255,229                             ; jmpq          *%rbp
7834  DB  255                                 ; (bad)
7835  DB  255                                 ; (bad)
7836  DB  255                                 ; (bad)
7837  DB  221,255                             ; (bad)
7838  DB  255                                 ; (bad)
7839  DB  255,208                             ; callq         *%rax
7840  DB  255                                 ; (bad)
7841  DB  255                                 ; (bad)
7842  DB  255,194                             ; inc           %edx
7843  DB  255                                 ; (bad)
7844  DB  255                                 ; (bad)
7845  DB  255                                 ; .byte         0xff
7846  DB  180,255                             ; mov           $0xff,%ah
7847  DB  255                                 ; (bad)
7848  DB  255                                 ; .byte         0xff
7849
7850PUBLIC _sk_load_f16_avx
7851_sk_load_f16_avx LABEL PROC
7852  DB  72,129,236,152,0,0,0                ; sub           $0x98,%rsp
7853  DB  72,173                              ; lods          %ds:(%rsi),%rax
7854  DB  72,139,0                            ; mov           (%rax),%rax
7855  DB  72,133,201                          ; test          %rcx,%rcx
7856  DB  197,252,17,124,36,96                ; vmovups       %ymm7,0x60(%rsp)
7857  DB  197,252,17,116,36,64                ; vmovups       %ymm6,0x40(%rsp)
7858  DB  197,252,17,108,36,32                ; vmovups       %ymm5,0x20(%rsp)
7859  DB  197,254,127,36,36                   ; vmovdqu       %ymm4,(%rsp)
7860  DB  15,133,143,2,0,0                    ; jne           3d07 <_sk_load_f16_avx+0x2bb>
7861  DB  197,121,16,4,248                    ; vmovupd       (%rax,%rdi,8),%xmm8
7862  DB  197,249,16,84,248,16                ; vmovupd       0x10(%rax,%rdi,8),%xmm2
7863  DB  197,249,16,76,248,32                ; vmovupd       0x20(%rax,%rdi,8),%xmm1
7864  DB  197,122,111,76,248,48               ; vmovdqu       0x30(%rax,%rdi,8),%xmm9
7865  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
7866  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
7867  DB  196,193,113,97,217                  ; vpunpcklwd    %xmm9,%xmm1,%xmm3
7868  DB  196,193,113,105,201                 ; vpunpckhwd    %xmm9,%xmm1,%xmm1
7869  DB  197,121,97,250                      ; vpunpcklwd    %xmm2,%xmm0,%xmm15
7870  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
7871  DB  197,225,97,209                      ; vpunpcklwd    %xmm1,%xmm3,%xmm2
7872  DB  197,97,105,201                      ; vpunpckhwd    %xmm1,%xmm3,%xmm9
7873  DB  197,129,108,194                     ; vpunpcklqdq   %xmm2,%xmm15,%xmm0
7874  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
7875  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
7876  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
7877  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
7878  DB  196,98,125,24,37,19,28,0,0          ; vbroadcastss  0x1c13(%rip),%ymm12        # 56e4 <_sk_callback_avx+0x3c6>
7879  DB  196,193,124,84,204                  ; vandps        %ymm12,%ymm0,%ymm1
7880  DB  197,252,87,193                      ; vxorps        %ymm1,%ymm0,%ymm0
7881  DB  196,195,125,25,198,1                ; vextractf128  $0x1,%ymm0,%xmm14
7882  DB  196,98,121,24,29,255,27,0,0         ; vbroadcastss  0x1bff(%rip),%xmm11        # 56e8 <_sk_callback_avx+0x3ca>
7883  DB  196,193,8,87,219                    ; vxorps        %xmm11,%xmm14,%xmm3
7884  DB  196,98,121,24,45,245,27,0,0         ; vbroadcastss  0x1bf5(%rip),%xmm13        # 56ec <_sk_callback_avx+0x3ce>
7885  DB  197,145,102,219                     ; vpcmpgtd      %xmm3,%xmm13,%xmm3
7886  DB  196,65,120,87,211                   ; vxorps        %xmm11,%xmm0,%xmm10
7887  DB  196,65,17,102,210                   ; vpcmpgtd      %xmm10,%xmm13,%xmm10
7888  DB  196,99,45,24,211,1                  ; vinsertf128   $0x1,%xmm3,%ymm10,%ymm10
7889  DB  197,225,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm3
7890  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
7891  DB  197,241,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm1
7892  DB  196,227,101,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm1
7893  DB  197,249,114,240,13                  ; vpslld        $0xd,%xmm0,%xmm0
7894  DB  196,193,97,114,246,13               ; vpslld        $0xd,%xmm14,%xmm3
7895  DB  196,227,125,24,195,1                ; vinsertf128   $0x1,%xmm3,%ymm0,%ymm0
7896  DB  197,252,86,193                      ; vorps         %ymm1,%ymm0,%ymm0
7897  DB  196,227,125,25,193,1                ; vextractf128  $0x1,%ymm0,%xmm1
7898  DB  196,226,121,24,29,171,27,0,0        ; vbroadcastss  0x1bab(%rip),%xmm3        # 56f0 <_sk_callback_avx+0x3d2>
7899  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
7900  DB  197,249,254,195                     ; vpaddd        %xmm3,%xmm0,%xmm0
7901  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
7902  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
7903  DB  196,195,125,74,198,160              ; vblendvps     %ymm10,%ymm14,%ymm0,%ymm0
7904  DB  197,129,109,202                     ; vpunpckhqdq   %xmm2,%xmm15,%xmm1
7905  DB  197,217,239,228                     ; vpxor         %xmm4,%xmm4,%xmm4
7906  DB  197,241,105,212                     ; vpunpckhwd    %xmm4,%xmm1,%xmm2
7907  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
7908  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7909  DB  196,193,116,84,212                  ; vandps        %ymm12,%ymm1,%ymm2
7910  DB  197,244,87,202                      ; vxorps        %ymm2,%ymm1,%ymm1
7911  DB  196,195,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm10
7912  DB  196,193,40,87,251                   ; vxorps        %xmm11,%xmm10,%xmm7
7913  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
7914  DB  196,193,112,87,243                  ; vxorps        %xmm11,%xmm1,%xmm6
7915  DB  197,145,102,246                     ; vpcmpgtd      %xmm6,%xmm13,%xmm6
7916  DB  196,227,77,24,247,1                 ; vinsertf128   $0x1,%xmm7,%ymm6,%ymm6
7917  DB  197,193,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm7
7918  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
7919  DB  197,233,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm2
7920  DB  196,227,69,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm7,%ymm2
7921  DB  197,241,114,241,13                  ; vpslld        $0xd,%xmm1,%xmm1
7922  DB  196,193,65,114,242,13               ; vpslld        $0xd,%xmm10,%xmm7
7923  DB  196,227,117,24,207,1                ; vinsertf128   $0x1,%xmm7,%ymm1,%ymm1
7924  DB  197,244,86,202                      ; vorps         %ymm2,%ymm1,%ymm1
7925  DB  196,227,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm2
7926  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
7927  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
7928  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7929  DB  196,195,117,74,206,96               ; vblendvps     %ymm6,%ymm14,%ymm1,%ymm1
7930  DB  196,193,57,108,209                  ; vpunpcklqdq   %xmm9,%xmm8,%xmm2
7931  DB  197,233,105,244                     ; vpunpckhwd    %xmm4,%xmm2,%xmm6
7932  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
7933  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
7934  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
7935  DB  196,193,108,84,244                  ; vandps        %ymm12,%ymm2,%ymm6
7936  DB  197,236,87,214                      ; vxorps        %ymm6,%ymm2,%ymm2
7937  DB  196,227,125,25,215,1                ; vextractf128  $0x1,%ymm2,%xmm7
7938  DB  196,193,64,87,235                   ; vxorps        %xmm11,%xmm7,%xmm5
7939  DB  197,145,102,237                     ; vpcmpgtd      %xmm5,%xmm13,%xmm5
7940  DB  196,193,104,87,227                  ; vxorps        %xmm11,%xmm2,%xmm4
7941  DB  197,145,102,228                     ; vpcmpgtd      %xmm4,%xmm13,%xmm4
7942  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
7943  DB  197,209,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm5
7944  DB  196,227,125,25,246,1                ; vextractf128  $0x1,%ymm6,%xmm6
7945  DB  197,201,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm6
7946  DB  196,227,85,24,238,1                 ; vinsertf128   $0x1,%xmm6,%ymm5,%ymm5
7947  DB  197,233,114,242,13                  ; vpslld        $0xd,%xmm2,%xmm2
7948  DB  197,201,114,247,13                  ; vpslld        $0xd,%xmm7,%xmm6
7949  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
7950  DB  197,236,86,213                      ; vorps         %ymm5,%ymm2,%ymm2
7951  DB  196,227,125,25,213,1                ; vextractf128  $0x1,%ymm2,%xmm5
7952  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
7953  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
7954  DB  196,227,109,24,213,1                ; vinsertf128   $0x1,%xmm5,%ymm2,%ymm2
7955  DB  196,195,109,74,214,64               ; vblendvps     %ymm4,%ymm14,%ymm2,%ymm2
7956  DB  196,193,57,109,225                  ; vpunpckhqdq   %xmm9,%xmm8,%xmm4
7957  DB  196,193,89,105,234                  ; vpunpckhwd    %xmm10,%xmm4,%xmm5
7958  DB  196,226,121,51,228                  ; vpmovzxwd     %xmm4,%xmm4
7959  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
7960  DB  196,193,92,84,236                   ; vandps        %ymm12,%ymm4,%ymm5
7961  DB  197,220,87,229                      ; vxorps        %ymm5,%ymm4,%ymm4
7962  DB  196,227,125,25,230,1                ; vextractf128  $0x1,%ymm4,%xmm6
7963  DB  196,193,72,87,251                   ; vxorps        %xmm11,%xmm6,%xmm7
7964  DB  197,17,102,199                      ; vpcmpgtd      %xmm7,%xmm13,%xmm8
7965  DB  196,193,88,87,251                   ; vxorps        %xmm11,%xmm4,%xmm7
7966  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
7967  DB  196,195,69,24,248,1                 ; vinsertf128   $0x1,%xmm8,%ymm7,%ymm7
7968  DB  197,185,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm8
7969  DB  196,227,125,25,237,1                ; vextractf128  $0x1,%ymm5,%xmm5
7970  DB  197,209,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm5
7971  DB  196,227,61,24,237,1                 ; vinsertf128   $0x1,%xmm5,%ymm8,%ymm5
7972  DB  197,217,114,244,13                  ; vpslld        $0xd,%xmm4,%xmm4
7973  DB  197,201,114,246,13                  ; vpslld        $0xd,%xmm6,%xmm6
7974  DB  196,227,93,24,230,1                 ; vinsertf128   $0x1,%xmm6,%ymm4,%ymm4
7975  DB  197,220,86,229                      ; vorps         %ymm5,%ymm4,%ymm4
7976  DB  196,227,125,25,229,1                ; vextractf128  $0x1,%ymm4,%xmm5
7977  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
7978  DB  197,217,254,219                     ; vpaddd        %xmm3,%xmm4,%xmm3
7979  DB  196,227,101,24,221,1                ; vinsertf128   $0x1,%xmm5,%ymm3,%ymm3
7980  DB  196,195,101,74,222,112              ; vblendvps     %ymm7,%ymm14,%ymm3,%ymm3
7981  DB  72,173                              ; lods          %ds:(%rsi),%rax
7982  DB  197,252,16,36,36                    ; vmovups       (%rsp),%ymm4
7983  DB  197,252,16,108,36,32                ; vmovups       0x20(%rsp),%ymm5
7984  DB  197,252,16,116,36,64                ; vmovups       0x40(%rsp),%ymm6
7985  DB  197,252,16,124,36,96                ; vmovups       0x60(%rsp),%ymm7
7986  DB  72,129,196,152,0,0,0                ; add           $0x98,%rsp
7987  DB  255,224                             ; jmpq          *%rax
7988  DB  197,123,16,4,248                    ; vmovsd        (%rax,%rdi,8),%xmm8
7989  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
7990  DB  72,131,249,1                        ; cmp           $0x1,%rcx
7991  DB  116,79                              ; je            3d66 <_sk_load_f16_avx+0x31a>
7992  DB  197,57,22,68,248,8                  ; vmovhpd       0x8(%rax,%rdi,8),%xmm8,%xmm8
7993  DB  72,131,249,3                        ; cmp           $0x3,%rcx
7994  DB  114,67                              ; jb            3d66 <_sk_load_f16_avx+0x31a>
7995  DB  197,251,16,84,248,16                ; vmovsd        0x10(%rax,%rdi,8),%xmm2
7996  DB  72,131,249,3                        ; cmp           $0x3,%rcx
7997  DB  116,68                              ; je            3d73 <_sk_load_f16_avx+0x327>
7998  DB  197,233,22,84,248,24                ; vmovhpd       0x18(%rax,%rdi,8),%xmm2,%xmm2
7999  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8000  DB  114,56                              ; jb            3d73 <_sk_load_f16_avx+0x327>
8001  DB  197,251,16,76,248,32                ; vmovsd        0x20(%rax,%rdi,8),%xmm1
8002  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8003  DB  15,132,68,253,255,255               ; je            3a8f <_sk_load_f16_avx+0x43>
8004  DB  197,241,22,76,248,40                ; vmovhpd       0x28(%rax,%rdi,8),%xmm1,%xmm1
8005  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8006  DB  15,130,52,253,255,255               ; jb            3a8f <_sk_load_f16_avx+0x43>
8007  DB  197,122,126,76,248,48               ; vmovq         0x30(%rax,%rdi,8),%xmm9
8008  DB  233,41,253,255,255                  ; jmpq          3a8f <_sk_load_f16_avx+0x43>
8009  DB  197,241,87,201                      ; vxorpd        %xmm1,%xmm1,%xmm1
8010  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
8011  DB  233,28,253,255,255                  ; jmpq          3a8f <_sk_load_f16_avx+0x43>
8012  DB  197,241,87,201                      ; vxorpd        %xmm1,%xmm1,%xmm1
8013  DB  233,19,253,255,255                  ; jmpq          3a8f <_sk_load_f16_avx+0x43>
8014
8015PUBLIC _sk_gather_f16_avx
8016_sk_gather_f16_avx LABEL PROC
8017  DB  65,87                               ; push          %r15
8018  DB  65,86                               ; push          %r14
8019  DB  65,84                               ; push          %r12
8020  DB  83                                  ; push          %rbx
8021  DB  72,129,236,152,0,0,0                ; sub           $0x98,%rsp
8022  DB  197,252,17,124,36,96                ; vmovups       %ymm7,0x60(%rsp)
8023  DB  197,252,17,116,36,64                ; vmovups       %ymm6,0x40(%rsp)
8024  DB  197,252,17,108,36,32                ; vmovups       %ymm5,0x20(%rsp)
8025  DB  197,254,127,36,36                   ; vmovdqu       %ymm4,(%rsp)
8026  DB  72,173                              ; lods          %ds:(%rsi),%rax
8027  DB  76,139,0                            ; mov           (%rax),%r8
8028  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
8029  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
8030  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
8031  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
8032  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
8033  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
8034  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
8035  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
8036  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8037  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
8038  DB  65,137,193                          ; mov           %eax,%r9d
8039  DB  72,193,232,32                       ; shr           $0x20,%rax
8040  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
8041  DB  69,137,211                          ; mov           %r10d,%r11d
8042  DB  73,193,234,32                       ; shr           $0x20,%r10
8043  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8044  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
8045  DB  65,137,222                          ; mov           %ebx,%r14d
8046  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
8047  DB  69,137,252                          ; mov           %r15d,%r12d
8048  DB  73,193,239,32                       ; shr           $0x20,%r15
8049  DB  72,193,235,32                       ; shr           $0x20,%rbx
8050  DB  196,193,122,126,4,216               ; vmovq         (%r8,%rbx,8),%xmm0
8051  DB  196,129,122,126,12,240              ; vmovq         (%r8,%r14,8),%xmm1
8052  DB  197,113,108,200                     ; vpunpcklqdq   %xmm0,%xmm1,%xmm9
8053  DB  196,129,122,126,12,248              ; vmovq         (%r8,%r15,8),%xmm1
8054  DB  196,129,122,126,20,224              ; vmovq         (%r8,%r12,8),%xmm2
8055  DB  197,233,108,201                     ; vpunpcklqdq   %xmm1,%xmm2,%xmm1
8056  DB  196,129,122,126,20,208              ; vmovq         (%r8,%r10,8),%xmm2
8057  DB  196,129,122,126,28,216              ; vmovq         (%r8,%r11,8),%xmm3
8058  DB  197,97,108,210                      ; vpunpcklqdq   %xmm2,%xmm3,%xmm10
8059  DB  196,65,122,126,4,192                ; vmovq         (%r8,%rax,8),%xmm8
8060  DB  196,129,122,126,28,200              ; vmovq         (%r8,%r9,8),%xmm3
8061  DB  196,193,97,108,216                  ; vpunpcklqdq   %xmm8,%xmm3,%xmm3
8062  DB  197,177,97,193                      ; vpunpcklwd    %xmm1,%xmm9,%xmm0
8063  DB  197,177,105,201                     ; vpunpckhwd    %xmm1,%xmm9,%xmm1
8064  DB  197,169,97,211                      ; vpunpcklwd    %xmm3,%xmm10,%xmm2
8065  DB  197,169,105,219                     ; vpunpckhwd    %xmm3,%xmm10,%xmm3
8066  DB  197,121,97,249                      ; vpunpcklwd    %xmm1,%xmm0,%xmm15
8067  DB  197,121,105,193                     ; vpunpckhwd    %xmm1,%xmm0,%xmm8
8068  DB  197,233,97,203                      ; vpunpcklwd    %xmm3,%xmm2,%xmm1
8069  DB  197,105,105,203                     ; vpunpckhwd    %xmm3,%xmm2,%xmm9
8070  DB  197,129,108,193                     ; vpunpcklqdq   %xmm1,%xmm15,%xmm0
8071  DB  197,233,239,210                     ; vpxor         %xmm2,%xmm2,%xmm2
8072  DB  197,249,105,210                     ; vpunpckhwd    %xmm2,%xmm0,%xmm2
8073  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8074  DB  196,227,125,24,194,1                ; vinsertf128   $0x1,%xmm2,%ymm0,%ymm0
8075  DB  196,98,125,24,37,107,24,0,0         ; vbroadcastss  0x186b(%rip),%ymm12        # 56f4 <_sk_callback_avx+0x3d6>
8076  DB  196,193,124,84,212                  ; vandps        %ymm12,%ymm0,%ymm2
8077  DB  197,252,87,194                      ; vxorps        %ymm2,%ymm0,%ymm0
8078  DB  196,195,125,25,198,1                ; vextractf128  $0x1,%ymm0,%xmm14
8079  DB  196,98,121,24,29,87,24,0,0          ; vbroadcastss  0x1857(%rip),%xmm11        # 56f8 <_sk_callback_avx+0x3da>
8080  DB  196,193,8,87,219                    ; vxorps        %xmm11,%xmm14,%xmm3
8081  DB  196,98,121,24,45,77,24,0,0          ; vbroadcastss  0x184d(%rip),%xmm13        # 56fc <_sk_callback_avx+0x3de>
8082  DB  197,145,102,219                     ; vpcmpgtd      %xmm3,%xmm13,%xmm3
8083  DB  196,65,120,87,211                   ; vxorps        %xmm11,%xmm0,%xmm10
8084  DB  196,65,17,102,210                   ; vpcmpgtd      %xmm10,%xmm13,%xmm10
8085  DB  196,99,45,24,211,1                  ; vinsertf128   $0x1,%xmm3,%ymm10,%ymm10
8086  DB  197,225,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm3
8087  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
8088  DB  197,233,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm2
8089  DB  196,227,101,24,210,1                ; vinsertf128   $0x1,%xmm2,%ymm3,%ymm2
8090  DB  197,249,114,240,13                  ; vpslld        $0xd,%xmm0,%xmm0
8091  DB  196,193,97,114,246,13               ; vpslld        $0xd,%xmm14,%xmm3
8092  DB  196,227,125,24,195,1                ; vinsertf128   $0x1,%xmm3,%ymm0,%ymm0
8093  DB  197,252,86,194                      ; vorps         %ymm2,%ymm0,%ymm0
8094  DB  196,227,125,25,194,1                ; vextractf128  $0x1,%ymm0,%xmm2
8095  DB  196,226,121,24,29,3,24,0,0          ; vbroadcastss  0x1803(%rip),%xmm3        # 5700 <_sk_callback_avx+0x3e2>
8096  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8097  DB  197,249,254,195                     ; vpaddd        %xmm3,%xmm0,%xmm0
8098  DB  196,227,125,24,194,1                ; vinsertf128   $0x1,%xmm2,%ymm0,%ymm0
8099  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
8100  DB  196,195,125,74,198,160              ; vblendvps     %ymm10,%ymm14,%ymm0,%ymm0
8101  DB  197,129,109,201                     ; vpunpckhqdq   %xmm1,%xmm15,%xmm1
8102  DB  197,217,239,228                     ; vpxor         %xmm4,%xmm4,%xmm4
8103  DB  197,241,105,212                     ; vpunpckhwd    %xmm4,%xmm1,%xmm2
8104  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
8105  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8106  DB  196,193,116,84,212                  ; vandps        %ymm12,%ymm1,%ymm2
8107  DB  197,244,87,202                      ; vxorps        %ymm2,%ymm1,%ymm1
8108  DB  196,195,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm10
8109  DB  196,193,40,87,251                   ; vxorps        %xmm11,%xmm10,%xmm7
8110  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
8111  DB  196,193,112,87,243                  ; vxorps        %xmm11,%xmm1,%xmm6
8112  DB  197,145,102,246                     ; vpcmpgtd      %xmm6,%xmm13,%xmm6
8113  DB  196,227,77,24,247,1                 ; vinsertf128   $0x1,%xmm7,%ymm6,%ymm6
8114  DB  197,193,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm7
8115  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
8116  DB  197,233,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm2
8117  DB  196,227,69,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm7,%ymm2
8118  DB  197,241,114,241,13                  ; vpslld        $0xd,%xmm1,%xmm1
8119  DB  196,193,65,114,242,13               ; vpslld        $0xd,%xmm10,%xmm7
8120  DB  196,227,117,24,207,1                ; vinsertf128   $0x1,%xmm7,%ymm1,%ymm1
8121  DB  197,244,86,202                      ; vorps         %ymm2,%ymm1,%ymm1
8122  DB  196,227,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm2
8123  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8124  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
8125  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8126  DB  196,195,117,74,206,96               ; vblendvps     %ymm6,%ymm14,%ymm1,%ymm1
8127  DB  196,193,57,108,209                  ; vpunpcklqdq   %xmm9,%xmm8,%xmm2
8128  DB  197,233,105,244                     ; vpunpckhwd    %xmm4,%xmm2,%xmm6
8129  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
8130  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
8131  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
8132  DB  196,193,108,84,244                  ; vandps        %ymm12,%ymm2,%ymm6
8133  DB  197,236,87,214                      ; vxorps        %ymm6,%ymm2,%ymm2
8134  DB  196,227,125,25,215,1                ; vextractf128  $0x1,%ymm2,%xmm7
8135  DB  196,193,64,87,235                   ; vxorps        %xmm11,%xmm7,%xmm5
8136  DB  197,145,102,237                     ; vpcmpgtd      %xmm5,%xmm13,%xmm5
8137  DB  196,193,104,87,227                  ; vxorps        %xmm11,%xmm2,%xmm4
8138  DB  197,145,102,228                     ; vpcmpgtd      %xmm4,%xmm13,%xmm4
8139  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
8140  DB  197,209,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm5
8141  DB  196,227,125,25,246,1                ; vextractf128  $0x1,%ymm6,%xmm6
8142  DB  197,201,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm6
8143  DB  196,227,85,24,238,1                 ; vinsertf128   $0x1,%xmm6,%ymm5,%ymm5
8144  DB  197,233,114,242,13                  ; vpslld        $0xd,%xmm2,%xmm2
8145  DB  197,201,114,247,13                  ; vpslld        $0xd,%xmm7,%xmm6
8146  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
8147  DB  197,236,86,213                      ; vorps         %ymm5,%ymm2,%ymm2
8148  DB  196,227,125,25,213,1                ; vextractf128  $0x1,%ymm2,%xmm5
8149  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
8150  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8151  DB  196,227,109,24,213,1                ; vinsertf128   $0x1,%xmm5,%ymm2,%ymm2
8152  DB  196,195,109,74,214,64               ; vblendvps     %ymm4,%ymm14,%ymm2,%ymm2
8153  DB  196,193,57,109,225                  ; vpunpckhqdq   %xmm9,%xmm8,%xmm4
8154  DB  196,193,89,105,234                  ; vpunpckhwd    %xmm10,%xmm4,%xmm5
8155  DB  196,226,121,51,228                  ; vpmovzxwd     %xmm4,%xmm4
8156  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
8157  DB  196,193,92,84,236                   ; vandps        %ymm12,%ymm4,%ymm5
8158  DB  197,220,87,229                      ; vxorps        %ymm5,%ymm4,%ymm4
8159  DB  196,227,125,25,230,1                ; vextractf128  $0x1,%ymm4,%xmm6
8160  DB  196,193,72,87,251                   ; vxorps        %xmm11,%xmm6,%xmm7
8161  DB  197,17,102,199                      ; vpcmpgtd      %xmm7,%xmm13,%xmm8
8162  DB  196,193,88,87,251                   ; vxorps        %xmm11,%xmm4,%xmm7
8163  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
8164  DB  196,195,69,24,248,1                 ; vinsertf128   $0x1,%xmm8,%ymm7,%ymm7
8165  DB  197,185,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm8
8166  DB  196,227,125,25,237,1                ; vextractf128  $0x1,%ymm5,%xmm5
8167  DB  197,209,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm5
8168  DB  196,227,61,24,237,1                 ; vinsertf128   $0x1,%xmm5,%ymm8,%ymm5
8169  DB  197,217,114,244,13                  ; vpslld        $0xd,%xmm4,%xmm4
8170  DB  197,201,114,246,13                  ; vpslld        $0xd,%xmm6,%xmm6
8171  DB  196,227,93,24,230,1                 ; vinsertf128   $0x1,%xmm6,%ymm4,%ymm4
8172  DB  197,220,86,229                      ; vorps         %ymm5,%ymm4,%ymm4
8173  DB  196,227,125,25,229,1                ; vextractf128  $0x1,%ymm4,%xmm5
8174  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
8175  DB  197,217,254,219                     ; vpaddd        %xmm3,%xmm4,%xmm3
8176  DB  196,227,101,24,221,1                ; vinsertf128   $0x1,%xmm5,%ymm3,%ymm3
8177  DB  196,195,101,74,222,112              ; vblendvps     %ymm7,%ymm14,%ymm3,%ymm3
8178  DB  72,173                              ; lods          %ds:(%rsi),%rax
8179  DB  197,252,16,36,36                    ; vmovups       (%rsp),%ymm4
8180  DB  197,252,16,108,36,32                ; vmovups       0x20(%rsp),%ymm5
8181  DB  197,252,16,116,36,64                ; vmovups       0x40(%rsp),%ymm6
8182  DB  197,252,16,124,36,96                ; vmovups       0x60(%rsp),%ymm7
8183  DB  72,129,196,152,0,0,0                ; add           $0x98,%rsp
8184  DB  91                                  ; pop           %rbx
8185  DB  65,92                               ; pop           %r12
8186  DB  65,94                               ; pop           %r14
8187  DB  65,95                               ; pop           %r15
8188  DB  255,224                             ; jmpq          *%rax
8189
8190PUBLIC _sk_store_f16_avx
8191_sk_store_f16_avx LABEL PROC
8192  DB  72,129,236,216,0,0,0                ; sub           $0xd8,%rsp
8193  DB  197,252,17,188,36,160,0,0,0         ; vmovups       %ymm7,0xa0(%rsp)
8194  DB  197,252,17,180,36,128,0,0,0         ; vmovups       %ymm6,0x80(%rsp)
8195  DB  197,252,17,108,36,96                ; vmovups       %ymm5,0x60(%rsp)
8196  DB  197,252,17,100,36,64                ; vmovups       %ymm4,0x40(%rsp)
8197  DB  196,98,125,24,13,16,22,0,0          ; vbroadcastss  0x1610(%rip),%ymm9        # 5704 <_sk_callback_avx+0x3e6>
8198  DB  196,65,124,84,209                   ; vandps        %ymm9,%ymm0,%ymm10
8199  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
8200  DB  196,65,124,87,218                   ; vxorps        %ymm10,%ymm0,%ymm11
8201  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
8202  DB  196,98,121,24,5,246,21,0,0          ; vbroadcastss  0x15f6(%rip),%xmm8        # 5708 <_sk_callback_avx+0x3ea>
8203  DB  196,65,57,102,236                   ; vpcmpgtd      %xmm12,%xmm8,%xmm13
8204  DB  196,65,57,102,243                   ; vpcmpgtd      %xmm11,%xmm8,%xmm14
8205  DB  196,67,13,24,237,1                  ; vinsertf128   $0x1,%xmm13,%ymm14,%ymm13
8206  DB  196,193,9,114,210,16                ; vpsrld        $0x10,%xmm10,%xmm14
8207  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
8208  DB  196,193,41,114,210,16               ; vpsrld        $0x10,%xmm10,%xmm10
8209  DB  196,67,13,24,242,1                  ; vinsertf128   $0x1,%xmm10,%ymm14,%ymm14
8210  DB  196,193,33,114,211,13               ; vpsrld        $0xd,%xmm11,%xmm11
8211  DB  196,193,25,114,212,13               ; vpsrld        $0xd,%xmm12,%xmm12
8212  DB  196,98,125,24,21,189,21,0,0         ; vbroadcastss  0x15bd(%rip),%ymm10        # 570c <_sk_callback_avx+0x3ee>
8213  DB  196,65,12,86,242                    ; vorps         %ymm10,%ymm14,%ymm14
8214  DB  196,67,125,25,247,1                 ; vextractf128  $0x1,%ymm14,%xmm15
8215  DB  196,65,1,254,228                    ; vpaddd        %xmm12,%xmm15,%xmm12
8216  DB  196,65,9,254,219                    ; vpaddd        %xmm11,%xmm14,%xmm11
8217  DB  196,67,37,24,228,1                  ; vinsertf128   $0x1,%xmm12,%ymm11,%ymm12
8218  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
8219  DB  196,99,29,74,224,208                ; vblendvps     %ymm13,%ymm0,%ymm12,%ymm12
8220  DB  196,65,116,84,233                   ; vandps        %ymm9,%ymm1,%ymm13
8221  DB  197,252,17,76,36,32                 ; vmovups       %ymm1,0x20(%rsp)
8222  DB  196,65,116,87,245                   ; vxorps        %ymm13,%ymm1,%ymm14
8223  DB  196,67,125,25,247,1                 ; vextractf128  $0x1,%ymm14,%xmm15
8224  DB  196,193,57,102,255                  ; vpcmpgtd      %xmm15,%xmm8,%xmm7
8225  DB  196,65,57,102,222                   ; vpcmpgtd      %xmm14,%xmm8,%xmm11
8226  DB  196,227,37,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm11,%ymm7
8227  DB  196,193,33,114,213,16               ; vpsrld        $0x10,%xmm13,%xmm11
8228  DB  196,99,125,25,238,1                 ; vextractf128  $0x1,%ymm13,%xmm6
8229  DB  197,201,114,214,16                  ; vpsrld        $0x10,%xmm6,%xmm6
8230  DB  196,227,37,24,246,1                 ; vinsertf128   $0x1,%xmm6,%ymm11,%ymm6
8231  DB  196,193,33,114,215,13               ; vpsrld        $0xd,%xmm15,%xmm11
8232  DB  196,193,76,86,242                   ; vorps         %ymm10,%ymm6,%ymm6
8233  DB  196,227,125,25,245,1                ; vextractf128  $0x1,%ymm6,%xmm5
8234  DB  196,193,81,254,235                  ; vpaddd        %xmm11,%xmm5,%xmm5
8235  DB  196,193,89,114,214,13               ; vpsrld        $0xd,%xmm14,%xmm4
8236  DB  197,201,254,228                     ; vpaddd        %xmm4,%xmm6,%xmm4
8237  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
8238  DB  196,99,93,74,232,112                ; vblendvps     %ymm7,%ymm0,%ymm4,%ymm13
8239  DB  196,193,108,84,225                  ; vandps        %ymm9,%ymm2,%ymm4
8240  DB  197,236,87,236                      ; vxorps        %ymm4,%ymm2,%ymm5
8241  DB  196,227,125,25,238,1                ; vextractf128  $0x1,%ymm5,%xmm6
8242  DB  197,185,102,254                     ; vpcmpgtd      %xmm6,%xmm8,%xmm7
8243  DB  197,57,102,221                      ; vpcmpgtd      %xmm5,%xmm8,%xmm11
8244  DB  196,227,37,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm11,%ymm7
8245  DB  197,161,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm11
8246  DB  196,227,125,25,228,1                ; vextractf128  $0x1,%ymm4,%xmm4
8247  DB  197,217,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm4
8248  DB  196,227,37,24,228,1                 ; vinsertf128   $0x1,%xmm4,%ymm11,%ymm4
8249  DB  197,201,114,214,13                  ; vpsrld        $0xd,%xmm6,%xmm6
8250  DB  196,193,92,86,226                   ; vorps         %ymm10,%ymm4,%ymm4
8251  DB  196,227,125,25,225,1                ; vextractf128  $0x1,%ymm4,%xmm1
8252  DB  197,241,254,206                     ; vpaddd        %xmm6,%xmm1,%xmm1
8253  DB  197,209,114,213,13                  ; vpsrld        $0xd,%xmm5,%xmm5
8254  DB  197,217,254,229                     ; vpaddd        %xmm5,%xmm4,%xmm4
8255  DB  196,227,93,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm4,%ymm1
8256  DB  196,99,117,74,216,112               ; vblendvps     %ymm7,%ymm0,%ymm1,%ymm11
8257  DB  196,193,100,84,225                  ; vandps        %ymm9,%ymm3,%ymm4
8258  DB  197,228,87,236                      ; vxorps        %ymm4,%ymm3,%ymm5
8259  DB  196,227,125,25,238,1                ; vextractf128  $0x1,%ymm5,%xmm6
8260  DB  197,185,102,254                     ; vpcmpgtd      %xmm6,%xmm8,%xmm7
8261  DB  197,57,102,197                      ; vpcmpgtd      %xmm5,%xmm8,%xmm8
8262  DB  196,227,61,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm8,%ymm7
8263  DB  197,185,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm8
8264  DB  196,227,125,25,228,1                ; vextractf128  $0x1,%ymm4,%xmm4
8265  DB  197,217,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm4
8266  DB  196,227,61,24,228,1                 ; vinsertf128   $0x1,%xmm4,%ymm8,%ymm4
8267  DB  196,193,92,86,226                   ; vorps         %ymm10,%ymm4,%ymm4
8268  DB  197,201,114,214,13                  ; vpsrld        $0xd,%xmm6,%xmm6
8269  DB  196,227,125,25,225,1                ; vextractf128  $0x1,%ymm4,%xmm1
8270  DB  197,241,254,206                     ; vpaddd        %xmm6,%xmm1,%xmm1
8271  DB  197,209,114,213,13                  ; vpsrld        $0xd,%xmm5,%xmm5
8272  DB  197,217,254,229                     ; vpaddd        %xmm5,%xmm4,%xmm4
8273  DB  196,227,93,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm4,%ymm1
8274  DB  196,227,117,74,200,112              ; vblendvps     %ymm7,%ymm0,%ymm1,%ymm1
8275  DB  196,99,125,25,224,1                 ; vextractf128  $0x1,%ymm12,%xmm0
8276  DB  196,226,25,43,192                   ; vpackusdw     %xmm0,%xmm12,%xmm0
8277  DB  196,99,125,25,236,1                 ; vextractf128  $0x1,%ymm13,%xmm4
8278  DB  196,226,17,43,228                   ; vpackusdw     %xmm4,%xmm13,%xmm4
8279  DB  196,99,125,25,221,1                 ; vextractf128  $0x1,%ymm11,%xmm5
8280  DB  196,226,33,43,245                   ; vpackusdw     %xmm5,%xmm11,%xmm6
8281  DB  196,227,125,25,205,1                ; vextractf128  $0x1,%ymm1,%xmm5
8282  DB  196,226,113,43,205                  ; vpackusdw     %xmm5,%xmm1,%xmm1
8283  DB  197,249,97,236                      ; vpunpcklwd    %xmm4,%xmm0,%xmm5
8284  DB  197,249,105,196                     ; vpunpckhwd    %xmm4,%xmm0,%xmm0
8285  DB  197,201,97,225                      ; vpunpcklwd    %xmm1,%xmm6,%xmm4
8286  DB  197,201,105,201                     ; vpunpckhwd    %xmm1,%xmm6,%xmm1
8287  DB  197,81,98,220                       ; vpunpckldq    %xmm4,%xmm5,%xmm11
8288  DB  197,81,106,212                      ; vpunpckhdq    %xmm4,%xmm5,%xmm10
8289  DB  197,121,98,201                      ; vpunpckldq    %xmm1,%xmm0,%xmm9
8290  DB  197,121,106,193                     ; vpunpckhdq    %xmm1,%xmm0,%xmm8
8291  DB  72,173                              ; lods          %ds:(%rsi),%rax
8292  DB  72,139,0                            ; mov           (%rax),%rax
8293  DB  72,133,201                          ; test          %rcx,%rcx
8294  DB  117,75                              ; jne           4336 <_sk_store_f16_avx+0x270>
8295  DB  197,120,17,28,248                   ; vmovups       %xmm11,(%rax,%rdi,8)
8296  DB  197,120,17,84,248,16                ; vmovups       %xmm10,0x10(%rax,%rdi,8)
8297  DB  197,120,17,76,248,32                ; vmovups       %xmm9,0x20(%rax,%rdi,8)
8298  DB  197,122,127,68,248,48               ; vmovdqu       %xmm8,0x30(%rax,%rdi,8)
8299  DB  72,173                              ; lods          %ds:(%rsi),%rax
8300  DB  197,252,16,4,36                     ; vmovups       (%rsp),%ymm0
8301  DB  197,252,16,76,36,32                 ; vmovups       0x20(%rsp),%ymm1
8302  DB  197,252,16,100,36,64                ; vmovups       0x40(%rsp),%ymm4
8303  DB  197,252,16,108,36,96                ; vmovups       0x60(%rsp),%ymm5
8304  DB  197,252,16,180,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm6
8305  DB  197,252,16,188,36,160,0,0,0         ; vmovups       0xa0(%rsp),%ymm7
8306  DB  72,129,196,216,0,0,0                ; add           $0xd8,%rsp
8307  DB  255,224                             ; jmpq          *%rax
8308  DB  197,121,214,28,248                  ; vmovq         %xmm11,(%rax,%rdi,8)
8309  DB  72,131,249,1                        ; cmp           $0x1,%rcx
8310  DB  116,193                             ; je            4302 <_sk_store_f16_avx+0x23c>
8311  DB  197,121,23,92,248,8                 ; vmovhpd       %xmm11,0x8(%rax,%rdi,8)
8312  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8313  DB  114,181                             ; jb            4302 <_sk_store_f16_avx+0x23c>
8314  DB  197,121,214,84,248,16               ; vmovq         %xmm10,0x10(%rax,%rdi,8)
8315  DB  116,173                             ; je            4302 <_sk_store_f16_avx+0x23c>
8316  DB  197,121,23,84,248,24                ; vmovhpd       %xmm10,0x18(%rax,%rdi,8)
8317  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8318  DB  114,161                             ; jb            4302 <_sk_store_f16_avx+0x23c>
8319  DB  197,121,214,76,248,32               ; vmovq         %xmm9,0x20(%rax,%rdi,8)
8320  DB  116,153                             ; je            4302 <_sk_store_f16_avx+0x23c>
8321  DB  197,121,23,76,248,40                ; vmovhpd       %xmm9,0x28(%rax,%rdi,8)
8322  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8323  DB  114,141                             ; jb            4302 <_sk_store_f16_avx+0x23c>
8324  DB  197,121,214,68,248,48               ; vmovq         %xmm8,0x30(%rax,%rdi,8)
8325  DB  235,133                             ; jmp           4302 <_sk_store_f16_avx+0x23c>
8326
8327PUBLIC _sk_load_u16_be_avx
8328_sk_load_u16_be_avx LABEL PROC
8329  DB  72,173                              ; lods          %ds:(%rsi),%rax
8330  DB  76,139,0                            ; mov           (%rax),%r8
8331  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
8332  DB  72,133,201                          ; test          %rcx,%rcx
8333  DB  15,133,253,0,0,0                    ; jne           4490 <_sk_load_u16_be_avx+0x113>
8334  DB  196,65,121,16,4,64                  ; vmovupd       (%r8,%rax,2),%xmm8
8335  DB  196,193,121,16,84,64,16             ; vmovupd       0x10(%r8,%rax,2),%xmm2
8336  DB  196,193,121,16,92,64,32             ; vmovupd       0x20(%r8,%rax,2),%xmm3
8337  DB  196,65,122,111,76,64,48             ; vmovdqu       0x30(%r8,%rax,2),%xmm9
8338  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
8339  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
8340  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
8341  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
8342  DB  197,121,97,202                      ; vpunpcklwd    %xmm2,%xmm0,%xmm9
8343  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
8344  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
8345  DB  197,113,105,227                     ; vpunpckhwd    %xmm3,%xmm1,%xmm12
8346  DB  197,177,108,194                     ; vpunpcklqdq   %xmm2,%xmm9,%xmm0
8347  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
8348  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
8349  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
8350  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
8351  DB  196,193,121,105,202                 ; vpunpckhwd    %xmm10,%xmm0,%xmm1
8352  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8353  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
8354  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8355  DB  196,98,125,24,29,12,19,0,0          ; vbroadcastss  0x130c(%rip),%ymm11        # 5710 <_sk_callback_avx+0x3f2>
8356  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
8357  DB  197,177,109,202                     ; vpunpckhqdq   %xmm2,%xmm9,%xmm1
8358  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
8359  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
8360  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
8361  DB  196,193,113,105,210                 ; vpunpckhwd    %xmm10,%xmm1,%xmm2
8362  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
8363  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8364  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8365  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
8366  DB  196,193,57,108,212                  ; vpunpcklqdq   %xmm12,%xmm8,%xmm2
8367  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
8368  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
8369  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
8370  DB  196,193,105,105,218                 ; vpunpckhwd    %xmm10,%xmm2,%xmm3
8371  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
8372  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
8373  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8374  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
8375  DB  196,193,57,109,220                  ; vpunpckhqdq   %xmm12,%xmm8,%xmm3
8376  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
8377  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
8378  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
8379  DB  196,65,97,105,194                   ; vpunpckhwd    %xmm10,%xmm3,%xmm8
8380  DB  196,226,121,51,219                  ; vpmovzxwd     %xmm3,%xmm3
8381  DB  196,195,101,24,216,1                ; vinsertf128   $0x1,%xmm8,%ymm3,%ymm3
8382  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
8383  DB  196,193,100,89,219                  ; vmulps        %ymm11,%ymm3,%ymm3
8384  DB  72,173                              ; lods          %ds:(%rsi),%rax
8385  DB  255,224                             ; jmpq          *%rax
8386  DB  196,65,123,16,4,64                  ; vmovsd        (%r8,%rax,2),%xmm8
8387  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
8388  DB  72,131,249,1                        ; cmp           $0x1,%rcx
8389  DB  116,85                              ; je            44f6 <_sk_load_u16_be_avx+0x179>
8390  DB  196,65,57,22,68,64,8                ; vmovhpd       0x8(%r8,%rax,2),%xmm8,%xmm8
8391  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8392  DB  114,72                              ; jb            44f6 <_sk_load_u16_be_avx+0x179>
8393  DB  196,193,123,16,84,64,16             ; vmovsd        0x10(%r8,%rax,2),%xmm2
8394  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8395  DB  116,72                              ; je            4503 <_sk_load_u16_be_avx+0x186>
8396  DB  196,193,105,22,84,64,24             ; vmovhpd       0x18(%r8,%rax,2),%xmm2,%xmm2
8397  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8398  DB  114,59                              ; jb            4503 <_sk_load_u16_be_avx+0x186>
8399  DB  196,193,123,16,92,64,32             ; vmovsd        0x20(%r8,%rax,2),%xmm3
8400  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8401  DB  15,132,213,254,255,255              ; je            43ae <_sk_load_u16_be_avx+0x31>
8402  DB  196,193,97,22,92,64,40              ; vmovhpd       0x28(%r8,%rax,2),%xmm3,%xmm3
8403  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8404  DB  15,130,196,254,255,255              ; jb            43ae <_sk_load_u16_be_avx+0x31>
8405  DB  196,65,122,126,76,64,48             ; vmovq         0x30(%r8,%rax,2),%xmm9
8406  DB  233,184,254,255,255                 ; jmpq          43ae <_sk_load_u16_be_avx+0x31>
8407  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
8408  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
8409  DB  233,171,254,255,255                 ; jmpq          43ae <_sk_load_u16_be_avx+0x31>
8410  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
8411  DB  233,162,254,255,255                 ; jmpq          43ae <_sk_load_u16_be_avx+0x31>
8412
8413PUBLIC _sk_load_rgb_u16_be_avx
8414_sk_load_rgb_u16_be_avx LABEL PROC
8415  DB  72,173                              ; lods          %ds:(%rsi),%rax
8416  DB  76,139,0                            ; mov           (%rax),%r8
8417  DB  72,141,4,127                        ; lea           (%rdi,%rdi,2),%rax
8418  DB  72,133,201                          ; test          %rcx,%rcx
8419  DB  15,133,243,0,0,0                    ; jne           4611 <_sk_load_rgb_u16_be_avx+0x105>
8420  DB  196,193,122,111,4,64                ; vmovdqu       (%r8,%rax,2),%xmm0
8421  DB  196,193,122,111,84,64,12            ; vmovdqu       0xc(%r8,%rax,2),%xmm2
8422  DB  196,193,122,111,76,64,24            ; vmovdqu       0x18(%r8,%rax,2),%xmm1
8423  DB  196,193,122,111,92,64,32            ; vmovdqu       0x20(%r8,%rax,2),%xmm3
8424  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
8425  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
8426  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
8427  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
8428  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
8429  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
8430  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
8431  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
8432  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
8433  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
8434  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
8435  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
8436  DB  197,113,105,211                     ; vpunpckhwd    %xmm3,%xmm1,%xmm10
8437  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
8438  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
8439  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
8440  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
8441  DB  196,65,25,239,228                   ; vpxor         %xmm12,%xmm12,%xmm12
8442  DB  196,193,121,105,204                 ; vpunpckhwd    %xmm12,%xmm0,%xmm1
8443  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8444  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
8445  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8446  DB  196,98,125,24,29,108,17,0,0         ; vbroadcastss  0x116c(%rip),%ymm11        # 5714 <_sk_callback_avx+0x3f6>
8447  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
8448  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
8449  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
8450  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
8451  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
8452  DB  196,193,113,105,212                 ; vpunpckhwd    %xmm12,%xmm1,%xmm2
8453  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
8454  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8455  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8456  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
8457  DB  196,193,49,108,210                  ; vpunpcklqdq   %xmm10,%xmm9,%xmm2
8458  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
8459  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
8460  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
8461  DB  196,193,105,105,220                 ; vpunpckhwd    %xmm12,%xmm2,%xmm3
8462  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
8463  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
8464  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8465  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
8466  DB  72,173                              ; lods          %ds:(%rsi),%rax
8467  DB  196,226,125,24,29,9,17,0,0          ; vbroadcastss  0x1109(%rip),%ymm3        # 5718 <_sk_callback_avx+0x3fa>
8468  DB  255,224                             ; jmpq          *%rax
8469  DB  196,193,121,110,4,64                ; vmovd         (%r8,%rax,2),%xmm0
8470  DB  196,193,121,196,68,64,4,2           ; vpinsrw       $0x2,0x4(%r8,%rax,2),%xmm0,%xmm0
8471  DB  72,131,249,1                        ; cmp           $0x1,%rcx
8472  DB  117,5                               ; jne           462a <_sk_load_rgb_u16_be_avx+0x11e>
8473  DB  233,40,255,255,255                  ; jmpq          4552 <_sk_load_rgb_u16_be_avx+0x46>
8474  DB  196,193,121,110,76,64,6             ; vmovd         0x6(%r8,%rax,2),%xmm1
8475  DB  196,65,113,196,68,64,10,2           ; vpinsrw       $0x2,0xa(%r8,%rax,2),%xmm1,%xmm8
8476  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8477  DB  114,26                              ; jb            4659 <_sk_load_rgb_u16_be_avx+0x14d>
8478  DB  196,193,121,110,76,64,12            ; vmovd         0xc(%r8,%rax,2),%xmm1
8479  DB  196,193,113,196,84,64,16,2          ; vpinsrw       $0x2,0x10(%r8,%rax,2),%xmm1,%xmm2
8480  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8481  DB  117,10                              ; jne           465e <_sk_load_rgb_u16_be_avx+0x152>
8482  DB  233,249,254,255,255                 ; jmpq          4552 <_sk_load_rgb_u16_be_avx+0x46>
8483  DB  233,244,254,255,255                 ; jmpq          4552 <_sk_load_rgb_u16_be_avx+0x46>
8484  DB  196,193,121,110,76,64,18            ; vmovd         0x12(%r8,%rax,2),%xmm1
8485  DB  196,65,113,196,76,64,22,2           ; vpinsrw       $0x2,0x16(%r8,%rax,2),%xmm1,%xmm9
8486  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8487  DB  114,26                              ; jb            468d <_sk_load_rgb_u16_be_avx+0x181>
8488  DB  196,193,121,110,76,64,24            ; vmovd         0x18(%r8,%rax,2),%xmm1
8489  DB  196,193,113,196,76,64,28,2          ; vpinsrw       $0x2,0x1c(%r8,%rax,2),%xmm1,%xmm1
8490  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8491  DB  117,10                              ; jne           4692 <_sk_load_rgb_u16_be_avx+0x186>
8492  DB  233,197,254,255,255                 ; jmpq          4552 <_sk_load_rgb_u16_be_avx+0x46>
8493  DB  233,192,254,255,255                 ; jmpq          4552 <_sk_load_rgb_u16_be_avx+0x46>
8494  DB  196,193,121,110,92,64,30            ; vmovd         0x1e(%r8,%rax,2),%xmm3
8495  DB  196,65,97,196,92,64,34,2            ; vpinsrw       $0x2,0x22(%r8,%rax,2),%xmm3,%xmm11
8496  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8497  DB  114,20                              ; jb            46bb <_sk_load_rgb_u16_be_avx+0x1af>
8498  DB  196,193,121,110,92,64,36            ; vmovd         0x24(%r8,%rax,2),%xmm3
8499  DB  196,193,97,196,92,64,40,2           ; vpinsrw       $0x2,0x28(%r8,%rax,2),%xmm3,%xmm3
8500  DB  233,151,254,255,255                 ; jmpq          4552 <_sk_load_rgb_u16_be_avx+0x46>
8501  DB  233,146,254,255,255                 ; jmpq          4552 <_sk_load_rgb_u16_be_avx+0x46>
8502
8503PUBLIC _sk_store_u16_be_avx
8504_sk_store_u16_be_avx LABEL PROC
8505  DB  72,173                              ; lods          %ds:(%rsi),%rax
8506  DB  76,139,0                            ; mov           (%rax),%r8
8507  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
8508  DB  196,98,125,24,5,70,16,0,0           ; vbroadcastss  0x1046(%rip),%ymm8        # 571c <_sk_callback_avx+0x3fe>
8509  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
8510  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
8511  DB  196,67,125,25,202,1                 ; vextractf128  $0x1,%ymm9,%xmm10
8512  DB  196,66,49,43,202                    ; vpackusdw     %xmm10,%xmm9,%xmm9
8513  DB  196,193,41,113,241,8                ; vpsllw        $0x8,%xmm9,%xmm10
8514  DB  196,193,49,113,209,8                ; vpsrlw        $0x8,%xmm9,%xmm9
8515  DB  196,65,41,235,201                   ; vpor          %xmm9,%xmm10,%xmm9
8516  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
8517  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
8518  DB  196,67,125,25,211,1                 ; vextractf128  $0x1,%ymm10,%xmm11
8519  DB  196,66,41,43,211                    ; vpackusdw     %xmm11,%xmm10,%xmm10
8520  DB  196,193,33,113,242,8                ; vpsllw        $0x8,%xmm10,%xmm11
8521  DB  196,193,41,113,210,8                ; vpsrlw        $0x8,%xmm10,%xmm10
8522  DB  196,65,33,235,210                   ; vpor          %xmm10,%xmm11,%xmm10
8523  DB  196,65,108,89,216                   ; vmulps        %ymm8,%ymm2,%ymm11
8524  DB  196,65,125,91,219                   ; vcvtps2dq     %ymm11,%ymm11
8525  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
8526  DB  196,66,33,43,220                    ; vpackusdw     %xmm12,%xmm11,%xmm11
8527  DB  196,193,25,113,243,8                ; vpsllw        $0x8,%xmm11,%xmm12
8528  DB  196,193,33,113,211,8                ; vpsrlw        $0x8,%xmm11,%xmm11
8529  DB  196,65,25,235,219                   ; vpor          %xmm11,%xmm12,%xmm11
8530  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
8531  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
8532  DB  196,67,125,25,196,1                 ; vextractf128  $0x1,%ymm8,%xmm12
8533  DB  196,66,57,43,196                    ; vpackusdw     %xmm12,%xmm8,%xmm8
8534  DB  196,193,25,113,240,8                ; vpsllw        $0x8,%xmm8,%xmm12
8535  DB  196,193,57,113,208,8                ; vpsrlw        $0x8,%xmm8,%xmm8
8536  DB  196,65,25,235,192                   ; vpor          %xmm8,%xmm12,%xmm8
8537  DB  196,65,49,97,226                    ; vpunpcklwd    %xmm10,%xmm9,%xmm12
8538  DB  196,65,49,105,234                   ; vpunpckhwd    %xmm10,%xmm9,%xmm13
8539  DB  196,65,33,97,200                    ; vpunpcklwd    %xmm8,%xmm11,%xmm9
8540  DB  196,65,33,105,192                   ; vpunpckhwd    %xmm8,%xmm11,%xmm8
8541  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
8542  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
8543  DB  196,65,17,98,200                    ; vpunpckldq    %xmm8,%xmm13,%xmm9
8544  DB  196,65,17,106,192                   ; vpunpckhdq    %xmm8,%xmm13,%xmm8
8545  DB  72,133,201                          ; test          %rcx,%rcx
8546  DB  117,31                              ; jne           47ba <_sk_store_u16_be_avx+0xfa>
8547  DB  196,65,120,17,28,64                 ; vmovups       %xmm11,(%r8,%rax,2)
8548  DB  196,65,120,17,84,64,16              ; vmovups       %xmm10,0x10(%r8,%rax,2)
8549  DB  196,65,120,17,76,64,32              ; vmovups       %xmm9,0x20(%r8,%rax,2)
8550  DB  196,65,122,127,68,64,48             ; vmovdqu       %xmm8,0x30(%r8,%rax,2)
8551  DB  72,173                              ; lods          %ds:(%rsi),%rax
8552  DB  255,224                             ; jmpq          *%rax
8553  DB  196,65,121,214,28,64                ; vmovq         %xmm11,(%r8,%rax,2)
8554  DB  72,131,249,1                        ; cmp           $0x1,%rcx
8555  DB  116,240                             ; je            47b6 <_sk_store_u16_be_avx+0xf6>
8556  DB  196,65,121,23,92,64,8               ; vmovhpd       %xmm11,0x8(%r8,%rax,2)
8557  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8558  DB  114,227                             ; jb            47b6 <_sk_store_u16_be_avx+0xf6>
8559  DB  196,65,121,214,84,64,16             ; vmovq         %xmm10,0x10(%r8,%rax,2)
8560  DB  116,218                             ; je            47b6 <_sk_store_u16_be_avx+0xf6>
8561  DB  196,65,121,23,84,64,24              ; vmovhpd       %xmm10,0x18(%r8,%rax,2)
8562  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8563  DB  114,205                             ; jb            47b6 <_sk_store_u16_be_avx+0xf6>
8564  DB  196,65,121,214,76,64,32             ; vmovq         %xmm9,0x20(%r8,%rax,2)
8565  DB  116,196                             ; je            47b6 <_sk_store_u16_be_avx+0xf6>
8566  DB  196,65,121,23,76,64,40              ; vmovhpd       %xmm9,0x28(%r8,%rax,2)
8567  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8568  DB  114,183                             ; jb            47b6 <_sk_store_u16_be_avx+0xf6>
8569  DB  196,65,121,214,68,64,48             ; vmovq         %xmm8,0x30(%r8,%rax,2)
8570  DB  235,174                             ; jmp           47b6 <_sk_store_u16_be_avx+0xf6>
8571
8572PUBLIC _sk_load_f32_avx
8573_sk_load_f32_avx LABEL PROC
8574  DB  72,173                              ; lods          %ds:(%rsi),%rax
8575  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8576  DB  119,110                             ; ja            487e <_sk_load_f32_avx+0x76>
8577  DB  76,139,0                            ; mov           (%rax),%r8
8578  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
8579  DB  76,141,21,134,0,0,0                 ; lea           0x86(%rip),%r10        # 48a8 <_sk_load_f32_avx+0xa0>
8580  DB  73,99,4,138                         ; movslq        (%r10,%rcx,4),%rax
8581  DB  76,1,208                            ; add           %r10,%rax
8582  DB  255,224                             ; jmpq          *%rax
8583  DB  196,3,125,24,68,136,112,1           ; vinsertf128   $0x1,0x70(%r8,%r9,4),%ymm0,%ymm8
8584  DB  196,131,125,24,92,136,96,1          ; vinsertf128   $0x1,0x60(%r8,%r9,4),%ymm0,%ymm3
8585  DB  196,131,125,24,76,136,80,1          ; vinsertf128   $0x1,0x50(%r8,%r9,4),%ymm0,%ymm1
8586  DB  196,131,125,24,84,136,64,1          ; vinsertf128   $0x1,0x40(%r8,%r9,4),%ymm0,%ymm2
8587  DB  196,129,121,16,68,136,48            ; vmovupd       0x30(%r8,%r9,4),%xmm0
8588  DB  196,195,125,13,192,12               ; vblendpd      $0xc,%ymm8,%ymm0,%ymm0
8589  DB  196,1,121,16,68,136,32              ; vmovupd       0x20(%r8,%r9,4),%xmm8
8590  DB  196,99,61,13,203,12                 ; vblendpd      $0xc,%ymm3,%ymm8,%ymm9
8591  DB  196,129,121,16,92,136,16            ; vmovupd       0x10(%r8,%r9,4),%xmm3
8592  DB  196,99,101,13,209,12                ; vblendpd      $0xc,%ymm1,%ymm3,%ymm10
8593  DB  196,129,121,16,12,136               ; vmovupd       (%r8,%r9,4),%xmm1
8594  DB  196,227,117,13,202,12               ; vblendpd      $0xc,%ymm2,%ymm1,%ymm1
8595  DB  196,193,116,20,210                  ; vunpcklps     %ymm10,%ymm1,%ymm2
8596  DB  196,193,116,21,218                  ; vunpckhps     %ymm10,%ymm1,%ymm3
8597  DB  197,180,20,200                      ; vunpcklps     %ymm0,%ymm9,%ymm1
8598  DB  197,52,21,192                       ; vunpckhps     %ymm0,%ymm9,%ymm8
8599  DB  197,237,20,193                      ; vunpcklpd     %ymm1,%ymm2,%ymm0
8600  DB  197,237,21,201                      ; vunpckhpd     %ymm1,%ymm2,%ymm1
8601  DB  196,193,101,20,208                  ; vunpcklpd     %ymm8,%ymm3,%ymm2
8602  DB  196,193,101,21,216                  ; vunpckhpd     %ymm8,%ymm3,%ymm3
8603  DB  72,173                              ; lods          %ds:(%rsi),%rax
8604  DB  255,224                             ; jmpq          *%rax
8605  DB  102,144                             ; xchg          %ax,%ax
8606  DB  131,255,255                         ; cmp           $0xffffffff,%edi
8607  DB  255,202                             ; dec           %edx
8608  DB  255                                 ; (bad)
8609  DB  255                                 ; (bad)
8610  DB  255                                 ; (bad)
8611  DB  189,255,255,255,176                 ; mov           $0xb0ffffff,%ebp
8612  DB  255                                 ; (bad)
8613  DB  255                                 ; (bad)
8614  DB  255,163,255,255,255,155             ; jmpq          *-0x64000001(%rbx)
8615  DB  255                                 ; (bad)
8616  DB  255                                 ; (bad)
8617  DB  255,147,255,255,255,139             ; callq         *-0x74000001(%rbx)
8618  DB  255                                 ; (bad)
8619  DB  255                                 ; (bad)
8620  DB  255                                 ; .byte         0xff
8621
8622PUBLIC _sk_store_f32_avx
8623_sk_store_f32_avx LABEL PROC
8624  DB  72,173                              ; lods          %ds:(%rsi),%rax
8625  DB  76,139,0                            ; mov           (%rax),%r8
8626  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
8627  DB  197,124,20,193                      ; vunpcklps     %ymm1,%ymm0,%ymm8
8628  DB  197,124,21,217                      ; vunpckhps     %ymm1,%ymm0,%ymm11
8629  DB  197,108,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm9
8630  DB  197,108,21,227                      ; vunpckhps     %ymm3,%ymm2,%ymm12
8631  DB  196,65,61,20,209                    ; vunpcklpd     %ymm9,%ymm8,%ymm10
8632  DB  196,65,61,21,201                    ; vunpckhpd     %ymm9,%ymm8,%ymm9
8633  DB  196,65,37,20,196                    ; vunpcklpd     %ymm12,%ymm11,%ymm8
8634  DB  196,65,37,21,220                    ; vunpckhpd     %ymm12,%ymm11,%ymm11
8635  DB  72,133,201                          ; test          %rcx,%rcx
8636  DB  117,55                              ; jne           4935 <_sk_store_f32_avx+0x6d>
8637  DB  196,67,45,24,225,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm12
8638  DB  196,67,61,24,235,1                  ; vinsertf128   $0x1,%xmm11,%ymm8,%ymm13
8639  DB  196,67,45,6,201,49                  ; vperm2f128    $0x31,%ymm9,%ymm10,%ymm9
8640  DB  196,67,61,6,195,49                  ; vperm2f128    $0x31,%ymm11,%ymm8,%ymm8
8641  DB  196,65,125,17,36,128                ; vmovupd       %ymm12,(%r8,%rax,4)
8642  DB  196,65,125,17,108,128,32            ; vmovupd       %ymm13,0x20(%r8,%rax,4)
8643  DB  196,65,125,17,76,128,64             ; vmovupd       %ymm9,0x40(%r8,%rax,4)
8644  DB  196,65,125,17,68,128,96             ; vmovupd       %ymm8,0x60(%r8,%rax,4)
8645  DB  72,173                              ; lods          %ds:(%rsi),%rax
8646  DB  255,224                             ; jmpq          *%rax
8647  DB  196,65,121,17,20,128                ; vmovupd       %xmm10,(%r8,%rax,4)
8648  DB  72,131,249,1                        ; cmp           $0x1,%rcx
8649  DB  116,240                             ; je            4931 <_sk_store_f32_avx+0x69>
8650  DB  196,65,121,17,76,128,16             ; vmovupd       %xmm9,0x10(%r8,%rax,4)
8651  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8652  DB  114,227                             ; jb            4931 <_sk_store_f32_avx+0x69>
8653  DB  196,65,121,17,68,128,32             ; vmovupd       %xmm8,0x20(%r8,%rax,4)
8654  DB  116,218                             ; je            4931 <_sk_store_f32_avx+0x69>
8655  DB  196,65,121,17,92,128,48             ; vmovupd       %xmm11,0x30(%r8,%rax,4)
8656  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8657  DB  114,205                             ; jb            4931 <_sk_store_f32_avx+0x69>
8658  DB  196,67,125,25,84,128,64,1           ; vextractf128  $0x1,%ymm10,0x40(%r8,%rax,4)
8659  DB  116,195                             ; je            4931 <_sk_store_f32_avx+0x69>
8660  DB  196,67,125,25,76,128,80,1           ; vextractf128  $0x1,%ymm9,0x50(%r8,%rax,4)
8661  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8662  DB  114,181                             ; jb            4931 <_sk_store_f32_avx+0x69>
8663  DB  196,67,125,25,68,128,96,1           ; vextractf128  $0x1,%ymm8,0x60(%r8,%rax,4)
8664  DB  235,171                             ; jmp           4931 <_sk_store_f32_avx+0x69>
8665
8666PUBLIC _sk_clamp_x_avx
8667_sk_clamp_x_avx LABEL PROC
8668  DB  72,173                              ; lods          %ds:(%rsi),%rax
8669  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8670  DB  197,60,95,200                       ; vmaxps        %ymm0,%ymm8,%ymm9
8671  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8672  DB  196,99,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm0
8673  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8674  DB  196,193,121,254,194                 ; vpaddd        %xmm10,%xmm0,%xmm0
8675  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
8676  DB  196,227,61,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm8,%ymm0
8677  DB  197,180,93,192                      ; vminps        %ymm0,%ymm9,%ymm0
8678  DB  72,173                              ; lods          %ds:(%rsi),%rax
8679  DB  255,224                             ; jmpq          *%rax
8680
8681PUBLIC _sk_clamp_y_avx
8682_sk_clamp_y_avx LABEL PROC
8683  DB  72,173                              ; lods          %ds:(%rsi),%rax
8684  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8685  DB  197,60,95,201                       ; vmaxps        %ymm1,%ymm8,%ymm9
8686  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8687  DB  196,99,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm1
8688  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8689  DB  196,193,113,254,202                 ; vpaddd        %xmm10,%xmm1,%xmm1
8690  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
8691  DB  196,227,61,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm8,%ymm1
8692  DB  197,180,93,201                      ; vminps        %ymm1,%ymm9,%ymm1
8693  DB  72,173                              ; lods          %ds:(%rsi),%rax
8694  DB  255,224                             ; jmpq          *%rax
8695
8696PUBLIC _sk_repeat_x_avx
8697_sk_repeat_x_avx LABEL PROC
8698  DB  72,173                              ; lods          %ds:(%rsi),%rax
8699  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8700  DB  196,65,124,94,200                   ; vdivps        %ymm8,%ymm0,%ymm9
8701  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
8702  DB  196,65,52,89,200                    ; vmulps        %ymm8,%ymm9,%ymm9
8703  DB  196,65,124,92,201                   ; vsubps        %ymm9,%ymm0,%ymm9
8704  DB  196,99,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm0
8705  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8706  DB  196,193,121,254,194                 ; vpaddd        %xmm10,%xmm0,%xmm0
8707  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
8708  DB  196,227,61,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm8,%ymm0
8709  DB  197,180,93,192                      ; vminps        %ymm0,%ymm9,%ymm0
8710  DB  72,173                              ; lods          %ds:(%rsi),%rax
8711  DB  255,224                             ; jmpq          *%rax
8712
8713PUBLIC _sk_repeat_y_avx
8714_sk_repeat_y_avx LABEL PROC
8715  DB  72,173                              ; lods          %ds:(%rsi),%rax
8716  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8717  DB  196,65,116,94,200                   ; vdivps        %ymm8,%ymm1,%ymm9
8718  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
8719  DB  196,65,52,89,200                    ; vmulps        %ymm8,%ymm9,%ymm9
8720  DB  196,65,116,92,201                   ; vsubps        %ymm9,%ymm1,%ymm9
8721  DB  196,99,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm1
8722  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8723  DB  196,193,113,254,202                 ; vpaddd        %xmm10,%xmm1,%xmm1
8724  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
8725  DB  196,227,61,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm8,%ymm1
8726  DB  197,180,93,201                      ; vminps        %ymm1,%ymm9,%ymm1
8727  DB  72,173                              ; lods          %ds:(%rsi),%rax
8728  DB  255,224                             ; jmpq          *%rax
8729
8730PUBLIC _sk_mirror_x_avx
8731_sk_mirror_x_avx LABEL PROC
8732  DB  72,173                              ; lods          %ds:(%rsi),%rax
8733  DB  197,121,110,0                       ; vmovd         (%rax),%xmm8
8734  DB  196,65,121,112,200,0                ; vpshufd       $0x0,%xmm8,%xmm9
8735  DB  196,67,53,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm9,%ymm9
8736  DB  196,65,124,92,209                   ; vsubps        %ymm9,%ymm0,%ymm10
8737  DB  196,193,58,88,192                   ; vaddss        %xmm8,%xmm8,%xmm0
8738  DB  196,227,121,4,192,0                 ; vpermilps     $0x0,%xmm0,%xmm0
8739  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
8740  DB  197,44,94,192                       ; vdivps        %ymm0,%ymm10,%ymm8
8741  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
8742  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
8743  DB  197,172,92,192                      ; vsubps        %ymm0,%ymm10,%ymm0
8744  DB  196,193,124,92,193                  ; vsubps        %ymm9,%ymm0,%ymm0
8745  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8746  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
8747  DB  197,60,84,192                       ; vandps        %ymm0,%ymm8,%ymm8
8748  DB  196,99,125,25,200,1                 ; vextractf128  $0x1,%ymm9,%xmm0
8749  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8750  DB  196,193,121,254,194                 ; vpaddd        %xmm10,%xmm0,%xmm0
8751  DB  196,65,49,254,202                   ; vpaddd        %xmm10,%xmm9,%xmm9
8752  DB  196,227,53,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm9,%ymm0
8753  DB  197,188,93,192                      ; vminps        %ymm0,%ymm8,%ymm0
8754  DB  72,173                              ; lods          %ds:(%rsi),%rax
8755  DB  255,224                             ; jmpq          *%rax
8756
8757PUBLIC _sk_mirror_y_avx
8758_sk_mirror_y_avx LABEL PROC
8759  DB  72,173                              ; lods          %ds:(%rsi),%rax
8760  DB  197,121,110,0                       ; vmovd         (%rax),%xmm8
8761  DB  196,65,121,112,200,0                ; vpshufd       $0x0,%xmm8,%xmm9
8762  DB  196,67,53,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm9,%ymm9
8763  DB  196,65,116,92,209                   ; vsubps        %ymm9,%ymm1,%ymm10
8764  DB  196,193,58,88,200                   ; vaddss        %xmm8,%xmm8,%xmm1
8765  DB  196,227,121,4,201,0                 ; vpermilps     $0x0,%xmm1,%xmm1
8766  DB  196,227,117,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm1,%ymm1
8767  DB  197,44,94,193                       ; vdivps        %ymm1,%ymm10,%ymm8
8768  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
8769  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
8770  DB  197,172,92,201                      ; vsubps        %ymm1,%ymm10,%ymm1
8771  DB  196,193,116,92,201                  ; vsubps        %ymm9,%ymm1,%ymm1
8772  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8773  DB  197,60,92,193                       ; vsubps        %ymm1,%ymm8,%ymm8
8774  DB  197,60,84,193                       ; vandps        %ymm1,%ymm8,%ymm8
8775  DB  196,99,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm1
8776  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8777  DB  196,193,113,254,202                 ; vpaddd        %xmm10,%xmm1,%xmm1
8778  DB  196,65,49,254,202                   ; vpaddd        %xmm10,%xmm9,%xmm9
8779  DB  196,227,53,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm9,%ymm1
8780  DB  197,188,93,201                      ; vminps        %ymm1,%ymm8,%ymm1
8781  DB  72,173                              ; lods          %ds:(%rsi),%rax
8782  DB  255,224                             ; jmpq          *%rax
8783
8784PUBLIC _sk_luminance_to_alpha_avx
8785_sk_luminance_to_alpha_avx LABEL PROC
8786  DB  196,226,125,24,29,207,11,0,0        ; vbroadcastss  0xbcf(%rip),%ymm3        # 5720 <_sk_callback_avx+0x402>
8787  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
8788  DB  196,226,125,24,29,198,11,0,0        ; vbroadcastss  0xbc6(%rip),%ymm3        # 5724 <_sk_callback_avx+0x406>
8789  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
8790  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
8791  DB  196,226,125,24,13,185,11,0,0        ; vbroadcastss  0xbb9(%rip),%ymm1        # 5728 <_sk_callback_avx+0x40a>
8792  DB  197,236,89,201                      ; vmulps        %ymm1,%ymm2,%ymm1
8793  DB  197,252,88,217                      ; vaddps        %ymm1,%ymm0,%ymm3
8794  DB  72,173                              ; lods          %ds:(%rsi),%rax
8795  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
8796  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
8797  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
8798  DB  255,224                             ; jmpq          *%rax
8799
8800PUBLIC _sk_matrix_2x3_avx
8801_sk_matrix_2x3_avx LABEL PROC
8802  DB  72,173                              ; lods          %ds:(%rsi),%rax
8803  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8804  DB  196,98,125,24,72,8                  ; vbroadcastss  0x8(%rax),%ymm9
8805  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
8806  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
8807  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8808  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
8809  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
8810  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
8811  DB  196,98,125,24,80,12                 ; vbroadcastss  0xc(%rax),%ymm10
8812  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
8813  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
8814  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
8815  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
8816  DB  197,252,88,201                      ; vaddps        %ymm1,%ymm0,%ymm1
8817  DB  72,173                              ; lods          %ds:(%rsi),%rax
8818  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
8819  DB  255,224                             ; jmpq          *%rax
8820
8821PUBLIC _sk_matrix_3x4_avx
8822_sk_matrix_3x4_avx LABEL PROC
8823  DB  72,173                              ; lods          %ds:(%rsi),%rax
8824  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8825  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
8826  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
8827  DB  196,98,125,24,88,36                 ; vbroadcastss  0x24(%rax),%ymm11
8828  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
8829  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
8830  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
8831  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8832  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
8833  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
8834  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
8835  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
8836  DB  196,98,125,24,88,28                 ; vbroadcastss  0x1c(%rax),%ymm11
8837  DB  196,98,125,24,96,40                 ; vbroadcastss  0x28(%rax),%ymm12
8838  DB  197,36,89,218                       ; vmulps        %ymm2,%ymm11,%ymm11
8839  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
8840  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
8841  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
8842  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
8843  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8844  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
8845  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
8846  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
8847  DB  196,98,125,24,104,44                ; vbroadcastss  0x2c(%rax),%ymm13
8848  DB  197,156,89,210                      ; vmulps        %ymm2,%ymm12,%ymm2
8849  DB  196,193,108,88,213                  ; vaddps        %ymm13,%ymm2,%ymm2
8850  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
8851  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
8852  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
8853  DB  197,252,88,209                      ; vaddps        %ymm1,%ymm0,%ymm2
8854  DB  72,173                              ; lods          %ds:(%rsi),%rax
8855  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
8856  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
8857  DB  255,224                             ; jmpq          *%rax
8858
8859PUBLIC _sk_matrix_4x5_avx
8860_sk_matrix_4x5_avx LABEL PROC
8861  DB  72,173                              ; lods          %ds:(%rsi),%rax
8862  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8863  DB  196,98,125,24,72,16                 ; vbroadcastss  0x10(%rax),%ymm9
8864  DB  196,98,125,24,80,32                 ; vbroadcastss  0x20(%rax),%ymm10
8865  DB  196,98,125,24,88,48                 ; vbroadcastss  0x30(%rax),%ymm11
8866  DB  196,98,125,24,96,64                 ; vbroadcastss  0x40(%rax),%ymm12
8867  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
8868  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
8869  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
8870  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
8871  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
8872  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8873  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
8874  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
8875  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
8876  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
8877  DB  196,98,125,24,88,36                 ; vbroadcastss  0x24(%rax),%ymm11
8878  DB  196,98,125,24,96,52                 ; vbroadcastss  0x34(%rax),%ymm12
8879  DB  196,98,125,24,104,68                ; vbroadcastss  0x44(%rax),%ymm13
8880  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
8881  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
8882  DB  197,36,89,218                       ; vmulps        %ymm2,%ymm11,%ymm11
8883  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
8884  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
8885  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
8886  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
8887  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8888  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
8889  DB  196,98,125,24,88,24                 ; vbroadcastss  0x18(%rax),%ymm11
8890  DB  196,98,125,24,96,40                 ; vbroadcastss  0x28(%rax),%ymm12
8891  DB  196,98,125,24,104,56                ; vbroadcastss  0x38(%rax),%ymm13
8892  DB  196,98,125,24,112,72                ; vbroadcastss  0x48(%rax),%ymm14
8893  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
8894  DB  196,65,20,88,238                    ; vaddps        %ymm14,%ymm13,%ymm13
8895  DB  197,28,89,226                       ; vmulps        %ymm2,%ymm12,%ymm12
8896  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
8897  DB  197,36,89,217                       ; vmulps        %ymm1,%ymm11,%ymm11
8898  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
8899  DB  197,44,89,208                       ; vmulps        %ymm0,%ymm10,%ymm10
8900  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
8901  DB  196,98,125,24,88,12                 ; vbroadcastss  0xc(%rax),%ymm11
8902  DB  196,98,125,24,96,28                 ; vbroadcastss  0x1c(%rax),%ymm12
8903  DB  196,98,125,24,104,44                ; vbroadcastss  0x2c(%rax),%ymm13
8904  DB  196,98,125,24,112,60                ; vbroadcastss  0x3c(%rax),%ymm14
8905  DB  196,98,125,24,120,76                ; vbroadcastss  0x4c(%rax),%ymm15
8906  DB  197,140,89,219                      ; vmulps        %ymm3,%ymm14,%ymm3
8907  DB  196,193,100,88,223                  ; vaddps        %ymm15,%ymm3,%ymm3
8908  DB  197,148,89,210                      ; vmulps        %ymm2,%ymm13,%ymm2
8909  DB  197,236,88,211                      ; vaddps        %ymm3,%ymm2,%ymm2
8910  DB  197,156,89,201                      ; vmulps        %ymm1,%ymm12,%ymm1
8911  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
8912  DB  197,164,89,192                      ; vmulps        %ymm0,%ymm11,%ymm0
8913  DB  197,252,88,217                      ; vaddps        %ymm1,%ymm0,%ymm3
8914  DB  72,173                              ; lods          %ds:(%rsi),%rax
8915  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
8916  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
8917  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
8918  DB  255,224                             ; jmpq          *%rax
8919
8920PUBLIC _sk_matrix_perspective_avx
8921_sk_matrix_perspective_avx LABEL PROC
8922  DB  72,173                              ; lods          %ds:(%rsi),%rax
8923  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8924  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
8925  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
8926  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
8927  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8928  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
8929  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
8930  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
8931  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
8932  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
8933  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
8934  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
8935  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
8936  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8937  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
8938  DB  196,98,125,24,88,28                 ; vbroadcastss  0x1c(%rax),%ymm11
8939  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
8940  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
8941  DB  196,193,116,88,204                  ; vaddps        %ymm12,%ymm1,%ymm1
8942  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
8943  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
8944  DB  197,252,83,200                      ; vrcpps        %ymm0,%ymm1
8945  DB  197,188,89,193                      ; vmulps        %ymm1,%ymm8,%ymm0
8946  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
8947  DB  72,173                              ; lods          %ds:(%rsi),%rax
8948  DB  255,224                             ; jmpq          *%rax
8949
8950PUBLIC _sk_linear_gradient_avx
8951_sk_linear_gradient_avx LABEL PROC
8952  DB  72,173                              ; lods          %ds:(%rsi),%rax
8953  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
8954  DB  196,226,125,24,72,20                ; vbroadcastss  0x14(%rax),%ymm1
8955  DB  196,226,125,24,80,24                ; vbroadcastss  0x18(%rax),%ymm2
8956  DB  196,226,125,24,88,28                ; vbroadcastss  0x1c(%rax),%ymm3
8957  DB  76,139,0                            ; mov           (%rax),%r8
8958  DB  77,133,192                          ; test          %r8,%r8
8959  DB  15,132,146,0,0,0                    ; je            4ec5 <_sk_linear_gradient_avx+0xb8>
8960  DB  72,139,64,8                         ; mov           0x8(%rax),%rax
8961  DB  72,131,192,32                       ; add           $0x20,%rax
8962  DB  196,65,28,87,228                    ; vxorps        %ymm12,%ymm12,%ymm12
8963  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
8964  DB  196,65,44,87,210                    ; vxorps        %ymm10,%ymm10,%ymm10
8965  DB  196,65,36,87,219                    ; vxorps        %ymm11,%ymm11,%ymm11
8966  DB  196,98,125,24,104,224               ; vbroadcastss  -0x20(%rax),%ymm13
8967  DB  196,65,124,194,237,1                ; vcmpltps      %ymm13,%ymm0,%ymm13
8968  DB  196,98,125,24,112,228               ; vbroadcastss  -0x1c(%rax),%ymm14
8969  DB  196,67,13,74,228,208                ; vblendvps     %ymm13,%ymm12,%ymm14,%ymm12
8970  DB  196,98,125,24,112,232               ; vbroadcastss  -0x18(%rax),%ymm14
8971  DB  196,67,13,74,219,208                ; vblendvps     %ymm13,%ymm11,%ymm14,%ymm11
8972  DB  196,98,125,24,112,236               ; vbroadcastss  -0x14(%rax),%ymm14
8973  DB  196,67,13,74,210,208                ; vblendvps     %ymm13,%ymm10,%ymm14,%ymm10
8974  DB  196,98,125,24,112,240               ; vbroadcastss  -0x10(%rax),%ymm14
8975  DB  196,67,13,74,201,208                ; vblendvps     %ymm13,%ymm9,%ymm14,%ymm9
8976  DB  196,98,125,24,112,244               ; vbroadcastss  -0xc(%rax),%ymm14
8977  DB  196,67,13,74,192,208                ; vblendvps     %ymm13,%ymm8,%ymm14,%ymm8
8978  DB  196,98,125,24,112,248               ; vbroadcastss  -0x8(%rax),%ymm14
8979  DB  196,227,13,74,201,208               ; vblendvps     %ymm13,%ymm1,%ymm14,%ymm1
8980  DB  196,98,125,24,112,252               ; vbroadcastss  -0x4(%rax),%ymm14
8981  DB  196,227,13,74,210,208               ; vblendvps     %ymm13,%ymm2,%ymm14,%ymm2
8982  DB  196,98,125,24,48                    ; vbroadcastss  (%rax),%ymm14
8983  DB  196,227,13,74,219,208               ; vblendvps     %ymm13,%ymm3,%ymm14,%ymm3
8984  DB  72,131,192,36                       ; add           $0x24,%rax
8985  DB  73,255,200                          ; dec           %r8
8986  DB  117,140                             ; jne           4e4f <_sk_linear_gradient_avx+0x42>
8987  DB  235,20                              ; jmp           4ed9 <_sk_linear_gradient_avx+0xcc>
8988  DB  196,65,36,87,219                    ; vxorps        %ymm11,%ymm11,%ymm11
8989  DB  196,65,44,87,210                    ; vxorps        %ymm10,%ymm10,%ymm10
8990  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
8991  DB  196,65,28,87,228                    ; vxorps        %ymm12,%ymm12,%ymm12
8992  DB  197,28,89,224                       ; vmulps        %ymm0,%ymm12,%ymm12
8993  DB  196,65,60,88,196                    ; vaddps        %ymm12,%ymm8,%ymm8
8994  DB  197,36,89,216                       ; vmulps        %ymm0,%ymm11,%ymm11
8995  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
8996  DB  197,44,89,208                       ; vmulps        %ymm0,%ymm10,%ymm10
8997  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
8998  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
8999  DB  197,252,88,219                      ; vaddps        %ymm3,%ymm0,%ymm3
9000  DB  72,173                              ; lods          %ds:(%rsi),%rax
9001  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
9002  DB  255,224                             ; jmpq          *%rax
9003
9004PUBLIC _sk_linear_gradient_2stops_avx
9005_sk_linear_gradient_2stops_avx LABEL PROC
9006  DB  72,173                              ; lods          %ds:(%rsi),%rax
9007  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
9008  DB  196,226,125,24,80,16                ; vbroadcastss  0x10(%rax),%ymm2
9009  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
9010  DB  197,116,88,194                      ; vaddps        %ymm2,%ymm1,%ymm8
9011  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
9012  DB  196,226,125,24,80,20                ; vbroadcastss  0x14(%rax),%ymm2
9013  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
9014  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
9015  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
9016  DB  196,226,125,24,88,24                ; vbroadcastss  0x18(%rax),%ymm3
9017  DB  197,236,89,208                      ; vmulps        %ymm0,%ymm2,%ymm2
9018  DB  197,236,88,211                      ; vaddps        %ymm3,%ymm2,%ymm2
9019  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
9020  DB  196,98,125,24,72,28                 ; vbroadcastss  0x1c(%rax),%ymm9
9021  DB  197,228,89,192                      ; vmulps        %ymm0,%ymm3,%ymm0
9022  DB  196,193,124,88,217                  ; vaddps        %ymm9,%ymm0,%ymm3
9023  DB  72,173                              ; lods          %ds:(%rsi),%rax
9024  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
9025  DB  255,224                             ; jmpq          *%rax
9026
9027PUBLIC _sk_save_xy_avx
9028_sk_save_xy_avx LABEL PROC
9029  DB  72,173                              ; lods          %ds:(%rsi),%rax
9030  DB  196,98,125,24,5,197,7,0,0           ; vbroadcastss  0x7c5(%rip),%ymm8        # 572c <_sk_callback_avx+0x40e>
9031  DB  196,65,124,88,200                   ; vaddps        %ymm8,%ymm0,%ymm9
9032  DB  196,67,125,8,209,1                  ; vroundps      $0x1,%ymm9,%ymm10
9033  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
9034  DB  196,65,116,88,192                   ; vaddps        %ymm8,%ymm1,%ymm8
9035  DB  196,67,125,8,208,1                  ; vroundps      $0x1,%ymm8,%ymm10
9036  DB  196,65,60,92,194                    ; vsubps        %ymm10,%ymm8,%ymm8
9037  DB  197,252,17,0                        ; vmovups       %ymm0,(%rax)
9038  DB  197,252,17,72,32                    ; vmovups       %ymm1,0x20(%rax)
9039  DB  197,124,17,72,64                    ; vmovups       %ymm9,0x40(%rax)
9040  DB  197,124,17,64,96                    ; vmovups       %ymm8,0x60(%rax)
9041  DB  72,173                              ; lods          %ds:(%rsi),%rax
9042  DB  255,224                             ; jmpq          *%rax
9043
9044PUBLIC _sk_accumulate_avx
9045_sk_accumulate_avx LABEL PROC
9046  DB  72,173                              ; lods          %ds:(%rsi),%rax
9047  DB  197,124,16,128,128,0,0,0            ; vmovups       0x80(%rax),%ymm8
9048  DB  197,60,89,128,160,0,0,0             ; vmulps        0xa0(%rax),%ymm8,%ymm8
9049  DB  197,60,89,200                       ; vmulps        %ymm0,%ymm8,%ymm9
9050  DB  197,180,88,228                      ; vaddps        %ymm4,%ymm9,%ymm4
9051  DB  197,60,89,201                       ; vmulps        %ymm1,%ymm8,%ymm9
9052  DB  197,180,88,237                      ; vaddps        %ymm5,%ymm9,%ymm5
9053  DB  197,60,89,202                       ; vmulps        %ymm2,%ymm8,%ymm9
9054  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
9055  DB  197,60,89,195                       ; vmulps        %ymm3,%ymm8,%ymm8
9056  DB  197,188,88,255                      ; vaddps        %ymm7,%ymm8,%ymm7
9057  DB  72,173                              ; lods          %ds:(%rsi),%rax
9058  DB  255,224                             ; jmpq          *%rax
9059
9060PUBLIC _sk_bilinear_nx_avx
9061_sk_bilinear_nx_avx LABEL PROC
9062  DB  72,173                              ; lods          %ds:(%rsi),%rax
9063  DB  196,226,125,24,5,81,7,0,0           ; vbroadcastss  0x751(%rip),%ymm0        # 5730 <_sk_callback_avx+0x412>
9064  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
9065  DB  196,98,125,24,5,72,7,0,0            ; vbroadcastss  0x748(%rip),%ymm8        # 5734 <_sk_callback_avx+0x416>
9066  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
9067  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9068  DB  72,173                              ; lods          %ds:(%rsi),%rax
9069  DB  255,224                             ; jmpq          *%rax
9070
9071PUBLIC _sk_bilinear_px_avx
9072_sk_bilinear_px_avx LABEL PROC
9073  DB  72,173                              ; lods          %ds:(%rsi),%rax
9074  DB  196,226,125,24,5,48,7,0,0           ; vbroadcastss  0x730(%rip),%ymm0        # 5738 <_sk_callback_avx+0x41a>
9075  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
9076  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
9077  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9078  DB  72,173                              ; lods          %ds:(%rsi),%rax
9079  DB  255,224                             ; jmpq          *%rax
9080
9081PUBLIC _sk_bilinear_ny_avx
9082_sk_bilinear_ny_avx LABEL PROC
9083  DB  72,173                              ; lods          %ds:(%rsi),%rax
9084  DB  196,226,125,24,13,20,7,0,0          ; vbroadcastss  0x714(%rip),%ymm1        # 573c <_sk_callback_avx+0x41e>
9085  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
9086  DB  196,98,125,24,5,10,7,0,0            ; vbroadcastss  0x70a(%rip),%ymm8        # 5740 <_sk_callback_avx+0x422>
9087  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
9088  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9089  DB  72,173                              ; lods          %ds:(%rsi),%rax
9090  DB  255,224                             ; jmpq          *%rax
9091
9092PUBLIC _sk_bilinear_py_avx
9093_sk_bilinear_py_avx LABEL PROC
9094  DB  72,173                              ; lods          %ds:(%rsi),%rax
9095  DB  196,226,125,24,13,242,6,0,0         ; vbroadcastss  0x6f2(%rip),%ymm1        # 5744 <_sk_callback_avx+0x426>
9096  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
9097  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
9098  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9099  DB  72,173                              ; lods          %ds:(%rsi),%rax
9100  DB  255,224                             ; jmpq          *%rax
9101
9102PUBLIC _sk_bicubic_n3x_avx
9103_sk_bicubic_n3x_avx LABEL PROC
9104  DB  72,173                              ; lods          %ds:(%rsi),%rax
9105  DB  196,226,125,24,5,213,6,0,0          ; vbroadcastss  0x6d5(%rip),%ymm0        # 5748 <_sk_callback_avx+0x42a>
9106  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
9107  DB  196,98,125,24,5,204,6,0,0           ; vbroadcastss  0x6cc(%rip),%ymm8        # 574c <_sk_callback_avx+0x42e>
9108  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
9109  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
9110  DB  196,98,125,24,21,189,6,0,0          ; vbroadcastss  0x6bd(%rip),%ymm10        # 5750 <_sk_callback_avx+0x432>
9111  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
9112  DB  196,98,125,24,21,179,6,0,0          ; vbroadcastss  0x6b3(%rip),%ymm10        # 5754 <_sk_callback_avx+0x436>
9113  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
9114  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9115  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9116  DB  72,173                              ; lods          %ds:(%rsi),%rax
9117  DB  255,224                             ; jmpq          *%rax
9118
9119PUBLIC _sk_bicubic_n1x_avx
9120_sk_bicubic_n1x_avx LABEL PROC
9121  DB  72,173                              ; lods          %ds:(%rsi),%rax
9122  DB  196,226,125,24,5,150,6,0,0          ; vbroadcastss  0x696(%rip),%ymm0        # 5758 <_sk_callback_avx+0x43a>
9123  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
9124  DB  196,98,125,24,5,141,6,0,0           ; vbroadcastss  0x68d(%rip),%ymm8        # 575c <_sk_callback_avx+0x43e>
9125  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
9126  DB  196,98,125,24,13,131,6,0,0          ; vbroadcastss  0x683(%rip),%ymm9        # 5760 <_sk_callback_avx+0x442>
9127  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
9128  DB  196,98,125,24,21,121,6,0,0          ; vbroadcastss  0x679(%rip),%ymm10        # 5764 <_sk_callback_avx+0x446>
9129  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9130  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
9131  DB  196,98,125,24,21,106,6,0,0          ; vbroadcastss  0x66a(%rip),%ymm10        # 5768 <_sk_callback_avx+0x44a>
9132  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9133  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
9134  DB  196,98,125,24,13,91,6,0,0           ; vbroadcastss  0x65b(%rip),%ymm9        # 576c <_sk_callback_avx+0x44e>
9135  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
9136  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9137  DB  72,173                              ; lods          %ds:(%rsi),%rax
9138  DB  255,224                             ; jmpq          *%rax
9139
9140PUBLIC _sk_bicubic_p1x_avx
9141_sk_bicubic_p1x_avx LABEL PROC
9142  DB  72,173                              ; lods          %ds:(%rsi),%rax
9143  DB  196,98,125,24,5,67,6,0,0            ; vbroadcastss  0x643(%rip),%ymm8        # 5770 <_sk_callback_avx+0x452>
9144  DB  197,188,88,0                        ; vaddps        (%rax),%ymm8,%ymm0
9145  DB  197,124,16,72,64                    ; vmovups       0x40(%rax),%ymm9
9146  DB  196,98,125,24,21,53,6,0,0           ; vbroadcastss  0x635(%rip),%ymm10        # 5774 <_sk_callback_avx+0x456>
9147  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
9148  DB  196,98,125,24,29,43,6,0,0           ; vbroadcastss  0x62b(%rip),%ymm11        # 5778 <_sk_callback_avx+0x45a>
9149  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
9150  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
9151  DB  196,65,44,88,192                    ; vaddps        %ymm8,%ymm10,%ymm8
9152  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9153  DB  196,98,125,24,13,18,6,0,0           ; vbroadcastss  0x612(%rip),%ymm9        # 577c <_sk_callback_avx+0x45e>
9154  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
9155  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9156  DB  72,173                              ; lods          %ds:(%rsi),%rax
9157  DB  255,224                             ; jmpq          *%rax
9158
9159PUBLIC _sk_bicubic_p3x_avx
9160_sk_bicubic_p3x_avx LABEL PROC
9161  DB  72,173                              ; lods          %ds:(%rsi),%rax
9162  DB  196,226,125,24,5,250,5,0,0          ; vbroadcastss  0x5fa(%rip),%ymm0        # 5780 <_sk_callback_avx+0x462>
9163  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
9164  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
9165  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
9166  DB  196,98,125,24,21,231,5,0,0          ; vbroadcastss  0x5e7(%rip),%ymm10        # 5784 <_sk_callback_avx+0x466>
9167  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
9168  DB  196,98,125,24,21,221,5,0,0          ; vbroadcastss  0x5dd(%rip),%ymm10        # 5788 <_sk_callback_avx+0x46a>
9169  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
9170  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9171  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9172  DB  72,173                              ; lods          %ds:(%rsi),%rax
9173  DB  255,224                             ; jmpq          *%rax
9174
9175PUBLIC _sk_bicubic_n3y_avx
9176_sk_bicubic_n3y_avx LABEL PROC
9177  DB  72,173                              ; lods          %ds:(%rsi),%rax
9178  DB  196,226,125,24,13,192,5,0,0         ; vbroadcastss  0x5c0(%rip),%ymm1        # 578c <_sk_callback_avx+0x46e>
9179  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
9180  DB  196,98,125,24,5,182,5,0,0           ; vbroadcastss  0x5b6(%rip),%ymm8        # 5790 <_sk_callback_avx+0x472>
9181  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
9182  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
9183  DB  196,98,125,24,21,167,5,0,0          ; vbroadcastss  0x5a7(%rip),%ymm10        # 5794 <_sk_callback_avx+0x476>
9184  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
9185  DB  196,98,125,24,21,157,5,0,0          ; vbroadcastss  0x59d(%rip),%ymm10        # 5798 <_sk_callback_avx+0x47a>
9186  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
9187  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9188  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9189  DB  72,173                              ; lods          %ds:(%rsi),%rax
9190  DB  255,224                             ; jmpq          *%rax
9191
9192PUBLIC _sk_bicubic_n1y_avx
9193_sk_bicubic_n1y_avx LABEL PROC
9194  DB  72,173                              ; lods          %ds:(%rsi),%rax
9195  DB  196,226,125,24,13,128,5,0,0         ; vbroadcastss  0x580(%rip),%ymm1        # 579c <_sk_callback_avx+0x47e>
9196  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
9197  DB  196,98,125,24,5,118,5,0,0           ; vbroadcastss  0x576(%rip),%ymm8        # 57a0 <_sk_callback_avx+0x482>
9198  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
9199  DB  196,98,125,24,13,108,5,0,0          ; vbroadcastss  0x56c(%rip),%ymm9        # 57a4 <_sk_callback_avx+0x486>
9200  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
9201  DB  196,98,125,24,21,98,5,0,0           ; vbroadcastss  0x562(%rip),%ymm10        # 57a8 <_sk_callback_avx+0x48a>
9202  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9203  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
9204  DB  196,98,125,24,21,83,5,0,0           ; vbroadcastss  0x553(%rip),%ymm10        # 57ac <_sk_callback_avx+0x48e>
9205  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9206  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
9207  DB  196,98,125,24,13,68,5,0,0           ; vbroadcastss  0x544(%rip),%ymm9        # 57b0 <_sk_callback_avx+0x492>
9208  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
9209  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9210  DB  72,173                              ; lods          %ds:(%rsi),%rax
9211  DB  255,224                             ; jmpq          *%rax
9212
9213PUBLIC _sk_bicubic_p1y_avx
9214_sk_bicubic_p1y_avx LABEL PROC
9215  DB  72,173                              ; lods          %ds:(%rsi),%rax
9216  DB  196,98,125,24,5,44,5,0,0            ; vbroadcastss  0x52c(%rip),%ymm8        # 57b4 <_sk_callback_avx+0x496>
9217  DB  197,188,88,72,32                    ; vaddps        0x20(%rax),%ymm8,%ymm1
9218  DB  197,124,16,72,96                    ; vmovups       0x60(%rax),%ymm9
9219  DB  196,98,125,24,21,29,5,0,0           ; vbroadcastss  0x51d(%rip),%ymm10        # 57b8 <_sk_callback_avx+0x49a>
9220  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
9221  DB  196,98,125,24,29,19,5,0,0           ; vbroadcastss  0x513(%rip),%ymm11        # 57bc <_sk_callback_avx+0x49e>
9222  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
9223  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
9224  DB  196,65,44,88,192                    ; vaddps        %ymm8,%ymm10,%ymm8
9225  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9226  DB  196,98,125,24,13,250,4,0,0          ; vbroadcastss  0x4fa(%rip),%ymm9        # 57c0 <_sk_callback_avx+0x4a2>
9227  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
9228  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9229  DB  72,173                              ; lods          %ds:(%rsi),%rax
9230  DB  255,224                             ; jmpq          *%rax
9231
9232PUBLIC _sk_bicubic_p3y_avx
9233_sk_bicubic_p3y_avx LABEL PROC
9234  DB  72,173                              ; lods          %ds:(%rsi),%rax
9235  DB  196,226,125,24,13,226,4,0,0         ; vbroadcastss  0x4e2(%rip),%ymm1        # 57c4 <_sk_callback_avx+0x4a6>
9236  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
9237  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
9238  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
9239  DB  196,98,125,24,21,206,4,0,0          ; vbroadcastss  0x4ce(%rip),%ymm10        # 57c8 <_sk_callback_avx+0x4aa>
9240  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
9241  DB  196,98,125,24,21,196,4,0,0          ; vbroadcastss  0x4c4(%rip),%ymm10        # 57cc <_sk_callback_avx+0x4ae>
9242  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
9243  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9244  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9245  DB  72,173                              ; lods          %ds:(%rsi),%rax
9246  DB  255,224                             ; jmpq          *%rax
9247
9248PUBLIC _sk_callback_avx
9249_sk_callback_avx LABEL PROC
9250  DB  65,87                               ; push          %r15
9251  DB  65,86                               ; push          %r14
9252  DB  83                                  ; push          %rbx
9253  DB  72,129,236,160,0,0,0                ; sub           $0xa0,%rsp
9254  DB  197,252,17,188,36,128,0,0,0         ; vmovups       %ymm7,0x80(%rsp)
9255  DB  197,252,17,116,36,96                ; vmovups       %ymm6,0x60(%rsp)
9256  DB  197,252,17,108,36,64                ; vmovups       %ymm5,0x40(%rsp)
9257  DB  197,252,17,100,36,32                ; vmovups       %ymm4,0x20(%rsp)
9258  DB  73,137,207                          ; mov           %rcx,%r15
9259  DB  73,137,214                          ; mov           %rdx,%r14
9260  DB  72,173                              ; lods          %ds:(%rsi),%rax
9261  DB  72,137,195                          ; mov           %rax,%rbx
9262  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
9263  DB  197,252,21,193                      ; vunpckhps     %ymm1,%ymm0,%ymm0
9264  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
9265  DB  197,236,21,211                      ; vunpckhps     %ymm3,%ymm2,%ymm2
9266  DB  197,221,20,217                      ; vunpcklpd     %ymm1,%ymm4,%ymm3
9267  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
9268  DB  197,253,20,226                      ; vunpcklpd     %ymm2,%ymm0,%ymm4
9269  DB  197,253,21,194                      ; vunpckhpd     %ymm2,%ymm0,%ymm0
9270  DB  196,227,101,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm2
9271  DB  196,227,93,24,232,1                 ; vinsertf128   $0x1,%xmm0,%ymm4,%ymm5
9272  DB  196,227,101,6,201,49                ; vperm2f128    $0x31,%ymm1,%ymm3,%ymm1
9273  DB  196,227,93,6,192,49                 ; vperm2f128    $0x31,%ymm0,%ymm4,%ymm0
9274  DB  197,253,17,83,8                     ; vmovupd       %ymm2,0x8(%rbx)
9275  DB  197,253,17,107,40                   ; vmovupd       %ymm5,0x28(%rbx)
9276  DB  197,253,17,75,72                    ; vmovupd       %ymm1,0x48(%rbx)
9277  DB  197,253,17,67,104                   ; vmovupd       %ymm0,0x68(%rbx)
9278  DB  77,133,255                          ; test          %r15,%r15
9279  DB  186,8,0,0,0                         ; mov           $0x8,%edx
9280  DB  65,15,69,215                        ; cmovne        %r15d,%edx
9281  DB  72,137,217                          ; mov           %rbx,%rcx
9282  DB  197,248,119                         ; vzeroupper
9283  DB  255,19                              ; callq         *(%rbx)
9284  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
9285  DB  197,248,16,0                        ; vmovups       (%rax),%xmm0
9286  DB  197,248,16,72,16                    ; vmovups       0x10(%rax),%xmm1
9287  DB  197,248,16,80,32                    ; vmovups       0x20(%rax),%xmm2
9288  DB  197,248,16,88,48                    ; vmovups       0x30(%rax),%xmm3
9289  DB  196,227,101,24,88,112,1             ; vinsertf128   $0x1,0x70(%rax),%ymm3,%ymm3
9290  DB  196,227,109,24,80,96,1              ; vinsertf128   $0x1,0x60(%rax),%ymm2,%ymm2
9291  DB  196,227,117,24,72,80,1              ; vinsertf128   $0x1,0x50(%rax),%ymm1,%ymm1
9292  DB  196,227,125,24,64,64,1              ; vinsertf128   $0x1,0x40(%rax),%ymm0,%ymm0
9293  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
9294  DB  197,252,21,233                      ; vunpckhps     %ymm1,%ymm0,%ymm5
9295  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
9296  DB  197,236,21,219                      ; vunpckhps     %ymm3,%ymm2,%ymm3
9297  DB  197,221,20,193                      ; vunpcklpd     %ymm1,%ymm4,%ymm0
9298  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
9299  DB  197,213,20,211                      ; vunpcklpd     %ymm3,%ymm5,%ymm2
9300  DB  197,213,21,219                      ; vunpckhpd     %ymm3,%ymm5,%ymm3
9301  DB  72,173                              ; lods          %ds:(%rsi),%rax
9302  DB  76,137,242                          ; mov           %r14,%rdx
9303  DB  76,137,249                          ; mov           %r15,%rcx
9304  DB  197,252,16,100,36,32                ; vmovups       0x20(%rsp),%ymm4
9305  DB  197,252,16,108,36,64                ; vmovups       0x40(%rsp),%ymm5
9306  DB  197,252,16,116,36,96                ; vmovups       0x60(%rsp),%ymm6
9307  DB  197,252,16,188,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm7
9308  DB  72,129,196,160,0,0,0                ; add           $0xa0,%rsp
9309  DB  91                                  ; pop           %rbx
9310  DB  65,94                               ; pop           %r14
9311  DB  65,95                               ; pop           %r15
9312  DB  255,224                             ; jmpq          *%rax
9313
9314ALIGN 4
9315  DB  0,0                                 ; add           %al,(%rax)
9316  DB  0,63                                ; add           %bh,(%rdi)
9317  DB  0,0                                 ; add           %al,(%rax)
9318  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9319  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9320  DB  63                                  ; (bad)
9321  DB  0,0                                 ; add           %al,(%rax)
9322  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9323  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9324  DB  63                                  ; (bad)
9325  DB  0,0                                 ; add           %al,(%rax)
9326  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9327  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9328  DB  63                                  ; (bad)
9329  DB  0,0                                 ; add           %al,(%rax)
9330  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9331  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9332  DB  63                                  ; (bad)
9333  DB  0,0                                 ; add           %al,(%rax)
9334  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9335  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9336  DB  63                                  ; (bad)
9337  DB  0,0                                 ; add           %al,(%rax)
9338  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9339  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9340  DB  63                                  ; (bad)
9341  DB  0,0                                 ; add           %al,(%rax)
9342  DB  128,191,0,0,224,64,0                ; cmpb          $0x0,0x40e00000(%rdi)
9343  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9344  DB  63                                  ; (bad)
9345  DB  0,0                                 ; add           %al,(%rax)
9346  DB  128,63,145                          ; cmpb          $0x91,(%rdi)
9347  DB  131,158,61,154,153,153,62           ; sbbl          $0x3e,-0x666665c3(%rsi)
9348  DB  92                                  ; pop           %rsp
9349  DB  143                                 ; (bad)
9350  DB  50,63                               ; xor           (%rdi),%bh
9351  DB  10,215                              ; or            %bh,%dl
9352  DB  35,59                               ; and           (%rbx),%edi
9353  DB  174                                 ; scas          %es:(%rdi),%al
9354  DB  71,97                               ; rex.RXB       (bad)
9355  DB  61,41,92,71,65                      ; cmp           $0x41475c29,%eax
9356  DB  206                                 ; (bad)
9357  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
9358  DB  48,63                               ; xor           %bh,(%rdi)
9359  DB  168,87                              ; test          $0x57,%al
9360  DB  202,189,194                         ; lret          $0xc2bd
9361  DB  135,210                             ; xchg          %edx,%edx
9362  DB  62,0,0                              ; add           %al,%ds:(%rax)
9363  DB  128,63,4                            ; cmpb          $0x4,(%rdi)
9364  DB  231,140                             ; out           %eax,$0x8c
9365  DB  59,0                                ; cmp           (%rax),%eax
9366  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
9367  DB  64,0,0                              ; add           %al,(%rax)
9368  DB  0,64,0                              ; add           %al,0x0(%rax)
9369  DB  0,128,64,171,170,42                 ; add           %al,0x2aaaab40(%rax)
9370  DB  62,0,0                              ; add           %al,%ds:(%rax)
9371  DB  0,63                                ; add           %bh,(%rdi)
9372  DB  0,0                                 ; add           %al,(%rax)
9373  DB  0,63                                ; add           %bh,(%rdi)
9374  DB  171                                 ; stos          %eax,%es:(%rdi)
9375  DB  170                                 ; stos          %al,%es:(%rdi)
9376  DB  170                                 ; stos          %al,%es:(%rdi)
9377  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
9378  DB  170                                 ; stos          %al,%es:(%rdi)
9379  DB  42,63                               ; sub           (%rdi),%bh
9380  DB  0,0                                 ; add           %al,(%rax)
9381  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
9382  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
9383  DB  42,62                               ; sub           (%rsi),%bh
9384  DB  171                                 ; stos          %eax,%es:(%rdi)
9385  DB  170                                 ; stos          %al,%es:(%rdi)
9386  DB  170                                 ; stos          %al,%es:(%rdi)
9387  DB  190,129,128,128,59                  ; mov           $0x3b808081,%esi
9388  DB  129,128,128,59,0,248,0,0,8,33       ; addl          $0x21080000,-0x7ffc480(%rax)
9389  DB  132,55                              ; test          %dh,(%rdi)
9390  DB  224,7                               ; loopne        5511 <.literal4+0xd9>
9391  DB  0,0                                 ; add           %al,(%rax)
9392  DB  33,8                                ; and           %ecx,(%rax)
9393  DB  2,58                                ; add           (%rdx),%bh
9394  DB  31                                  ; (bad)
9395  DB  0,0                                 ; add           %al,(%rax)
9396  DB  0,8                                 ; add           %cl,(%rax)
9397  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
9398  DB  129,128,128,59,128,0,128,55,0,0     ; addl          $0x3780,0x803b80(%rax)
9399  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9400  DB  0,127,67                            ; add           %bh,0x43(%rdi)
9401  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
9402  DB  0,52,255                            ; add           %dh,(%rdi,%rdi,8)
9403  DB  255                                 ; (bad)
9404  DB  127,0                               ; jg            553c <.literal4+0x104>
9405  DB  0,0                                 ; add           %al,(%rax)
9406  DB  0,63                                ; add           %bh,(%rdi)
9407  DB  119,115                             ; ja            55b5 <.literal4+0x17d>
9408  DB  248                                 ; clc
9409  DB  194,117,191                         ; retq          $0xbf75
9410  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
9411  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
9412  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
9413  DB  154                                 ; (bad)
9414  DB  64,254                              ; rex           (bad)
9415  DB  210,221                             ; rcr           %cl,%ch
9416  DB  65,0,0                              ; add           %al,(%r8)
9417  DB  0,75,0                              ; add           %cl,0x0(%rbx)
9418  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
9419  DB  52,255                              ; xor           $0xff,%al
9420  DB  255                                 ; (bad)
9421  DB  127,0                               ; jg            5570 <.literal4+0x138>
9422  DB  0,0                                 ; add           %al,(%rax)
9423  DB  0,63                                ; add           %bh,(%rdi)
9424  DB  119,115                             ; ja            55e9 <.literal4+0x1b1>
9425  DB  248                                 ; clc
9426  DB  194,117,191                         ; retq          $0xbf75
9427  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
9428  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
9429  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
9430  DB  154                                 ; (bad)
9431  DB  64,254                              ; rex           (bad)
9432  DB  210,221                             ; rcr           %cl,%ch
9433  DB  65,0,0                              ; add           %al,(%r8)
9434  DB  0,75,0                              ; add           %cl,0x0(%rbx)
9435  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
9436  DB  52,255                              ; xor           $0xff,%al
9437  DB  255                                 ; (bad)
9438  DB  127,0                               ; jg            55a4 <.literal4+0x16c>
9439  DB  0,0                                 ; add           %al,(%rax)
9440  DB  0,63                                ; add           %bh,(%rdi)
9441  DB  119,115                             ; ja            561d <.literal4+0x1e5>
9442  DB  248                                 ; clc
9443  DB  194,117,191                         ; retq          $0xbf75
9444  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
9445  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
9446  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
9447  DB  154                                 ; (bad)
9448  DB  64,254                              ; rex           (bad)
9449  DB  210,221                             ; rcr           %cl,%ch
9450  DB  65,0,0                              ; add           %al,(%r8)
9451  DB  0,75,0                              ; add           %cl,0x0(%rbx)
9452  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
9453  DB  52,255                              ; xor           $0xff,%al
9454  DB  255                                 ; (bad)
9455  DB  127,0                               ; jg            55d8 <.literal4+0x1a0>
9456  DB  0,0                                 ; add           %al,(%rax)
9457  DB  0,63                                ; add           %bh,(%rdi)
9458  DB  119,115                             ; ja            5651 <.literal4+0x219>
9459  DB  248                                 ; clc
9460  DB  194,117,191                         ; retq          $0xbf75
9461  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
9462  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
9463  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
9464  DB  154                                 ; (bad)
9465  DB  64,254                              ; rex           (bad)
9466  DB  210,221                             ; rcr           %cl,%ch
9467  DB  65,0,0                              ; add           %al,(%r8)
9468  DB  0,75,0                              ; add           %cl,0x0(%rbx)
9469  DB  0,128,63,0,0,200                    ; add           %al,-0x37ffffc1(%rax)
9470  DB  66,0,0                              ; rex.X         add %al,(%rax)
9471  DB  127,67                              ; jg            564f <.literal4+0x217>
9472  DB  0,0                                 ; add           %al,(%rax)
9473  DB  0,195                               ; add           %al,%bl
9474  DB  0,0                                 ; add           %al,(%rax)
9475  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
9476  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
9477  DB  59,10                               ; cmp           (%rdx),%ecx
9478  DB  215                                 ; xlat          %ds:(%rbx)
9479  DB  163,59,194,24,17,60,203,61,13       ; movabs        %eax,0xd3dcb3c1118c23b
9480  DB  190,80,128,3,62                     ; mov           $0x3e038050,%esi
9481  DB  31                                  ; (bad)
9482  DB  215                                 ; xlat          %ds:(%rbx)
9483  DB  118,63                              ; jbe           566f <.literal4+0x237>
9484  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
9485  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
9486  DB  127,67                              ; jg            5683 <.literal4+0x24b>
9487  DB  129,128,128,59,0,0,128,63,129,128   ; addl          $0x80813f80,0x3b80(%rax)
9488  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
9489  DB  0,128,63,129,128,128                ; add           %al,-0x7f7f7ec1(%rax)
9490  DB  59,0                                ; cmp           (%rax),%eax
9491  DB  248                                 ; clc
9492  DB  0,0                                 ; add           %al,(%rax)
9493  DB  8,33                                ; or            %ah,(%rcx)
9494  DB  132,55                              ; test          %dh,(%rdi)
9495  DB  224,7                               ; loopne        5665 <.literal4+0x22d>
9496  DB  0,0                                 ; add           %al,(%rax)
9497  DB  33,8                                ; and           %ecx,(%rax)
9498  DB  2,58                                ; add           (%rdx),%bh
9499  DB  31                                  ; (bad)
9500  DB  0,0                                 ; add           %al,(%rax)
9501  DB  0,8                                 ; add           %cl,(%rax)
9502  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
9503  DB  0,248                               ; add           %bh,%al
9504  DB  0,0                                 ; add           %al,(%rax)
9505  DB  8,33                                ; or            %ah,(%rcx)
9506  DB  132,55                              ; test          %dh,(%rdi)
9507  DB  224,7                               ; loopne        5681 <.literal4+0x249>
9508  DB  0,0                                 ; add           %al,(%rax)
9509  DB  33,8                                ; and           %ecx,(%rax)
9510  DB  2,58                                ; add           (%rdx),%bh
9511  DB  31                                  ; (bad)
9512  DB  0,0                                 ; add           %al,(%rax)
9513  DB  0,8                                 ; add           %cl,(%rax)
9514  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
9515  DB  0,0                                 ; add           %al,(%rax)
9516  DB  248                                 ; clc
9517  DB  65,0,0                              ; add           %al,(%r8)
9518  DB  124,66                              ; jl            56d6 <.literal4+0x29e>
9519  DB  0,240                               ; add           %dh,%al
9520  DB  0,0                                 ; add           %al,(%rax)
9521  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
9522  DB  0,0                                 ; add           %al,(%rax)
9523  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
9524  DB  0,0                                 ; add           %al,(%rax)
9525  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
9526  DB  0,0                                 ; add           %al,(%rax)
9527  DB  137,136,136,61,0,240                ; mov           %ecx,-0xfffc278(%rax)
9528  DB  0,0                                 ; add           %al,(%rax)
9529  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
9530  DB  0,0                                 ; add           %al,(%rax)
9531  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
9532  DB  0,0                                 ; add           %al,(%rax)
9533  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
9534  DB  0,0                                 ; add           %al,(%rax)
9535  DB  137,136,136,61,0,0                  ; mov           %ecx,0x3d88(%rax)
9536  DB  112,65                              ; jo            5719 <.literal4+0x2e1>
9537  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
9538  DB  127,67                              ; jg            5727 <.literal4+0x2ef>
9539  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
9540  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
9541  DB  0,0                                 ; add           %al,(%rax)
9542  DB  0,56                                ; add           %bh,(%rax)
9543  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
9544  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
9545  DB  0,0                                 ; add           %al,(%rax)
9546  DB  0,56                                ; add           %bh,(%rax)
9547  DB  0,0                                 ; add           %al,(%rax)
9548  DB  0,128,0,0,128,56                    ; add           %al,0x38800000(%rax)
9549  DB  0,64,254                            ; add           %al,-0x2(%rax)
9550  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
9551  DB  0,128,55,0,0,128                    ; add           %al,-0x7fffffc9(%rax)
9552  DB  63                                  ; (bad)
9553  DB  0,255                               ; add           %bh,%bh
9554  DB  127,71                              ; jg            5767 <.literal4+0x32f>
9555  DB  208                                 ; (bad)
9556  DB  179,89                              ; mov           $0x59,%bl
9557  DB  62,89                               ; ds            pop %rcx
9558  DB  23                                  ; (bad)
9559  DB  55                                  ; (bad)
9560  DB  63                                  ; (bad)
9561  DB  152                                 ; cwtl
9562  DB  221,147,61,0,0,0                    ; fstl          0x3d(%rbx)
9563  DB  63                                  ; (bad)
9564  DB  0,0                                 ; add           %al,(%rax)
9565  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
9566  DB  0,0                                 ; add           %al,(%rax)
9567  DB  0,63                                ; add           %bh,(%rdi)
9568  DB  0,0                                 ; add           %al,(%rax)
9569  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
9570  DB  0,0                                 ; add           %al,(%rax)
9571  DB  0,63                                ; add           %bh,(%rdi)
9572  DB  0,0                                 ; add           %al,(%rax)
9573  DB  192,191,0,0,128,63,114              ; sarb          $0x72,0x3f800000(%rdi)
9574  DB  28,199                              ; sbb           $0xc7,%al
9575  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
9576  DB  170                                 ; stos          %al,%es:(%rdi)
9577  DB  170                                 ; stos          %al,%es:(%rdi)
9578  DB  190,0,0,0,191                       ; mov           $0xbf000000,%esi
9579  DB  0,0                                 ; add           %al,(%rax)
9580  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
9581  DB  85                                  ; push          %rbp
9582  DB  149                                 ; xchg          %eax,%ebp
9583  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
9584  DB  0,0                                 ; add           %al,(%rax)
9585  DB  0,63                                ; add           %bh,(%rdi)
9586  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
9587  DB  0,63                                ; add           %bh,(%rdi)
9588  DB  85                                  ; push          %rbp
9589  DB  85                                  ; push          %rbp
9590  DB  149                                 ; xchg          %eax,%ebp
9591  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
9592  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
9593  DB  192,63,114                          ; sarb          $0x72,(%rdi)
9594  DB  28,199                              ; sbb           $0xc7,%al
9595  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
9596  DB  170                                 ; stos          %al,%es:(%rdi)
9597  DB  170                                 ; stos          %al,%es:(%rdi)
9598  DB  190,0,0,192,191                     ; mov           $0xbfc00000,%esi
9599  DB  0,0                                 ; add           %al,(%rax)
9600  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
9601  DB  28,199                              ; sbb           $0xc7,%al
9602  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
9603  DB  170                                 ; stos          %al,%es:(%rdi)
9604  DB  170                                 ; stos          %al,%es:(%rdi)
9605  DB  190,0,0,0,191                       ; mov           $0xbf000000,%esi
9606  DB  0,0                                 ; add           %al,(%rax)
9607  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
9608  DB  85                                  ; push          %rbp
9609  DB  149                                 ; xchg          %eax,%ebp
9610  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
9611  DB  0,0                                 ; add           %al,(%rax)
9612  DB  0,63                                ; add           %bh,(%rdi)
9613  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
9614  DB  0,63                                ; add           %bh,(%rdi)
9615  DB  85                                  ; push          %rbp
9616  DB  85                                  ; push          %rbp
9617  DB  149                                 ; xchg          %eax,%ebp
9618  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
9619  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
9620  DB  192,63,114                          ; sarb          $0x72,(%rdi)
9621  DB  28,199                              ; sbb           $0xc7,%al
9622  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
9623  DB  170                                 ; stos          %al,%es:(%rdi)
9624  DB  170                                 ; stos          %al,%es:(%rdi)
9625  DB  190                                 ; .byte         0xbe
9626
9627ALIGN 32
9628  DB  255,0                               ; incl          (%rax)
9629  DB  0,0                                 ; add           %al,(%rax)
9630  DB  255,0                               ; incl          (%rax)
9631  DB  0,0                                 ; add           %al,(%rax)
9632  DB  255,0                               ; incl          (%rax)
9633  DB  0,0                                 ; add           %al,(%rax)
9634  DB  255,0                               ; incl          (%rax)
9635  DB  0,0                                 ; add           %al,(%rax)
9636  DB  255,0                               ; incl          (%rax)
9637  DB  0,0                                 ; add           %al,(%rax)
9638  DB  255,0                               ; incl          (%rax)
9639  DB  0,0                                 ; add           %al,(%rax)
9640  DB  255,0                               ; incl          (%rax)
9641  DB  0,0                                 ; add           %al,(%rax)
9642  DB  255,0                               ; incl          (%rax)
9643  DB  0,0                                 ; add           %al,(%rax)
9644  DB  255,0                               ; incl          (%rax)
9645  DB  0,0                                 ; add           %al,(%rax)
9646  DB  255,0                               ; incl          (%rax)
9647  DB  0,0                                 ; add           %al,(%rax)
9648  DB  255,0                               ; incl          (%rax)
9649  DB  0,0                                 ; add           %al,(%rax)
9650  DB  255,0                               ; incl          (%rax)
9651  DB  0,0                                 ; add           %al,(%rax)
9652  DB  255,0                               ; incl          (%rax)
9653  DB  0,0                                 ; add           %al,(%rax)
9654  DB  255,0                               ; incl          (%rax)
9655  DB  0,0                                 ; add           %al,(%rax)
9656  DB  255,0                               ; incl          (%rax)
9657  DB  0,0                                 ; add           %al,(%rax)
9658  DB  255,0                               ; incl          (%rax)
9659  DB  0,0                                 ; add           %al,(%rax)
9660  DB  255,0                               ; incl          (%rax)
9661  DB  0,0                                 ; add           %al,(%rax)
9662  DB  255,0                               ; incl          (%rax)
9663  DB  0,0                                 ; add           %al,(%rax)
9664  DB  255,0                               ; incl          (%rax)
9665  DB  0,0                                 ; add           %al,(%rax)
9666  DB  255,0                               ; incl          (%rax)
9667  DB  0,0                                 ; add           %al,(%rax)
9668  DB  255,0                               ; incl          (%rax)
9669  DB  0,0                                 ; add           %al,(%rax)
9670  DB  255,0                               ; incl          (%rax)
9671  DB  0,0                                 ; add           %al,(%rax)
9672  DB  255,0                               ; incl          (%rax)
9673  DB  0,0                                 ; add           %al,(%rax)
9674  DB  255,0                               ; incl          (%rax)
9675  DB  0,0                                 ; add           %al,(%rax)
9676  DB  255,0                               ; incl          (%rax)
9677  DB  0,0                                 ; add           %al,(%rax)
9678  DB  255,0                               ; incl          (%rax)
9679  DB  0,0                                 ; add           %al,(%rax)
9680  DB  255,0                               ; incl          (%rax)
9681  DB  0,0                                 ; add           %al,(%rax)
9682  DB  255,0                               ; incl          (%rax)
9683  DB  0,0                                 ; add           %al,(%rax)
9684  DB  255,0                               ; incl          (%rax)
9685  DB  0,0                                 ; add           %al,(%rax)
9686  DB  255,0                               ; incl          (%rax)
9687  DB  0,0                                 ; add           %al,(%rax)
9688  DB  255,0                               ; incl          (%rax)
9689  DB  0,0                                 ; add           %al,(%rax)
9690  DB  255,0                               ; incl          (%rax)
9691  DB  0,0                                 ; add           %al,(%rax)
9692
9693ALIGN 16
9694  DB  255,0                               ; incl          (%rax)
9695  DB  255,0                               ; incl          (%rax)
9696  DB  255,0                               ; incl          (%rax)
9697  DB  255,0                               ; incl          (%rax)
9698  DB  255,0                               ; incl          (%rax)
9699  DB  255,0                               ; incl          (%rax)
9700  DB  255,0                               ; incl          (%rax)
9701  DB  255,0                               ; incl          (%rax)
9702  DB  255,0                               ; incl          (%rax)
9703  DB  255,0                               ; incl          (%rax)
9704  DB  255,0                               ; incl          (%rax)
9705  DB  255,0                               ; incl          (%rax)
9706  DB  255,0                               ; incl          (%rax)
9707  DB  255,0                               ; incl          (%rax)
9708  DB  255,0                               ; incl          (%rax)
9709  DB  255,0                               ; incl          (%rax)
9710ALIGN 32
9711
9712PUBLIC _sk_start_pipeline_sse41
9713_sk_start_pipeline_sse41 LABEL PROC
9714  DB  65,87                               ; push          %r15
9715  DB  65,86                               ; push          %r14
9716  DB  65,85                               ; push          %r13
9717  DB  65,84                               ; push          %r12
9718  DB  86                                  ; push          %rsi
9719  DB  87                                  ; push          %rdi
9720  DB  83                                  ; push          %rbx
9721  DB  72,129,236,160,0,0,0                ; sub           $0xa0,%rsp
9722  DB  68,15,41,188,36,144,0,0,0           ; movaps        %xmm15,0x90(%rsp)
9723  DB  68,15,41,180,36,128,0,0,0           ; movaps        %xmm14,0x80(%rsp)
9724  DB  68,15,41,108,36,112                 ; movaps        %xmm13,0x70(%rsp)
9725  DB  68,15,41,100,36,96                  ; movaps        %xmm12,0x60(%rsp)
9726  DB  68,15,41,92,36,80                   ; movaps        %xmm11,0x50(%rsp)
9727  DB  68,15,41,84,36,64                   ; movaps        %xmm10,0x40(%rsp)
9728  DB  68,15,41,76,36,48                   ; movaps        %xmm9,0x30(%rsp)
9729  DB  68,15,41,68,36,32                   ; movaps        %xmm8,0x20(%rsp)
9730  DB  15,41,124,36,16                     ; movaps        %xmm7,0x10(%rsp)
9731  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
9732  DB  77,137,207                          ; mov           %r9,%r15
9733  DB  77,137,198                          ; mov           %r8,%r14
9734  DB  72,137,203                          ; mov           %rcx,%rbx
9735  DB  72,137,214                          ; mov           %rdx,%rsi
9736  DB  72,173                              ; lods          %ds:(%rsi),%rax
9737  DB  73,137,196                          ; mov           %rax,%r12
9738  DB  73,137,245                          ; mov           %rsi,%r13
9739  DB  72,141,67,4                         ; lea           0x4(%rbx),%rax
9740  DB  76,57,248                           ; cmp           %r15,%rax
9741  DB  118,5                               ; jbe           73 <_sk_start_pipeline_sse41+0x73>
9742  DB  72,137,216                          ; mov           %rbx,%rax
9743  DB  235,52                              ; jmp           a7 <_sk_start_pipeline_sse41+0xa7>
9744  DB  15,87,192                           ; xorps         %xmm0,%xmm0
9745  DB  15,87,201                           ; xorps         %xmm1,%xmm1
9746  DB  15,87,210                           ; xorps         %xmm2,%xmm2
9747  DB  15,87,219                           ; xorps         %xmm3,%xmm3
9748  DB  15,87,228                           ; xorps         %xmm4,%xmm4
9749  DB  15,87,237                           ; xorps         %xmm5,%xmm5
9750  DB  15,87,246                           ; xorps         %xmm6,%xmm6
9751  DB  15,87,255                           ; xorps         %xmm7,%xmm7
9752  DB  72,137,223                          ; mov           %rbx,%rdi
9753  DB  76,137,238                          ; mov           %r13,%rsi
9754  DB  76,137,242                          ; mov           %r14,%rdx
9755  DB  65,255,212                          ; callq         *%r12
9756  DB  72,141,67,4                         ; lea           0x4(%rbx),%rax
9757  DB  72,131,195,8                        ; add           $0x8,%rbx
9758  DB  76,57,251                           ; cmp           %r15,%rbx
9759  DB  72,137,195                          ; mov           %rax,%rbx
9760  DB  118,204                             ; jbe           73 <_sk_start_pipeline_sse41+0x73>
9761  DB  15,40,52,36                         ; movaps        (%rsp),%xmm6
9762  DB  15,40,124,36,16                     ; movaps        0x10(%rsp),%xmm7
9763  DB  68,15,40,68,36,32                   ; movaps        0x20(%rsp),%xmm8
9764  DB  68,15,40,76,36,48                   ; movaps        0x30(%rsp),%xmm9
9765  DB  68,15,40,84,36,64                   ; movaps        0x40(%rsp),%xmm10
9766  DB  68,15,40,92,36,80                   ; movaps        0x50(%rsp),%xmm11
9767  DB  68,15,40,100,36,96                  ; movaps        0x60(%rsp),%xmm12
9768  DB  68,15,40,108,36,112                 ; movaps        0x70(%rsp),%xmm13
9769  DB  68,15,40,180,36,128,0,0,0           ; movaps        0x80(%rsp),%xmm14
9770  DB  68,15,40,188,36,144,0,0,0           ; movaps        0x90(%rsp),%xmm15
9771  DB  72,129,196,160,0,0,0                ; add           $0xa0,%rsp
9772  DB  91                                  ; pop           %rbx
9773  DB  95                                  ; pop           %rdi
9774  DB  94                                  ; pop           %rsi
9775  DB  65,92                               ; pop           %r12
9776  DB  65,93                               ; pop           %r13
9777  DB  65,94                               ; pop           %r14
9778  DB  65,95                               ; pop           %r15
9779  DB  195                                 ; retq
9780
9781PUBLIC _sk_just_return_sse41
9782_sk_just_return_sse41 LABEL PROC
9783  DB  195                                 ; retq
9784
9785PUBLIC _sk_seed_shader_sse41
9786_sk_seed_shader_sse41 LABEL PROC
9787  DB  72,173                              ; lods          %ds:(%rsi),%rax
9788  DB  102,15,110,199                      ; movd          %edi,%xmm0
9789  DB  102,15,112,192,0                    ; pshufd        $0x0,%xmm0,%xmm0
9790  DB  15,91,200                           ; cvtdq2ps      %xmm0,%xmm1
9791  DB  15,40,21,145,56,0,0                 ; movaps        0x3891(%rip),%xmm2        # 39a0 <_sk_callback_sse41+0xba>
9792  DB  15,88,202                           ; addps         %xmm2,%xmm1
9793  DB  15,16,2                             ; movups        (%rdx),%xmm0
9794  DB  15,88,193                           ; addps         %xmm1,%xmm0
9795  DB  102,15,110,8                        ; movd          (%rax),%xmm1
9796  DB  102,15,112,201,0                    ; pshufd        $0x0,%xmm1,%xmm1
9797  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
9798  DB  15,88,202                           ; addps         %xmm2,%xmm1
9799  DB  72,173                              ; lods          %ds:(%rsi),%rax
9800  DB  15,40,21,128,56,0,0                 ; movaps        0x3880(%rip),%xmm2        # 39b0 <_sk_callback_sse41+0xca>
9801  DB  15,87,219                           ; xorps         %xmm3,%xmm3
9802  DB  15,87,228                           ; xorps         %xmm4,%xmm4
9803  DB  15,87,237                           ; xorps         %xmm5,%xmm5
9804  DB  15,87,246                           ; xorps         %xmm6,%xmm6
9805  DB  15,87,255                           ; xorps         %xmm7,%xmm7
9806  DB  255,224                             ; jmpq          *%rax
9807
9808PUBLIC _sk_constant_color_sse41
9809_sk_constant_color_sse41 LABEL PROC
9810  DB  72,173                              ; lods          %ds:(%rsi),%rax
9811  DB  243,15,16,0                         ; movss         (%rax),%xmm0
9812  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
9813  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
9814  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
9815  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
9816  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
9817  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
9818  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
9819  DB  72,173                              ; lods          %ds:(%rsi),%rax
9820  DB  255,224                             ; jmpq          *%rax
9821
9822PUBLIC _sk_clear_sse41
9823_sk_clear_sse41 LABEL PROC
9824  DB  72,173                              ; lods          %ds:(%rsi),%rax
9825  DB  15,87,192                           ; xorps         %xmm0,%xmm0
9826  DB  15,87,201                           ; xorps         %xmm1,%xmm1
9827  DB  15,87,210                           ; xorps         %xmm2,%xmm2
9828  DB  15,87,219                           ; xorps         %xmm3,%xmm3
9829  DB  255,224                             ; jmpq          *%rax
9830
9831PUBLIC _sk_srcatop_sse41
9832_sk_srcatop_sse41 LABEL PROC
9833  DB  15,89,199                           ; mulps         %xmm7,%xmm0
9834  DB  68,15,40,5,59,56,0,0                ; movaps        0x383b(%rip),%xmm8        # 39c0 <_sk_callback_sse41+0xda>
9835  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
9836  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
9837  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
9838  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
9839  DB  15,89,207                           ; mulps         %xmm7,%xmm1
9840  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
9841  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
9842  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
9843  DB  15,89,215                           ; mulps         %xmm7,%xmm2
9844  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
9845  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
9846  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
9847  DB  15,89,223                           ; mulps         %xmm7,%xmm3
9848  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
9849  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
9850  DB  72,173                              ; lods          %ds:(%rsi),%rax
9851  DB  255,224                             ; jmpq          *%rax
9852
9853PUBLIC _sk_dstatop_sse41
9854_sk_dstatop_sse41 LABEL PROC
9855  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
9856  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
9857  DB  68,15,40,13,254,55,0,0              ; movaps        0x37fe(%rip),%xmm9        # 39d0 <_sk_callback_sse41+0xea>
9858  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
9859  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
9860  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
9861  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
9862  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
9863  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
9864  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
9865  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
9866  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
9867  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
9868  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
9869  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
9870  DB  15,89,223                           ; mulps         %xmm7,%xmm3
9871  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
9872  DB  72,173                              ; lods          %ds:(%rsi),%rax
9873  DB  255,224                             ; jmpq          *%rax
9874
9875PUBLIC _sk_srcin_sse41
9876_sk_srcin_sse41 LABEL PROC
9877  DB  15,89,199                           ; mulps         %xmm7,%xmm0
9878  DB  15,89,207                           ; mulps         %xmm7,%xmm1
9879  DB  15,89,215                           ; mulps         %xmm7,%xmm2
9880  DB  15,89,223                           ; mulps         %xmm7,%xmm3
9881  DB  72,173                              ; lods          %ds:(%rsi),%rax
9882  DB  255,224                             ; jmpq          *%rax
9883
9884PUBLIC _sk_dstin_sse41
9885_sk_dstin_sse41 LABEL PROC
9886  DB  15,40,195                           ; movaps        %xmm3,%xmm0
9887  DB  15,89,196                           ; mulps         %xmm4,%xmm0
9888  DB  15,40,203                           ; movaps        %xmm3,%xmm1
9889  DB  15,89,205                           ; mulps         %xmm5,%xmm1
9890  DB  15,40,211                           ; movaps        %xmm3,%xmm2
9891  DB  15,89,214                           ; mulps         %xmm6,%xmm2
9892  DB  15,89,223                           ; mulps         %xmm7,%xmm3
9893  DB  72,173                              ; lods          %ds:(%rsi),%rax
9894  DB  255,224                             ; jmpq          *%rax
9895
9896PUBLIC _sk_srcout_sse41
9897_sk_srcout_sse41 LABEL PROC
9898  DB  68,15,40,5,162,55,0,0               ; movaps        0x37a2(%rip),%xmm8        # 39e0 <_sk_callback_sse41+0xfa>
9899  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
9900  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
9901  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
9902  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
9903  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
9904  DB  72,173                              ; lods          %ds:(%rsi),%rax
9905  DB  255,224                             ; jmpq          *%rax
9906
9907PUBLIC _sk_dstout_sse41
9908_sk_dstout_sse41 LABEL PROC
9909  DB  68,15,40,5,146,55,0,0               ; movaps        0x3792(%rip),%xmm8        # 39f0 <_sk_callback_sse41+0x10a>
9910  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
9911  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
9912  DB  15,89,196                           ; mulps         %xmm4,%xmm0
9913  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
9914  DB  15,89,205                           ; mulps         %xmm5,%xmm1
9915  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
9916  DB  15,89,214                           ; mulps         %xmm6,%xmm2
9917  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
9918  DB  72,173                              ; lods          %ds:(%rsi),%rax
9919  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
9920  DB  255,224                             ; jmpq          *%rax
9921
9922PUBLIC _sk_srcover_sse41
9923_sk_srcover_sse41 LABEL PROC
9924  DB  68,15,40,5,117,55,0,0               ; movaps        0x3775(%rip),%xmm8        # 3a00 <_sk_callback_sse41+0x11a>
9925  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
9926  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
9927  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
9928  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
9929  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
9930  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
9931  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
9932  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
9933  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
9934  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
9935  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
9936  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
9937  DB  72,173                              ; lods          %ds:(%rsi),%rax
9938  DB  255,224                             ; jmpq          *%rax
9939
9940PUBLIC _sk_dstover_sse41
9941_sk_dstover_sse41 LABEL PROC
9942  DB  68,15,40,5,73,55,0,0                ; movaps        0x3749(%rip),%xmm8        # 3a10 <_sk_callback_sse41+0x12a>
9943  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
9944  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
9945  DB  15,88,196                           ; addps         %xmm4,%xmm0
9946  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
9947  DB  15,88,205                           ; addps         %xmm5,%xmm1
9948  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
9949  DB  15,88,214                           ; addps         %xmm6,%xmm2
9950  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
9951  DB  15,88,223                           ; addps         %xmm7,%xmm3
9952  DB  72,173                              ; lods          %ds:(%rsi),%rax
9953  DB  255,224                             ; jmpq          *%rax
9954
9955PUBLIC _sk_modulate_sse41
9956_sk_modulate_sse41 LABEL PROC
9957  DB  15,89,196                           ; mulps         %xmm4,%xmm0
9958  DB  15,89,205                           ; mulps         %xmm5,%xmm1
9959  DB  15,89,214                           ; mulps         %xmm6,%xmm2
9960  DB  15,89,223                           ; mulps         %xmm7,%xmm3
9961  DB  72,173                              ; lods          %ds:(%rsi),%rax
9962  DB  255,224                             ; jmpq          *%rax
9963
9964PUBLIC _sk_multiply_sse41
9965_sk_multiply_sse41 LABEL PROC
9966  DB  68,15,40,5,29,55,0,0                ; movaps        0x371d(%rip),%xmm8        # 3a20 <_sk_callback_sse41+0x13a>
9967  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
9968  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
9969  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
9970  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
9971  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
9972  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
9973  DB  68,15,89,220                        ; mulps         %xmm4,%xmm11
9974  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
9975  DB  15,89,196                           ; mulps         %xmm4,%xmm0
9976  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
9977  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
9978  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
9979  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
9980  DB  68,15,89,221                        ; mulps         %xmm5,%xmm11
9981  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
9982  DB  15,89,205                           ; mulps         %xmm5,%xmm1
9983  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
9984  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
9985  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
9986  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
9987  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
9988  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
9989  DB  15,89,214                           ; mulps         %xmm6,%xmm2
9990  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
9991  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
9992  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
9993  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
9994  DB  15,89,223                           ; mulps         %xmm7,%xmm3
9995  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
9996  DB  72,173                              ; lods          %ds:(%rsi),%rax
9997  DB  255,224                             ; jmpq          *%rax
9998
9999PUBLIC _sk_plus__sse41
10000_sk_plus__sse41 LABEL PROC
10001  DB  15,88,196                           ; addps         %xmm4,%xmm0
10002  DB  15,88,205                           ; addps         %xmm5,%xmm1
10003  DB  15,88,214                           ; addps         %xmm6,%xmm2
10004  DB  15,88,223                           ; addps         %xmm7,%xmm3
10005  DB  72,173                              ; lods          %ds:(%rsi),%rax
10006  DB  255,224                             ; jmpq          *%rax
10007
10008PUBLIC _sk_screen_sse41
10009_sk_screen_sse41 LABEL PROC
10010  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10011  DB  68,15,88,196                        ; addps         %xmm4,%xmm8
10012  DB  15,89,196                           ; mulps         %xmm4,%xmm0
10013  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
10014  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
10015  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
10016  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10017  DB  68,15,92,201                        ; subps         %xmm1,%xmm9
10018  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
10019  DB  68,15,88,214                        ; addps         %xmm6,%xmm10
10020  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10021  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
10022  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
10023  DB  68,15,88,223                        ; addps         %xmm7,%xmm11
10024  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10025  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
10026  DB  72,173                              ; lods          %ds:(%rsi),%rax
10027  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10028  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
10029  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
10030  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
10031  DB  255,224                             ; jmpq          *%rax
10032
10033PUBLIC _sk_xor__sse41
10034_sk_xor__sse41 LABEL PROC
10035  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
10036  DB  15,40,29,78,54,0,0                  ; movaps        0x364e(%rip),%xmm3        # 3a30 <_sk_callback_sse41+0x14a>
10037  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10038  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
10039  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
10040  DB  65,15,92,216                        ; subps         %xmm8,%xmm3
10041  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
10042  DB  68,15,89,212                        ; mulps         %xmm4,%xmm10
10043  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
10044  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
10045  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
10046  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
10047  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
10048  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
10049  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
10050  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
10051  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
10052  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
10053  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10054  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
10055  DB  72,173                              ; lods          %ds:(%rsi),%rax
10056  DB  255,224                             ; jmpq          *%rax
10057
10058PUBLIC _sk_darken_sse41
10059_sk_darken_sse41 LABEL PROC
10060  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
10061  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
10062  DB  15,88,196                           ; addps         %xmm4,%xmm0
10063  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
10064  DB  15,40,203                           ; movaps        %xmm3,%xmm1
10065  DB  15,89,204                           ; mulps         %xmm4,%xmm1
10066  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
10067  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
10068  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
10069  DB  15,88,205                           ; addps         %xmm5,%xmm1
10070  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
10071  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10072  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
10073  DB  69,15,95,193                        ; maxps         %xmm9,%xmm8
10074  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
10075  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
10076  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
10077  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10078  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10079  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10080  DB  65,15,95,209                        ; maxps         %xmm9,%xmm2
10081  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
10082  DB  15,40,21,185,53,0,0                 ; movaps        0x35b9(%rip),%xmm2        # 3a40 <_sk_callback_sse41+0x15a>
10083  DB  15,92,211                           ; subps         %xmm3,%xmm2
10084  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10085  DB  15,88,218                           ; addps         %xmm2,%xmm3
10086  DB  72,173                              ; lods          %ds:(%rsi),%rax
10087  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
10088  DB  255,224                             ; jmpq          *%rax
10089
10090PUBLIC _sk_lighten_sse41
10091_sk_lighten_sse41 LABEL PROC
10092  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
10093  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
10094  DB  15,88,196                           ; addps         %xmm4,%xmm0
10095  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
10096  DB  15,40,203                           ; movaps        %xmm3,%xmm1
10097  DB  15,89,204                           ; mulps         %xmm4,%xmm1
10098  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
10099  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
10100  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
10101  DB  15,88,205                           ; addps         %xmm5,%xmm1
10102  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
10103  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10104  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
10105  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
10106  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
10107  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
10108  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
10109  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10110  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10111  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10112  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
10113  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
10114  DB  15,40,21,94,53,0,0                  ; movaps        0x355e(%rip),%xmm2        # 3a50 <_sk_callback_sse41+0x16a>
10115  DB  15,92,211                           ; subps         %xmm3,%xmm2
10116  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10117  DB  15,88,218                           ; addps         %xmm2,%xmm3
10118  DB  72,173                              ; lods          %ds:(%rsi),%rax
10119  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
10120  DB  255,224                             ; jmpq          *%rax
10121
10122PUBLIC _sk_difference_sse41
10123_sk_difference_sse41 LABEL PROC
10124  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
10125  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
10126  DB  15,88,196                           ; addps         %xmm4,%xmm0
10127  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
10128  DB  15,40,203                           ; movaps        %xmm3,%xmm1
10129  DB  15,89,204                           ; mulps         %xmm4,%xmm1
10130  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
10131  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
10132  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
10133  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
10134  DB  15,88,205                           ; addps         %xmm5,%xmm1
10135  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
10136  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10137  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
10138  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
10139  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
10140  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
10141  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
10142  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
10143  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10144  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10145  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10146  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
10147  DB  15,88,210                           ; addps         %xmm2,%xmm2
10148  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
10149  DB  15,40,21,248,52,0,0                 ; movaps        0x34f8(%rip),%xmm2        # 3a60 <_sk_callback_sse41+0x17a>
10150  DB  15,92,211                           ; subps         %xmm3,%xmm2
10151  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10152  DB  15,88,218                           ; addps         %xmm2,%xmm3
10153  DB  72,173                              ; lods          %ds:(%rsi),%rax
10154  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
10155  DB  255,224                             ; jmpq          *%rax
10156
10157PUBLIC _sk_exclusion_sse41
10158_sk_exclusion_sse41 LABEL PROC
10159  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10160  DB  15,88,196                           ; addps         %xmm4,%xmm0
10161  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
10162  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
10163  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
10164  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
10165  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
10166  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10167  DB  15,88,201                           ; addps         %xmm1,%xmm1
10168  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
10169  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
10170  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
10171  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10172  DB  15,88,210                           ; addps         %xmm2,%xmm2
10173  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
10174  DB  15,40,13,185,52,0,0                 ; movaps        0x34b9(%rip),%xmm1        # 3a70 <_sk_callback_sse41+0x18a>
10175  DB  15,92,203                           ; subps         %xmm3,%xmm1
10176  DB  15,89,207                           ; mulps         %xmm7,%xmm1
10177  DB  15,88,217                           ; addps         %xmm1,%xmm3
10178  DB  72,173                              ; lods          %ds:(%rsi),%rax
10179  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
10180  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
10181  DB  255,224                             ; jmpq          *%rax
10182
10183PUBLIC _sk_colorburn_sse41
10184_sk_colorburn_sse41 LABEL PROC
10185  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10186  DB  68,15,40,21,168,52,0,0              ; movaps        0x34a8(%rip),%xmm10        # 3a80 <_sk_callback_sse41+0x19a>
10187  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
10188  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
10189  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
10190  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
10191  DB  15,40,199                           ; movaps        %xmm7,%xmm0
10192  DB  15,92,196                           ; subps         %xmm4,%xmm0
10193  DB  15,89,195                           ; mulps         %xmm3,%xmm0
10194  DB  65,15,94,192                        ; divps         %xmm8,%xmm0
10195  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
10196  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
10197  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10198  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
10199  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
10200  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
10201  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
10202  DB  68,15,88,228                        ; addps         %xmm4,%xmm12
10203  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
10204  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10205  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
10206  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
10207  DB  102,69,15,56,20,232                 ; blendvps      %xmm0,%xmm8,%xmm13
10208  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
10209  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
10210  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10211  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
10212  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
10213  DB  102,69,15,56,20,196                 ; blendvps      %xmm0,%xmm12,%xmm8
10214  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
10215  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
10216  DB  15,40,199                           ; movaps        %xmm7,%xmm0
10217  DB  15,92,197                           ; subps         %xmm5,%xmm0
10218  DB  15,89,195                           ; mulps         %xmm3,%xmm0
10219  DB  15,94,193                           ; divps         %xmm1,%xmm0
10220  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10221  DB  68,15,93,232                        ; minps         %xmm0,%xmm13
10222  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
10223  DB  69,15,92,245                        ; subps         %xmm13,%xmm14
10224  DB  15,40,193                           ; movaps        %xmm1,%xmm0
10225  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
10226  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
10227  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
10228  DB  102,68,15,56,20,241                 ; blendvps      %xmm0,%xmm1,%xmm14
10229  DB  68,15,88,229                        ; addps         %xmm5,%xmm12
10230  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
10231  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10232  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
10233  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10234  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
10235  DB  102,65,15,56,20,204                 ; blendvps      %xmm0,%xmm12,%xmm1
10236  DB  15,40,199                           ; movaps        %xmm7,%xmm0
10237  DB  15,92,198                           ; subps         %xmm6,%xmm0
10238  DB  15,89,195                           ; mulps         %xmm3,%xmm0
10239  DB  15,94,194                           ; divps         %xmm2,%xmm0
10240  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
10241  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
10242  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10243  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
10244  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
10245  DB  68,15,194,202,0                     ; cmpeqps       %xmm2,%xmm9
10246  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
10247  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
10248  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
10249  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
10250  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
10251  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
10252  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10253  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
10254  DB  15,40,198                           ; movaps        %xmm6,%xmm0
10255  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
10256  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
10257  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
10258  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
10259  DB  72,173                              ; lods          %ds:(%rsi),%rax
10260  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10261  DB  255,224                             ; jmpq          *%rax
10262
10263PUBLIC _sk_colordodge_sse41
10264_sk_colordodge_sse41 LABEL PROC
10265  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10266  DB  68,15,40,21,134,51,0,0              ; movaps        0x3386(%rip),%xmm10        # 3a90 <_sk_callback_sse41+0x1aa>
10267  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
10268  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
10269  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
10270  DB  69,15,89,224                        ; mulps         %xmm8,%xmm12
10271  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10272  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
10273  DB  15,40,195                           ; movaps        %xmm3,%xmm0
10274  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
10275  DB  68,15,94,200                        ; divps         %xmm0,%xmm9
10276  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10277  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
10278  DB  69,15,93,241                        ; minps         %xmm9,%xmm14
10279  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10280  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
10281  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
10282  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
10283  DB  102,69,15,56,20,240                 ; blendvps      %xmm0,%xmm8,%xmm14
10284  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
10285  DB  68,15,88,228                        ; addps         %xmm4,%xmm12
10286  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
10287  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
10288  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
10289  DB  69,15,88,198                        ; addps         %xmm14,%xmm8
10290  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10291  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
10292  DB  102,69,15,56,20,196                 ; blendvps      %xmm0,%xmm12,%xmm8
10293  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
10294  DB  68,15,89,229                        ; mulps         %xmm5,%xmm12
10295  DB  15,40,195                           ; movaps        %xmm3,%xmm0
10296  DB  15,92,193                           ; subps         %xmm1,%xmm0
10297  DB  68,15,94,224                        ; divps         %xmm0,%xmm12
10298  DB  69,15,40,243                        ; movaps        %xmm11,%xmm14
10299  DB  68,15,89,241                        ; mulps         %xmm1,%xmm14
10300  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
10301  DB  15,40,193                           ; movaps        %xmm1,%xmm0
10302  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
10303  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
10304  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
10305  DB  102,68,15,56,20,233                 ; blendvps      %xmm0,%xmm1,%xmm13
10306  DB  68,15,88,245                        ; addps         %xmm5,%xmm14
10307  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
10308  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10309  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
10310  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10311  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
10312  DB  102,65,15,56,20,206                 ; blendvps      %xmm0,%xmm14,%xmm1
10313  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
10314  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
10315  DB  15,40,195                           ; movaps        %xmm3,%xmm0
10316  DB  15,92,194                           ; subps         %xmm2,%xmm0
10317  DB  68,15,94,224                        ; divps         %xmm0,%xmm12
10318  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10319  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
10320  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
10321  DB  15,40,194                           ; movaps        %xmm2,%xmm0
10322  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
10323  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
10324  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
10325  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
10326  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
10327  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10328  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
10329  DB  68,15,194,206,0                     ; cmpeqps       %xmm6,%xmm9
10330  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
10331  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
10332  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
10333  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
10334  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
10335  DB  72,173                              ; lods          %ds:(%rsi),%rax
10336  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10337  DB  255,224                             ; jmpq          *%rax
10338
10339PUBLIC _sk_hardlight_sse41
10340_sk_hardlight_sse41 LABEL PROC
10341  DB  72,131,236,24                       ; sub           $0x18,%rsp
10342  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
10343  DB  68,15,40,229                        ; movaps        %xmm5,%xmm12
10344  DB  15,40,244                           ; movaps        %xmm4,%xmm6
10345  DB  15,40,227                           ; movaps        %xmm3,%xmm4
10346  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
10347  DB  68,15,40,21,92,50,0,0               ; movaps        0x325c(%rip),%xmm10        # 3aa0 <_sk_callback_sse41+0x1ba>
10348  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
10349  DB  15,92,239                           ; subps         %xmm7,%xmm5
10350  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10351  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
10352  DB  68,15,92,212                        ; subps         %xmm4,%xmm10
10353  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
10354  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
10355  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
10356  DB  68,15,40,252                        ; movaps        %xmm4,%xmm15
10357  DB  69,15,92,249                        ; subps         %xmm9,%xmm15
10358  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10359  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10360  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
10361  DB  15,40,199                           ; movaps        %xmm7,%xmm0
10362  DB  15,92,198                           ; subps         %xmm6,%xmm0
10363  DB  65,15,89,199                        ; mulps         %xmm15,%xmm0
10364  DB  15,88,192                           ; addps         %xmm0,%xmm0
10365  DB  68,15,40,251                        ; movaps        %xmm3,%xmm15
10366  DB  68,15,92,248                        ; subps         %xmm0,%xmm15
10367  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
10368  DB  15,88,192                           ; addps         %xmm0,%xmm0
10369  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
10370  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10371  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
10372  DB  102,69,15,56,20,249                 ; blendvps      %xmm0,%xmm9,%xmm15
10373  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
10374  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
10375  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10376  DB  15,92,193                           ; subps         %xmm1,%xmm0
10377  DB  69,15,40,204                        ; movaps        %xmm12,%xmm9
10378  DB  69,15,92,233                        ; subps         %xmm9,%xmm13
10379  DB  68,15,89,232                        ; mulps         %xmm0,%xmm13
10380  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
10381  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
10382  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
10383  DB  15,40,193                           ; movaps        %xmm1,%xmm0
10384  DB  15,88,192                           ; addps         %xmm0,%xmm0
10385  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
10386  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
10387  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
10388  DB  15,88,201                           ; addps         %xmm1,%xmm1
10389  DB  102,68,15,56,20,225                 ; blendvps      %xmm0,%xmm1,%xmm12
10390  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
10391  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
10392  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
10393  DB  69,15,88,199                        ; addps         %xmm15,%xmm8
10394  DB  65,15,89,205                        ; mulps         %xmm13,%xmm1
10395  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
10396  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
10397  DB  15,89,234                           ; mulps         %xmm2,%xmm5
10398  DB  68,15,40,28,36                      ; movaps        (%rsp),%xmm11
10399  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
10400  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
10401  DB  15,40,194                           ; movaps        %xmm2,%xmm0
10402  DB  15,88,192                           ; addps         %xmm0,%xmm0
10403  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
10404  DB  15,40,236                           ; movaps        %xmm4,%xmm5
10405  DB  15,92,234                           ; subps         %xmm2,%xmm5
10406  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
10407  DB  15,88,210                           ; addps         %xmm2,%xmm2
10408  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
10409  DB  68,15,89,245                        ; mulps         %xmm5,%xmm14
10410  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
10411  DB  65,15,92,222                        ; subps         %xmm14,%xmm3
10412  DB  102,15,56,20,218                    ; blendvps      %xmm0,%xmm2,%xmm3
10413  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
10414  DB  65,15,88,226                        ; addps         %xmm10,%xmm4
10415  DB  72,173                              ; lods          %ds:(%rsi),%rax
10416  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10417  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
10418  DB  15,40,220                           ; movaps        %xmm4,%xmm3
10419  DB  15,40,230                           ; movaps        %xmm6,%xmm4
10420  DB  65,15,40,237                        ; movaps        %xmm13,%xmm5
10421  DB  65,15,40,243                        ; movaps        %xmm11,%xmm6
10422  DB  72,131,196,24                       ; add           $0x18,%rsp
10423  DB  255,224                             ; jmpq          *%rax
10424
10425PUBLIC _sk_overlay_sse41
10426_sk_overlay_sse41 LABEL PROC
10427  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
10428  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
10429  DB  68,15,40,21,62,49,0,0               ; movaps        0x313e(%rip),%xmm10        # 3ab0 <_sk_callback_sse41+0x1ca>
10430  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
10431  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
10432  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
10433  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
10434  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
10435  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
10436  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
10437  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
10438  DB  68,15,40,235                        ; movaps        %xmm3,%xmm13
10439  DB  69,15,92,238                        ; subps         %xmm14,%xmm13
10440  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
10441  DB  15,40,207                           ; movaps        %xmm7,%xmm1
10442  DB  15,92,204                           ; subps         %xmm4,%xmm1
10443  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10444  DB  15,88,192                           ; addps         %xmm0,%xmm0
10445  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10446  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
10447  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
10448  DB  68,15,89,231                        ; mulps         %xmm7,%xmm12
10449  DB  65,15,89,205                        ; mulps         %xmm13,%xmm1
10450  DB  15,88,201                           ; addps         %xmm1,%xmm1
10451  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
10452  DB  68,15,92,233                        ; subps         %xmm1,%xmm13
10453  DB  102,69,15,56,20,238                 ; blendvps      %xmm0,%xmm14,%xmm13
10454  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
10455  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
10456  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
10457  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
10458  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10459  DB  15,88,200                           ; addps         %xmm0,%xmm1
10460  DB  68,15,40,235                        ; movaps        %xmm3,%xmm13
10461  DB  69,15,92,233                        ; subps         %xmm9,%xmm13
10462  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
10463  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
10464  DB  68,15,92,245                        ; subps         %xmm5,%xmm14
10465  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10466  DB  15,88,192                           ; addps         %xmm0,%xmm0
10467  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10468  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
10469  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
10470  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
10471  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
10472  DB  69,15,92,238                        ; subps         %xmm14,%xmm13
10473  DB  102,69,15,56,20,233                 ; blendvps      %xmm0,%xmm9,%xmm13
10474  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
10475  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
10476  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
10477  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10478  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
10479  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
10480  DB  68,15,92,218                        ; subps         %xmm2,%xmm11
10481  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10482  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10483  DB  68,15,92,238                        ; subps         %xmm6,%xmm13
10484  DB  15,40,198                           ; movaps        %xmm6,%xmm0
10485  DB  15,88,192                           ; addps         %xmm0,%xmm0
10486  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10487  DB  15,88,210                           ; addps         %xmm2,%xmm2
10488  DB  69,15,89,235                        ; mulps         %xmm11,%xmm13
10489  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
10490  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
10491  DB  102,68,15,56,20,226                 ; blendvps      %xmm0,%xmm2,%xmm12
10492  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
10493  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
10494  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
10495  DB  72,173                              ; lods          %ds:(%rsi),%rax
10496  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10497  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
10498  DB  255,224                             ; jmpq          *%rax
10499
10500PUBLIC _sk_softlight_sse41
10501_sk_softlight_sse41 LABEL PROC
10502  DB  72,131,236,72                       ; sub           $0x48,%rsp
10503  DB  15,41,116,36,32                     ; movaps        %xmm6,0x20(%rsp)
10504  DB  15,40,244                           ; movaps        %xmm4,%xmm6
10505  DB  15,41,84,36,48                      ; movaps        %xmm2,0x30(%rsp)
10506  DB  15,41,76,36,16                      ; movaps        %xmm1,0x10(%rsp)
10507  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10508  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
10509  DB  68,15,194,207,1                     ; cmpltps       %xmm7,%xmm9
10510  DB  15,40,198                           ; movaps        %xmm6,%xmm0
10511  DB  15,94,199                           ; divps         %xmm7,%xmm0
10512  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
10513  DB  15,40,13,17,48,0,0                  ; movaps        0x3011(%rip),%xmm1        # 3ac0 <_sk_callback_sse41+0x1da>
10514  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
10515  DB  68,15,92,208                        ; subps         %xmm0,%xmm10
10516  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
10517  DB  68,15,40,248                        ; movaps        %xmm0,%xmm15
10518  DB  15,82,208                           ; rsqrtps       %xmm0,%xmm2
10519  DB  68,15,83,218                        ; rcpps         %xmm2,%xmm11
10520  DB  68,15,92,216                        ; subps         %xmm0,%xmm11
10521  DB  15,88,192                           ; addps         %xmm0,%xmm0
10522  DB  15,88,192                           ; addps         %xmm0,%xmm0
10523  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10524  DB  15,89,210                           ; mulps         %xmm2,%xmm2
10525  DB  15,88,208                           ; addps         %xmm0,%xmm2
10526  DB  68,15,40,45,239,47,0,0              ; movaps        0x2fef(%rip),%xmm13        # 3ad0 <_sk_callback_sse41+0x1ea>
10527  DB  69,15,88,245                        ; addps         %xmm13,%xmm14
10528  DB  68,15,89,242                        ; mulps         %xmm2,%xmm14
10529  DB  68,15,40,37,239,47,0,0              ; movaps        0x2fef(%rip),%xmm12        # 3ae0 <_sk_callback_sse41+0x1fa>
10530  DB  69,15,89,252                        ; mulps         %xmm12,%xmm15
10531  DB  69,15,88,254                        ; addps         %xmm14,%xmm15
10532  DB  15,40,198                           ; movaps        %xmm6,%xmm0
10533  DB  15,88,192                           ; addps         %xmm0,%xmm0
10534  DB  15,88,192                           ; addps         %xmm0,%xmm0
10535  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10536  DB  102,69,15,56,20,223                 ; blendvps      %xmm0,%xmm15,%xmm11
10537  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10538  DB  15,88,192                           ; addps         %xmm0,%xmm0
10539  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10540  DB  15,92,211                           ; subps         %xmm3,%xmm2
10541  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
10542  DB  68,15,88,211                        ; addps         %xmm3,%xmm10
10543  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
10544  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10545  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
10546  DB  15,40,211                           ; movaps        %xmm3,%xmm2
10547  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10548  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
10549  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
10550  DB  102,69,15,56,20,218                 ; blendvps      %xmm0,%xmm10,%xmm11
10551  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
10552  DB  68,15,94,215                        ; divps         %xmm7,%xmm10
10553  DB  69,15,84,209                        ; andps         %xmm9,%xmm10
10554  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
10555  DB  15,88,192                           ; addps         %xmm0,%xmm0
10556  DB  15,88,192                           ; addps         %xmm0,%xmm0
10557  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10558  DB  15,89,210                           ; mulps         %xmm2,%xmm2
10559  DB  15,88,208                           ; addps         %xmm0,%xmm2
10560  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
10561  DB  65,15,88,197                        ; addps         %xmm13,%xmm0
10562  DB  15,89,194                           ; mulps         %xmm2,%xmm0
10563  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
10564  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
10565  DB  15,88,208                           ; addps         %xmm0,%xmm2
10566  DB  65,15,82,194                        ; rsqrtps       %xmm10,%xmm0
10567  DB  68,15,83,240                        ; rcpps         %xmm0,%xmm14
10568  DB  69,15,92,242                        ; subps         %xmm10,%xmm14
10569  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10570  DB  15,40,229                           ; movaps        %xmm5,%xmm4
10571  DB  15,88,192                           ; addps         %xmm0,%xmm0
10572  DB  15,88,192                           ; addps         %xmm0,%xmm0
10573  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10574  DB  102,68,15,56,20,242                 ; blendvps      %xmm0,%xmm2,%xmm14
10575  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
10576  DB  69,15,92,250                        ; subps         %xmm10,%xmm15
10577  DB  15,40,108,36,16                     ; movaps        0x10(%rsp),%xmm5
10578  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10579  DB  15,88,192                           ; addps         %xmm0,%xmm0
10580  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10581  DB  15,92,211                           ; subps         %xmm3,%xmm2
10582  DB  68,15,89,250                        ; mulps         %xmm2,%xmm15
10583  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10584  DB  68,15,89,242                        ; mulps         %xmm2,%xmm14
10585  DB  15,40,211                           ; movaps        %xmm3,%xmm2
10586  DB  15,41,36,36                         ; movaps        %xmm4,(%rsp)
10587  DB  15,89,212                           ; mulps         %xmm4,%xmm2
10588  DB  68,15,88,242                        ; addps         %xmm2,%xmm14
10589  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
10590  DB  68,15,89,252                        ; mulps         %xmm4,%xmm15
10591  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
10592  DB  102,69,15,56,20,247                 ; blendvps      %xmm0,%xmm15,%xmm14
10593  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
10594  DB  15,40,100,36,32                     ; movaps        0x20(%rsp),%xmm4
10595  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10596  DB  15,94,199                           ; divps         %xmm7,%xmm0
10597  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
10598  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
10599  DB  15,92,200                           ; subps         %xmm0,%xmm1
10600  DB  68,15,88,232                        ; addps         %xmm0,%xmm13
10601  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
10602  DB  15,82,208                           ; rsqrtps       %xmm0,%xmm2
10603  DB  68,15,83,202                        ; rcpps         %xmm2,%xmm9
10604  DB  68,15,92,200                        ; subps         %xmm0,%xmm9
10605  DB  15,88,192                           ; addps         %xmm0,%xmm0
10606  DB  15,88,192                           ; addps         %xmm0,%xmm0
10607  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10608  DB  15,89,210                           ; mulps         %xmm2,%xmm2
10609  DB  15,88,208                           ; addps         %xmm0,%xmm2
10610  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
10611  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
10612  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10613  DB  15,88,192                           ; addps         %xmm0,%xmm0
10614  DB  15,88,192                           ; addps         %xmm0,%xmm0
10615  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10616  DB  102,69,15,56,20,204                 ; blendvps      %xmm0,%xmm12,%xmm9
10617  DB  68,15,40,100,36,48                  ; movaps        0x30(%rsp),%xmm12
10618  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
10619  DB  15,88,192                           ; addps         %xmm0,%xmm0
10620  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10621  DB  15,92,211                           ; subps         %xmm3,%xmm2
10622  DB  15,89,202                           ; mulps         %xmm2,%xmm1
10623  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10624  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
10625  DB  15,40,211                           ; movaps        %xmm3,%xmm2
10626  DB  15,89,212                           ; mulps         %xmm4,%xmm2
10627  DB  68,15,88,202                        ; addps         %xmm2,%xmm9
10628  DB  15,88,203                           ; addps         %xmm3,%xmm1
10629  DB  15,89,204                           ; mulps         %xmm4,%xmm1
10630  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
10631  DB  102,68,15,56,20,201                 ; blendvps      %xmm0,%xmm1,%xmm9
10632  DB  68,15,92,255                        ; subps         %xmm7,%xmm15
10633  DB  69,15,89,199                        ; mulps         %xmm15,%xmm8
10634  DB  15,40,205                           ; movaps        %xmm5,%xmm1
10635  DB  65,15,89,207                        ; mulps         %xmm15,%xmm1
10636  DB  69,15,89,252                        ; mulps         %xmm12,%xmm15
10637  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
10638  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
10639  DB  15,89,198                           ; mulps         %xmm6,%xmm0
10640  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
10641  DB  69,15,88,195                        ; addps         %xmm11,%xmm8
10642  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
10643  DB  15,40,44,36                         ; movaps        (%rsp),%xmm5
10644  DB  15,89,197                           ; mulps         %xmm5,%xmm0
10645  DB  15,88,200                           ; addps         %xmm0,%xmm1
10646  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
10647  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
10648  DB  15,89,196                           ; mulps         %xmm4,%xmm0
10649  DB  15,40,212                           ; movaps        %xmm4,%xmm2
10650  DB  65,15,88,199                        ; addps         %xmm15,%xmm0
10651  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
10652  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
10653  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
10654  DB  72,173                              ; lods          %ds:(%rsi),%rax
10655  DB  15,40,230                           ; movaps        %xmm6,%xmm4
10656  DB  15,40,242                           ; movaps        %xmm2,%xmm6
10657  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10658  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
10659  DB  72,131,196,72                       ; add           $0x48,%rsp
10660  DB  255,224                             ; jmpq          *%rax
10661
10662PUBLIC _sk_clamp_0_sse41
10663_sk_clamp_0_sse41 LABEL PROC
10664  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
10665  DB  65,15,95,192                        ; maxps         %xmm8,%xmm0
10666  DB  65,15,95,200                        ; maxps         %xmm8,%xmm1
10667  DB  65,15,95,208                        ; maxps         %xmm8,%xmm2
10668  DB  65,15,95,216                        ; maxps         %xmm8,%xmm3
10669  DB  72,173                              ; lods          %ds:(%rsi),%rax
10670  DB  255,224                             ; jmpq          *%rax
10671
10672PUBLIC _sk_clamp_1_sse41
10673_sk_clamp_1_sse41 LABEL PROC
10674  DB  68,15,40,5,255,45,0,0               ; movaps        0x2dff(%rip),%xmm8        # 3af0 <_sk_callback_sse41+0x20a>
10675  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
10676  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
10677  DB  65,15,93,208                        ; minps         %xmm8,%xmm2
10678  DB  65,15,93,216                        ; minps         %xmm8,%xmm3
10679  DB  72,173                              ; lods          %ds:(%rsi),%rax
10680  DB  255,224                             ; jmpq          *%rax
10681
10682PUBLIC _sk_clamp_a_sse41
10683_sk_clamp_a_sse41 LABEL PROC
10684  DB  15,93,29,244,45,0,0                 ; minps         0x2df4(%rip),%xmm3        # 3b00 <_sk_callback_sse41+0x21a>
10685  DB  15,93,195                           ; minps         %xmm3,%xmm0
10686  DB  15,93,203                           ; minps         %xmm3,%xmm1
10687  DB  15,93,211                           ; minps         %xmm3,%xmm2
10688  DB  72,173                              ; lods          %ds:(%rsi),%rax
10689  DB  255,224                             ; jmpq          *%rax
10690
10691PUBLIC _sk_set_rgb_sse41
10692_sk_set_rgb_sse41 LABEL PROC
10693  DB  72,173                              ; lods          %ds:(%rsi),%rax
10694  DB  243,15,16,0                         ; movss         (%rax),%xmm0
10695  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
10696  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
10697  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
10698  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
10699  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
10700  DB  72,173                              ; lods          %ds:(%rsi),%rax
10701  DB  255,224                             ; jmpq          *%rax
10702
10703PUBLIC _sk_swap_rb_sse41
10704_sk_swap_rb_sse41 LABEL PROC
10705  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10706  DB  72,173                              ; lods          %ds:(%rsi),%rax
10707  DB  15,40,194                           ; movaps        %xmm2,%xmm0
10708  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
10709  DB  255,224                             ; jmpq          *%rax
10710
10711PUBLIC _sk_swap_sse41
10712_sk_swap_sse41 LABEL PROC
10713  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
10714  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
10715  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
10716  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
10717  DB  72,173                              ; lods          %ds:(%rsi),%rax
10718  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10719  DB  15,40,205                           ; movaps        %xmm5,%xmm1
10720  DB  15,40,214                           ; movaps        %xmm6,%xmm2
10721  DB  15,40,223                           ; movaps        %xmm7,%xmm3
10722  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
10723  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
10724  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
10725  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
10726  DB  255,224                             ; jmpq          *%rax
10727
10728PUBLIC _sk_move_src_dst_sse41
10729_sk_move_src_dst_sse41 LABEL PROC
10730  DB  72,173                              ; lods          %ds:(%rsi),%rax
10731  DB  15,40,224                           ; movaps        %xmm0,%xmm4
10732  DB  15,40,233                           ; movaps        %xmm1,%xmm5
10733  DB  15,40,242                           ; movaps        %xmm2,%xmm6
10734  DB  15,40,251                           ; movaps        %xmm3,%xmm7
10735  DB  255,224                             ; jmpq          *%rax
10736
10737PUBLIC _sk_move_dst_src_sse41
10738_sk_move_dst_src_sse41 LABEL PROC
10739  DB  72,173                              ; lods          %ds:(%rsi),%rax
10740  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10741  DB  15,40,205                           ; movaps        %xmm5,%xmm1
10742  DB  15,40,214                           ; movaps        %xmm6,%xmm2
10743  DB  15,40,223                           ; movaps        %xmm7,%xmm3
10744  DB  255,224                             ; jmpq          *%rax
10745
10746PUBLIC _sk_premul_sse41
10747_sk_premul_sse41 LABEL PROC
10748  DB  15,89,195                           ; mulps         %xmm3,%xmm0
10749  DB  15,89,203                           ; mulps         %xmm3,%xmm1
10750  DB  15,89,211                           ; mulps         %xmm3,%xmm2
10751  DB  72,173                              ; lods          %ds:(%rsi),%rax
10752  DB  255,224                             ; jmpq          *%rax
10753
10754PUBLIC _sk_unpremul_sse41
10755_sk_unpremul_sse41 LABEL PROC
10756  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
10757  DB  68,15,40,13,95,45,0,0               ; movaps        0x2d5f(%rip),%xmm9        # 3b10 <_sk_callback_sse41+0x22a>
10758  DB  68,15,94,203                        ; divps         %xmm3,%xmm9
10759  DB  68,15,194,195,4                     ; cmpneqps      %xmm3,%xmm8
10760  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
10761  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
10762  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
10763  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
10764  DB  72,173                              ; lods          %ds:(%rsi),%rax
10765  DB  255,224                             ; jmpq          *%rax
10766
10767PUBLIC _sk_from_srgb_sse41
10768_sk_from_srgb_sse41 LABEL PROC
10769  DB  68,15,40,29,74,45,0,0               ; movaps        0x2d4a(%rip),%xmm11        # 3b20 <_sk_callback_sse41+0x23a>
10770  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
10771  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
10772  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
10773  DB  69,15,89,210                        ; mulps         %xmm10,%xmm10
10774  DB  68,15,40,37,66,45,0,0               ; movaps        0x2d42(%rip),%xmm12        # 3b30 <_sk_callback_sse41+0x24a>
10775  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10776  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
10777  DB  68,15,40,45,66,45,0,0               ; movaps        0x2d42(%rip),%xmm13        # 3b40 <_sk_callback_sse41+0x25a>
10778  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
10779  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
10780  DB  68,15,40,53,66,45,0,0               ; movaps        0x2d42(%rip),%xmm14        # 3b50 <_sk_callback_sse41+0x26a>
10781  DB  69,15,88,198                        ; addps         %xmm14,%xmm8
10782  DB  68,15,40,61,70,45,0,0               ; movaps        0x2d46(%rip),%xmm15        # 3b60 <_sk_callback_sse41+0x27a>
10783  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
10784  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
10785  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
10786  DB  69,15,89,211                        ; mulps         %xmm11,%xmm10
10787  DB  15,40,193                           ; movaps        %xmm1,%xmm0
10788  DB  15,89,192                           ; mulps         %xmm0,%xmm0
10789  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
10790  DB  69,15,89,204                        ; mulps         %xmm12,%xmm9
10791  DB  69,15,88,205                        ; addps         %xmm13,%xmm9
10792  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
10793  DB  69,15,88,206                        ; addps         %xmm14,%xmm9
10794  DB  65,15,194,207,1                     ; cmpltps       %xmm15,%xmm1
10795  DB  15,40,193                           ; movaps        %xmm1,%xmm0
10796  DB  102,69,15,56,20,202                 ; blendvps      %xmm0,%xmm10,%xmm9
10797  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
10798  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
10799  DB  69,15,89,210                        ; mulps         %xmm10,%xmm10
10800  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
10801  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
10802  DB  69,15,89,212                        ; mulps         %xmm12,%xmm10
10803  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
10804  DB  65,15,194,215,1                     ; cmpltps       %xmm15,%xmm2
10805  DB  15,40,194                           ; movaps        %xmm2,%xmm0
10806  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
10807  DB  72,173                              ; lods          %ds:(%rsi),%rax
10808  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10809  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
10810  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
10811  DB  255,224                             ; jmpq          *%rax
10812
10813PUBLIC _sk_to_srgb_sse41
10814_sk_to_srgb_sse41 LABEL PROC
10815  DB  72,131,236,24                       ; sub           $0x18,%rsp
10816  DB  15,41,60,36                         ; movaps        %xmm7,(%rsp)
10817  DB  15,40,254                           ; movaps        %xmm6,%xmm7
10818  DB  15,40,245                           ; movaps        %xmm5,%xmm6
10819  DB  15,40,236                           ; movaps        %xmm4,%xmm5
10820  DB  15,40,227                           ; movaps        %xmm3,%xmm4
10821  DB  15,40,218                           ; movaps        %xmm2,%xmm3
10822  DB  15,40,209                           ; movaps        %xmm1,%xmm2
10823  DB  68,15,82,192                        ; rsqrtps       %xmm0,%xmm8
10824  DB  69,15,83,200                        ; rcpps         %xmm8,%xmm9
10825  DB  69,15,82,208                        ; rsqrtps       %xmm8,%xmm10
10826  DB  68,15,40,29,179,44,0,0              ; movaps        0x2cb3(%rip),%xmm11        # 3b70 <_sk_callback_sse41+0x28a>
10827  DB  15,40,200                           ; movaps        %xmm0,%xmm1
10828  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
10829  DB  68,15,40,37,180,44,0,0              ; movaps        0x2cb4(%rip),%xmm12        # 3b80 <_sk_callback_sse41+0x29a>
10830  DB  69,15,89,204                        ; mulps         %xmm12,%xmm9
10831  DB  68,15,40,45,184,44,0,0              ; movaps        0x2cb8(%rip),%xmm13        # 3b90 <_sk_callback_sse41+0x2aa>
10832  DB  69,15,88,205                        ; addps         %xmm13,%xmm9
10833  DB  68,15,40,53,188,44,0,0              ; movaps        0x2cbc(%rip),%xmm14        # 3ba0 <_sk_callback_sse41+0x2ba>
10834  DB  69,15,89,214                        ; mulps         %xmm14,%xmm10
10835  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
10836  DB  68,15,40,5,188,44,0,0               ; movaps        0x2cbc(%rip),%xmm8        # 3bb0 <_sk_callback_sse41+0x2ca>
10837  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
10838  DB  69,15,93,202                        ; minps         %xmm10,%xmm9
10839  DB  68,15,40,61,188,44,0,0              ; movaps        0x2cbc(%rip),%xmm15        # 3bc0 <_sk_callback_sse41+0x2da>
10840  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
10841  DB  102,68,15,56,20,201                 ; blendvps      %xmm0,%xmm1,%xmm9
10842  DB  15,82,194                           ; rsqrtps       %xmm2,%xmm0
10843  DB  15,83,200                           ; rcpps         %xmm0,%xmm1
10844  DB  15,82,192                           ; rsqrtps       %xmm0,%xmm0
10845  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
10846  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
10847  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
10848  DB  15,88,193                           ; addps         %xmm1,%xmm0
10849  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
10850  DB  68,15,93,208                        ; minps         %xmm0,%xmm10
10851  DB  15,40,202                           ; movaps        %xmm2,%xmm1
10852  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
10853  DB  65,15,194,215,1                     ; cmpltps       %xmm15,%xmm2
10854  DB  15,40,194                           ; movaps        %xmm2,%xmm0
10855  DB  102,68,15,56,20,209                 ; blendvps      %xmm0,%xmm1,%xmm10
10856  DB  15,82,195                           ; rsqrtps       %xmm3,%xmm0
10857  DB  15,83,200                           ; rcpps         %xmm0,%xmm1
10858  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
10859  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
10860  DB  15,82,192                           ; rsqrtps       %xmm0,%xmm0
10861  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
10862  DB  15,88,193                           ; addps         %xmm1,%xmm0
10863  DB  68,15,93,192                        ; minps         %xmm0,%xmm8
10864  DB  68,15,89,219                        ; mulps         %xmm3,%xmm11
10865  DB  65,15,194,223,1                     ; cmpltps       %xmm15,%xmm3
10866  DB  15,40,195                           ; movaps        %xmm3,%xmm0
10867  DB  102,69,15,56,20,195                 ; blendvps      %xmm0,%xmm11,%xmm8
10868  DB  72,173                              ; lods          %ds:(%rsi),%rax
10869  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
10870  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
10871  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
10872  DB  15,40,220                           ; movaps        %xmm4,%xmm3
10873  DB  15,40,229                           ; movaps        %xmm5,%xmm4
10874  DB  15,40,238                           ; movaps        %xmm6,%xmm5
10875  DB  15,40,247                           ; movaps        %xmm7,%xmm6
10876  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
10877  DB  72,131,196,24                       ; add           $0x18,%rsp
10878  DB  255,224                             ; jmpq          *%rax
10879
10880PUBLIC _sk_rgb_to_hsl_sse41
10881_sk_rgb_to_hsl_sse41 LABEL PROC
10882  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
10883  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10884  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
10885  DB  69,15,95,217                        ; maxps         %xmm9,%xmm11
10886  DB  68,15,95,218                        ; maxps         %xmm2,%xmm11
10887  DB  69,15,40,224                        ; movaps        %xmm8,%xmm12
10888  DB  69,15,93,225                        ; minps         %xmm9,%xmm12
10889  DB  68,15,93,226                        ; minps         %xmm2,%xmm12
10890  DB  65,15,40,203                        ; movaps        %xmm11,%xmm1
10891  DB  65,15,92,204                        ; subps         %xmm12,%xmm1
10892  DB  68,15,40,53,10,44,0,0               ; movaps        0x2c0a(%rip),%xmm14        # 3bd0 <_sk_callback_sse41+0x2ea>
10893  DB  68,15,94,241                        ; divps         %xmm1,%xmm14
10894  DB  69,15,40,211                        ; movaps        %xmm11,%xmm10
10895  DB  69,15,194,208,0                     ; cmpeqps       %xmm8,%xmm10
10896  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
10897  DB  15,92,194                           ; subps         %xmm2,%xmm0
10898  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
10899  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
10900  DB  68,15,194,250,1                     ; cmpltps       %xmm2,%xmm15
10901  DB  68,15,84,61,241,43,0,0              ; andps         0x2bf1(%rip),%xmm15        # 3be0 <_sk_callback_sse41+0x2fa>
10902  DB  68,15,88,248                        ; addps         %xmm0,%xmm15
10903  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
10904  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
10905  DB  65,15,92,208                        ; subps         %xmm8,%xmm2
10906  DB  65,15,89,214                        ; mulps         %xmm14,%xmm2
10907  DB  68,15,40,45,228,43,0,0              ; movaps        0x2be4(%rip),%xmm13        # 3bf0 <_sk_callback_sse41+0x30a>
10908  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
10909  DB  69,15,92,193                        ; subps         %xmm9,%xmm8
10910  DB  69,15,89,198                        ; mulps         %xmm14,%xmm8
10911  DB  68,15,88,5,224,43,0,0               ; addps         0x2be0(%rip),%xmm8        # 3c00 <_sk_callback_sse41+0x31a>
10912  DB  102,68,15,56,20,194                 ; blendvps      %xmm0,%xmm2,%xmm8
10913  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
10914  DB  102,69,15,56,20,199                 ; blendvps      %xmm0,%xmm15,%xmm8
10915  DB  68,15,89,5,216,43,0,0               ; mulps         0x2bd8(%rip),%xmm8        # 3c10 <_sk_callback_sse41+0x32a>
10916  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
10917  DB  69,15,194,204,4                     ; cmpneqps      %xmm12,%xmm9
10918  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
10919  DB  69,15,92,235                        ; subps         %xmm11,%xmm13
10920  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
10921  DB  15,40,5,204,43,0,0                  ; movaps        0x2bcc(%rip),%xmm0        # 3c20 <_sk_callback_sse41+0x33a>
10922  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
10923  DB  15,89,208                           ; mulps         %xmm0,%xmm2
10924  DB  15,194,194,1                        ; cmpltps       %xmm2,%xmm0
10925  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
10926  DB  102,69,15,56,20,221                 ; blendvps      %xmm0,%xmm13,%xmm11
10927  DB  65,15,94,203                        ; divps         %xmm11,%xmm1
10928  DB  65,15,84,201                        ; andps         %xmm9,%xmm1
10929  DB  72,173                              ; lods          %ds:(%rsi),%rax
10930  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10931  DB  255,224                             ; jmpq          *%rax
10932
10933PUBLIC _sk_hsl_to_rgb_sse41
10934_sk_hsl_to_rgb_sse41 LABEL PROC
10935  DB  72,131,236,104                      ; sub           $0x68,%rsp
10936  DB  15,41,124,36,80                     ; movaps        %xmm7,0x50(%rsp)
10937  DB  15,41,116,36,64                     ; movaps        %xmm6,0x40(%rsp)
10938  DB  15,41,108,36,48                     ; movaps        %xmm5,0x30(%rsp)
10939  DB  15,41,100,36,32                     ; movaps        %xmm4,0x20(%rsp)
10940  DB  15,41,92,36,16                      ; movaps        %xmm3,0x10(%rsp)
10941  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
10942  DB  68,15,40,13,142,43,0,0              ; movaps        0x2b8e(%rip),%xmm9        # 3c30 <_sk_callback_sse41+0x34a>
10943  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
10944  DB  15,194,194,2                        ; cmpleps       %xmm2,%xmm0
10945  DB  15,40,217                           ; movaps        %xmm1,%xmm3
10946  DB  15,40,233                           ; movaps        %xmm1,%xmm5
10947  DB  15,89,234                           ; mulps         %xmm2,%xmm5
10948  DB  15,92,221                           ; subps         %xmm5,%xmm3
10949  DB  102,15,56,20,235                    ; blendvps      %xmm0,%xmm3,%xmm5
10950  DB  15,88,234                           ; addps         %xmm2,%xmm5
10951  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
10952  DB  15,41,20,36                         ; movaps        %xmm2,(%rsp)
10953  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
10954  DB  68,15,92,197                        ; subps         %xmm5,%xmm8
10955  DB  68,15,40,53,106,43,0,0              ; movaps        0x2b6a(%rip),%xmm14        # 3c40 <_sk_callback_sse41+0x35a>
10956  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
10957  DB  102,65,15,58,8,198,1                ; roundps       $0x1,%xmm14,%xmm0
10958  DB  68,15,92,240                        ; subps         %xmm0,%xmm14
10959  DB  68,15,40,29,99,43,0,0               ; movaps        0x2b63(%rip),%xmm11        # 3c50 <_sk_callback_sse41+0x36a>
10960  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
10961  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
10962  DB  15,40,245                           ; movaps        %xmm5,%xmm6
10963  DB  65,15,92,240                        ; subps         %xmm8,%xmm6
10964  DB  15,40,61,92,43,0,0                  ; movaps        0x2b5c(%rip),%xmm7        # 3c60 <_sk_callback_sse41+0x37a>
10965  DB  69,15,40,238                        ; movaps        %xmm14,%xmm13
10966  DB  68,15,89,239                        ; mulps         %xmm7,%xmm13
10967  DB  15,40,29,93,43,0,0                  ; movaps        0x2b5d(%rip),%xmm3        # 3c70 <_sk_callback_sse41+0x38a>
10968  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
10969  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
10970  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
10971  DB  69,15,88,224                        ; addps         %xmm8,%xmm12
10972  DB  102,69,15,56,20,224                 ; blendvps      %xmm0,%xmm8,%xmm12
10973  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
10974  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
10975  DB  68,15,40,253                        ; movaps        %xmm5,%xmm15
10976  DB  102,69,15,56,20,252                 ; blendvps      %xmm0,%xmm12,%xmm15
10977  DB  68,15,40,37,60,43,0,0               ; movaps        0x2b3c(%rip),%xmm12        # 3c80 <_sk_callback_sse41+0x39a>
10978  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
10979  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
10980  DB  68,15,89,238                        ; mulps         %xmm6,%xmm13
10981  DB  69,15,88,232                        ; addps         %xmm8,%xmm13
10982  DB  102,69,15,56,20,239                 ; blendvps      %xmm0,%xmm15,%xmm13
10983  DB  69,15,87,246                        ; xorps         %xmm14,%xmm14
10984  DB  68,15,194,241,0                     ; cmpeqps       %xmm1,%xmm14
10985  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
10986  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
10987  DB  102,65,15,58,8,194,1                ; roundps       $0x1,%xmm10,%xmm0
10988  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
10989  DB  68,15,92,248                        ; subps         %xmm0,%xmm15
10990  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
10991  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
10992  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
10993  DB  15,89,207                           ; mulps         %xmm7,%xmm1
10994  DB  15,40,211                           ; movaps        %xmm3,%xmm2
10995  DB  15,92,209                           ; subps         %xmm1,%xmm2
10996  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10997  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
10998  DB  102,65,15,56,20,208                 ; blendvps      %xmm0,%xmm8,%xmm2
10999  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
11000  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
11001  DB  15,40,229                           ; movaps        %xmm5,%xmm4
11002  DB  102,15,56,20,226                    ; blendvps      %xmm0,%xmm2,%xmm4
11003  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
11004  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
11005  DB  15,89,206                           ; mulps         %xmm6,%xmm1
11006  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
11007  DB  102,15,56,20,204                    ; blendvps      %xmm0,%xmm4,%xmm1
11008  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
11009  DB  15,40,20,36                         ; movaps        (%rsp),%xmm2
11010  DB  102,15,56,20,202                    ; blendvps      %xmm0,%xmm2,%xmm1
11011  DB  68,15,88,21,181,42,0,0              ; addps         0x2ab5(%rip),%xmm10        # 3c90 <_sk_callback_sse41+0x3aa>
11012  DB  102,65,15,58,8,194,1                ; roundps       $0x1,%xmm10,%xmm0
11013  DB  68,15,92,208                        ; subps         %xmm0,%xmm10
11014  DB  69,15,194,218,2                     ; cmpleps       %xmm10,%xmm11
11015  DB  65,15,89,250                        ; mulps         %xmm10,%xmm7
11016  DB  15,92,223                           ; subps         %xmm7,%xmm3
11017  DB  15,89,222                           ; mulps         %xmm6,%xmm3
11018  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
11019  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
11020  DB  102,65,15,56,20,216                 ; blendvps      %xmm0,%xmm8,%xmm3
11021  DB  69,15,194,202,2                     ; cmpleps       %xmm10,%xmm9
11022  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
11023  DB  102,15,56,20,235                    ; blendvps      %xmm0,%xmm3,%xmm5
11024  DB  69,15,194,226,2                     ; cmpleps       %xmm10,%xmm12
11025  DB  15,89,254                           ; mulps         %xmm6,%xmm7
11026  DB  68,15,88,199                        ; addps         %xmm7,%xmm8
11027  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
11028  DB  102,68,15,56,20,197                 ; blendvps      %xmm0,%xmm5,%xmm8
11029  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
11030  DB  102,68,15,56,20,194                 ; blendvps      %xmm0,%xmm2,%xmm8
11031  DB  72,173                              ; lods          %ds:(%rsi),%rax
11032  DB  65,15,40,197                        ; movaps        %xmm13,%xmm0
11033  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
11034  DB  15,40,92,36,16                      ; movaps        0x10(%rsp),%xmm3
11035  DB  15,40,100,36,32                     ; movaps        0x20(%rsp),%xmm4
11036  DB  15,40,108,36,48                     ; movaps        0x30(%rsp),%xmm5
11037  DB  15,40,116,36,64                     ; movaps        0x40(%rsp),%xmm6
11038  DB  15,40,124,36,80                     ; movaps        0x50(%rsp),%xmm7
11039  DB  72,131,196,104                      ; add           $0x68,%rsp
11040  DB  255,224                             ; jmpq          *%rax
11041
11042PUBLIC _sk_scale_1_float_sse41
11043_sk_scale_1_float_sse41 LABEL PROC
11044  DB  72,173                              ; lods          %ds:(%rsi),%rax
11045  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
11046  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11047  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11048  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11049  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11050  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11051  DB  72,173                              ; lods          %ds:(%rsi),%rax
11052  DB  255,224                             ; jmpq          *%rax
11053
11054PUBLIC _sk_scale_u8_sse41
11055_sk_scale_u8_sse41 LABEL PROC
11056  DB  72,173                              ; lods          %ds:(%rsi),%rax
11057  DB  72,139,0                            ; mov           (%rax),%rax
11058  DB  102,68,15,56,49,4,56                ; pmovzxbd      (%rax,%rdi,1),%xmm8
11059  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11060  DB  68,15,89,5,14,42,0,0                ; mulps         0x2a0e(%rip),%xmm8        # 3ca0 <_sk_callback_sse41+0x3ba>
11061  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11062  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11063  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11064  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11065  DB  72,173                              ; lods          %ds:(%rsi),%rax
11066  DB  255,224                             ; jmpq          *%rax
11067
11068PUBLIC _sk_lerp_1_float_sse41
11069_sk_lerp_1_float_sse41 LABEL PROC
11070  DB  72,173                              ; lods          %ds:(%rsi),%rax
11071  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
11072  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11073  DB  15,92,196                           ; subps         %xmm4,%xmm0
11074  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11075  DB  15,88,196                           ; addps         %xmm4,%xmm0
11076  DB  15,92,205                           ; subps         %xmm5,%xmm1
11077  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11078  DB  15,88,205                           ; addps         %xmm5,%xmm1
11079  DB  15,92,214                           ; subps         %xmm6,%xmm2
11080  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11081  DB  15,88,214                           ; addps         %xmm6,%xmm2
11082  DB  15,92,223                           ; subps         %xmm7,%xmm3
11083  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11084  DB  15,88,223                           ; addps         %xmm7,%xmm3
11085  DB  72,173                              ; lods          %ds:(%rsi),%rax
11086  DB  255,224                             ; jmpq          *%rax
11087
11088PUBLIC _sk_lerp_u8_sse41
11089_sk_lerp_u8_sse41 LABEL PROC
11090  DB  72,173                              ; lods          %ds:(%rsi),%rax
11091  DB  72,139,0                            ; mov           (%rax),%rax
11092  DB  102,68,15,56,49,4,56                ; pmovzxbd      (%rax,%rdi,1),%xmm8
11093  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11094  DB  68,15,89,5,186,41,0,0               ; mulps         0x29ba(%rip),%xmm8        # 3cb0 <_sk_callback_sse41+0x3ca>
11095  DB  15,92,196                           ; subps         %xmm4,%xmm0
11096  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11097  DB  15,88,196                           ; addps         %xmm4,%xmm0
11098  DB  15,92,205                           ; subps         %xmm5,%xmm1
11099  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11100  DB  15,88,205                           ; addps         %xmm5,%xmm1
11101  DB  15,92,214                           ; subps         %xmm6,%xmm2
11102  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11103  DB  15,88,214                           ; addps         %xmm6,%xmm2
11104  DB  15,92,223                           ; subps         %xmm7,%xmm3
11105  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11106  DB  15,88,223                           ; addps         %xmm7,%xmm3
11107  DB  72,173                              ; lods          %ds:(%rsi),%rax
11108  DB  255,224                             ; jmpq          *%rax
11109
11110PUBLIC _sk_lerp_565_sse41
11111_sk_lerp_565_sse41 LABEL PROC
11112  DB  72,173                              ; lods          %ds:(%rsi),%rax
11113  DB  72,139,0                            ; mov           (%rax),%rax
11114  DB  102,68,15,56,51,4,120               ; pmovzxwd      (%rax,%rdi,2),%xmm8
11115  DB  102,15,111,29,138,41,0,0            ; movdqa        0x298a(%rip),%xmm3        # 3cc0 <_sk_callback_sse41+0x3da>
11116  DB  102,65,15,219,216                   ; pand          %xmm8,%xmm3
11117  DB  68,15,91,203                        ; cvtdq2ps      %xmm3,%xmm9
11118  DB  68,15,89,13,137,41,0,0              ; mulps         0x2989(%rip),%xmm9        # 3cd0 <_sk_callback_sse41+0x3ea>
11119  DB  102,15,111,29,145,41,0,0            ; movdqa        0x2991(%rip),%xmm3        # 3ce0 <_sk_callback_sse41+0x3fa>
11120  DB  102,65,15,219,216                   ; pand          %xmm8,%xmm3
11121  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
11122  DB  15,89,29,146,41,0,0                 ; mulps         0x2992(%rip),%xmm3        # 3cf0 <_sk_callback_sse41+0x40a>
11123  DB  102,68,15,219,5,153,41,0,0          ; pand          0x2999(%rip),%xmm8        # 3d00 <_sk_callback_sse41+0x41a>
11124  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11125  DB  68,15,89,5,157,41,0,0               ; mulps         0x299d(%rip),%xmm8        # 3d10 <_sk_callback_sse41+0x42a>
11126  DB  15,92,196                           ; subps         %xmm4,%xmm0
11127  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
11128  DB  15,88,196                           ; addps         %xmm4,%xmm0
11129  DB  15,92,205                           ; subps         %xmm5,%xmm1
11130  DB  15,89,203                           ; mulps         %xmm3,%xmm1
11131  DB  15,88,205                           ; addps         %xmm5,%xmm1
11132  DB  15,92,214                           ; subps         %xmm6,%xmm2
11133  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11134  DB  15,88,214                           ; addps         %xmm6,%xmm2
11135  DB  72,173                              ; lods          %ds:(%rsi),%rax
11136  DB  15,40,29,135,41,0,0                 ; movaps        0x2987(%rip),%xmm3        # 3d20 <_sk_callback_sse41+0x43a>
11137  DB  255,224                             ; jmpq          *%rax
11138
11139PUBLIC _sk_load_tables_sse41
11140_sk_load_tables_sse41 LABEL PROC
11141  DB  72,173                              ; lods          %ds:(%rsi),%rax
11142  DB  76,139,0                            ; mov           (%rax),%r8
11143  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
11144  DB  243,69,15,111,4,184                 ; movdqu        (%r8,%rdi,4),%xmm8
11145  DB  102,15,111,5,126,41,0,0             ; movdqa        0x297e(%rip),%xmm0        # 3d30 <_sk_callback_sse41+0x44a>
11146  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
11147  DB  102,73,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%r8
11148  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
11149  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11150  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11151  DB  69,15,182,216                       ; movzbl        %r8b,%r11d
11152  DB  73,193,232,30                       ; shr           $0x1e,%r8
11153  DB  243,67,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm0
11154  DB  102,65,15,58,33,4,9,16              ; insertps      $0x10,(%r9,%rcx,1),%xmm0
11155  DB  102,67,15,58,33,4,153,32            ; insertps      $0x20,(%r9,%r11,4),%xmm0
11156  DB  243,67,15,16,12,1                   ; movss         (%r9,%r8,1),%xmm1
11157  DB  102,15,58,33,193,48                 ; insertps      $0x30,%xmm1,%xmm0
11158  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
11159  DB  102,65,15,111,200                   ; movdqa        %xmm8,%xmm1
11160  DB  102,15,56,0,13,57,41,0,0            ; pshufb        0x2939(%rip),%xmm1        # 3d40 <_sk_callback_sse41+0x45a>
11161  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
11162  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
11163  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11164  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11165  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
11166  DB  73,193,233,30                       ; shr           $0x1e,%r9
11167  DB  243,67,15,16,12,144                 ; movss         (%r8,%r10,4),%xmm1
11168  DB  102,65,15,58,33,12,8,16             ; insertps      $0x10,(%r8,%rcx,1),%xmm1
11169  DB  243,67,15,16,20,152                 ; movss         (%r8,%r11,4),%xmm2
11170  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
11171  DB  243,67,15,16,20,8                   ; movss         (%r8,%r9,1),%xmm2
11172  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
11173  DB  76,139,64,24                        ; mov           0x18(%rax),%r8
11174  DB  102,65,15,111,208                   ; movdqa        %xmm8,%xmm2
11175  DB  102,15,56,0,21,245,40,0,0           ; pshufb        0x28f5(%rip),%xmm2        # 3d50 <_sk_callback_sse41+0x46a>
11176  DB  102,72,15,58,22,209,1               ; pextrq        $0x1,%xmm2,%rcx
11177  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
11178  DB  68,15,182,200                       ; movzbl        %al,%r9d
11179  DB  72,193,232,30                       ; shr           $0x1e,%rax
11180  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11181  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11182  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
11183  DB  102,65,15,58,33,20,0,16             ; insertps      $0x10,(%r8,%rax,1),%xmm2
11184  DB  243,67,15,16,28,144                 ; movss         (%r8,%r10,4),%xmm3
11185  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
11186  DB  243,65,15,16,28,8                   ; movss         (%r8,%rcx,1),%xmm3
11187  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
11188  DB  102,65,15,114,208,24                ; psrld         $0x18,%xmm8
11189  DB  65,15,91,216                        ; cvtdq2ps      %xmm8,%xmm3
11190  DB  15,89,29,178,40,0,0                 ; mulps         0x28b2(%rip),%xmm3        # 3d60 <_sk_callback_sse41+0x47a>
11191  DB  72,173                              ; lods          %ds:(%rsi),%rax
11192  DB  255,224                             ; jmpq          *%rax
11193
11194PUBLIC _sk_load_tables_u16_be_sse41
11195_sk_load_tables_u16_be_sse41 LABEL PROC
11196  DB  72,173                              ; lods          %ds:(%rsi),%rax
11197  DB  72,139,8                            ; mov           (%rax),%rcx
11198  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
11199  DB  243,15,111,4,249                    ; movdqu        (%rcx,%rdi,8),%xmm0
11200  DB  243,15,111,76,249,16                ; movdqu        0x10(%rcx,%rdi,8),%xmm1
11201  DB  102,68,15,111,200                   ; movdqa        %xmm0,%xmm9
11202  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
11203  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
11204  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
11205  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
11206  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
11207  DB  102,68,15,111,5,133,40,0,0          ; movdqa        0x2885(%rip),%xmm8        # 3d70 <_sk_callback_sse41+0x48a>
11208  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
11209  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
11210  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
11211  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
11212  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
11213  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11214  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11215  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
11216  DB  73,193,233,30                       ; shr           $0x1e,%r9
11217  DB  243,67,15,16,4,144                  ; movss         (%r8,%r10,4),%xmm0
11218  DB  102,65,15,58,33,4,8,16              ; insertps      $0x10,(%r8,%rcx,1),%xmm0
11219  DB  243,67,15,16,20,152                 ; movss         (%r8,%r11,4),%xmm2
11220  DB  102,15,58,33,194,32                 ; insertps      $0x20,%xmm2,%xmm0
11221  DB  243,67,15,16,20,8                   ; movss         (%r8,%r9,1),%xmm2
11222  DB  102,15,58,33,194,48                 ; insertps      $0x30,%xmm2,%xmm0
11223  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
11224  DB  102,15,56,0,13,56,40,0,0            ; pshufb        0x2838(%rip),%xmm1        # 3d80 <_sk_callback_sse41+0x49a>
11225  DB  102,15,56,51,201                    ; pmovzxwd      %xmm1,%xmm1
11226  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
11227  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
11228  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11229  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11230  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
11231  DB  73,193,233,30                       ; shr           $0x1e,%r9
11232  DB  243,67,15,16,12,144                 ; movss         (%r8,%r10,4),%xmm1
11233  DB  102,65,15,58,33,12,8,16             ; insertps      $0x10,(%r8,%rcx,1),%xmm1
11234  DB  243,67,15,16,20,152                 ; movss         (%r8,%r11,4),%xmm2
11235  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
11236  DB  243,67,15,16,20,8                   ; movss         (%r8,%r9,1),%xmm2
11237  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
11238  DB  76,139,64,24                        ; mov           0x18(%rax),%r8
11239  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
11240  DB  102,65,15,56,51,208                 ; pmovzxwd      %xmm8,%xmm2
11241  DB  102,72,15,58,22,209,1               ; pextrq        $0x1,%xmm2,%rcx
11242  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
11243  DB  68,15,182,200                       ; movzbl        %al,%r9d
11244  DB  72,193,232,30                       ; shr           $0x1e,%rax
11245  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11246  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11247  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
11248  DB  102,65,15,58,33,20,0,16             ; insertps      $0x10,(%r8,%rax,1),%xmm2
11249  DB  243,67,15,16,28,144                 ; movss         (%r8,%r10,4),%xmm3
11250  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
11251  DB  243,65,15,16,28,8                   ; movss         (%r8,%rcx,1),%xmm3
11252  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
11253  DB  102,65,15,112,217,78                ; pshufd        $0x4e,%xmm9,%xmm3
11254  DB  102,68,15,111,195                   ; movdqa        %xmm3,%xmm8
11255  DB  102,65,15,113,240,8                 ; psllw         $0x8,%xmm8
11256  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
11257  DB  102,65,15,235,216                   ; por           %xmm8,%xmm3
11258  DB  102,15,56,51,219                    ; pmovzxwd      %xmm3,%xmm3
11259  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
11260  DB  15,89,29,134,39,0,0                 ; mulps         0x2786(%rip),%xmm3        # 3d90 <_sk_callback_sse41+0x4aa>
11261  DB  72,173                              ; lods          %ds:(%rsi),%rax
11262  DB  255,224                             ; jmpq          *%rax
11263
11264PUBLIC _sk_load_tables_rgb_u16_be_sse41
11265_sk_load_tables_rgb_u16_be_sse41 LABEL PROC
11266  DB  72,173                              ; lods          %ds:(%rsi),%rax
11267  DB  76,141,12,127                       ; lea           (%rdi,%rdi,2),%r9
11268  DB  72,139,8                            ; mov           (%rax),%rcx
11269  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
11270  DB  243,66,15,111,20,73                 ; movdqu        (%rcx,%r9,2),%xmm2
11271  DB  243,66,15,111,68,73,8               ; movdqu        0x8(%rcx,%r9,2),%xmm0
11272  DB  102,15,115,216,4                    ; psrldq        $0x4,%xmm0
11273  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
11274  DB  102,65,15,115,217,6                 ; psrldq        $0x6,%xmm9
11275  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
11276  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
11277  DB  102,68,15,97,200                    ; punpcklwd     %xmm0,%xmm9
11278  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
11279  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
11280  DB  102,68,15,111,5,72,39,0,0           ; movdqa        0x2748(%rip),%xmm8        # 3da0 <_sk_callback_sse41+0x4ba>
11281  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
11282  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
11283  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
11284  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
11285  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
11286  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11287  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11288  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
11289  DB  73,193,233,30                       ; shr           $0x1e,%r9
11290  DB  243,67,15,16,4,144                  ; movss         (%r8,%r10,4),%xmm0
11291  DB  102,65,15,58,33,4,8,16              ; insertps      $0x10,(%r8,%rcx,1),%xmm0
11292  DB  243,67,15,16,28,152                 ; movss         (%r8,%r11,4),%xmm3
11293  DB  102,15,58,33,195,32                 ; insertps      $0x20,%xmm3,%xmm0
11294  DB  243,67,15,16,28,8                   ; movss         (%r8,%r9,1),%xmm3
11295  DB  102,15,58,33,195,48                 ; insertps      $0x30,%xmm3,%xmm0
11296  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
11297  DB  102,15,56,0,13,251,38,0,0           ; pshufb        0x26fb(%rip),%xmm1        # 3db0 <_sk_callback_sse41+0x4ca>
11298  DB  102,15,56,51,201                    ; pmovzxwd      %xmm1,%xmm1
11299  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
11300  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
11301  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11302  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11303  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
11304  DB  73,193,233,30                       ; shr           $0x1e,%r9
11305  DB  243,67,15,16,12,144                 ; movss         (%r8,%r10,4),%xmm1
11306  DB  102,65,15,58,33,12,8,16             ; insertps      $0x10,(%r8,%rcx,1),%xmm1
11307  DB  243,67,15,16,28,152                 ; movss         (%r8,%r11,4),%xmm3
11308  DB  102,15,58,33,203,32                 ; insertps      $0x20,%xmm3,%xmm1
11309  DB  243,67,15,16,28,8                   ; movss         (%r8,%r9,1),%xmm3
11310  DB  102,15,58,33,203,48                 ; insertps      $0x30,%xmm3,%xmm1
11311  DB  76,139,64,24                        ; mov           0x18(%rax),%r8
11312  DB  102,65,15,105,209                   ; punpckhwd     %xmm9,%xmm2
11313  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
11314  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
11315  DB  102,72,15,58,22,209,1               ; pextrq        $0x1,%xmm2,%rcx
11316  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
11317  DB  68,15,182,200                       ; movzbl        %al,%r9d
11318  DB  72,193,232,30                       ; shr           $0x1e,%rax
11319  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11320  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11321  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
11322  DB  102,65,15,58,33,20,0,16             ; insertps      $0x10,(%r8,%rax,1),%xmm2
11323  DB  243,67,15,16,28,144                 ; movss         (%r8,%r10,4),%xmm3
11324  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
11325  DB  243,65,15,16,28,8                   ; movss         (%r8,%rcx,1),%xmm3
11326  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
11327  DB  72,173                              ; lods          %ds:(%rsi),%rax
11328  DB  15,40,29,102,38,0,0                 ; movaps        0x2666(%rip),%xmm3        # 3dc0 <_sk_callback_sse41+0x4da>
11329  DB  255,224                             ; jmpq          *%rax
11330
11331PUBLIC _sk_byte_tables_sse41
11332_sk_byte_tables_sse41 LABEL PROC
11333  DB  65,86                               ; push          %r14
11334  DB  83                                  ; push          %rbx
11335  DB  72,173                              ; lods          %ds:(%rsi),%rax
11336  DB  68,15,40,5,103,38,0,0               ; movaps        0x2667(%rip),%xmm8        # 3dd0 <_sk_callback_sse41+0x4ea>
11337  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11338  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
11339  DB  102,72,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%rcx
11340  DB  65,137,200                          ; mov           %ecx,%r8d
11341  DB  72,193,233,32                       ; shr           $0x20,%rcx
11342  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
11343  DB  69,137,202                          ; mov           %r9d,%r10d
11344  DB  73,193,233,32                       ; shr           $0x20,%r9
11345  DB  76,139,24                           ; mov           (%rax),%r11
11346  DB  76,139,112,8                        ; mov           0x8(%rax),%r14
11347  DB  102,67,15,58,32,4,19,0              ; pinsrb        $0x0,(%r11,%r10,1),%xmm0
11348  DB  102,67,15,58,32,4,11,1              ; pinsrb        $0x1,(%r11,%r9,1),%xmm0
11349  DB  67,15,182,28,3                      ; movzbl        (%r11,%r8,1),%ebx
11350  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
11351  DB  65,15,182,12,11                     ; movzbl        (%r11,%rcx,1),%ecx
11352  DB  102,15,58,32,193,3                  ; pinsrb        $0x3,%ecx,%xmm0
11353  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
11354  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
11355  DB  68,15,40,13,24,38,0,0               ; movaps        0x2618(%rip),%xmm9        # 3de0 <_sk_callback_sse41+0x4fa>
11356  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
11357  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11358  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
11359  DB  102,72,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%rcx
11360  DB  65,137,200                          ; mov           %ecx,%r8d
11361  DB  72,193,233,32                       ; shr           $0x20,%rcx
11362  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
11363  DB  65,137,217                          ; mov           %ebx,%r9d
11364  DB  72,193,235,32                       ; shr           $0x20,%rbx
11365  DB  102,67,15,58,32,12,14,0             ; pinsrb        $0x0,(%r14,%r9,1),%xmm1
11366  DB  102,65,15,58,32,12,30,1             ; pinsrb        $0x1,(%r14,%rbx,1),%xmm1
11367  DB  67,15,182,28,6                      ; movzbl        (%r14,%r8,1),%ebx
11368  DB  102,15,58,32,203,2                  ; pinsrb        $0x2,%ebx,%xmm1
11369  DB  65,15,182,12,14                     ; movzbl        (%r14,%rcx,1),%ecx
11370  DB  102,15,58,32,201,3                  ; pinsrb        $0x3,%ecx,%xmm1
11371  DB  102,15,56,49,201                    ; pmovzxbd      %xmm1,%xmm1
11372  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
11373  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
11374  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
11375  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11376  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
11377  DB  102,72,15,58,22,211,1               ; pextrq        $0x1,%xmm2,%rbx
11378  DB  65,137,216                          ; mov           %ebx,%r8d
11379  DB  72,193,235,32                       ; shr           $0x20,%rbx
11380  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
11381  DB  65,137,202                          ; mov           %ecx,%r10d
11382  DB  72,193,233,32                       ; shr           $0x20,%rcx
11383  DB  102,67,15,58,32,20,17,0             ; pinsrb        $0x0,(%r9,%r10,1),%xmm2
11384  DB  102,65,15,58,32,20,9,1              ; pinsrb        $0x1,(%r9,%rcx,1),%xmm2
11385  DB  67,15,182,12,1                      ; movzbl        (%r9,%r8,1),%ecx
11386  DB  102,15,58,32,209,2                  ; pinsrb        $0x2,%ecx,%xmm2
11387  DB  65,15,182,12,25                     ; movzbl        (%r9,%rbx,1),%ecx
11388  DB  102,15,58,32,209,3                  ; pinsrb        $0x3,%ecx,%xmm2
11389  DB  102,15,56,49,210                    ; pmovzxbd      %xmm2,%xmm2
11390  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
11391  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
11392  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
11393  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11394  DB  102,15,91,219                       ; cvtps2dq      %xmm3,%xmm3
11395  DB  102,72,15,58,22,217,1               ; pextrq        $0x1,%xmm3,%rcx
11396  DB  65,137,200                          ; mov           %ecx,%r8d
11397  DB  72,193,233,32                       ; shr           $0x20,%rcx
11398  DB  102,72,15,126,219                   ; movq          %xmm3,%rbx
11399  DB  65,137,217                          ; mov           %ebx,%r9d
11400  DB  72,193,235,32                       ; shr           $0x20,%rbx
11401  DB  102,66,15,58,32,28,8,0              ; pinsrb        $0x0,(%rax,%r9,1),%xmm3
11402  DB  102,15,58,32,28,24,1                ; pinsrb        $0x1,(%rax,%rbx,1),%xmm3
11403  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
11404  DB  102,15,58,32,219,2                  ; pinsrb        $0x2,%ebx,%xmm3
11405  DB  15,182,4,8                          ; movzbl        (%rax,%rcx,1),%eax
11406  DB  102,15,58,32,216,3                  ; pinsrb        $0x3,%eax,%xmm3
11407  DB  102,15,56,49,219                    ; pmovzxbd      %xmm3,%xmm3
11408  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
11409  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
11410  DB  72,173                              ; lods          %ds:(%rsi),%rax
11411  DB  91                                  ; pop           %rbx
11412  DB  65,94                               ; pop           %r14
11413  DB  255,224                             ; jmpq          *%rax
11414
11415PUBLIC _sk_byte_tables_rgb_sse41
11416_sk_byte_tables_rgb_sse41 LABEL PROC
11417  DB  65,86                               ; push          %r14
11418  DB  83                                  ; push          %rbx
11419  DB  72,173                              ; lods          %ds:(%rsi),%rax
11420  DB  139,72,24                           ; mov           0x18(%rax),%ecx
11421  DB  255,201                             ; dec           %ecx
11422  DB  102,68,15,110,193                   ; movd          %ecx,%xmm8
11423  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11424  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11425  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11426  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
11427  DB  102,72,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%rcx
11428  DB  65,137,200                          ; mov           %ecx,%r8d
11429  DB  72,193,233,32                       ; shr           $0x20,%rcx
11430  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
11431  DB  69,137,202                          ; mov           %r9d,%r10d
11432  DB  77,137,203                          ; mov           %r9,%r11
11433  DB  73,193,235,32                       ; shr           $0x20,%r11
11434  DB  76,139,48                           ; mov           (%rax),%r14
11435  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
11436  DB  102,67,15,58,32,4,22,0              ; pinsrb        $0x0,(%r14,%r10,1),%xmm0
11437  DB  102,67,15,58,32,4,30,1              ; pinsrb        $0x1,(%r14,%r11,1),%xmm0
11438  DB  67,15,182,28,6                      ; movzbl        (%r14,%r8,1),%ebx
11439  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
11440  DB  65,15,182,12,14                     ; movzbl        (%r14,%rcx,1),%ecx
11441  DB  102,15,58,32,193,3                  ; pinsrb        $0x3,%ecx,%xmm0
11442  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
11443  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
11444  DB  68,15,40,13,160,36,0,0              ; movaps        0x24a0(%rip),%xmm9        # 3df0 <_sk_callback_sse41+0x50a>
11445  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
11446  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11447  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
11448  DB  102,72,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%rcx
11449  DB  65,137,200                          ; mov           %ecx,%r8d
11450  DB  72,193,233,32                       ; shr           $0x20,%rcx
11451  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
11452  DB  65,137,218                          ; mov           %ebx,%r10d
11453  DB  72,193,235,32                       ; shr           $0x20,%rbx
11454  DB  102,67,15,58,32,12,17,0             ; pinsrb        $0x0,(%r9,%r10,1),%xmm1
11455  DB  102,65,15,58,32,12,25,1             ; pinsrb        $0x1,(%r9,%rbx,1),%xmm1
11456  DB  67,15,182,28,1                      ; movzbl        (%r9,%r8,1),%ebx
11457  DB  102,15,58,32,203,2                  ; pinsrb        $0x2,%ebx,%xmm1
11458  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
11459  DB  102,15,58,32,201,3                  ; pinsrb        $0x3,%ecx,%xmm1
11460  DB  102,15,56,49,201                    ; pmovzxbd      %xmm1,%xmm1
11461  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
11462  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
11463  DB  72,139,64,16                        ; mov           0x10(%rax),%rax
11464  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11465  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
11466  DB  102,72,15,58,22,209,1               ; pextrq        $0x1,%xmm2,%rcx
11467  DB  65,137,200                          ; mov           %ecx,%r8d
11468  DB  72,193,233,32                       ; shr           $0x20,%rcx
11469  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
11470  DB  65,137,217                          ; mov           %ebx,%r9d
11471  DB  72,193,235,32                       ; shr           $0x20,%rbx
11472  DB  102,66,15,58,32,20,8,0              ; pinsrb        $0x0,(%rax,%r9,1),%xmm2
11473  DB  102,15,58,32,20,24,1                ; pinsrb        $0x1,(%rax,%rbx,1),%xmm2
11474  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
11475  DB  102,15,58,32,211,2                  ; pinsrb        $0x2,%ebx,%xmm2
11476  DB  15,182,4,8                          ; movzbl        (%rax,%rcx,1),%eax
11477  DB  102,15,58,32,208,3                  ; pinsrb        $0x3,%eax,%xmm2
11478  DB  102,15,56,49,210                    ; pmovzxbd      %xmm2,%xmm2
11479  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
11480  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
11481  DB  72,173                              ; lods          %ds:(%rsi),%rax
11482  DB  91                                  ; pop           %rbx
11483  DB  65,94                               ; pop           %r14
11484  DB  255,224                             ; jmpq          *%rax
11485
11486PUBLIC _sk_table_r_sse41
11487_sk_table_r_sse41 LABEL PROC
11488  DB  72,173                              ; lods          %ds:(%rsi),%rax
11489  DB  76,139,8                            ; mov           (%rax),%r9
11490  DB  139,64,8                            ; mov           0x8(%rax),%eax
11491  DB  255,200                             ; dec           %eax
11492  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
11493  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11494  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11495  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
11496  DB  102,65,15,91,192                    ; cvtps2dq      %xmm8,%xmm0
11497  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
11498  DB  65,137,192                          ; mov           %eax,%r8d
11499  DB  72,193,232,32                       ; shr           $0x20,%rax
11500  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
11501  DB  65,137,202                          ; mov           %ecx,%r10d
11502  DB  72,193,233,32                       ; shr           $0x20,%rcx
11503  DB  243,67,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm0
11504  DB  102,65,15,58,33,4,137,16            ; insertps      $0x10,(%r9,%rcx,4),%xmm0
11505  DB  243,71,15,16,4,129                  ; movss         (%r9,%r8,4),%xmm8
11506  DB  102,65,15,58,33,192,32              ; insertps      $0x20,%xmm8,%xmm0
11507  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
11508  DB  102,65,15,58,33,192,48              ; insertps      $0x30,%xmm8,%xmm0
11509  DB  72,173                              ; lods          %ds:(%rsi),%rax
11510  DB  255,224                             ; jmpq          *%rax
11511
11512PUBLIC _sk_table_g_sse41
11513_sk_table_g_sse41 LABEL PROC
11514  DB  72,173                              ; lods          %ds:(%rsi),%rax
11515  DB  76,139,8                            ; mov           (%rax),%r9
11516  DB  139,64,8                            ; mov           0x8(%rax),%eax
11517  DB  255,200                             ; dec           %eax
11518  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
11519  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11520  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11521  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
11522  DB  102,65,15,91,200                    ; cvtps2dq      %xmm8,%xmm1
11523  DB  102,72,15,58,22,200,1               ; pextrq        $0x1,%xmm1,%rax
11524  DB  65,137,192                          ; mov           %eax,%r8d
11525  DB  72,193,232,32                       ; shr           $0x20,%rax
11526  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
11527  DB  65,137,202                          ; mov           %ecx,%r10d
11528  DB  72,193,233,32                       ; shr           $0x20,%rcx
11529  DB  243,67,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm1
11530  DB  102,65,15,58,33,12,137,16           ; insertps      $0x10,(%r9,%rcx,4),%xmm1
11531  DB  243,71,15,16,4,129                  ; movss         (%r9,%r8,4),%xmm8
11532  DB  102,65,15,58,33,200,32              ; insertps      $0x20,%xmm8,%xmm1
11533  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
11534  DB  102,65,15,58,33,200,48              ; insertps      $0x30,%xmm8,%xmm1
11535  DB  72,173                              ; lods          %ds:(%rsi),%rax
11536  DB  255,224                             ; jmpq          *%rax
11537
11538PUBLIC _sk_table_b_sse41
11539_sk_table_b_sse41 LABEL PROC
11540  DB  72,173                              ; lods          %ds:(%rsi),%rax
11541  DB  76,139,8                            ; mov           (%rax),%r9
11542  DB  139,64,8                            ; mov           0x8(%rax),%eax
11543  DB  255,200                             ; dec           %eax
11544  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
11545  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11546  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11547  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
11548  DB  102,65,15,91,208                    ; cvtps2dq      %xmm8,%xmm2
11549  DB  102,72,15,58,22,208,1               ; pextrq        $0x1,%xmm2,%rax
11550  DB  65,137,192                          ; mov           %eax,%r8d
11551  DB  72,193,232,32                       ; shr           $0x20,%rax
11552  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
11553  DB  65,137,202                          ; mov           %ecx,%r10d
11554  DB  72,193,233,32                       ; shr           $0x20,%rcx
11555  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
11556  DB  102,65,15,58,33,20,137,16           ; insertps      $0x10,(%r9,%rcx,4),%xmm2
11557  DB  243,71,15,16,4,129                  ; movss         (%r9,%r8,4),%xmm8
11558  DB  102,65,15,58,33,208,32              ; insertps      $0x20,%xmm8,%xmm2
11559  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
11560  DB  102,65,15,58,33,208,48              ; insertps      $0x30,%xmm8,%xmm2
11561  DB  72,173                              ; lods          %ds:(%rsi),%rax
11562  DB  255,224                             ; jmpq          *%rax
11563
11564PUBLIC _sk_table_a_sse41
11565_sk_table_a_sse41 LABEL PROC
11566  DB  72,173                              ; lods          %ds:(%rsi),%rax
11567  DB  76,139,8                            ; mov           (%rax),%r9
11568  DB  139,64,8                            ; mov           0x8(%rax),%eax
11569  DB  255,200                             ; dec           %eax
11570  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
11571  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11572  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11573  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
11574  DB  102,65,15,91,216                    ; cvtps2dq      %xmm8,%xmm3
11575  DB  102,72,15,58,22,216,1               ; pextrq        $0x1,%xmm3,%rax
11576  DB  65,137,192                          ; mov           %eax,%r8d
11577  DB  72,193,232,32                       ; shr           $0x20,%rax
11578  DB  102,72,15,126,217                   ; movq          %xmm3,%rcx
11579  DB  65,137,202                          ; mov           %ecx,%r10d
11580  DB  72,193,233,32                       ; shr           $0x20,%rcx
11581  DB  243,67,15,16,28,145                 ; movss         (%r9,%r10,4),%xmm3
11582  DB  102,65,15,58,33,28,137,16           ; insertps      $0x10,(%r9,%rcx,4),%xmm3
11583  DB  243,71,15,16,4,129                  ; movss         (%r9,%r8,4),%xmm8
11584  DB  102,65,15,58,33,216,32              ; insertps      $0x20,%xmm8,%xmm3
11585  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
11586  DB  102,65,15,58,33,216,48              ; insertps      $0x30,%xmm8,%xmm3
11587  DB  72,173                              ; lods          %ds:(%rsi),%rax
11588  DB  255,224                             ; jmpq          *%rax
11589
11590PUBLIC _sk_parametric_r_sse41
11591_sk_parametric_r_sse41 LABEL PROC
11592  DB  72,173                              ; lods          %ds:(%rsi),%rax
11593  DB  243,68,15,16,64,16                  ; movss         0x10(%rax),%xmm8
11594  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11595  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
11596  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
11597  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
11598  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
11599  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11600  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
11601  DB  65,15,194,192,2                     ; cmpleps       %xmm8,%xmm0
11602  DB  243,68,15,16,64,24                  ; movss         0x18(%rax),%xmm8
11603  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11604  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
11605  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
11606  DB  243,68,15,16,64,8                   ; movss         0x8(%rax),%xmm8
11607  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11608  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
11609  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
11610  DB  69,15,91,194                        ; cvtdq2ps      %xmm10,%xmm8
11611  DB  68,15,89,5,247,33,0,0               ; mulps         0x21f7(%rip),%xmm8        # 3e00 <_sk_callback_sse41+0x51a>
11612  DB  68,15,84,21,255,33,0,0              ; andps         0x21ff(%rip),%xmm10        # 3e10 <_sk_callback_sse41+0x52a>
11613  DB  68,15,86,21,7,34,0,0                ; orps          0x2207(%rip),%xmm10        # 3e20 <_sk_callback_sse41+0x53a>
11614  DB  68,15,88,5,15,34,0,0                ; addps         0x220f(%rip),%xmm8        # 3e30 <_sk_callback_sse41+0x54a>
11615  DB  68,15,40,37,23,34,0,0               ; movaps        0x2217(%rip),%xmm12        # 3e40 <_sk_callback_sse41+0x55a>
11616  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
11617  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
11618  DB  68,15,88,21,23,34,0,0               ; addps         0x2217(%rip),%xmm10        # 3e50 <_sk_callback_sse41+0x56a>
11619  DB  68,15,40,37,31,34,0,0               ; movaps        0x221f(%rip),%xmm12        # 3e60 <_sk_callback_sse41+0x57a>
11620  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
11621  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
11622  DB  69,15,89,195                        ; mulps         %xmm11,%xmm8
11623  DB  102,69,15,58,8,208,1                ; roundps       $0x1,%xmm8,%xmm10
11624  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
11625  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
11626  DB  68,15,88,5,12,34,0,0                ; addps         0x220c(%rip),%xmm8        # 3e70 <_sk_callback_sse41+0x58a>
11627  DB  68,15,40,21,20,34,0,0               ; movaps        0x2214(%rip),%xmm10        # 3e80 <_sk_callback_sse41+0x59a>
11628  DB  69,15,89,211                        ; mulps         %xmm11,%xmm10
11629  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
11630  DB  68,15,40,21,20,34,0,0               ; movaps        0x2214(%rip),%xmm10        # 3e90 <_sk_callback_sse41+0x5aa>
11631  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
11632  DB  68,15,40,29,24,34,0,0               ; movaps        0x2218(%rip),%xmm11        # 3ea0 <_sk_callback_sse41+0x5ba>
11633  DB  69,15,94,218                        ; divps         %xmm10,%xmm11
11634  DB  69,15,88,216                        ; addps         %xmm8,%xmm11
11635  DB  68,15,89,29,24,34,0,0               ; mulps         0x2218(%rip),%xmm11        # 3eb0 <_sk_callback_sse41+0x5ca>
11636  DB  102,69,15,91,211                    ; cvtps2dq      %xmm11,%xmm10
11637  DB  243,68,15,16,64,20                  ; movss         0x14(%rax),%xmm8
11638  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11639  DB  69,15,88,194                        ; addps         %xmm10,%xmm8
11640  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
11641  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11642  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
11643  DB  68,15,93,5,255,33,0,0               ; minps         0x21ff(%rip),%xmm8        # 3ec0 <_sk_callback_sse41+0x5da>
11644  DB  72,173                              ; lods          %ds:(%rsi),%rax
11645  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
11646  DB  255,224                             ; jmpq          *%rax
11647
11648PUBLIC _sk_parametric_g_sse41
11649_sk_parametric_g_sse41 LABEL PROC
11650  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
11651  DB  72,173                              ; lods          %ds:(%rsi),%rax
11652  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
11653  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11654  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
11655  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
11656  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
11657  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
11658  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
11659  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
11660  DB  15,40,193                           ; movaps        %xmm1,%xmm0
11661  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
11662  DB  243,15,16,72,24                     ; movss         0x18(%rax),%xmm1
11663  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
11664  DB  68,15,88,201                        ; addps         %xmm1,%xmm9
11665  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
11666  DB  243,15,16,72,8                      ; movss         0x8(%rax),%xmm1
11667  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
11668  DB  68,15,88,217                        ; addps         %xmm1,%xmm11
11669  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11670  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
11671  DB  68,15,89,37,160,33,0,0              ; mulps         0x21a0(%rip),%xmm12        # 3ed0 <_sk_callback_sse41+0x5ea>
11672  DB  68,15,84,29,168,33,0,0              ; andps         0x21a8(%rip),%xmm11        # 3ee0 <_sk_callback_sse41+0x5fa>
11673  DB  68,15,86,29,176,33,0,0              ; orps          0x21b0(%rip),%xmm11        # 3ef0 <_sk_callback_sse41+0x60a>
11674  DB  68,15,88,37,184,33,0,0              ; addps         0x21b8(%rip),%xmm12        # 3f00 <_sk_callback_sse41+0x61a>
11675  DB  15,40,13,193,33,0,0                 ; movaps        0x21c1(%rip),%xmm1        # 3f10 <_sk_callback_sse41+0x62a>
11676  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
11677  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
11678  DB  68,15,88,29,193,33,0,0              ; addps         0x21c1(%rip),%xmm11        # 3f20 <_sk_callback_sse41+0x63a>
11679  DB  15,40,13,202,33,0,0                 ; movaps        0x21ca(%rip),%xmm1        # 3f30 <_sk_callback_sse41+0x64a>
11680  DB  65,15,94,203                        ; divps         %xmm11,%xmm1
11681  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
11682  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
11683  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
11684  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
11685  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
11686  DB  68,15,88,37,183,33,0,0              ; addps         0x21b7(%rip),%xmm12        # 3f40 <_sk_callback_sse41+0x65a>
11687  DB  15,40,13,192,33,0,0                 ; movaps        0x21c0(%rip),%xmm1        # 3f50 <_sk_callback_sse41+0x66a>
11688  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
11689  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
11690  DB  68,15,40,21,192,33,0,0              ; movaps        0x21c0(%rip),%xmm10        # 3f60 <_sk_callback_sse41+0x67a>
11691  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
11692  DB  15,40,13,197,33,0,0                 ; movaps        0x21c5(%rip),%xmm1        # 3f70 <_sk_callback_sse41+0x68a>
11693  DB  65,15,94,202                        ; divps         %xmm10,%xmm1
11694  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
11695  DB  15,89,13,198,33,0,0                 ; mulps         0x21c6(%rip),%xmm1        # 3f80 <_sk_callback_sse41+0x69a>
11696  DB  102,68,15,91,209                    ; cvtps2dq      %xmm1,%xmm10
11697  DB  243,15,16,72,20                     ; movss         0x14(%rax),%xmm1
11698  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
11699  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
11700  DB  102,65,15,56,20,201                 ; blendvps      %xmm0,%xmm9,%xmm1
11701  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11702  DB  15,95,200                           ; maxps         %xmm0,%xmm1
11703  DB  15,93,13,177,33,0,0                 ; minps         0x21b1(%rip),%xmm1        # 3f90 <_sk_callback_sse41+0x6aa>
11704  DB  72,173                              ; lods          %ds:(%rsi),%rax
11705  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
11706  DB  255,224                             ; jmpq          *%rax
11707
11708PUBLIC _sk_parametric_b_sse41
11709_sk_parametric_b_sse41 LABEL PROC
11710  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
11711  DB  72,173                              ; lods          %ds:(%rsi),%rax
11712  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
11713  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11714  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
11715  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
11716  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
11717  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
11718  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
11719  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
11720  DB  15,40,194                           ; movaps        %xmm2,%xmm0
11721  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
11722  DB  243,15,16,80,24                     ; movss         0x18(%rax),%xmm2
11723  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
11724  DB  68,15,88,202                        ; addps         %xmm2,%xmm9
11725  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
11726  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
11727  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
11728  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
11729  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11730  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
11731  DB  68,15,89,37,82,33,0,0               ; mulps         0x2152(%rip),%xmm12        # 3fa0 <_sk_callback_sse41+0x6ba>
11732  DB  68,15,84,29,90,33,0,0               ; andps         0x215a(%rip),%xmm11        # 3fb0 <_sk_callback_sse41+0x6ca>
11733  DB  68,15,86,29,98,33,0,0               ; orps          0x2162(%rip),%xmm11        # 3fc0 <_sk_callback_sse41+0x6da>
11734  DB  68,15,88,37,106,33,0,0              ; addps         0x216a(%rip),%xmm12        # 3fd0 <_sk_callback_sse41+0x6ea>
11735  DB  15,40,21,115,33,0,0                 ; movaps        0x2173(%rip),%xmm2        # 3fe0 <_sk_callback_sse41+0x6fa>
11736  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
11737  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
11738  DB  68,15,88,29,115,33,0,0              ; addps         0x2173(%rip),%xmm11        # 3ff0 <_sk_callback_sse41+0x70a>
11739  DB  15,40,21,124,33,0,0                 ; movaps        0x217c(%rip),%xmm2        # 4000 <_sk_callback_sse41+0x71a>
11740  DB  65,15,94,211                        ; divps         %xmm11,%xmm2
11741  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
11742  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
11743  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
11744  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
11745  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
11746  DB  68,15,88,37,105,33,0,0              ; addps         0x2169(%rip),%xmm12        # 4010 <_sk_callback_sse41+0x72a>
11747  DB  15,40,21,114,33,0,0                 ; movaps        0x2172(%rip),%xmm2        # 4020 <_sk_callback_sse41+0x73a>
11748  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
11749  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
11750  DB  68,15,40,21,114,33,0,0              ; movaps        0x2172(%rip),%xmm10        # 4030 <_sk_callback_sse41+0x74a>
11751  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
11752  DB  15,40,21,119,33,0,0                 ; movaps        0x2177(%rip),%xmm2        # 4040 <_sk_callback_sse41+0x75a>
11753  DB  65,15,94,210                        ; divps         %xmm10,%xmm2
11754  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
11755  DB  15,89,21,120,33,0,0                 ; mulps         0x2178(%rip),%xmm2        # 4050 <_sk_callback_sse41+0x76a>
11756  DB  102,68,15,91,210                    ; cvtps2dq      %xmm2,%xmm10
11757  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
11758  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
11759  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
11760  DB  102,65,15,56,20,209                 ; blendvps      %xmm0,%xmm9,%xmm2
11761  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11762  DB  15,95,208                           ; maxps         %xmm0,%xmm2
11763  DB  15,93,21,99,33,0,0                  ; minps         0x2163(%rip),%xmm2        # 4060 <_sk_callback_sse41+0x77a>
11764  DB  72,173                              ; lods          %ds:(%rsi),%rax
11765  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
11766  DB  255,224                             ; jmpq          *%rax
11767
11768PUBLIC _sk_parametric_a_sse41
11769_sk_parametric_a_sse41 LABEL PROC
11770  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
11771  DB  72,173                              ; lods          %ds:(%rsi),%rax
11772  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
11773  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11774  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
11775  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
11776  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
11777  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
11778  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
11779  DB  68,15,89,219                        ; mulps         %xmm3,%xmm11
11780  DB  15,40,195                           ; movaps        %xmm3,%xmm0
11781  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
11782  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
11783  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
11784  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
11785  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
11786  DB  243,15,16,88,8                      ; movss         0x8(%rax),%xmm3
11787  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
11788  DB  68,15,88,219                        ; addps         %xmm3,%xmm11
11789  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11790  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
11791  DB  68,15,89,37,4,33,0,0                ; mulps         0x2104(%rip),%xmm12        # 4070 <_sk_callback_sse41+0x78a>
11792  DB  68,15,84,29,12,33,0,0               ; andps         0x210c(%rip),%xmm11        # 4080 <_sk_callback_sse41+0x79a>
11793  DB  68,15,86,29,20,33,0,0               ; orps          0x2114(%rip),%xmm11        # 4090 <_sk_callback_sse41+0x7aa>
11794  DB  68,15,88,37,28,33,0,0               ; addps         0x211c(%rip),%xmm12        # 40a0 <_sk_callback_sse41+0x7ba>
11795  DB  15,40,29,37,33,0,0                  ; movaps        0x2125(%rip),%xmm3        # 40b0 <_sk_callback_sse41+0x7ca>
11796  DB  65,15,89,219                        ; mulps         %xmm11,%xmm3
11797  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
11798  DB  68,15,88,29,37,33,0,0               ; addps         0x2125(%rip),%xmm11        # 40c0 <_sk_callback_sse41+0x7da>
11799  DB  15,40,29,46,33,0,0                  ; movaps        0x212e(%rip),%xmm3        # 40d0 <_sk_callback_sse41+0x7ea>
11800  DB  65,15,94,219                        ; divps         %xmm11,%xmm3
11801  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
11802  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
11803  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
11804  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
11805  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
11806  DB  68,15,88,37,27,33,0,0               ; addps         0x211b(%rip),%xmm12        # 40e0 <_sk_callback_sse41+0x7fa>
11807  DB  15,40,29,36,33,0,0                  ; movaps        0x2124(%rip),%xmm3        # 40f0 <_sk_callback_sse41+0x80a>
11808  DB  65,15,89,219                        ; mulps         %xmm11,%xmm3
11809  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
11810  DB  68,15,40,21,36,33,0,0               ; movaps        0x2124(%rip),%xmm10        # 4100 <_sk_callback_sse41+0x81a>
11811  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
11812  DB  15,40,29,41,33,0,0                  ; movaps        0x2129(%rip),%xmm3        # 4110 <_sk_callback_sse41+0x82a>
11813  DB  65,15,94,218                        ; divps         %xmm10,%xmm3
11814  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
11815  DB  15,89,29,42,33,0,0                  ; mulps         0x212a(%rip),%xmm3        # 4120 <_sk_callback_sse41+0x83a>
11816  DB  102,68,15,91,211                    ; cvtps2dq      %xmm3,%xmm10
11817  DB  243,15,16,88,20                     ; movss         0x14(%rax),%xmm3
11818  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
11819  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
11820  DB  102,65,15,56,20,217                 ; blendvps      %xmm0,%xmm9,%xmm3
11821  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11822  DB  15,95,216                           ; maxps         %xmm0,%xmm3
11823  DB  15,93,29,21,33,0,0                  ; minps         0x2115(%rip),%xmm3        # 4130 <_sk_callback_sse41+0x84a>
11824  DB  72,173                              ; lods          %ds:(%rsi),%rax
11825  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
11826  DB  255,224                             ; jmpq          *%rax
11827
11828PUBLIC _sk_lab_to_xyz_sse41
11829_sk_lab_to_xyz_sse41 LABEL PROC
11830  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
11831  DB  68,15,89,5,17,33,0,0                ; mulps         0x2111(%rip),%xmm8        # 4140 <_sk_callback_sse41+0x85a>
11832  DB  68,15,40,13,25,33,0,0               ; movaps        0x2119(%rip),%xmm9        # 4150 <_sk_callback_sse41+0x86a>
11833  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
11834  DB  15,40,5,30,33,0,0                   ; movaps        0x211e(%rip),%xmm0        # 4160 <_sk_callback_sse41+0x87a>
11835  DB  15,88,200                           ; addps         %xmm0,%xmm1
11836  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
11837  DB  15,88,208                           ; addps         %xmm0,%xmm2
11838  DB  68,15,88,5,28,33,0,0                ; addps         0x211c(%rip),%xmm8        # 4170 <_sk_callback_sse41+0x88a>
11839  DB  68,15,89,5,36,33,0,0                ; mulps         0x2124(%rip),%xmm8        # 4180 <_sk_callback_sse41+0x89a>
11840  DB  15,89,13,45,33,0,0                  ; mulps         0x212d(%rip),%xmm1        # 4190 <_sk_callback_sse41+0x8aa>
11841  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
11842  DB  15,89,21,50,33,0,0                  ; mulps         0x2132(%rip),%xmm2        # 41a0 <_sk_callback_sse41+0x8ba>
11843  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
11844  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
11845  DB  68,15,40,217                        ; movaps        %xmm1,%xmm11
11846  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
11847  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
11848  DB  68,15,40,13,38,33,0,0               ; movaps        0x2126(%rip),%xmm9        # 41b0 <_sk_callback_sse41+0x8ca>
11849  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
11850  DB  65,15,194,195,1                     ; cmpltps       %xmm11,%xmm0
11851  DB  15,40,21,38,33,0,0                  ; movaps        0x2126(%rip),%xmm2        # 41c0 <_sk_callback_sse41+0x8da>
11852  DB  15,88,202                           ; addps         %xmm2,%xmm1
11853  DB  68,15,40,37,43,33,0,0               ; movaps        0x212b(%rip),%xmm12        # 41d0 <_sk_callback_sse41+0x8ea>
11854  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
11855  DB  102,65,15,56,20,203                 ; blendvps      %xmm0,%xmm11,%xmm1
11856  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
11857  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
11858  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
11859  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
11860  DB  65,15,194,195,1                     ; cmpltps       %xmm11,%xmm0
11861  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
11862  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
11863  DB  102,69,15,56,20,195                 ; blendvps      %xmm0,%xmm11,%xmm8
11864  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
11865  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
11866  DB  69,15,89,218                        ; mulps         %xmm10,%xmm11
11867  DB  69,15,194,203,1                     ; cmpltps       %xmm11,%xmm9
11868  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
11869  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
11870  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
11871  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
11872  DB  15,89,13,228,32,0,0                 ; mulps         0x20e4(%rip),%xmm1        # 41e0 <_sk_callback_sse41+0x8fa>
11873  DB  15,89,21,237,32,0,0                 ; mulps         0x20ed(%rip),%xmm2        # 41f0 <_sk_callback_sse41+0x90a>
11874  DB  72,173                              ; lods          %ds:(%rsi),%rax
11875  DB  15,40,193                           ; movaps        %xmm1,%xmm0
11876  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
11877  DB  255,224                             ; jmpq          *%rax
11878
11879PUBLIC _sk_load_a8_sse41
11880_sk_load_a8_sse41 LABEL PROC
11881  DB  72,173                              ; lods          %ds:(%rsi),%rax
11882  DB  72,139,0                            ; mov           (%rax),%rax
11883  DB  102,15,56,49,4,56                   ; pmovzxbd      (%rax,%rdi,1),%xmm0
11884  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
11885  DB  15,89,29,221,32,0,0                 ; mulps         0x20dd(%rip),%xmm3        # 4200 <_sk_callback_sse41+0x91a>
11886  DB  72,173                              ; lods          %ds:(%rsi),%rax
11887  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11888  DB  15,87,201                           ; xorps         %xmm1,%xmm1
11889  DB  15,87,210                           ; xorps         %xmm2,%xmm2
11890  DB  255,224                             ; jmpq          *%rax
11891
11892PUBLIC _sk_gather_a8_sse41
11893_sk_gather_a8_sse41 LABEL PROC
11894  DB  72,173                              ; lods          %ds:(%rsi),%rax
11895  DB  76,139,8                            ; mov           (%rax),%r9
11896  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
11897  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
11898  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
11899  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
11900  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
11901  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
11902  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
11903  DB  65,137,192                          ; mov           %eax,%r8d
11904  DB  72,193,232,32                       ; shr           $0x20,%rax
11905  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
11906  DB  65,137,202                          ; mov           %ecx,%r10d
11907  DB  72,193,233,32                       ; shr           $0x20,%rcx
11908  DB  102,67,15,58,32,4,17,0              ; pinsrb        $0x0,(%r9,%r10,1),%xmm0
11909  DB  102,65,15,58,32,4,9,1               ; pinsrb        $0x1,(%r9,%rcx,1),%xmm0
11910  DB  67,15,182,12,1                      ; movzbl        (%r9,%r8,1),%ecx
11911  DB  102,15,58,32,193,2                  ; pinsrb        $0x2,%ecx,%xmm0
11912  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
11913  DB  102,15,58,32,192,3                  ; pinsrb        $0x3,%eax,%xmm0
11914  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
11915  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
11916  DB  15,89,29,113,32,0,0                 ; mulps         0x2071(%rip),%xmm3        # 4210 <_sk_callback_sse41+0x92a>
11917  DB  72,173                              ; lods          %ds:(%rsi),%rax
11918  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11919  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
11920  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
11921  DB  255,224                             ; jmpq          *%rax
11922
11923PUBLIC _sk_store_a8_sse41
11924_sk_store_a8_sse41 LABEL PROC
11925  DB  72,173                              ; lods          %ds:(%rsi),%rax
11926  DB  72,139,0                            ; mov           (%rax),%rax
11927  DB  68,15,40,5,101,32,0,0               ; movaps        0x2065(%rip),%xmm8        # 4220 <_sk_callback_sse41+0x93a>
11928  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
11929  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
11930  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
11931  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
11932  DB  102,68,15,126,4,56                  ; movd          %xmm8,(%rax,%rdi,1)
11933  DB  72,173                              ; lods          %ds:(%rsi),%rax
11934  DB  255,224                             ; jmpq          *%rax
11935
11936PUBLIC _sk_load_g8_sse41
11937_sk_load_g8_sse41 LABEL PROC
11938  DB  72,173                              ; lods          %ds:(%rsi),%rax
11939  DB  72,139,0                            ; mov           (%rax),%rax
11940  DB  102,15,56,49,4,56                   ; pmovzxbd      (%rax,%rdi,1),%xmm0
11941  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
11942  DB  15,89,5,66,32,0,0                   ; mulps         0x2042(%rip),%xmm0        # 4230 <_sk_callback_sse41+0x94a>
11943  DB  72,173                              ; lods          %ds:(%rsi),%rax
11944  DB  15,40,29,73,32,0,0                  ; movaps        0x2049(%rip),%xmm3        # 4240 <_sk_callback_sse41+0x95a>
11945  DB  15,40,200                           ; movaps        %xmm0,%xmm1
11946  DB  15,40,208                           ; movaps        %xmm0,%xmm2
11947  DB  255,224                             ; jmpq          *%rax
11948
11949PUBLIC _sk_gather_g8_sse41
11950_sk_gather_g8_sse41 LABEL PROC
11951  DB  72,173                              ; lods          %ds:(%rsi),%rax
11952  DB  76,139,8                            ; mov           (%rax),%r9
11953  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
11954  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
11955  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
11956  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
11957  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
11958  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
11959  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
11960  DB  65,137,192                          ; mov           %eax,%r8d
11961  DB  72,193,232,32                       ; shr           $0x20,%rax
11962  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
11963  DB  65,137,202                          ; mov           %ecx,%r10d
11964  DB  72,193,233,32                       ; shr           $0x20,%rcx
11965  DB  102,67,15,58,32,4,17,0              ; pinsrb        $0x0,(%r9,%r10,1),%xmm0
11966  DB  102,65,15,58,32,4,9,1               ; pinsrb        $0x1,(%r9,%rcx,1),%xmm0
11967  DB  67,15,182,12,1                      ; movzbl        (%r9,%r8,1),%ecx
11968  DB  102,15,58,32,193,2                  ; pinsrb        $0x2,%ecx,%xmm0
11969  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
11970  DB  102,15,58,32,192,3                  ; pinsrb        $0x3,%eax,%xmm0
11971  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
11972  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
11973  DB  15,89,5,226,31,0,0                  ; mulps         0x1fe2(%rip),%xmm0        # 4250 <_sk_callback_sse41+0x96a>
11974  DB  72,173                              ; lods          %ds:(%rsi),%rax
11975  DB  15,40,29,233,31,0,0                 ; movaps        0x1fe9(%rip),%xmm3        # 4260 <_sk_callback_sse41+0x97a>
11976  DB  15,40,200                           ; movaps        %xmm0,%xmm1
11977  DB  15,40,208                           ; movaps        %xmm0,%xmm2
11978  DB  255,224                             ; jmpq          *%rax
11979
11980PUBLIC _sk_gather_i8_sse41
11981_sk_gather_i8_sse41 LABEL PROC
11982  DB  72,173                              ; lods          %ds:(%rsi),%rax
11983  DB  73,137,192                          ; mov           %rax,%r8
11984  DB  77,133,192                          ; test          %r8,%r8
11985  DB  116,5                               ; je            228e <_sk_gather_i8_sse41+0xf>
11986  DB  76,137,192                          ; mov           %r8,%rax
11987  DB  235,2                               ; jmp           2290 <_sk_gather_i8_sse41+0x11>
11988  DB  72,173                              ; lods          %ds:(%rsi),%rax
11989  DB  76,139,16                           ; mov           (%rax),%r10
11990  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
11991  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
11992  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
11993  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
11994  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
11995  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
11996  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
11997  DB  65,137,193                          ; mov           %eax,%r9d
11998  DB  72,193,232,32                       ; shr           $0x20,%rax
11999  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
12000  DB  65,137,203                          ; mov           %ecx,%r11d
12001  DB  72,193,233,32                       ; shr           $0x20,%rcx
12002  DB  102,67,15,58,32,4,26,0              ; pinsrb        $0x0,(%r10,%r11,1),%xmm0
12003  DB  102,65,15,58,32,4,10,1              ; pinsrb        $0x1,(%r10,%rcx,1),%xmm0
12004  DB  102,67,15,58,32,4,10,2              ; pinsrb        $0x2,(%r10,%r9,1),%xmm0
12005  DB  102,65,15,58,32,4,2,3               ; pinsrb        $0x3,(%r10,%rax,1),%xmm0
12006  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
12007  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
12008  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
12009  DB  73,139,64,8                         ; mov           0x8(%r8),%rax
12010  DB  65,137,200                          ; mov           %ecx,%r8d
12011  DB  72,193,233,30                       ; shr           $0x1e,%rcx
12012  DB  69,137,202                          ; mov           %r9d,%r10d
12013  DB  73,193,233,30                       ; shr           $0x1e,%r9
12014  DB  102,66,15,110,28,128                ; movd          (%rax,%r8,4),%xmm3
12015  DB  102,15,58,34,28,8,1                 ; pinsrd        $0x1,(%rax,%rcx,1),%xmm3
12016  DB  102,66,15,58,34,28,144,2            ; pinsrd        $0x2,(%rax,%r10,4),%xmm3
12017  DB  102,66,15,58,34,28,8,3              ; pinsrd        $0x3,(%rax,%r9,1),%xmm3
12018  DB  102,15,111,5,64,31,0,0              ; movdqa        0x1f40(%rip),%xmm0        # 4270 <_sk_callback_sse41+0x98a>
12019  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
12020  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12021  DB  68,15,40,5,65,31,0,0                ; movaps        0x1f41(%rip),%xmm8        # 4280 <_sk_callback_sse41+0x99a>
12022  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12023  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
12024  DB  102,15,56,0,13,64,31,0,0            ; pshufb        0x1f40(%rip),%xmm1        # 4290 <_sk_callback_sse41+0x9aa>
12025  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12026  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12027  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
12028  DB  102,15,56,0,21,60,31,0,0            ; pshufb        0x1f3c(%rip),%xmm2        # 42a0 <_sk_callback_sse41+0x9ba>
12029  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12030  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12031  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
12032  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12033  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
12034  DB  72,173                              ; lods          %ds:(%rsi),%rax
12035  DB  255,224                             ; jmpq          *%rax
12036
12037PUBLIC _sk_load_565_sse41
12038_sk_load_565_sse41 LABEL PROC
12039  DB  72,173                              ; lods          %ds:(%rsi),%rax
12040  DB  72,139,0                            ; mov           (%rax),%rax
12041  DB  102,15,56,51,20,120                 ; pmovzxwd      (%rax,%rdi,2),%xmm2
12042  DB  102,15,111,5,34,31,0,0              ; movdqa        0x1f22(%rip),%xmm0        # 42b0 <_sk_callback_sse41+0x9ca>
12043  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
12044  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12045  DB  15,89,5,36,31,0,0                   ; mulps         0x1f24(%rip),%xmm0        # 42c0 <_sk_callback_sse41+0x9da>
12046  DB  102,15,111,13,44,31,0,0             ; movdqa        0x1f2c(%rip),%xmm1        # 42d0 <_sk_callback_sse41+0x9ea>
12047  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
12048  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12049  DB  15,89,13,46,31,0,0                  ; mulps         0x1f2e(%rip),%xmm1        # 42e0 <_sk_callback_sse41+0x9fa>
12050  DB  102,15,219,21,54,31,0,0             ; pand          0x1f36(%rip),%xmm2        # 42f0 <_sk_callback_sse41+0xa0a>
12051  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12052  DB  15,89,21,60,31,0,0                  ; mulps         0x1f3c(%rip),%xmm2        # 4300 <_sk_callback_sse41+0xa1a>
12053  DB  72,173                              ; lods          %ds:(%rsi),%rax
12054  DB  15,40,29,67,31,0,0                  ; movaps        0x1f43(%rip),%xmm3        # 4310 <_sk_callback_sse41+0xa2a>
12055  DB  255,224                             ; jmpq          *%rax
12056
12057PUBLIC _sk_gather_565_sse41
12058_sk_gather_565_sse41 LABEL PROC
12059  DB  72,173                              ; lods          %ds:(%rsi),%rax
12060  DB  76,139,8                            ; mov           (%rax),%r9
12061  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
12062  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
12063  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
12064  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
12065  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
12066  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
12067  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
12068  DB  65,137,192                          ; mov           %eax,%r8d
12069  DB  72,193,232,32                       ; shr           $0x20,%rax
12070  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
12071  DB  65,137,202                          ; mov           %ecx,%r10d
12072  DB  72,193,233,32                       ; shr           $0x20,%rcx
12073  DB  102,67,15,196,4,81,0                ; pinsrw        $0x0,(%r9,%r10,2),%xmm0
12074  DB  102,65,15,196,4,73,1                ; pinsrw        $0x1,(%r9,%rcx,2),%xmm0
12075  DB  67,15,183,12,65                     ; movzwl        (%r9,%r8,2),%ecx
12076  DB  102,15,196,193,2                    ; pinsrw        $0x2,%ecx,%xmm0
12077  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
12078  DB  102,15,196,192,3                    ; pinsrw        $0x3,%eax,%xmm0
12079  DB  102,15,56,51,208                    ; pmovzxwd      %xmm0,%xmm2
12080  DB  102,15,111,5,232,30,0,0             ; movdqa        0x1ee8(%rip),%xmm0        # 4320 <_sk_callback_sse41+0xa3a>
12081  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
12082  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12083  DB  15,89,5,234,30,0,0                  ; mulps         0x1eea(%rip),%xmm0        # 4330 <_sk_callback_sse41+0xa4a>
12084  DB  102,15,111,13,242,30,0,0            ; movdqa        0x1ef2(%rip),%xmm1        # 4340 <_sk_callback_sse41+0xa5a>
12085  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
12086  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12087  DB  15,89,13,244,30,0,0                 ; mulps         0x1ef4(%rip),%xmm1        # 4350 <_sk_callback_sse41+0xa6a>
12088  DB  102,15,219,21,252,30,0,0            ; pand          0x1efc(%rip),%xmm2        # 4360 <_sk_callback_sse41+0xa7a>
12089  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12090  DB  15,89,21,2,31,0,0                   ; mulps         0x1f02(%rip),%xmm2        # 4370 <_sk_callback_sse41+0xa8a>
12091  DB  72,173                              ; lods          %ds:(%rsi),%rax
12092  DB  15,40,29,9,31,0,0                   ; movaps        0x1f09(%rip),%xmm3        # 4380 <_sk_callback_sse41+0xa9a>
12093  DB  255,224                             ; jmpq          *%rax
12094
12095PUBLIC _sk_store_565_sse41
12096_sk_store_565_sse41 LABEL PROC
12097  DB  72,173                              ; lods          %ds:(%rsi),%rax
12098  DB  72,139,0                            ; mov           (%rax),%rax
12099  DB  68,15,40,5,10,31,0,0                ; movaps        0x1f0a(%rip),%xmm8        # 4390 <_sk_callback_sse41+0xaaa>
12100  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12101  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12102  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12103  DB  102,65,15,114,241,11                ; pslld         $0xb,%xmm9
12104  DB  68,15,40,21,255,30,0,0              ; movaps        0x1eff(%rip),%xmm10        # 43a0 <_sk_callback_sse41+0xaba>
12105  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
12106  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
12107  DB  102,65,15,114,242,5                 ; pslld         $0x5,%xmm10
12108  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
12109  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
12110  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
12111  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
12112  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
12113  DB  102,68,15,214,4,120                 ; movq          %xmm8,(%rax,%rdi,2)
12114  DB  72,173                              ; lods          %ds:(%rsi),%rax
12115  DB  255,224                             ; jmpq          *%rax
12116
12117PUBLIC _sk_load_4444_sse41
12118_sk_load_4444_sse41 LABEL PROC
12119  DB  72,173                              ; lods          %ds:(%rsi),%rax
12120  DB  72,139,0                            ; mov           (%rax),%rax
12121  DB  102,15,56,51,28,120                 ; pmovzxwd      (%rax,%rdi,2),%xmm3
12122  DB  102,15,111,5,202,30,0,0             ; movdqa        0x1eca(%rip),%xmm0        # 43b0 <_sk_callback_sse41+0xaca>
12123  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
12124  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12125  DB  15,89,5,204,30,0,0                  ; mulps         0x1ecc(%rip),%xmm0        # 43c0 <_sk_callback_sse41+0xada>
12126  DB  102,15,111,13,212,30,0,0            ; movdqa        0x1ed4(%rip),%xmm1        # 43d0 <_sk_callback_sse41+0xaea>
12127  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
12128  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12129  DB  15,89,13,214,30,0,0                 ; mulps         0x1ed6(%rip),%xmm1        # 43e0 <_sk_callback_sse41+0xafa>
12130  DB  102,15,111,21,222,30,0,0            ; movdqa        0x1ede(%rip),%xmm2        # 43f0 <_sk_callback_sse41+0xb0a>
12131  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
12132  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12133  DB  15,89,21,224,30,0,0                 ; mulps         0x1ee0(%rip),%xmm2        # 4400 <_sk_callback_sse41+0xb1a>
12134  DB  102,15,219,29,232,30,0,0            ; pand          0x1ee8(%rip),%xmm3        # 4410 <_sk_callback_sse41+0xb2a>
12135  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12136  DB  15,89,29,238,30,0,0                 ; mulps         0x1eee(%rip),%xmm3        # 4420 <_sk_callback_sse41+0xb3a>
12137  DB  72,173                              ; lods          %ds:(%rsi),%rax
12138  DB  255,224                             ; jmpq          *%rax
12139
12140PUBLIC _sk_gather_4444_sse41
12141_sk_gather_4444_sse41 LABEL PROC
12142  DB  72,173                              ; lods          %ds:(%rsi),%rax
12143  DB  76,139,8                            ; mov           (%rax),%r9
12144  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
12145  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
12146  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
12147  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
12148  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
12149  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
12150  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
12151  DB  65,137,192                          ; mov           %eax,%r8d
12152  DB  72,193,232,32                       ; shr           $0x20,%rax
12153  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
12154  DB  65,137,202                          ; mov           %ecx,%r10d
12155  DB  72,193,233,32                       ; shr           $0x20,%rcx
12156  DB  102,67,15,196,4,81,0                ; pinsrw        $0x0,(%r9,%r10,2),%xmm0
12157  DB  102,65,15,196,4,73,1                ; pinsrw        $0x1,(%r9,%rcx,2),%xmm0
12158  DB  67,15,183,12,65                     ; movzwl        (%r9,%r8,2),%ecx
12159  DB  102,15,196,193,2                    ; pinsrw        $0x2,%ecx,%xmm0
12160  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
12161  DB  102,15,196,192,3                    ; pinsrw        $0x3,%eax,%xmm0
12162  DB  102,15,56,51,216                    ; pmovzxwd      %xmm0,%xmm3
12163  DB  102,15,111,5,145,30,0,0             ; movdqa        0x1e91(%rip),%xmm0        # 4430 <_sk_callback_sse41+0xb4a>
12164  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
12165  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12166  DB  15,89,5,147,30,0,0                  ; mulps         0x1e93(%rip),%xmm0        # 4440 <_sk_callback_sse41+0xb5a>
12167  DB  102,15,111,13,155,30,0,0            ; movdqa        0x1e9b(%rip),%xmm1        # 4450 <_sk_callback_sse41+0xb6a>
12168  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
12169  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12170  DB  15,89,13,157,30,0,0                 ; mulps         0x1e9d(%rip),%xmm1        # 4460 <_sk_callback_sse41+0xb7a>
12171  DB  102,15,111,21,165,30,0,0            ; movdqa        0x1ea5(%rip),%xmm2        # 4470 <_sk_callback_sse41+0xb8a>
12172  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
12173  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12174  DB  15,89,21,167,30,0,0                 ; mulps         0x1ea7(%rip),%xmm2        # 4480 <_sk_callback_sse41+0xb9a>
12175  DB  102,15,219,29,175,30,0,0            ; pand          0x1eaf(%rip),%xmm3        # 4490 <_sk_callback_sse41+0xbaa>
12176  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12177  DB  15,89,29,181,30,0,0                 ; mulps         0x1eb5(%rip),%xmm3        # 44a0 <_sk_callback_sse41+0xbba>
12178  DB  72,173                              ; lods          %ds:(%rsi),%rax
12179  DB  255,224                             ; jmpq          *%rax
12180
12181PUBLIC _sk_store_4444_sse41
12182_sk_store_4444_sse41 LABEL PROC
12183  DB  72,173                              ; lods          %ds:(%rsi),%rax
12184  DB  72,139,0                            ; mov           (%rax),%rax
12185  DB  68,15,40,5,180,30,0,0               ; movaps        0x1eb4(%rip),%xmm8        # 44b0 <_sk_callback_sse41+0xbca>
12186  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12187  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12188  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12189  DB  102,65,15,114,241,12                ; pslld         $0xc,%xmm9
12190  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
12191  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
12192  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
12193  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
12194  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
12195  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
12196  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12197  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12198  DB  102,65,15,114,241,4                 ; pslld         $0x4,%xmm9
12199  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
12200  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
12201  DB  102,69,15,86,193                    ; orpd          %xmm9,%xmm8
12202  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
12203  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
12204  DB  102,68,15,214,4,120                 ; movq          %xmm8,(%rax,%rdi,2)
12205  DB  72,173                              ; lods          %ds:(%rsi),%rax
12206  DB  255,224                             ; jmpq          *%rax
12207
12208PUBLIC _sk_load_8888_sse41
12209_sk_load_8888_sse41 LABEL PROC
12210  DB  72,173                              ; lods          %ds:(%rsi),%rax
12211  DB  72,139,0                            ; mov           (%rax),%rax
12212  DB  15,16,28,184                        ; movups        (%rax,%rdi,4),%xmm3
12213  DB  15,40,5,83,30,0,0                   ; movaps        0x1e53(%rip),%xmm0        # 44c0 <_sk_callback_sse41+0xbda>
12214  DB  15,84,195                           ; andps         %xmm3,%xmm0
12215  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12216  DB  68,15,40,5,85,30,0,0                ; movaps        0x1e55(%rip),%xmm8        # 44d0 <_sk_callback_sse41+0xbea>
12217  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12218  DB  15,40,203                           ; movaps        %xmm3,%xmm1
12219  DB  102,15,56,0,13,85,30,0,0            ; pshufb        0x1e55(%rip),%xmm1        # 44e0 <_sk_callback_sse41+0xbfa>
12220  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12221  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12222  DB  15,40,211                           ; movaps        %xmm3,%xmm2
12223  DB  102,15,56,0,21,82,30,0,0            ; pshufb        0x1e52(%rip),%xmm2        # 44f0 <_sk_callback_sse41+0xc0a>
12224  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12225  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12226  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
12227  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12228  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
12229  DB  72,173                              ; lods          %ds:(%rsi),%rax
12230  DB  255,224                             ; jmpq          *%rax
12231
12232PUBLIC _sk_gather_8888_sse41
12233_sk_gather_8888_sse41 LABEL PROC
12234  DB  72,173                              ; lods          %ds:(%rsi),%rax
12235  DB  76,139,8                            ; mov           (%rax),%r9
12236  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
12237  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
12238  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
12239  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
12240  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
12241  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
12242  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
12243  DB  65,137,192                          ; mov           %eax,%r8d
12244  DB  72,193,232,32                       ; shr           $0x20,%rax
12245  DB  102,72,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%rcx
12246  DB  65,137,202                          ; mov           %ecx,%r10d
12247  DB  72,193,233,32                       ; shr           $0x20,%rcx
12248  DB  102,67,15,110,28,129                ; movd          (%r9,%r8,4),%xmm3
12249  DB  102,65,15,58,34,28,129,1            ; pinsrd        $0x1,(%r9,%rax,4),%xmm3
12250  DB  102,67,15,58,34,28,145,2            ; pinsrd        $0x2,(%r9,%r10,4),%xmm3
12251  DB  102,65,15,58,34,28,137,3            ; pinsrd        $0x3,(%r9,%rcx,4),%xmm3
12252  DB  102,15,111,5,235,29,0,0             ; movdqa        0x1deb(%rip),%xmm0        # 4500 <_sk_callback_sse41+0xc1a>
12253  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
12254  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12255  DB  68,15,40,5,236,29,0,0               ; movaps        0x1dec(%rip),%xmm8        # 4510 <_sk_callback_sse41+0xc2a>
12256  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12257  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
12258  DB  102,15,56,0,13,235,29,0,0           ; pshufb        0x1deb(%rip),%xmm1        # 4520 <_sk_callback_sse41+0xc3a>
12259  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12260  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12261  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
12262  DB  102,15,56,0,21,231,29,0,0           ; pshufb        0x1de7(%rip),%xmm2        # 4530 <_sk_callback_sse41+0xc4a>
12263  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12264  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12265  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
12266  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12267  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
12268  DB  72,173                              ; lods          %ds:(%rsi),%rax
12269  DB  255,224                             ; jmpq          *%rax
12270
12271PUBLIC _sk_store_8888_sse41
12272_sk_store_8888_sse41 LABEL PROC
12273  DB  72,173                              ; lods          %ds:(%rsi),%rax
12274  DB  72,139,0                            ; mov           (%rax),%rax
12275  DB  68,15,40,5,211,29,0,0               ; movaps        0x1dd3(%rip),%xmm8        # 4540 <_sk_callback_sse41+0xc5a>
12276  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12277  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12278  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12279  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
12280  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
12281  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
12282  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
12283  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
12284  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
12285  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12286  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12287  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
12288  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
12289  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
12290  DB  102,65,15,114,240,24                ; pslld         $0x18,%xmm8
12291  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
12292  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
12293  DB  243,68,15,127,4,184                 ; movdqu        %xmm8,(%rax,%rdi,4)
12294  DB  72,173                              ; lods          %ds:(%rsi),%rax
12295  DB  255,224                             ; jmpq          *%rax
12296
12297PUBLIC _sk_load_f16_sse41
12298_sk_load_f16_sse41 LABEL PROC
12299  DB  72,173                              ; lods          %ds:(%rsi),%rax
12300  DB  72,139,0                            ; mov           (%rax),%rax
12301  DB  243,15,111,4,248                    ; movdqu        (%rax,%rdi,8),%xmm0
12302  DB  243,15,111,76,248,16                ; movdqu        0x10(%rax,%rdi,8),%xmm1
12303  DB  102,68,15,111,200                   ; movdqa        %xmm0,%xmm9
12304  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
12305  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
12306  DB  102,69,15,111,217                   ; movdqa        %xmm9,%xmm11
12307  DB  102,68,15,97,216                    ; punpcklwd     %xmm0,%xmm11
12308  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
12309  DB  102,65,15,56,51,203                 ; pmovzxwd      %xmm11,%xmm1
12310  DB  102,68,15,111,5,76,29,0,0           ; movdqa        0x1d4c(%rip),%xmm8        # 4550 <_sk_callback_sse41+0xc6a>
12311  DB  102,15,111,209                      ; movdqa        %xmm1,%xmm2
12312  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
12313  DB  102,15,239,202                      ; pxor          %xmm2,%xmm1
12314  DB  102,15,111,29,71,29,0,0             ; movdqa        0x1d47(%rip),%xmm3        # 4560 <_sk_callback_sse41+0xc7a>
12315  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
12316  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
12317  DB  102,15,56,63,195                    ; pmaxud        %xmm3,%xmm0
12318  DB  102,15,118,193                      ; pcmpeqd       %xmm1,%xmm0
12319  DB  102,15,114,241,13                   ; pslld         $0xd,%xmm1
12320  DB  102,15,235,202                      ; por           %xmm2,%xmm1
12321  DB  102,68,15,111,21,51,29,0,0          ; movdqa        0x1d33(%rip),%xmm10        # 4570 <_sk_callback_sse41+0xc8a>
12322  DB  102,65,15,254,202                   ; paddd         %xmm10,%xmm1
12323  DB  102,15,219,193                      ; pand          %xmm1,%xmm0
12324  DB  102,65,15,115,219,8                 ; psrldq        $0x8,%xmm11
12325  DB  102,69,15,56,51,219                 ; pmovzxwd      %xmm11,%xmm11
12326  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
12327  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
12328  DB  102,68,15,239,218                   ; pxor          %xmm2,%xmm11
12329  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
12330  DB  102,65,15,111,203                   ; movdqa        %xmm11,%xmm1
12331  DB  102,15,56,63,203                    ; pmaxud        %xmm3,%xmm1
12332  DB  102,65,15,118,203                   ; pcmpeqd       %xmm11,%xmm1
12333  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
12334  DB  102,68,15,235,218                   ; por           %xmm2,%xmm11
12335  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
12336  DB  102,65,15,219,203                   ; pand          %xmm11,%xmm1
12337  DB  102,69,15,56,51,217                 ; pmovzxwd      %xmm9,%xmm11
12338  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
12339  DB  102,69,15,219,224                   ; pand          %xmm8,%xmm12
12340  DB  102,69,15,239,220                   ; pxor          %xmm12,%xmm11
12341  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
12342  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
12343  DB  102,15,56,63,211                    ; pmaxud        %xmm3,%xmm2
12344  DB  102,65,15,118,211                   ; pcmpeqd       %xmm11,%xmm2
12345  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
12346  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
12347  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
12348  DB  102,65,15,219,211                   ; pand          %xmm11,%xmm2
12349  DB  102,65,15,115,217,8                 ; psrldq        $0x8,%xmm9
12350  DB  102,69,15,56,51,201                 ; pmovzxwd      %xmm9,%xmm9
12351  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
12352  DB  102,69,15,239,200                   ; pxor          %xmm8,%xmm9
12353  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
12354  DB  102,65,15,56,63,217                 ; pmaxud        %xmm9,%xmm3
12355  DB  102,65,15,118,217                   ; pcmpeqd       %xmm9,%xmm3
12356  DB  102,65,15,114,241,13                ; pslld         $0xd,%xmm9
12357  DB  102,69,15,235,200                   ; por           %xmm8,%xmm9
12358  DB  102,69,15,254,202                   ; paddd         %xmm10,%xmm9
12359  DB  102,65,15,219,217                   ; pand          %xmm9,%xmm3
12360  DB  72,173                              ; lods          %ds:(%rsi),%rax
12361  DB  255,224                             ; jmpq          *%rax
12362
12363PUBLIC _sk_gather_f16_sse41
12364_sk_gather_f16_sse41 LABEL PROC
12365  DB  72,173                              ; lods          %ds:(%rsi),%rax
12366  DB  76,139,8                            ; mov           (%rax),%r9
12367  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
12368  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
12369  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
12370  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
12371  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
12372  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
12373  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
12374  DB  65,137,192                          ; mov           %eax,%r8d
12375  DB  72,193,232,32                       ; shr           $0x20,%rax
12376  DB  102,72,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%rcx
12377  DB  65,137,202                          ; mov           %ecx,%r10d
12378  DB  72,193,233,32                       ; shr           $0x20,%rcx
12379  DB  243,65,15,126,4,201                 ; movq          (%r9,%rcx,8),%xmm0
12380  DB  243,67,15,126,12,209                ; movq          (%r9,%r10,8),%xmm1
12381  DB  102,15,108,200                      ; punpcklqdq    %xmm0,%xmm1
12382  DB  243,65,15,126,4,193                 ; movq          (%r9,%rax,8),%xmm0
12383  DB  243,67,15,126,20,193                ; movq          (%r9,%r8,8),%xmm2
12384  DB  102,15,108,208                      ; punpcklqdq    %xmm0,%xmm2
12385  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
12386  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
12387  DB  102,15,105,209                      ; punpckhwd     %xmm1,%xmm2
12388  DB  102,69,15,111,217                   ; movdqa        %xmm9,%xmm11
12389  DB  102,68,15,97,218                    ; punpcklwd     %xmm2,%xmm11
12390  DB  102,68,15,105,202                   ; punpckhwd     %xmm2,%xmm9
12391  DB  102,65,15,56,51,203                 ; pmovzxwd      %xmm11,%xmm1
12392  DB  102,68,15,111,5,241,27,0,0          ; movdqa        0x1bf1(%rip),%xmm8        # 4580 <_sk_callback_sse41+0xc9a>
12393  DB  102,15,111,209                      ; movdqa        %xmm1,%xmm2
12394  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
12395  DB  102,15,239,202                      ; pxor          %xmm2,%xmm1
12396  DB  102,15,111,29,236,27,0,0            ; movdqa        0x1bec(%rip),%xmm3        # 4590 <_sk_callback_sse41+0xcaa>
12397  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
12398  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
12399  DB  102,15,56,63,195                    ; pmaxud        %xmm3,%xmm0
12400  DB  102,15,118,193                      ; pcmpeqd       %xmm1,%xmm0
12401  DB  102,15,114,241,13                   ; pslld         $0xd,%xmm1
12402  DB  102,15,235,202                      ; por           %xmm2,%xmm1
12403  DB  102,68,15,111,21,216,27,0,0         ; movdqa        0x1bd8(%rip),%xmm10        # 45a0 <_sk_callback_sse41+0xcba>
12404  DB  102,65,15,254,202                   ; paddd         %xmm10,%xmm1
12405  DB  102,15,219,193                      ; pand          %xmm1,%xmm0
12406  DB  102,65,15,115,219,8                 ; psrldq        $0x8,%xmm11
12407  DB  102,69,15,56,51,219                 ; pmovzxwd      %xmm11,%xmm11
12408  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
12409  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
12410  DB  102,68,15,239,218                   ; pxor          %xmm2,%xmm11
12411  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
12412  DB  102,65,15,111,203                   ; movdqa        %xmm11,%xmm1
12413  DB  102,15,56,63,203                    ; pmaxud        %xmm3,%xmm1
12414  DB  102,65,15,118,203                   ; pcmpeqd       %xmm11,%xmm1
12415  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
12416  DB  102,68,15,235,218                   ; por           %xmm2,%xmm11
12417  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
12418  DB  102,65,15,219,203                   ; pand          %xmm11,%xmm1
12419  DB  102,69,15,56,51,217                 ; pmovzxwd      %xmm9,%xmm11
12420  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
12421  DB  102,69,15,219,224                   ; pand          %xmm8,%xmm12
12422  DB  102,69,15,239,220                   ; pxor          %xmm12,%xmm11
12423  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
12424  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
12425  DB  102,15,56,63,211                    ; pmaxud        %xmm3,%xmm2
12426  DB  102,65,15,118,211                   ; pcmpeqd       %xmm11,%xmm2
12427  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
12428  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
12429  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
12430  DB  102,65,15,219,211                   ; pand          %xmm11,%xmm2
12431  DB  102,65,15,115,217,8                 ; psrldq        $0x8,%xmm9
12432  DB  102,69,15,56,51,201                 ; pmovzxwd      %xmm9,%xmm9
12433  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
12434  DB  102,69,15,239,200                   ; pxor          %xmm8,%xmm9
12435  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
12436  DB  102,65,15,56,63,217                 ; pmaxud        %xmm9,%xmm3
12437  DB  102,65,15,118,217                   ; pcmpeqd       %xmm9,%xmm3
12438  DB  102,65,15,114,241,13                ; pslld         $0xd,%xmm9
12439  DB  102,69,15,235,200                   ; por           %xmm8,%xmm9
12440  DB  102,69,15,254,202                   ; paddd         %xmm10,%xmm9
12441  DB  102,65,15,219,217                   ; pand          %xmm9,%xmm3
12442  DB  72,173                              ; lods          %ds:(%rsi),%rax
12443  DB  255,224                             ; jmpq          *%rax
12444
12445PUBLIC _sk_store_f16_sse41
12446_sk_store_f16_sse41 LABEL PROC
12447  DB  72,173                              ; lods          %ds:(%rsi),%rax
12448  DB  72,139,0                            ; mov           (%rax),%rax
12449  DB  102,68,15,111,21,14,27,0,0          ; movdqa        0x1b0e(%rip),%xmm10        # 45b0 <_sk_callback_sse41+0xcca>
12450  DB  102,68,15,111,224                   ; movdqa        %xmm0,%xmm12
12451  DB  102,68,15,111,232                   ; movdqa        %xmm0,%xmm13
12452  DB  102,69,15,219,234                   ; pand          %xmm10,%xmm13
12453  DB  102,69,15,239,229                   ; pxor          %xmm13,%xmm12
12454  DB  102,68,15,111,13,1,27,0,0           ; movdqa        0x1b01(%rip),%xmm9        # 45c0 <_sk_callback_sse41+0xcda>
12455  DB  102,65,15,114,213,16                ; psrld         $0x10,%xmm13
12456  DB  102,69,15,111,193                   ; movdqa        %xmm9,%xmm8
12457  DB  102,69,15,102,196                   ; pcmpgtd       %xmm12,%xmm8
12458  DB  102,65,15,114,212,13                ; psrld         $0xd,%xmm12
12459  DB  102,68,15,111,29,242,26,0,0         ; movdqa        0x1af2(%rip),%xmm11        # 45d0 <_sk_callback_sse41+0xcea>
12460  DB  102,69,15,235,235                   ; por           %xmm11,%xmm13
12461  DB  102,69,15,254,236                   ; paddd         %xmm12,%xmm13
12462  DB  102,69,15,223,197                   ; pandn         %xmm13,%xmm8
12463  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
12464  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
12465  DB  102,68,15,111,241                   ; movdqa        %xmm1,%xmm14
12466  DB  102,69,15,219,242                   ; pand          %xmm10,%xmm14
12467  DB  102,69,15,239,238                   ; pxor          %xmm14,%xmm13
12468  DB  102,65,15,114,214,16                ; psrld         $0x10,%xmm14
12469  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
12470  DB  102,69,15,102,229                   ; pcmpgtd       %xmm13,%xmm12
12471  DB  102,65,15,114,213,13                ; psrld         $0xd,%xmm13
12472  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
12473  DB  102,69,15,254,245                   ; paddd         %xmm13,%xmm14
12474  DB  102,69,15,223,230                   ; pandn         %xmm14,%xmm12
12475  DB  102,69,15,56,43,228                 ; packusdw      %xmm12,%xmm12
12476  DB  102,68,15,111,242                   ; movdqa        %xmm2,%xmm14
12477  DB  102,68,15,111,250                   ; movdqa        %xmm2,%xmm15
12478  DB  102,69,15,219,250                   ; pand          %xmm10,%xmm15
12479  DB  102,69,15,239,247                   ; pxor          %xmm15,%xmm14
12480  DB  102,65,15,114,215,16                ; psrld         $0x10,%xmm15
12481  DB  102,69,15,111,233                   ; movdqa        %xmm9,%xmm13
12482  DB  102,69,15,102,238                   ; pcmpgtd       %xmm14,%xmm13
12483  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
12484  DB  102,69,15,235,251                   ; por           %xmm11,%xmm15
12485  DB  102,69,15,254,254                   ; paddd         %xmm14,%xmm15
12486  DB  102,69,15,223,239                   ; pandn         %xmm15,%xmm13
12487  DB  102,69,15,56,43,237                 ; packusdw      %xmm13,%xmm13
12488  DB  102,68,15,219,211                   ; pand          %xmm3,%xmm10
12489  DB  102,68,15,111,243                   ; movdqa        %xmm3,%xmm14
12490  DB  102,69,15,239,242                   ; pxor          %xmm10,%xmm14
12491  DB  102,65,15,114,210,16                ; psrld         $0x10,%xmm10
12492  DB  102,69,15,102,206                   ; pcmpgtd       %xmm14,%xmm9
12493  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
12494  DB  102,69,15,235,211                   ; por           %xmm11,%xmm10
12495  DB  102,69,15,254,214                   ; paddd         %xmm14,%xmm10
12496  DB  102,69,15,223,202                   ; pandn         %xmm10,%xmm9
12497  DB  102,69,15,56,43,201                 ; packusdw      %xmm9,%xmm9
12498  DB  102,69,15,97,196                    ; punpcklwd     %xmm12,%xmm8
12499  DB  102,69,15,97,233                    ; punpcklwd     %xmm9,%xmm13
12500  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
12501  DB  102,69,15,98,205                    ; punpckldq     %xmm13,%xmm9
12502  DB  243,68,15,127,12,248                ; movdqu        %xmm9,(%rax,%rdi,8)
12503  DB  102,69,15,106,197                   ; punpckhdq     %xmm13,%xmm8
12504  DB  243,68,15,127,68,248,16             ; movdqu        %xmm8,0x10(%rax,%rdi,8)
12505  DB  72,173                              ; lods          %ds:(%rsi),%rax
12506  DB  255,224                             ; jmpq          *%rax
12507
12508PUBLIC _sk_load_u16_be_sse41
12509_sk_load_u16_be_sse41 LABEL PROC
12510  DB  72,173                              ; lods          %ds:(%rsi),%rax
12511  DB  72,139,0                            ; mov           (%rax),%rax
12512  DB  243,15,111,4,248                    ; movdqu        (%rax,%rdi,8),%xmm0
12513  DB  243,15,111,76,248,16                ; movdqu        0x10(%rax,%rdi,8),%xmm1
12514  DB  102,15,111,208                      ; movdqa        %xmm0,%xmm2
12515  DB  102,15,97,209                       ; punpcklwd     %xmm1,%xmm2
12516  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
12517  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
12518  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
12519  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
12520  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
12521  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
12522  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
12523  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
12524  DB  102,15,235,200                      ; por           %xmm0,%xmm1
12525  DB  102,15,56,51,193                    ; pmovzxwd      %xmm1,%xmm0
12526  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12527  DB  68,15,40,5,193,25,0,0               ; movaps        0x19c1(%rip),%xmm8        # 45e0 <_sk_callback_sse41+0xcfa>
12528  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12529  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
12530  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
12531  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
12532  DB  102,15,235,217                      ; por           %xmm1,%xmm3
12533  DB  102,15,56,51,203                    ; pmovzxwd      %xmm3,%xmm1
12534  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12535  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12536  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
12537  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
12538  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
12539  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
12540  DB  102,65,15,235,209                   ; por           %xmm9,%xmm2
12541  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
12542  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12543  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12544  DB  102,68,15,111,203                   ; movdqa        %xmm3,%xmm9
12545  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
12546  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
12547  DB  102,65,15,235,217                   ; por           %xmm9,%xmm3
12548  DB  102,15,56,51,219                    ; pmovzxwd      %xmm3,%xmm3
12549  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12550  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
12551  DB  72,173                              ; lods          %ds:(%rsi),%rax
12552  DB  255,224                             ; jmpq          *%rax
12553
12554PUBLIC _sk_load_rgb_u16_be_sse41
12555_sk_load_rgb_u16_be_sse41 LABEL PROC
12556  DB  72,173                              ; lods          %ds:(%rsi),%rax
12557  DB  72,139,0                            ; mov           (%rax),%rax
12558  DB  72,141,12,127                       ; lea           (%rdi,%rdi,2),%rcx
12559  DB  243,15,111,20,72                    ; movdqu        (%rax,%rcx,2),%xmm2
12560  DB  243,15,111,68,72,8                  ; movdqu        0x8(%rax,%rcx,2),%xmm0
12561  DB  102,15,115,216,4                    ; psrldq        $0x4,%xmm0
12562  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
12563  DB  102,15,115,217,6                    ; psrldq        $0x6,%xmm1
12564  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
12565  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
12566  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
12567  DB  102,15,111,194                      ; movdqa        %xmm2,%xmm0
12568  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
12569  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
12570  DB  102,15,105,209                      ; punpckhwd     %xmm1,%xmm2
12571  DB  102,15,111,200                      ; movdqa        %xmm0,%xmm1
12572  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
12573  DB  102,15,113,208,8                    ; psrlw         $0x8,%xmm0
12574  DB  102,15,235,193                      ; por           %xmm1,%xmm0
12575  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
12576  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12577  DB  68,15,40,5,2,25,0,0                 ; movaps        0x1902(%rip),%xmm8        # 45f0 <_sk_callback_sse41+0xd0a>
12578  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12579  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
12580  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
12581  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
12582  DB  102,15,235,217                      ; por           %xmm1,%xmm3
12583  DB  102,15,56,51,203                    ; pmovzxwd      %xmm3,%xmm1
12584  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12585  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12586  DB  102,15,111,218                      ; movdqa        %xmm2,%xmm3
12587  DB  102,15,113,243,8                    ; psllw         $0x8,%xmm3
12588  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
12589  DB  102,15,235,211                      ; por           %xmm3,%xmm2
12590  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
12591  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12592  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12593  DB  72,173                              ; lods          %ds:(%rsi),%rax
12594  DB  15,40,29,201,24,0,0                 ; movaps        0x18c9(%rip),%xmm3        # 4600 <_sk_callback_sse41+0xd1a>
12595  DB  255,224                             ; jmpq          *%rax
12596
12597PUBLIC _sk_store_u16_be_sse41
12598_sk_store_u16_be_sse41 LABEL PROC
12599  DB  72,173                              ; lods          %ds:(%rsi),%rax
12600  DB  72,139,0                            ; mov           (%rax),%rax
12601  DB  68,15,40,13,202,24,0,0              ; movaps        0x18ca(%rip),%xmm9        # 4610 <_sk_callback_sse41+0xd2a>
12602  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12603  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
12604  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
12605  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
12606  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
12607  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
12608  DB  102,65,15,113,208,8                 ; psrlw         $0x8,%xmm8
12609  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
12610  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
12611  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
12612  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
12613  DB  102,69,15,56,43,210                 ; packusdw      %xmm10,%xmm10
12614  DB  102,69,15,111,218                   ; movdqa        %xmm10,%xmm11
12615  DB  102,65,15,113,243,8                 ; psllw         $0x8,%xmm11
12616  DB  102,65,15,113,210,8                 ; psrlw         $0x8,%xmm10
12617  DB  102,69,15,235,211                   ; por           %xmm11,%xmm10
12618  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
12619  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
12620  DB  102,69,15,91,219                    ; cvtps2dq      %xmm11,%xmm11
12621  DB  102,69,15,56,43,219                 ; packusdw      %xmm11,%xmm11
12622  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
12623  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
12624  DB  102,65,15,113,211,8                 ; psrlw         $0x8,%xmm11
12625  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
12626  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
12627  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12628  DB  102,69,15,56,43,201                 ; packusdw      %xmm9,%xmm9
12629  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
12630  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
12631  DB  102,65,15,113,209,8                 ; psrlw         $0x8,%xmm9
12632  DB  102,69,15,235,204                   ; por           %xmm12,%xmm9
12633  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
12634  DB  102,69,15,97,217                    ; punpcklwd     %xmm9,%xmm11
12635  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
12636  DB  102,69,15,98,203                    ; punpckldq     %xmm11,%xmm9
12637  DB  243,68,15,127,12,248                ; movdqu        %xmm9,(%rax,%rdi,8)
12638  DB  102,69,15,106,195                   ; punpckhdq     %xmm11,%xmm8
12639  DB  243,68,15,127,68,248,16             ; movdqu        %xmm8,0x10(%rax,%rdi,8)
12640  DB  72,173                              ; lods          %ds:(%rsi),%rax
12641  DB  255,224                             ; jmpq          *%rax
12642
12643PUBLIC _sk_load_f32_sse41
12644_sk_load_f32_sse41 LABEL PROC
12645  DB  72,173                              ; lods          %ds:(%rsi),%rax
12646  DB  72,139,0                            ; mov           (%rax),%rax
12647  DB  72,137,249                          ; mov           %rdi,%rcx
12648  DB  72,193,225,4                        ; shl           $0x4,%rcx
12649  DB  68,15,16,4,8                        ; movups        (%rax,%rcx,1),%xmm8
12650  DB  15,16,68,8,16                       ; movups        0x10(%rax,%rcx,1),%xmm0
12651  DB  15,16,92,8,32                       ; movups        0x20(%rax,%rcx,1),%xmm3
12652  DB  68,15,16,76,8,48                    ; movups        0x30(%rax,%rcx,1),%xmm9
12653  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
12654  DB  15,20,208                           ; unpcklps      %xmm0,%xmm2
12655  DB  15,40,203                           ; movaps        %xmm3,%xmm1
12656  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
12657  DB  68,15,21,192                        ; unpckhps      %xmm0,%xmm8
12658  DB  65,15,21,217                        ; unpckhps      %xmm9,%xmm3
12659  DB  15,40,194                           ; movaps        %xmm2,%xmm0
12660  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
12661  DB  15,18,202                           ; movhlps       %xmm2,%xmm1
12662  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
12663  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
12664  DB  65,15,18,216                        ; movhlps       %xmm8,%xmm3
12665  DB  72,173                              ; lods          %ds:(%rsi),%rax
12666  DB  255,224                             ; jmpq          *%rax
12667
12668PUBLIC _sk_store_f32_sse41
12669_sk_store_f32_sse41 LABEL PROC
12670  DB  72,173                              ; lods          %ds:(%rsi),%rax
12671  DB  72,139,0                            ; mov           (%rax),%rax
12672  DB  72,137,249                          ; mov           %rdi,%rcx
12673  DB  72,193,225,4                        ; shl           $0x4,%rcx
12674  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12675  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12676  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
12677  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
12678  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
12679  DB  68,15,20,219                        ; unpcklps      %xmm3,%xmm11
12680  DB  68,15,21,193                        ; unpckhps      %xmm1,%xmm8
12681  DB  68,15,21,211                        ; unpckhps      %xmm3,%xmm10
12682  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
12683  DB  102,69,15,20,227                    ; unpcklpd      %xmm11,%xmm12
12684  DB  69,15,18,217                        ; movhlps       %xmm9,%xmm11
12685  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
12686  DB  102,69,15,20,202                    ; unpcklpd      %xmm10,%xmm9
12687  DB  69,15,18,208                        ; movhlps       %xmm8,%xmm10
12688  DB  102,68,15,17,36,8                   ; movupd        %xmm12,(%rax,%rcx,1)
12689  DB  68,15,17,92,8,16                    ; movups        %xmm11,0x10(%rax,%rcx,1)
12690  DB  102,68,15,17,76,8,32                ; movupd        %xmm9,0x20(%rax,%rcx,1)
12691  DB  68,15,17,84,8,48                    ; movups        %xmm10,0x30(%rax,%rcx,1)
12692  DB  72,173                              ; lods          %ds:(%rsi),%rax
12693  DB  255,224                             ; jmpq          *%rax
12694
12695PUBLIC _sk_clamp_x_sse41
12696_sk_clamp_x_sse41 LABEL PROC
12697  DB  72,173                              ; lods          %ds:(%rsi),%rax
12698  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
12699  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
12700  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
12701  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
12702  DB  102,15,118,192                      ; pcmpeqd       %xmm0,%xmm0
12703  DB  102,65,15,254,193                   ; paddd         %xmm9,%xmm0
12704  DB  68,15,93,192                        ; minps         %xmm0,%xmm8
12705  DB  72,173                              ; lods          %ds:(%rsi),%rax
12706  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12707  DB  255,224                             ; jmpq          *%rax
12708
12709PUBLIC _sk_clamp_y_sse41
12710_sk_clamp_y_sse41 LABEL PROC
12711  DB  72,173                              ; lods          %ds:(%rsi),%rax
12712  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
12713  DB  68,15,95,193                        ; maxps         %xmm1,%xmm8
12714  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
12715  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
12716  DB  102,15,118,201                      ; pcmpeqd       %xmm1,%xmm1
12717  DB  102,65,15,254,201                   ; paddd         %xmm9,%xmm1
12718  DB  68,15,93,193                        ; minps         %xmm1,%xmm8
12719  DB  72,173                              ; lods          %ds:(%rsi),%rax
12720  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
12721  DB  255,224                             ; jmpq          *%rax
12722
12723PUBLIC _sk_repeat_x_sse41
12724_sk_repeat_x_sse41 LABEL PROC
12725  DB  72,173                              ; lods          %ds:(%rsi),%rax
12726  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
12727  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
12728  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12729  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
12730  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
12731  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12732  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
12733  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
12734  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
12735  DB  65,15,93,193                        ; minps         %xmm9,%xmm0
12736  DB  72,173                              ; lods          %ds:(%rsi),%rax
12737  DB  255,224                             ; jmpq          *%rax
12738
12739PUBLIC _sk_repeat_y_sse41
12740_sk_repeat_y_sse41 LABEL PROC
12741  DB  72,173                              ; lods          %ds:(%rsi),%rax
12742  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
12743  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
12744  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
12745  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
12746  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
12747  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12748  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
12749  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
12750  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
12751  DB  65,15,93,201                        ; minps         %xmm9,%xmm1
12752  DB  72,173                              ; lods          %ds:(%rsi),%rax
12753  DB  255,224                             ; jmpq          *%rax
12754
12755PUBLIC _sk_mirror_x_sse41
12756_sk_mirror_x_sse41 LABEL PROC
12757  DB  72,173                              ; lods          %ds:(%rsi),%rax
12758  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
12759  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
12760  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
12761  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
12762  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
12763  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
12764  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
12765  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
12766  DB  102,69,15,58,8,210,1                ; roundps       $0x1,%xmm10,%xmm10
12767  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
12768  DB  65,15,92,194                        ; subps         %xmm10,%xmm0
12769  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
12770  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
12771  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
12772  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
12773  DB  102,69,15,118,192                   ; pcmpeqd       %xmm8,%xmm8
12774  DB  102,69,15,254,193                   ; paddd         %xmm9,%xmm8
12775  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
12776  DB  72,173                              ; lods          %ds:(%rsi),%rax
12777  DB  255,224                             ; jmpq          *%rax
12778
12779PUBLIC _sk_mirror_y_sse41
12780_sk_mirror_y_sse41 LABEL PROC
12781  DB  72,173                              ; lods          %ds:(%rsi),%rax
12782  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
12783  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
12784  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
12785  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
12786  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
12787  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
12788  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
12789  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
12790  DB  102,69,15,58,8,210,1                ; roundps       $0x1,%xmm10,%xmm10
12791  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
12792  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
12793  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
12794  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
12795  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
12796  DB  65,15,84,200                        ; andps         %xmm8,%xmm1
12797  DB  102,69,15,118,192                   ; pcmpeqd       %xmm8,%xmm8
12798  DB  102,69,15,254,193                   ; paddd         %xmm9,%xmm8
12799  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
12800  DB  72,173                              ; lods          %ds:(%rsi),%rax
12801  DB  255,224                             ; jmpq          *%rax
12802
12803PUBLIC _sk_luminance_to_alpha_sse41
12804_sk_luminance_to_alpha_sse41 LABEL PROC
12805  DB  15,40,218                           ; movaps        %xmm2,%xmm3
12806  DB  15,89,5,232,21,0,0                  ; mulps         0x15e8(%rip),%xmm0        # 4620 <_sk_callback_sse41+0xd3a>
12807  DB  15,89,13,241,21,0,0                 ; mulps         0x15f1(%rip),%xmm1        # 4630 <_sk_callback_sse41+0xd4a>
12808  DB  15,88,200                           ; addps         %xmm0,%xmm1
12809  DB  15,89,29,247,21,0,0                 ; mulps         0x15f7(%rip),%xmm3        # 4640 <_sk_callback_sse41+0xd5a>
12810  DB  15,88,217                           ; addps         %xmm1,%xmm3
12811  DB  72,173                              ; lods          %ds:(%rsi),%rax
12812  DB  15,87,192                           ; xorps         %xmm0,%xmm0
12813  DB  15,87,201                           ; xorps         %xmm1,%xmm1
12814  DB  15,87,210                           ; xorps         %xmm2,%xmm2
12815  DB  255,224                             ; jmpq          *%rax
12816
12817PUBLIC _sk_matrix_2x3_sse41
12818_sk_matrix_2x3_sse41 LABEL PROC
12819  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
12820  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12821  DB  72,173                              ; lods          %ds:(%rsi),%rax
12822  DB  243,15,16,0                         ; movss         (%rax),%xmm0
12823  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
12824  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
12825  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
12826  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12827  DB  243,68,15,16,88,16                  ; movss         0x10(%rax),%xmm11
12828  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
12829  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
12830  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
12831  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12832  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
12833  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
12834  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
12835  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12836  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
12837  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
12838  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
12839  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
12840  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12841  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
12842  DB  72,173                              ; lods          %ds:(%rsi),%rax
12843  DB  255,224                             ; jmpq          *%rax
12844
12845PUBLIC _sk_matrix_3x4_sse41
12846_sk_matrix_3x4_sse41 LABEL PROC
12847  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
12848  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12849  DB  72,173                              ; lods          %ds:(%rsi),%rax
12850  DB  243,15,16,0                         ; movss         (%rax),%xmm0
12851  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
12852  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
12853  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
12854  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12855  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
12856  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
12857  DB  243,68,15,16,96,36                  ; movss         0x24(%rax),%xmm12
12858  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
12859  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12860  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
12861  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
12862  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
12863  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12864  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
12865  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
12866  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
12867  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12868  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
12869  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
12870  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
12871  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
12872  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12873  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
12874  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
12875  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
12876  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12877  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
12878  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
12879  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12880  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
12881  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
12882  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
12883  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
12884  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
12885  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
12886  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
12887  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
12888  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
12889  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
12890  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
12891  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
12892  DB  72,173                              ; lods          %ds:(%rsi),%rax
12893  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
12894  DB  255,224                             ; jmpq          *%rax
12895
12896PUBLIC _sk_matrix_4x5_sse41
12897_sk_matrix_4x5_sse41 LABEL PROC
12898  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
12899  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12900  DB  72,173                              ; lods          %ds:(%rsi),%rax
12901  DB  243,15,16,0                         ; movss         (%rax),%xmm0
12902  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
12903  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
12904  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
12905  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12906  DB  243,68,15,16,88,32                  ; movss         0x20(%rax),%xmm11
12907  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
12908  DB  243,68,15,16,96,48                  ; movss         0x30(%rax),%xmm12
12909  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
12910  DB  243,68,15,16,104,64                 ; movss         0x40(%rax),%xmm13
12911  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
12912  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
12913  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
12914  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12915  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
12916  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
12917  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
12918  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12919  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
12920  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
12921  DB  243,68,15,16,80,20                  ; movss         0x14(%rax),%xmm10
12922  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12923  DB  243,68,15,16,88,36                  ; movss         0x24(%rax),%xmm11
12924  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
12925  DB  243,68,15,16,96,52                  ; movss         0x34(%rax),%xmm12
12926  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
12927  DB  243,68,15,16,104,68                 ; movss         0x44(%rax),%xmm13
12928  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
12929  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
12930  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
12931  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12932  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
12933  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
12934  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
12935  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12936  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
12937  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
12938  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12939  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
12940  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
12941  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
12942  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
12943  DB  243,68,15,16,104,56                 ; movss         0x38(%rax),%xmm13
12944  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
12945  DB  243,68,15,16,112,72                 ; movss         0x48(%rax),%xmm14
12946  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
12947  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
12948  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
12949  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
12950  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
12951  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
12952  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
12953  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
12954  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
12955  DB  243,68,15,16,88,12                  ; movss         0xc(%rax),%xmm11
12956  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
12957  DB  243,68,15,16,96,28                  ; movss         0x1c(%rax),%xmm12
12958  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
12959  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
12960  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
12961  DB  243,68,15,16,112,60                 ; movss         0x3c(%rax),%xmm14
12962  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
12963  DB  243,68,15,16,120,76                 ; movss         0x4c(%rax),%xmm15
12964  DB  69,15,198,255,0                     ; shufps        $0x0,%xmm15,%xmm15
12965  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
12966  DB  69,15,88,247                        ; addps         %xmm15,%xmm14
12967  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
12968  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
12969  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
12970  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
12971  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
12972  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
12973  DB  72,173                              ; lods          %ds:(%rsi),%rax
12974  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
12975  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
12976  DB  255,224                             ; jmpq          *%rax
12977
12978PUBLIC _sk_matrix_perspective_sse41
12979_sk_matrix_perspective_sse41 LABEL PROC
12980  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12981  DB  72,173                              ; lods          %ds:(%rsi),%rax
12982  DB  243,15,16,0                         ; movss         (%rax),%xmm0
12983  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
12984  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
12985  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
12986  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
12987  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12988  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
12989  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
12990  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12991  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
12992  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
12993  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
12994  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
12995  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12996  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
12997  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
12998  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
12999  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13000  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
13001  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
13002  DB  243,68,15,16,80,24                  ; movss         0x18(%rax),%xmm10
13003  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13004  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
13005  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13006  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
13007  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13008  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
13009  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
13010  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
13011  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13012  DB  65,15,83,202                        ; rcpps         %xmm10,%xmm1
13013  DB  15,89,193                           ; mulps         %xmm1,%xmm0
13014  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
13015  DB  72,173                              ; lods          %ds:(%rsi),%rax
13016  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
13017  DB  255,224                             ; jmpq          *%rax
13018
13019PUBLIC _sk_linear_gradient_sse41
13020_sk_linear_gradient_sse41 LABEL PROC
13021  DB  72,173                              ; lods          %ds:(%rsi),%rax
13022  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
13023  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13024  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
13025  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13026  DB  243,68,15,16,96,24                  ; movss         0x18(%rax),%xmm12
13027  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13028  DB  243,68,15,16,104,28                 ; movss         0x1c(%rax),%xmm13
13029  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
13030  DB  72,139,8                            ; mov           (%rax),%rcx
13031  DB  72,133,201                          ; test          %rcx,%rcx
13032  DB  15,132,4,1,0,0                      ; je            34f1 <_sk_linear_gradient_sse41+0x13e>
13033  DB  72,131,236,88                       ; sub           $0x58,%rsp
13034  DB  15,41,36,36                         ; movaps        %xmm4,(%rsp)
13035  DB  15,41,108,36,16                     ; movaps        %xmm5,0x10(%rsp)
13036  DB  15,41,116,36,32                     ; movaps        %xmm6,0x20(%rsp)
13037  DB  15,41,124,36,48                     ; movaps        %xmm7,0x30(%rsp)
13038  DB  72,139,64,8                         ; mov           0x8(%rax),%rax
13039  DB  72,131,192,32                       ; add           $0x20,%rax
13040  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
13041  DB  15,87,219                           ; xorps         %xmm3,%xmm3
13042  DB  15,87,210                           ; xorps         %xmm2,%xmm2
13043  DB  15,87,201                           ; xorps         %xmm1,%xmm1
13044  DB  15,40,233                           ; movaps        %xmm1,%xmm5
13045  DB  15,40,242                           ; movaps        %xmm2,%xmm6
13046  DB  15,40,251                           ; movaps        %xmm3,%xmm7
13047  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
13048  DB  69,15,40,243                        ; movaps        %xmm11,%xmm14
13049  DB  69,15,40,252                        ; movaps        %xmm12,%xmm15
13050  DB  68,15,41,108,36,64                  ; movaps        %xmm13,0x40(%rsp)
13051  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
13052  DB  243,15,16,80,224                    ; movss         -0x20(%rax),%xmm2
13053  DB  243,68,15,16,72,228                 ; movss         -0x1c(%rax),%xmm9
13054  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13055  DB  15,40,224                           ; movaps        %xmm0,%xmm4
13056  DB  15,194,194,1                        ; cmpltps       %xmm2,%xmm0
13057  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
13058  DB  102,68,15,56,20,201                 ; blendvps      %xmm0,%xmm1,%xmm9
13059  DB  243,15,16,72,232                    ; movss         -0x18(%rax),%xmm1
13060  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
13061  DB  102,15,56,20,205                    ; blendvps      %xmm0,%xmm5,%xmm1
13062  DB  243,15,16,80,236                    ; movss         -0x14(%rax),%xmm2
13063  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13064  DB  102,15,56,20,214                    ; blendvps      %xmm0,%xmm6,%xmm2
13065  DB  243,15,16,88,240                    ; movss         -0x10(%rax),%xmm3
13066  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
13067  DB  102,15,56,20,223                    ; blendvps      %xmm0,%xmm7,%xmm3
13068  DB  243,68,15,16,80,244                 ; movss         -0xc(%rax),%xmm10
13069  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13070  DB  102,69,15,56,20,208                 ; blendvps      %xmm0,%xmm8,%xmm10
13071  DB  243,68,15,16,88,248                 ; movss         -0x8(%rax),%xmm11
13072  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13073  DB  102,69,15,56,20,222                 ; blendvps      %xmm0,%xmm14,%xmm11
13074  DB  243,68,15,16,96,252                 ; movss         -0x4(%rax),%xmm12
13075  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13076  DB  102,69,15,56,20,231                 ; blendvps      %xmm0,%xmm15,%xmm12
13077  DB  243,68,15,16,40                     ; movss         (%rax),%xmm13
13078  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
13079  DB  102,68,15,56,20,108,36,64           ; blendvps      %xmm0,0x40(%rsp),%xmm13
13080  DB  15,40,196                           ; movaps        %xmm4,%xmm0
13081  DB  72,131,192,36                       ; add           $0x24,%rax
13082  DB  72,255,201                          ; dec           %rcx
13083  DB  15,133,65,255,255,255               ; jne           3419 <_sk_linear_gradient_sse41+0x66>
13084  DB  15,40,124,36,48                     ; movaps        0x30(%rsp),%xmm7
13085  DB  15,40,116,36,32                     ; movaps        0x20(%rsp),%xmm6
13086  DB  15,40,108,36,16                     ; movaps        0x10(%rsp),%xmm5
13087  DB  15,40,36,36                         ; movaps        (%rsp),%xmm4
13088  DB  72,131,196,88                       ; add           $0x58,%rsp
13089  DB  235,13                              ; jmp           34fe <_sk_linear_gradient_sse41+0x14b>
13090  DB  15,87,201                           ; xorps         %xmm1,%xmm1
13091  DB  15,87,210                           ; xorps         %xmm2,%xmm2
13092  DB  15,87,219                           ; xorps         %xmm3,%xmm3
13093  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
13094  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
13095  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
13096  DB  15,89,200                           ; mulps         %xmm0,%xmm1
13097  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
13098  DB  15,89,208                           ; mulps         %xmm0,%xmm2
13099  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
13100  DB  15,89,216                           ; mulps         %xmm0,%xmm3
13101  DB  65,15,88,221                        ; addps         %xmm13,%xmm3
13102  DB  72,173                              ; lods          %ds:(%rsi),%rax
13103  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13104  DB  255,224                             ; jmpq          *%rax
13105
13106PUBLIC _sk_linear_gradient_2stops_sse41
13107_sk_linear_gradient_2stops_sse41 LABEL PROC
13108  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13109  DB  72,173                              ; lods          %ds:(%rsi),%rax
13110  DB  243,15,16,0                         ; movss         (%rax),%xmm0
13111  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
13112  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
13113  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
13114  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13115  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13116  DB  15,88,194                           ; addps         %xmm2,%xmm0
13117  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
13118  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
13119  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13120  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
13121  DB  15,88,202                           ; addps         %xmm2,%xmm1
13122  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
13123  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13124  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
13125  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
13126  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
13127  DB  15,88,211                           ; addps         %xmm3,%xmm2
13128  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
13129  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
13130  DB  243,68,15,16,72,28                  ; movss         0x1c(%rax),%xmm9
13131  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
13132  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
13133  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
13134  DB  72,173                              ; lods          %ds:(%rsi),%rax
13135  DB  255,224                             ; jmpq          *%rax
13136
13137PUBLIC _sk_save_xy_sse41
13138_sk_save_xy_sse41 LABEL PROC
13139  DB  72,173                              ; lods          %ds:(%rsi),%rax
13140  DB  68,15,40,5,179,16,0,0               ; movaps        0x10b3(%rip),%xmm8        # 4650 <_sk_callback_sse41+0xd6a>
13141  DB  15,17,0                             ; movups        %xmm0,(%rax)
13142  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
13143  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
13144  DB  102,69,15,58,8,209,1                ; roundps       $0x1,%xmm9,%xmm10
13145  DB  69,15,92,202                        ; subps         %xmm10,%xmm9
13146  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
13147  DB  102,69,15,58,8,208,1                ; roundps       $0x1,%xmm8,%xmm10
13148  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
13149  DB  15,17,72,32                         ; movups        %xmm1,0x20(%rax)
13150  DB  68,15,17,72,64                      ; movups        %xmm9,0x40(%rax)
13151  DB  68,15,17,64,96                      ; movups        %xmm8,0x60(%rax)
13152  DB  72,173                              ; lods          %ds:(%rsi),%rax
13153  DB  255,224                             ; jmpq          *%rax
13154
13155PUBLIC _sk_accumulate_sse41
13156_sk_accumulate_sse41 LABEL PROC
13157  DB  72,173                              ; lods          %ds:(%rsi),%rax
13158  DB  68,15,16,128,128,0,0,0              ; movups        0x80(%rax),%xmm8
13159  DB  68,15,16,136,160,0,0,0              ; movups        0xa0(%rax),%xmm9
13160  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
13161  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13162  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
13163  DB  65,15,88,224                        ; addps         %xmm8,%xmm4
13164  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13165  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
13166  DB  65,15,88,232                        ; addps         %xmm8,%xmm5
13167  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13168  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
13169  DB  65,15,88,240                        ; addps         %xmm8,%xmm6
13170  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
13171  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
13172  DB  72,173                              ; lods          %ds:(%rsi),%rax
13173  DB  255,224                             ; jmpq          *%rax
13174
13175PUBLIC _sk_bilinear_nx_sse41
13176_sk_bilinear_nx_sse41 LABEL PROC
13177  DB  72,173                              ; lods          %ds:(%rsi),%rax
13178  DB  15,16,0                             ; movups        (%rax),%xmm0
13179  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
13180  DB  15,88,5,53,16,0,0                   ; addps         0x1035(%rip),%xmm0        # 4660 <_sk_callback_sse41+0xd7a>
13181  DB  68,15,40,13,61,16,0,0               ; movaps        0x103d(%rip),%xmm9        # 4670 <_sk_callback_sse41+0xd8a>
13182  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13183  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
13184  DB  72,173                              ; lods          %ds:(%rsi),%rax
13185  DB  255,224                             ; jmpq          *%rax
13186
13187PUBLIC _sk_bilinear_px_sse41
13188_sk_bilinear_px_sse41 LABEL PROC
13189  DB  72,173                              ; lods          %ds:(%rsi),%rax
13190  DB  15,16,0                             ; movups        (%rax),%xmm0
13191  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
13192  DB  15,88,5,44,16,0,0                   ; addps         0x102c(%rip),%xmm0        # 4680 <_sk_callback_sse41+0xd9a>
13193  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
13194  DB  72,173                              ; lods          %ds:(%rsi),%rax
13195  DB  255,224                             ; jmpq          *%rax
13196
13197PUBLIC _sk_bilinear_ny_sse41
13198_sk_bilinear_ny_sse41 LABEL PROC
13199  DB  72,173                              ; lods          %ds:(%rsi),%rax
13200  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13201  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
13202  DB  15,88,13,30,16,0,0                  ; addps         0x101e(%rip),%xmm1        # 4690 <_sk_callback_sse41+0xdaa>
13203  DB  68,15,40,13,38,16,0,0               ; movaps        0x1026(%rip),%xmm9        # 46a0 <_sk_callback_sse41+0xdba>
13204  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13205  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
13206  DB  72,173                              ; lods          %ds:(%rsi),%rax
13207  DB  255,224                             ; jmpq          *%rax
13208
13209PUBLIC _sk_bilinear_py_sse41
13210_sk_bilinear_py_sse41 LABEL PROC
13211  DB  72,173                              ; lods          %ds:(%rsi),%rax
13212  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13213  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
13214  DB  15,88,13,20,16,0,0                  ; addps         0x1014(%rip),%xmm1        # 46b0 <_sk_callback_sse41+0xdca>
13215  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
13216  DB  72,173                              ; lods          %ds:(%rsi),%rax
13217  DB  255,224                             ; jmpq          *%rax
13218
13219PUBLIC _sk_bicubic_n3x_sse41
13220_sk_bicubic_n3x_sse41 LABEL PROC
13221  DB  72,173                              ; lods          %ds:(%rsi),%rax
13222  DB  15,16,0                             ; movups        (%rax),%xmm0
13223  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
13224  DB  15,88,5,7,16,0,0                    ; addps         0x1007(%rip),%xmm0        # 46c0 <_sk_callback_sse41+0xdda>
13225  DB  68,15,40,13,15,16,0,0               ; movaps        0x100f(%rip),%xmm9        # 46d0 <_sk_callback_sse41+0xdea>
13226  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13227  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13228  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
13229  DB  68,15,89,13,11,16,0,0               ; mulps         0x100b(%rip),%xmm9        # 46e0 <_sk_callback_sse41+0xdfa>
13230  DB  68,15,88,13,19,16,0,0               ; addps         0x1013(%rip),%xmm9        # 46f0 <_sk_callback_sse41+0xe0a>
13231  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
13232  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
13233  DB  72,173                              ; lods          %ds:(%rsi),%rax
13234  DB  255,224                             ; jmpq          *%rax
13235
13236PUBLIC _sk_bicubic_n1x_sse41
13237_sk_bicubic_n1x_sse41 LABEL PROC
13238  DB  72,173                              ; lods          %ds:(%rsi),%rax
13239  DB  15,16,0                             ; movups        (%rax),%xmm0
13240  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
13241  DB  15,88,5,2,16,0,0                    ; addps         0x1002(%rip),%xmm0        # 4700 <_sk_callback_sse41+0xe1a>
13242  DB  68,15,40,13,10,16,0,0               ; movaps        0x100a(%rip),%xmm9        # 4710 <_sk_callback_sse41+0xe2a>
13243  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13244  DB  68,15,40,5,14,16,0,0                ; movaps        0x100e(%rip),%xmm8        # 4720 <_sk_callback_sse41+0xe3a>
13245  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13246  DB  68,15,88,5,18,16,0,0                ; addps         0x1012(%rip),%xmm8        # 4730 <_sk_callback_sse41+0xe4a>
13247  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13248  DB  68,15,88,5,22,16,0,0                ; addps         0x1016(%rip),%xmm8        # 4740 <_sk_callback_sse41+0xe5a>
13249  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13250  DB  68,15,88,5,26,16,0,0                ; addps         0x101a(%rip),%xmm8        # 4750 <_sk_callback_sse41+0xe6a>
13251  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
13252  DB  72,173                              ; lods          %ds:(%rsi),%rax
13253  DB  255,224                             ; jmpq          *%rax
13254
13255PUBLIC _sk_bicubic_p1x_sse41
13256_sk_bicubic_p1x_sse41 LABEL PROC
13257  DB  72,173                              ; lods          %ds:(%rsi),%rax
13258  DB  68,15,40,5,20,16,0,0                ; movaps        0x1014(%rip),%xmm8        # 4760 <_sk_callback_sse41+0xe7a>
13259  DB  15,16,0                             ; movups        (%rax),%xmm0
13260  DB  68,15,16,72,64                      ; movups        0x40(%rax),%xmm9
13261  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
13262  DB  68,15,40,21,16,16,0,0               ; movaps        0x1010(%rip),%xmm10        # 4770 <_sk_callback_sse41+0xe8a>
13263  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13264  DB  68,15,88,21,20,16,0,0               ; addps         0x1014(%rip),%xmm10        # 4780 <_sk_callback_sse41+0xe9a>
13265  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13266  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
13267  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13268  DB  68,15,88,21,16,16,0,0               ; addps         0x1010(%rip),%xmm10        # 4790 <_sk_callback_sse41+0xeaa>
13269  DB  68,15,17,144,128,0,0,0              ; movups        %xmm10,0x80(%rax)
13270  DB  72,173                              ; lods          %ds:(%rsi),%rax
13271  DB  255,224                             ; jmpq          *%rax
13272
13273PUBLIC _sk_bicubic_p3x_sse41
13274_sk_bicubic_p3x_sse41 LABEL PROC
13275  DB  72,173                              ; lods          %ds:(%rsi),%rax
13276  DB  15,16,0                             ; movups        (%rax),%xmm0
13277  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
13278  DB  15,88,5,3,16,0,0                    ; addps         0x1003(%rip),%xmm0        # 47a0 <_sk_callback_sse41+0xeba>
13279  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
13280  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
13281  DB  68,15,89,5,3,16,0,0                 ; mulps         0x1003(%rip),%xmm8        # 47b0 <_sk_callback_sse41+0xeca>
13282  DB  68,15,88,5,11,16,0,0                ; addps         0x100b(%rip),%xmm8        # 47c0 <_sk_callback_sse41+0xeda>
13283  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13284  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
13285  DB  72,173                              ; lods          %ds:(%rsi),%rax
13286  DB  255,224                             ; jmpq          *%rax
13287
13288PUBLIC _sk_bicubic_n3y_sse41
13289_sk_bicubic_n3y_sse41 LABEL PROC
13290  DB  72,173                              ; lods          %ds:(%rsi),%rax
13291  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13292  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
13293  DB  15,88,13,249,15,0,0                 ; addps         0xff9(%rip),%xmm1        # 47d0 <_sk_callback_sse41+0xeea>
13294  DB  68,15,40,13,1,16,0,0                ; movaps        0x1001(%rip),%xmm9        # 47e0 <_sk_callback_sse41+0xefa>
13295  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13296  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13297  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
13298  DB  68,15,89,13,253,15,0,0              ; mulps         0xffd(%rip),%xmm9        # 47f0 <_sk_callback_sse41+0xf0a>
13299  DB  68,15,88,13,5,16,0,0                ; addps         0x1005(%rip),%xmm9        # 4800 <_sk_callback_sse41+0xf1a>
13300  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
13301  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
13302  DB  72,173                              ; lods          %ds:(%rsi),%rax
13303  DB  255,224                             ; jmpq          *%rax
13304
13305PUBLIC _sk_bicubic_n1y_sse41
13306_sk_bicubic_n1y_sse41 LABEL PROC
13307  DB  72,173                              ; lods          %ds:(%rsi),%rax
13308  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13309  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
13310  DB  15,88,13,243,15,0,0                 ; addps         0xff3(%rip),%xmm1        # 4810 <_sk_callback_sse41+0xf2a>
13311  DB  68,15,40,13,251,15,0,0              ; movaps        0xffb(%rip),%xmm9        # 4820 <_sk_callback_sse41+0xf3a>
13312  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13313  DB  68,15,40,5,255,15,0,0               ; movaps        0xfff(%rip),%xmm8        # 4830 <_sk_callback_sse41+0xf4a>
13314  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13315  DB  68,15,88,5,3,16,0,0                 ; addps         0x1003(%rip),%xmm8        # 4840 <_sk_callback_sse41+0xf5a>
13316  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13317  DB  68,15,88,5,7,16,0,0                 ; addps         0x1007(%rip),%xmm8        # 4850 <_sk_callback_sse41+0xf6a>
13318  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13319  DB  68,15,88,5,11,16,0,0                ; addps         0x100b(%rip),%xmm8        # 4860 <_sk_callback_sse41+0xf7a>
13320  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
13321  DB  72,173                              ; lods          %ds:(%rsi),%rax
13322  DB  255,224                             ; jmpq          *%rax
13323
13324PUBLIC _sk_bicubic_p1y_sse41
13325_sk_bicubic_p1y_sse41 LABEL PROC
13326  DB  72,173                              ; lods          %ds:(%rsi),%rax
13327  DB  68,15,40,5,5,16,0,0                 ; movaps        0x1005(%rip),%xmm8        # 4870 <_sk_callback_sse41+0xf8a>
13328  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13329  DB  68,15,16,72,96                      ; movups        0x60(%rax),%xmm9
13330  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
13331  DB  68,15,40,21,0,16,0,0                ; movaps        0x1000(%rip),%xmm10        # 4880 <_sk_callback_sse41+0xf9a>
13332  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13333  DB  68,15,88,21,4,16,0,0                ; addps         0x1004(%rip),%xmm10        # 4890 <_sk_callback_sse41+0xfaa>
13334  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13335  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
13336  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13337  DB  68,15,88,21,0,16,0,0                ; addps         0x1000(%rip),%xmm10        # 48a0 <_sk_callback_sse41+0xfba>
13338  DB  68,15,17,144,160,0,0,0              ; movups        %xmm10,0xa0(%rax)
13339  DB  72,173                              ; lods          %ds:(%rsi),%rax
13340  DB  255,224                             ; jmpq          *%rax
13341
13342PUBLIC _sk_bicubic_p3y_sse41
13343_sk_bicubic_p3y_sse41 LABEL PROC
13344  DB  72,173                              ; lods          %ds:(%rsi),%rax
13345  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13346  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
13347  DB  15,88,13,242,15,0,0                 ; addps         0xff2(%rip),%xmm1        # 48b0 <_sk_callback_sse41+0xfca>
13348  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
13349  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
13350  DB  68,15,89,5,242,15,0,0               ; mulps         0xff2(%rip),%xmm8        # 48c0 <_sk_callback_sse41+0xfda>
13351  DB  68,15,88,5,250,15,0,0               ; addps         0xffa(%rip),%xmm8        # 48d0 <_sk_callback_sse41+0xfea>
13352  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13353  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
13354  DB  72,173                              ; lods          %ds:(%rsi),%rax
13355  DB  255,224                             ; jmpq          *%rax
13356
13357PUBLIC _sk_callback_sse41
13358_sk_callback_sse41 LABEL PROC
13359  DB  65,86                               ; push          %r14
13360  DB  83                                  ; push          %rbx
13361  DB  72,131,236,40                       ; sub           $0x28,%rsp
13362  DB  68,15,40,197                        ; movaps        %xmm5,%xmm8
13363  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
13364  DB  73,137,214                          ; mov           %rdx,%r14
13365  DB  72,173                              ; lods          %ds:(%rsi),%rax
13366  DB  72,137,195                          ; mov           %rax,%rbx
13367  DB  15,40,224                           ; movaps        %xmm0,%xmm4
13368  DB  15,20,225                           ; unpcklps      %xmm1,%xmm4
13369  DB  15,40,234                           ; movaps        %xmm2,%xmm5
13370  DB  15,20,235                           ; unpcklps      %xmm3,%xmm5
13371  DB  15,21,193                           ; unpckhps      %xmm1,%xmm0
13372  DB  15,21,211                           ; unpckhps      %xmm3,%xmm2
13373  DB  15,40,204                           ; movaps        %xmm4,%xmm1
13374  DB  102,15,20,205                       ; unpcklpd      %xmm5,%xmm1
13375  DB  15,18,236                           ; movhlps       %xmm4,%xmm5
13376  DB  15,40,216                           ; movaps        %xmm0,%xmm3
13377  DB  102,15,20,218                       ; unpcklpd      %xmm2,%xmm3
13378  DB  15,18,208                           ; movhlps       %xmm0,%xmm2
13379  DB  102,15,17,75,8                      ; movupd        %xmm1,0x8(%rbx)
13380  DB  15,17,107,24                        ; movups        %xmm5,0x18(%rbx)
13381  DB  102,15,17,91,40                     ; movupd        %xmm3,0x28(%rbx)
13382  DB  15,17,83,56                         ; movups        %xmm2,0x38(%rbx)
13383  DB  186,4,0,0,0                         ; mov           $0x4,%edx
13384  DB  72,137,217                          ; mov           %rbx,%rcx
13385  DB  255,19                              ; callq         *(%rbx)
13386  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
13387  DB  15,16,32                            ; movups        (%rax),%xmm4
13388  DB  15,16,64,16                         ; movups        0x10(%rax),%xmm0
13389  DB  15,16,88,32                         ; movups        0x20(%rax),%xmm3
13390  DB  15,16,80,48                         ; movups        0x30(%rax),%xmm2
13391  DB  15,40,236                           ; movaps        %xmm4,%xmm5
13392  DB  15,20,232                           ; unpcklps      %xmm0,%xmm5
13393  DB  15,40,203                           ; movaps        %xmm3,%xmm1
13394  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
13395  DB  15,21,224                           ; unpckhps      %xmm0,%xmm4
13396  DB  15,21,218                           ; unpckhps      %xmm2,%xmm3
13397  DB  15,40,197                           ; movaps        %xmm5,%xmm0
13398  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
13399  DB  15,18,205                           ; movhlps       %xmm5,%xmm1
13400  DB  15,40,212                           ; movaps        %xmm4,%xmm2
13401  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
13402  DB  15,18,220                           ; movhlps       %xmm4,%xmm3
13403  DB  72,173                              ; lods          %ds:(%rsi),%rax
13404  DB  76,137,242                          ; mov           %r14,%rdx
13405  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
13406  DB  65,15,40,232                        ; movaps        %xmm8,%xmm5
13407  DB  72,131,196,40                       ; add           $0x28,%rsp
13408  DB  91                                  ; pop           %rbx
13409  DB  65,94                               ; pop           %r14
13410  DB  255,224                             ; jmpq          *%rax
13411
13412ALIGN 16
13413  DB  0,0                                 ; add           %al,(%rax)
13414  DB  0,63                                ; add           %bh,(%rdi)
13415  DB  0,0                                 ; add           %al,(%rax)
13416  DB  0,63                                ; add           %bh,(%rdi)
13417  DB  0,0                                 ; add           %al,(%rax)
13418  DB  0,63                                ; add           %bh,(%rdi)
13419  DB  0,0                                 ; add           %al,(%rax)
13420  DB  0,63                                ; add           %bh,(%rdi)
13421  DB  0,0                                 ; add           %al,(%rax)
13422  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13423  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13424  DB  63                                  ; (bad)
13425  DB  0,0                                 ; add           %al,(%rax)
13426  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13427  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13428  DB  63                                  ; (bad)
13429  DB  0,0                                 ; add           %al,(%rax)
13430  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13431  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13432  DB  63                                  ; (bad)
13433  DB  0,0                                 ; add           %al,(%rax)
13434  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13435  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13436  DB  63                                  ; (bad)
13437  DB  0,0                                 ; add           %al,(%rax)
13438  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13439  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13440  DB  63                                  ; (bad)
13441  DB  0,0                                 ; add           %al,(%rax)
13442  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13443  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13444  DB  63                                  ; (bad)
13445  DB  0,0                                 ; add           %al,(%rax)
13446  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13447  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13448  DB  63                                  ; (bad)
13449  DB  0,0                                 ; add           %al,(%rax)
13450  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13451  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13452  DB  63                                  ; (bad)
13453  DB  0,0                                 ; add           %al,(%rax)
13454  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13455  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13456  DB  63                                  ; (bad)
13457  DB  0,0                                 ; add           %al,(%rax)
13458  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13459  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13460  DB  63                                  ; (bad)
13461  DB  0,0                                 ; add           %al,(%rax)
13462  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13463  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13464  DB  63                                  ; (bad)
13465  DB  0,0                                 ; add           %al,(%rax)
13466  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13467  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13468  DB  63                                  ; (bad)
13469  DB  0,0                                 ; add           %al,(%rax)
13470  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13471  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13472  DB  63                                  ; (bad)
13473  DB  0,0                                 ; add           %al,(%rax)
13474  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13475  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13476  DB  63                                  ; (bad)
13477  DB  0,0                                 ; add           %al,(%rax)
13478  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13479  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13480  DB  63                                  ; (bad)
13481  DB  0,0                                 ; add           %al,(%rax)
13482  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13483  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13484  DB  63                                  ; (bad)
13485  DB  0,0                                 ; add           %al,(%rax)
13486  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13487  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13488  DB  63                                  ; (bad)
13489  DB  0,0                                 ; add           %al,(%rax)
13490  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13491  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13492  DB  63                                  ; (bad)
13493  DB  0,0                                 ; add           %al,(%rax)
13494  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13495  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13496  DB  63                                  ; (bad)
13497  DB  0,0                                 ; add           %al,(%rax)
13498  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13499  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13500  DB  63                                  ; (bad)
13501  DB  0,0                                 ; add           %al,(%rax)
13502  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13503  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13504  DB  63                                  ; (bad)
13505  DB  0,0                                 ; add           %al,(%rax)
13506  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13507  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13508  DB  63                                  ; (bad)
13509  DB  0,0                                 ; add           %al,(%rax)
13510  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13511  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13512  DB  63                                  ; (bad)
13513  DB  0,0                                 ; add           %al,(%rax)
13514  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13515  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13516  DB  63                                  ; (bad)
13517  DB  0,0                                 ; add           %al,(%rax)
13518  DB  128,191,0,0,128,191,0               ; cmpb          $0x0,-0x40800000(%rdi)
13519  DB  0,128,191,0,0,128                   ; add           %al,-0x7fffff41(%rax)
13520  DB  191,0,0,224,64                      ; mov           $0x40e00000,%edi
13521  DB  0,0                                 ; add           %al,(%rax)
13522  DB  224,64                              ; loopne        3b28 <.literal16+0x188>
13523  DB  0,0                                 ; add           %al,(%rax)
13524  DB  224,64                              ; loopne        3b2c <.literal16+0x18c>
13525  DB  0,0                                 ; add           %al,(%rax)
13526  DB  224,64                              ; loopne        3b30 <.literal16+0x190>
13527  DB  0,0                                 ; add           %al,(%rax)
13528  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13529  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13530  DB  63                                  ; (bad)
13531  DB  0,0                                 ; add           %al,(%rax)
13532  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13533  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13534  DB  63                                  ; (bad)
13535  DB  0,0                                 ; add           %al,(%rax)
13536  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13537  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13538  DB  63                                  ; (bad)
13539  DB  0,0                                 ; add           %al,(%rax)
13540  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13541  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13542  DB  63                                  ; (bad)
13543  DB  145                                 ; xchg          %eax,%ecx
13544  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
13545  DB  145                                 ; xchg          %eax,%ecx
13546  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
13547  DB  154                                 ; (bad)
13548  DB  153                                 ; cltd
13549  DB  153                                 ; cltd
13550  DB  62,154                              ; ds            (bad)
13551  DB  153                                 ; cltd
13552  DB  153                                 ; cltd
13553  DB  62,154                              ; ds            (bad)
13554  DB  153                                 ; cltd
13555  DB  153                                 ; cltd
13556  DB  62,154                              ; ds            (bad)
13557  DB  153                                 ; cltd
13558  DB  153                                 ; cltd
13559  DB  62,92                               ; ds            pop %rsp
13560  DB  143                                 ; (bad)
13561  DB  50,63                               ; xor           (%rdi),%bh
13562  DB  92                                  ; pop           %rsp
13563  DB  143                                 ; (bad)
13564  DB  50,63                               ; xor           (%rdi),%bh
13565  DB  92                                  ; pop           %rsp
13566  DB  143                                 ; (bad)
13567  DB  50,63                               ; xor           (%rdi),%bh
13568  DB  92                                  ; pop           %rsp
13569  DB  143                                 ; (bad)
13570  DB  50,63                               ; xor           (%rdi),%bh
13571  DB  10,215                              ; or            %bh,%dl
13572  DB  35,59                               ; and           (%rbx),%edi
13573  DB  10,215                              ; or            %bh,%dl
13574  DB  35,59                               ; and           (%rbx),%edi
13575  DB  10,215                              ; or            %bh,%dl
13576  DB  35,59                               ; and           (%rbx),%edi
13577  DB  10,215                              ; or            %bh,%dl
13578  DB  35,59                               ; and           (%rbx),%edi
13579  DB  174                                 ; scas          %es:(%rdi),%al
13580  DB  71,97                               ; rex.RXB       (bad)
13581  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
13582  DB  174                                 ; scas          %es:(%rdi),%al
13583  DB  71,97                               ; rex.RXB       (bad)
13584  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
13585  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
13586  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
13587  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
13588  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
13589  DB  206                                 ; (bad)
13590  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
13591  DB  48,63                               ; xor           %bh,(%rdi)
13592  DB  206                                 ; (bad)
13593  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
13594  DB  48,63                               ; xor           %bh,(%rdi)
13595  DB  206                                 ; (bad)
13596  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
13597  DB  48,63                               ; xor           %bh,(%rdi)
13598  DB  206                                 ; (bad)
13599  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
13600  DB  48,63                               ; xor           %bh,(%rdi)
13601  DB  168,87                              ; test          $0x57,%al
13602  DB  202,189,168                         ; lret          $0xa8bd
13603  DB  87                                  ; push          %rdi
13604  DB  202,189,168                         ; lret          $0xa8bd
13605  DB  87                                  ; push          %rdi
13606  DB  202,189,168                         ; lret          $0xa8bd
13607  DB  87                                  ; push          %rdi
13608  DB  202,189,194                         ; lret          $0xc2bd
13609  DB  135,210                             ; xchg          %edx,%edx
13610  DB  62,194,135,210                      ; ds            retq $0xd287
13611  DB  62,194,135,210                      ; ds            retq $0xd287
13612  DB  62,194,135,210                      ; ds            retq $0xd287
13613  DB  62,0,0                              ; add           %al,%ds:(%rax)
13614  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13615  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13616  DB  63                                  ; (bad)
13617  DB  0,0                                 ; add           %al,(%rax)
13618  DB  128,63,4                            ; cmpb          $0x4,(%rdi)
13619  DB  231,140                             ; out           %eax,$0x8c
13620  DB  59,4,231                            ; cmp           (%rdi,%riz,8),%eax
13621  DB  140,59                              ; mov           %?,(%rbx)
13622  DB  4,231                               ; add           $0xe7,%al
13623  DB  140,59                              ; mov           %?,(%rbx)
13624  DB  4,231                               ; add           $0xe7,%al
13625  DB  140,59                              ; mov           %?,(%rbx)
13626  DB  0,0                                 ; add           %al,(%rax)
13627  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13628  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13629  DB  63                                  ; (bad)
13630  DB  0,0                                 ; add           %al,(%rax)
13631  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13632  DB  0,192                               ; add           %al,%al
13633  DB  64,0,0                              ; add           %al,(%rax)
13634  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
13635  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
13636  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
13637  DB  0,64,0                              ; add           %al,0x0(%rax)
13638  DB  0,0                                 ; add           %al,(%rax)
13639  DB  64,0,0                              ; add           %al,(%rax)
13640  DB  0,64,0                              ; add           %al,0x0(%rax)
13641  DB  0,0                                 ; add           %al,(%rax)
13642  DB  64,0,0                              ; add           %al,(%rax)
13643  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
13644  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
13645  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
13646  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
13647  DB  42,62                               ; sub           (%rsi),%bh
13648  DB  171                                 ; stos          %eax,%es:(%rdi)
13649  DB  170                                 ; stos          %al,%es:(%rdi)
13650  DB  42,62                               ; sub           (%rsi),%bh
13651  DB  171                                 ; stos          %eax,%es:(%rdi)
13652  DB  170                                 ; stos          %al,%es:(%rdi)
13653  DB  42,62                               ; sub           (%rsi),%bh
13654  DB  171                                 ; stos          %eax,%es:(%rdi)
13655  DB  170                                 ; stos          %al,%es:(%rdi)
13656  DB  42,62                               ; sub           (%rsi),%bh
13657  DB  0,0                                 ; add           %al,(%rax)
13658  DB  0,63                                ; add           %bh,(%rdi)
13659  DB  0,0                                 ; add           %al,(%rax)
13660  DB  0,63                                ; add           %bh,(%rdi)
13661  DB  0,0                                 ; add           %al,(%rax)
13662  DB  0,63                                ; add           %bh,(%rdi)
13663  DB  0,0                                 ; add           %al,(%rax)
13664  DB  0,63                                ; add           %bh,(%rdi)
13665  DB  0,0                                 ; add           %al,(%rax)
13666  DB  0,63                                ; add           %bh,(%rdi)
13667  DB  0,0                                 ; add           %al,(%rax)
13668  DB  0,63                                ; add           %bh,(%rdi)
13669  DB  0,0                                 ; add           %al,(%rax)
13670  DB  0,63                                ; add           %bh,(%rdi)
13671  DB  0,0                                 ; add           %al,(%rax)
13672  DB  0,63                                ; add           %bh,(%rdi)
13673  DB  171                                 ; stos          %eax,%es:(%rdi)
13674  DB  170                                 ; stos          %al,%es:(%rdi)
13675  DB  170                                 ; stos          %al,%es:(%rdi)
13676  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
13677  DB  170                                 ; stos          %al,%es:(%rdi)
13678  DB  170                                 ; stos          %al,%es:(%rdi)
13679  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
13680  DB  170                                 ; stos          %al,%es:(%rdi)
13681  DB  170                                 ; stos          %al,%es:(%rdi)
13682  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
13683  DB  170                                 ; stos          %al,%es:(%rdi)
13684  DB  170                                 ; stos          %al,%es:(%rdi)
13685  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
13686  DB  170                                 ; stos          %al,%es:(%rdi)
13687  DB  42,63                               ; sub           (%rdi),%bh
13688  DB  171                                 ; stos          %eax,%es:(%rdi)
13689  DB  170                                 ; stos          %al,%es:(%rdi)
13690  DB  42,63                               ; sub           (%rdi),%bh
13691  DB  171                                 ; stos          %eax,%es:(%rdi)
13692  DB  170                                 ; stos          %al,%es:(%rdi)
13693  DB  42,63                               ; sub           (%rdi),%bh
13694  DB  171                                 ; stos          %eax,%es:(%rdi)
13695  DB  170                                 ; stos          %al,%es:(%rdi)
13696  DB  42,63                               ; sub           (%rdi),%bh
13697  DB  0,0                                 ; add           %al,(%rax)
13698  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
13699  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
13700  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
13701  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
13702  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
13703  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
13704  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
13705  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
13706  DB  42,62                               ; sub           (%rsi),%bh
13707  DB  171                                 ; stos          %eax,%es:(%rdi)
13708  DB  170                                 ; stos          %al,%es:(%rdi)
13709  DB  42,62                               ; sub           (%rsi),%bh
13710  DB  171                                 ; stos          %eax,%es:(%rdi)
13711  DB  170                                 ; stos          %al,%es:(%rdi)
13712  DB  42,62                               ; sub           (%rsi),%bh
13713  DB  171                                 ; stos          %eax,%es:(%rdi)
13714  DB  170                                 ; stos          %al,%es:(%rdi)
13715  DB  42,62                               ; sub           (%rsi),%bh
13716  DB  171                                 ; stos          %eax,%es:(%rdi)
13717  DB  170                                 ; stos          %al,%es:(%rdi)
13718  DB  170                                 ; stos          %al,%es:(%rdi)
13719  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
13720  DB  171                                 ; stos          %eax,%es:(%rdi)
13721  DB  170                                 ; stos          %al,%es:(%rdi)
13722  DB  170                                 ; stos          %al,%es:(%rdi)
13723  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
13724  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
13725  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
13726  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
13727  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
13728  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
13729  DB  248                                 ; clc
13730  DB  0,0                                 ; add           %al,(%rax)
13731  DB  0,248                               ; add           %bh,%al
13732  DB  0,0                                 ; add           %al,(%rax)
13733  DB  0,248                               ; add           %bh,%al
13734  DB  0,0                                 ; add           %al,(%rax)
13735  DB  0,248                               ; add           %bh,%al
13736  DB  0,0                                 ; add           %al,(%rax)
13737  DB  8,33                                ; or            %ah,(%rcx)
13738  DB  132,55                              ; test          %dh,(%rdi)
13739  DB  8,33                                ; or            %ah,(%rcx)
13740  DB  132,55                              ; test          %dh,(%rdi)
13741  DB  8,33                                ; or            %ah,(%rcx)
13742  DB  132,55                              ; test          %dh,(%rdi)
13743  DB  8,33                                ; or            %ah,(%rcx)
13744  DB  132,55                              ; test          %dh,(%rdi)
13745  DB  224,7                               ; loopne        3ce9 <.literal16+0x349>
13746  DB  0,0                                 ; add           %al,(%rax)
13747  DB  224,7                               ; loopne        3ced <.literal16+0x34d>
13748  DB  0,0                                 ; add           %al,(%rax)
13749  DB  224,7                               ; loopne        3cf1 <.literal16+0x351>
13750  DB  0,0                                 ; add           %al,(%rax)
13751  DB  224,7                               ; loopne        3cf5 <.literal16+0x355>
13752  DB  0,0                                 ; add           %al,(%rax)
13753  DB  33,8                                ; and           %ecx,(%rax)
13754  DB  2,58                                ; add           (%rdx),%bh
13755  DB  33,8                                ; and           %ecx,(%rax)
13756  DB  2,58                                ; add           (%rdx),%bh
13757  DB  33,8                                ; and           %ecx,(%rax)
13758  DB  2,58                                ; add           (%rdx),%bh
13759  DB  33,8                                ; and           %ecx,(%rax)
13760  DB  2,58                                ; add           (%rdx),%bh
13761  DB  31                                  ; (bad)
13762  DB  0,0                                 ; add           %al,(%rax)
13763  DB  0,31                                ; add           %bl,(%rdi)
13764  DB  0,0                                 ; add           %al,(%rax)
13765  DB  0,31                                ; add           %bl,(%rdi)
13766  DB  0,0                                 ; add           %al,(%rax)
13767  DB  0,31                                ; add           %bl,(%rdi)
13768  DB  0,0                                 ; add           %al,(%rax)
13769  DB  0,8                                 ; add           %cl,(%rax)
13770  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
13771  DB  8,33                                ; or            %ah,(%rcx)
13772  DB  4,61                                ; add           $0x3d,%al
13773  DB  8,33                                ; or            %ah,(%rcx)
13774  DB  4,61                                ; add           $0x3d,%al
13775  DB  0,0                                 ; add           %al,(%rax)
13776  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13777  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13778  DB  63                                  ; (bad)
13779  DB  0,0                                 ; add           %al,(%rax)
13780  DB  128,63,255                          ; cmpb          $0xff,(%rdi)
13781  DB  0,0                                 ; add           %al,(%rax)
13782  DB  0,255                               ; add           %bh,%bh
13783  DB  0,0                                 ; add           %al,(%rax)
13784  DB  0,255                               ; add           %bh,%bh
13785  DB  0,0                                 ; add           %al,(%rax)
13786  DB  0,255                               ; add           %bh,%bh
13787  DB  0,0                                 ; add           %al,(%rax)
13788  DB  0,1                                 ; add           %al,(%rcx)
13789  DB  255                                 ; (bad)
13790  DB  255                                 ; (bad)
13791  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a003d48 <_sk_callback_sse41+0xa000462>
13792  DB  255                                 ; (bad)
13793  DB  255                                 ; (bad)
13794  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3003d50 <_sk_callback_sse41+0x300046a>
13795  DB  255                                 ; (bad)
13796  DB  255                                 ; (bad)
13797  DB  255,6                               ; incl          (%rsi)
13798  DB  255                                 ; (bad)
13799  DB  255                                 ; (bad)
13800  DB  255,10                              ; decl          (%rdx)
13801  DB  255                                 ; (bad)
13802  DB  255                                 ; (bad)
13803  DB  255,14                              ; decl          (%rsi)
13804  DB  255                                 ; (bad)
13805  DB  255                                 ; (bad)
13806  DB  255,129,128,128,59,129              ; incl          -0x7ec47f80(%rcx)
13807  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
13808  DB  129,128,128,59,255,0,255,0,255,0    ; addl          $0xff00ff,0xff3b80(%rax)
13809  DB  255,0                               ; incl          (%rax)
13810  DB  0,0                                 ; add           %al,(%rax)
13811  DB  0,0                                 ; add           %al,(%rax)
13812  DB  0,0                                 ; add           %al,(%rax)
13813  DB  0,0                                 ; add           %al,(%rax)
13814  DB  8,255                               ; or            %bh,%bh
13815  DB  10,255                              ; or            %bh,%bh
13816  DB  12,255                              ; or            $0xff,%al
13817  DB  14                                  ; (bad)
13818  DB  255,0                               ; incl          (%rax)
13819  DB  0,0                                 ; add           %al,(%rax)
13820  DB  0,0                                 ; add           %al,(%rax)
13821  DB  0,0                                 ; add           %al,(%rax)
13822  DB  0,128,0,128,55,128                  ; add           %al,-0x7fc88000(%rax)
13823  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
13824  DB  55                                  ; (bad)
13825  DB  128,0,128                           ; addb          $0x80,(%rax)
13826  DB  55                                  ; (bad)
13827  DB  255,0                               ; incl          (%rax)
13828  DB  255,0                               ; incl          (%rax)
13829  DB  255,0                               ; incl          (%rax)
13830  DB  255,0                               ; incl          (%rax)
13831  DB  0,0                                 ; add           %al,(%rax)
13832  DB  0,0                                 ; add           %al,(%rax)
13833  DB  0,0                                 ; add           %al,(%rax)
13834  DB  0,0                                 ; add           %al,(%rax)
13835  DB  8,128,10,128,12,128                 ; or            %al,-0x7ff37ff6(%rax)
13836  DB  14                                  ; (bad)
13837  DB  128,0,0                             ; addb          $0x0,(%rax)
13838  DB  0,0                                 ; add           %al,(%rax)
13839  DB  0,0                                 ; add           %al,(%rax)
13840  DB  0,0                                 ; add           %al,(%rax)
13841  DB  0,0                                 ; add           %al,(%rax)
13842  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13843  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13844  DB  63                                  ; (bad)
13845  DB  0,0                                 ; add           %al,(%rax)
13846  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13847  DB  0,127,67                            ; add           %bh,0x43(%rdi)
13848  DB  0,0                                 ; add           %al,(%rax)
13849  DB  127,67                              ; jg            3e1b <.literal16+0x47b>
13850  DB  0,0                                 ; add           %al,(%rax)
13851  DB  127,67                              ; jg            3e1f <.literal16+0x47f>
13852  DB  0,0                                 ; add           %al,(%rax)
13853  DB  127,67                              ; jg            3e23 <.literal16+0x483>
13854  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
13855  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
13856  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
13857  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
13858  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
13859  DB  0,0                                 ; add           %al,(%rax)
13860  DB  52,0                                ; xor           $0x0,%al
13861  DB  0,0                                 ; add           %al,(%rax)
13862  DB  52,0                                ; xor           $0x0,%al
13863  DB  0,0                                 ; add           %al,(%rax)
13864  DB  52,0                                ; xor           $0x0,%al
13865  DB  0,0                                 ; add           %al,(%rax)
13866  DB  52,255                              ; xor           $0xff,%al
13867  DB  255                                 ; (bad)
13868  DB  127,0                               ; jg            3e14 <.literal16+0x474>
13869  DB  255                                 ; (bad)
13870  DB  255                                 ; (bad)
13871  DB  127,0                               ; jg            3e18 <.literal16+0x478>
13872  DB  255                                 ; (bad)
13873  DB  255                                 ; (bad)
13874  DB  127,0                               ; jg            3e1c <.literal16+0x47c>
13875  DB  255                                 ; (bad)
13876  DB  255                                 ; (bad)
13877  DB  127,0                               ; jg            3e20 <.literal16+0x480>
13878  DB  0,0                                 ; add           %al,(%rax)
13879  DB  0,63                                ; add           %bh,(%rdi)
13880  DB  0,0                                 ; add           %al,(%rax)
13881  DB  0,63                                ; add           %bh,(%rdi)
13882  DB  0,0                                 ; add           %al,(%rax)
13883  DB  0,63                                ; add           %bh,(%rdi)
13884  DB  0,0                                 ; add           %al,(%rax)
13885  DB  0,63                                ; add           %bh,(%rdi)
13886  DB  119,115                             ; ja            3ea5 <.literal16+0x505>
13887  DB  248                                 ; clc
13888  DB  194,119,115                         ; retq          $0x7377
13889  DB  248                                 ; clc
13890  DB  194,119,115                         ; retq          $0x7377
13891  DB  248                                 ; clc
13892  DB  194,119,115                         ; retq          $0x7377
13893  DB  248                                 ; clc
13894  DB  194,117,191                         ; retq          $0xbf75
13895  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
13896  DB  63                                  ; (bad)
13897  DB  117,191                             ; jne           3e09 <.literal16+0x469>
13898  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
13899  DB  63                                  ; (bad)
13900  DB  249                                 ; stc
13901  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
13902  DB  249                                 ; stc
13903  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
13904  DB  249                                 ; stc
13905  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
13906  DB  249                                 ; stc
13907  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
13908  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
13909  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a37e4a <_sk_callback_sse41+0xffffffffe9a34564>
13910  DB  220,63                              ; fdivrl        (%rdi)
13911  DB  81                                  ; push          %rcx
13912  DB  140,242                             ; mov           %?,%edx
13913  DB  66,81                               ; rex.X         push %rcx
13914  DB  140,242                             ; mov           %?,%edx
13915  DB  66,81                               ; rex.X         push %rcx
13916  DB  140,242                             ; mov           %?,%edx
13917  DB  66,81                               ; rex.X         push %rcx
13918  DB  140,242                             ; mov           %?,%edx
13919  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
13920  DB  63                                  ; (bad)
13921  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
13922  DB  63                                  ; (bad)
13923  DB  248                                 ; clc
13924  DB  245                                 ; cmc
13925  DB  154                                 ; (bad)
13926  DB  64,248                              ; rex           clc
13927  DB  245                                 ; cmc
13928  DB  154                                 ; (bad)
13929  DB  64,248                              ; rex           clc
13930  DB  245                                 ; cmc
13931  DB  154                                 ; (bad)
13932  DB  64,248                              ; rex           clc
13933  DB  245                                 ; cmc
13934  DB  154                                 ; (bad)
13935  DB  64,254                              ; rex           (bad)
13936  DB  210,221                             ; rcr           %cl,%ch
13937  DB  65,254                              ; rex.B         (bad)
13938  DB  210,221                             ; rcr           %cl,%ch
13939  DB  65,254                              ; rex.B         (bad)
13940  DB  210,221                             ; rcr           %cl,%ch
13941  DB  65,254                              ; rex.B         (bad)
13942  DB  210,221                             ; rcr           %cl,%ch
13943  DB  65,0,0                              ; add           %al,(%r8)
13944  DB  0,75,0                              ; add           %cl,0x0(%rbx)
13945  DB  0,0                                 ; add           %al,(%rax)
13946  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
13947  DB  0,75,0                              ; add           %cl,0x0(%rbx)
13948  DB  0,0                                 ; add           %al,(%rax)
13949  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
13950  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13951  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13952  DB  63                                  ; (bad)
13953  DB  0,0                                 ; add           %al,(%rax)
13954  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13955  DB  0,0                                 ; add           %al,(%rax)
13956  DB  52,0                                ; xor           $0x0,%al
13957  DB  0,0                                 ; add           %al,(%rax)
13958  DB  52,0                                ; xor           $0x0,%al
13959  DB  0,0                                 ; add           %al,(%rax)
13960  DB  52,0                                ; xor           $0x0,%al
13961  DB  0,0                                 ; add           %al,(%rax)
13962  DB  52,255                              ; xor           $0xff,%al
13963  DB  255                                 ; (bad)
13964  DB  127,0                               ; jg            3ee4 <.literal16+0x544>
13965  DB  255                                 ; (bad)
13966  DB  255                                 ; (bad)
13967  DB  127,0                               ; jg            3ee8 <.literal16+0x548>
13968  DB  255                                 ; (bad)
13969  DB  255                                 ; (bad)
13970  DB  127,0                               ; jg            3eec <.literal16+0x54c>
13971  DB  255                                 ; (bad)
13972  DB  255                                 ; (bad)
13973  DB  127,0                               ; jg            3ef0 <.literal16+0x550>
13974  DB  0,0                                 ; add           %al,(%rax)
13975  DB  0,63                                ; add           %bh,(%rdi)
13976  DB  0,0                                 ; add           %al,(%rax)
13977  DB  0,63                                ; add           %bh,(%rdi)
13978  DB  0,0                                 ; add           %al,(%rax)
13979  DB  0,63                                ; add           %bh,(%rdi)
13980  DB  0,0                                 ; add           %al,(%rax)
13981  DB  0,63                                ; add           %bh,(%rdi)
13982  DB  119,115                             ; ja            3f75 <.literal16+0x5d5>
13983  DB  248                                 ; clc
13984  DB  194,119,115                         ; retq          $0x7377
13985  DB  248                                 ; clc
13986  DB  194,119,115                         ; retq          $0x7377
13987  DB  248                                 ; clc
13988  DB  194,119,115                         ; retq          $0x7377
13989  DB  248                                 ; clc
13990  DB  194,117,191                         ; retq          $0xbf75
13991  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
13992  DB  63                                  ; (bad)
13993  DB  117,191                             ; jne           3ed9 <.literal16+0x539>
13994  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
13995  DB  63                                  ; (bad)
13996  DB  249                                 ; stc
13997  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
13998  DB  249                                 ; stc
13999  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14000  DB  249                                 ; stc
14001  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14002  DB  249                                 ; stc
14003  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14004  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
14005  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a37f1a <_sk_callback_sse41+0xffffffffe9a34634>
14006  DB  220,63                              ; fdivrl        (%rdi)
14007  DB  81                                  ; push          %rcx
14008  DB  140,242                             ; mov           %?,%edx
14009  DB  66,81                               ; rex.X         push %rcx
14010  DB  140,242                             ; mov           %?,%edx
14011  DB  66,81                               ; rex.X         push %rcx
14012  DB  140,242                             ; mov           %?,%edx
14013  DB  66,81                               ; rex.X         push %rcx
14014  DB  140,242                             ; mov           %?,%edx
14015  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
14016  DB  63                                  ; (bad)
14017  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
14018  DB  63                                  ; (bad)
14019  DB  248                                 ; clc
14020  DB  245                                 ; cmc
14021  DB  154                                 ; (bad)
14022  DB  64,248                              ; rex           clc
14023  DB  245                                 ; cmc
14024  DB  154                                 ; (bad)
14025  DB  64,248                              ; rex           clc
14026  DB  245                                 ; cmc
14027  DB  154                                 ; (bad)
14028  DB  64,248                              ; rex           clc
14029  DB  245                                 ; cmc
14030  DB  154                                 ; (bad)
14031  DB  64,254                              ; rex           (bad)
14032  DB  210,221                             ; rcr           %cl,%ch
14033  DB  65,254                              ; rex.B         (bad)
14034  DB  210,221                             ; rcr           %cl,%ch
14035  DB  65,254                              ; rex.B         (bad)
14036  DB  210,221                             ; rcr           %cl,%ch
14037  DB  65,254                              ; rex.B         (bad)
14038  DB  210,221                             ; rcr           %cl,%ch
14039  DB  65,0,0                              ; add           %al,(%r8)
14040  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14041  DB  0,0                                 ; add           %al,(%rax)
14042  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14043  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14044  DB  0,0                                 ; add           %al,(%rax)
14045  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14046  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14047  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14048  DB  63                                  ; (bad)
14049  DB  0,0                                 ; add           %al,(%rax)
14050  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14051  DB  0,0                                 ; add           %al,(%rax)
14052  DB  52,0                                ; xor           $0x0,%al
14053  DB  0,0                                 ; add           %al,(%rax)
14054  DB  52,0                                ; xor           $0x0,%al
14055  DB  0,0                                 ; add           %al,(%rax)
14056  DB  52,0                                ; xor           $0x0,%al
14057  DB  0,0                                 ; add           %al,(%rax)
14058  DB  52,255                              ; xor           $0xff,%al
14059  DB  255                                 ; (bad)
14060  DB  127,0                               ; jg            3fb4 <.literal16+0x614>
14061  DB  255                                 ; (bad)
14062  DB  255                                 ; (bad)
14063  DB  127,0                               ; jg            3fb8 <.literal16+0x618>
14064  DB  255                                 ; (bad)
14065  DB  255                                 ; (bad)
14066  DB  127,0                               ; jg            3fbc <.literal16+0x61c>
14067  DB  255                                 ; (bad)
14068  DB  255                                 ; (bad)
14069  DB  127,0                               ; jg            3fc0 <.literal16+0x620>
14070  DB  0,0                                 ; add           %al,(%rax)
14071  DB  0,63                                ; add           %bh,(%rdi)
14072  DB  0,0                                 ; add           %al,(%rax)
14073  DB  0,63                                ; add           %bh,(%rdi)
14074  DB  0,0                                 ; add           %al,(%rax)
14075  DB  0,63                                ; add           %bh,(%rdi)
14076  DB  0,0                                 ; add           %al,(%rax)
14077  DB  0,63                                ; add           %bh,(%rdi)
14078  DB  119,115                             ; ja            4045 <.literal16+0x6a5>
14079  DB  248                                 ; clc
14080  DB  194,119,115                         ; retq          $0x7377
14081  DB  248                                 ; clc
14082  DB  194,119,115                         ; retq          $0x7377
14083  DB  248                                 ; clc
14084  DB  194,119,115                         ; retq          $0x7377
14085  DB  248                                 ; clc
14086  DB  194,117,191                         ; retq          $0xbf75
14087  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14088  DB  63                                  ; (bad)
14089  DB  117,191                             ; jne           3fa9 <.literal16+0x609>
14090  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14091  DB  63                                  ; (bad)
14092  DB  249                                 ; stc
14093  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14094  DB  249                                 ; stc
14095  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14096  DB  249                                 ; stc
14097  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14098  DB  249                                 ; stc
14099  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14100  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
14101  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a37fea <_sk_callback_sse41+0xffffffffe9a34704>
14102  DB  220,63                              ; fdivrl        (%rdi)
14103  DB  81                                  ; push          %rcx
14104  DB  140,242                             ; mov           %?,%edx
14105  DB  66,81                               ; rex.X         push %rcx
14106  DB  140,242                             ; mov           %?,%edx
14107  DB  66,81                               ; rex.X         push %rcx
14108  DB  140,242                             ; mov           %?,%edx
14109  DB  66,81                               ; rex.X         push %rcx
14110  DB  140,242                             ; mov           %?,%edx
14111  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
14112  DB  63                                  ; (bad)
14113  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
14114  DB  63                                  ; (bad)
14115  DB  248                                 ; clc
14116  DB  245                                 ; cmc
14117  DB  154                                 ; (bad)
14118  DB  64,248                              ; rex           clc
14119  DB  245                                 ; cmc
14120  DB  154                                 ; (bad)
14121  DB  64,248                              ; rex           clc
14122  DB  245                                 ; cmc
14123  DB  154                                 ; (bad)
14124  DB  64,248                              ; rex           clc
14125  DB  245                                 ; cmc
14126  DB  154                                 ; (bad)
14127  DB  64,254                              ; rex           (bad)
14128  DB  210,221                             ; rcr           %cl,%ch
14129  DB  65,254                              ; rex.B         (bad)
14130  DB  210,221                             ; rcr           %cl,%ch
14131  DB  65,254                              ; rex.B         (bad)
14132  DB  210,221                             ; rcr           %cl,%ch
14133  DB  65,254                              ; rex.B         (bad)
14134  DB  210,221                             ; rcr           %cl,%ch
14135  DB  65,0,0                              ; add           %al,(%r8)
14136  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14137  DB  0,0                                 ; add           %al,(%rax)
14138  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14139  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14140  DB  0,0                                 ; add           %al,(%rax)
14141  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14142  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14143  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14144  DB  63                                  ; (bad)
14145  DB  0,0                                 ; add           %al,(%rax)
14146  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14147  DB  0,0                                 ; add           %al,(%rax)
14148  DB  52,0                                ; xor           $0x0,%al
14149  DB  0,0                                 ; add           %al,(%rax)
14150  DB  52,0                                ; xor           $0x0,%al
14151  DB  0,0                                 ; add           %al,(%rax)
14152  DB  52,0                                ; xor           $0x0,%al
14153  DB  0,0                                 ; add           %al,(%rax)
14154  DB  52,255                              ; xor           $0xff,%al
14155  DB  255                                 ; (bad)
14156  DB  127,0                               ; jg            4084 <.literal16+0x6e4>
14157  DB  255                                 ; (bad)
14158  DB  255                                 ; (bad)
14159  DB  127,0                               ; jg            4088 <.literal16+0x6e8>
14160  DB  255                                 ; (bad)
14161  DB  255                                 ; (bad)
14162  DB  127,0                               ; jg            408c <.literal16+0x6ec>
14163  DB  255                                 ; (bad)
14164  DB  255                                 ; (bad)
14165  DB  127,0                               ; jg            4090 <.literal16+0x6f0>
14166  DB  0,0                                 ; add           %al,(%rax)
14167  DB  0,63                                ; add           %bh,(%rdi)
14168  DB  0,0                                 ; add           %al,(%rax)
14169  DB  0,63                                ; add           %bh,(%rdi)
14170  DB  0,0                                 ; add           %al,(%rax)
14171  DB  0,63                                ; add           %bh,(%rdi)
14172  DB  0,0                                 ; add           %al,(%rax)
14173  DB  0,63                                ; add           %bh,(%rdi)
14174  DB  119,115                             ; ja            4115 <.literal16+0x775>
14175  DB  248                                 ; clc
14176  DB  194,119,115                         ; retq          $0x7377
14177  DB  248                                 ; clc
14178  DB  194,119,115                         ; retq          $0x7377
14179  DB  248                                 ; clc
14180  DB  194,119,115                         ; retq          $0x7377
14181  DB  248                                 ; clc
14182  DB  194,117,191                         ; retq          $0xbf75
14183  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14184  DB  63                                  ; (bad)
14185  DB  117,191                             ; jne           4079 <.literal16+0x6d9>
14186  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14187  DB  63                                  ; (bad)
14188  DB  249                                 ; stc
14189  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14190  DB  249                                 ; stc
14191  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14192  DB  249                                 ; stc
14193  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14194  DB  249                                 ; stc
14195  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14196  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
14197  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a380ba <_sk_callback_sse41+0xffffffffe9a347d4>
14198  DB  220,63                              ; fdivrl        (%rdi)
14199  DB  81                                  ; push          %rcx
14200  DB  140,242                             ; mov           %?,%edx
14201  DB  66,81                               ; rex.X         push %rcx
14202  DB  140,242                             ; mov           %?,%edx
14203  DB  66,81                               ; rex.X         push %rcx
14204  DB  140,242                             ; mov           %?,%edx
14205  DB  66,81                               ; rex.X         push %rcx
14206  DB  140,242                             ; mov           %?,%edx
14207  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
14208  DB  63                                  ; (bad)
14209  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
14210  DB  63                                  ; (bad)
14211  DB  248                                 ; clc
14212  DB  245                                 ; cmc
14213  DB  154                                 ; (bad)
14214  DB  64,248                              ; rex           clc
14215  DB  245                                 ; cmc
14216  DB  154                                 ; (bad)
14217  DB  64,248                              ; rex           clc
14218  DB  245                                 ; cmc
14219  DB  154                                 ; (bad)
14220  DB  64,248                              ; rex           clc
14221  DB  245                                 ; cmc
14222  DB  154                                 ; (bad)
14223  DB  64,254                              ; rex           (bad)
14224  DB  210,221                             ; rcr           %cl,%ch
14225  DB  65,254                              ; rex.B         (bad)
14226  DB  210,221                             ; rcr           %cl,%ch
14227  DB  65,254                              ; rex.B         (bad)
14228  DB  210,221                             ; rcr           %cl,%ch
14229  DB  65,254                              ; rex.B         (bad)
14230  DB  210,221                             ; rcr           %cl,%ch
14231  DB  65,0,0                              ; add           %al,(%r8)
14232  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14233  DB  0,0                                 ; add           %al,(%rax)
14234  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14235  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14236  DB  0,0                                 ; add           %al,(%rax)
14237  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14238  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14239  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14240  DB  63                                  ; (bad)
14241  DB  0,0                                 ; add           %al,(%rax)
14242  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14243  DB  0,200                               ; add           %cl,%al
14244  DB  66,0,0                              ; rex.X         add %al,(%rax)
14245  DB  200,66,0,0                          ; enterq        $0x42,$0x0
14246  DB  200,66,0,0                          ; enterq        $0x42,$0x0
14247  DB  200,66,0,0                          ; enterq        $0x42,$0x0
14248  DB  127,67                              ; jg            4197 <.literal16+0x7f7>
14249  DB  0,0                                 ; add           %al,(%rax)
14250  DB  127,67                              ; jg            419b <.literal16+0x7fb>
14251  DB  0,0                                 ; add           %al,(%rax)
14252  DB  127,67                              ; jg            419f <.literal16+0x7ff>
14253  DB  0,0                                 ; add           %al,(%rax)
14254  DB  127,67                              ; jg            41a3 <.literal16+0x803>
14255  DB  0,0                                 ; add           %al,(%rax)
14256  DB  0,195                               ; add           %al,%bl
14257  DB  0,0                                 ; add           %al,(%rax)
14258  DB  0,195                               ; add           %al,%bl
14259  DB  0,0                                 ; add           %al,(%rax)
14260  DB  0,195                               ; add           %al,%bl
14261  DB  0,0                                 ; add           %al,(%rax)
14262  DB  0,195                               ; add           %al,%bl
14263  DB  0,0                                 ; add           %al,(%rax)
14264  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
14265  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
14266  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
14267  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
14268  DB  13,60,203,61,13                     ; or            $0xd3dcb3c,%eax
14269  DB  60,203                              ; cmp           $0xcb,%al
14270  DB  61,13,60,203,61                     ; cmp           $0x3dcb3c0d,%eax
14271  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
14272  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
14273  DB  3,59                                ; add           (%rbx),%edi
14274  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
14275  DB  18,3                                ; adc           (%rbx),%al
14276  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
14277  DB  3,59                                ; add           (%rbx),%edi
14278  DB  10,215                              ; or            %bh,%dl
14279  DB  163,59,10,215,163,59,10,215,163     ; movabs        %eax,0xa3d70a3ba3d70a3b
14280  DB  59,10                               ; cmp           (%rdx),%ecx
14281  DB  215                                 ; xlat          %ds:(%rbx)
14282  DB  163,59,194,24,17,60,194,24,17       ; movabs        %eax,0x1118c23c1118c23b
14283  DB  60,194                              ; cmp           $0xc2,%al
14284  DB  24,17                               ; sbb           %dl,(%rcx)
14285  DB  60,194                              ; cmp           $0xc2,%al
14286  DB  24,17                               ; sbb           %dl,(%rcx)
14287  DB  60,203                              ; cmp           $0xcb,%al
14288  DB  61,13,190,203,61                    ; cmp           $0x3dcbbe0d,%eax
14289  DB  13,190,203,61,13                    ; or            $0xd3dcbbe,%eax
14290  DB  190,203,61,13,190                   ; mov           $0xbe0d3dcb,%esi
14291  DB  80                                  ; push          %rax
14292  DB  128,3,62                            ; addb          $0x3e,(%rbx)
14293  DB  80                                  ; push          %rax
14294  DB  128,3,62                            ; addb          $0x3e,(%rbx)
14295  DB  80                                  ; push          %rax
14296  DB  128,3,62                            ; addb          $0x3e,(%rbx)
14297  DB  80                                  ; push          %rax
14298  DB  128,3,62                            ; addb          $0x3e,(%rbx)
14299  DB  31                                  ; (bad)
14300  DB  215                                 ; xlat          %ds:(%rbx)
14301  DB  118,63                              ; jbe           4223 <.literal16+0x883>
14302  DB  31                                  ; (bad)
14303  DB  215                                 ; xlat          %ds:(%rbx)
14304  DB  118,63                              ; jbe           4227 <.literal16+0x887>
14305  DB  31                                  ; (bad)
14306  DB  215                                 ; xlat          %ds:(%rbx)
14307  DB  118,63                              ; jbe           422b <.literal16+0x88b>
14308  DB  31                                  ; (bad)
14309  DB  215                                 ; xlat          %ds:(%rbx)
14310  DB  118,63                              ; jbe           422f <.literal16+0x88f>
14311  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
14312  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
14313  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
14314  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
14315  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14316  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14317  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
14318  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14319  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
14320  DB  0,127,67                            ; add           %bh,0x43(%rdi)
14321  DB  0,0                                 ; add           %al,(%rax)
14322  DB  127,67                              ; jg            426b <.literal16+0x8cb>
14323  DB  0,0                                 ; add           %al,(%rax)
14324  DB  127,67                              ; jg            426f <.literal16+0x8cf>
14325  DB  0,0                                 ; add           %al,(%rax)
14326  DB  127,67                              ; jg            4273 <.literal16+0x8d3>
14327  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14328  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14329  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
14330  DB  0,0                                 ; add           %al,(%rax)
14331  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14332  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14333  DB  63                                  ; (bad)
14334  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14335  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14336  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
14337  DB  0,0                                 ; add           %al,(%rax)
14338  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14339  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14340  DB  63                                  ; (bad)
14341  DB  255,0                               ; incl          (%rax)
14342  DB  0,0                                 ; add           %al,(%rax)
14343  DB  255,0                               ; incl          (%rax)
14344  DB  0,0                                 ; add           %al,(%rax)
14345  DB  255,0                               ; incl          (%rax)
14346  DB  0,0                                 ; add           %al,(%rax)
14347  DB  255,0                               ; incl          (%rax)
14348  DB  0,0                                 ; add           %al,(%rax)
14349  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14350  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14351  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
14352  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
14353  DB  255                                 ; (bad)
14354  DB  255                                 ; (bad)
14355  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 30042a0 <_sk_callback_sse41+0x30009ba>
14356  DB  255                                 ; (bad)
14357  DB  255                                 ; (bad)
14358  DB  255,6                               ; incl          (%rsi)
14359  DB  255                                 ; (bad)
14360  DB  255                                 ; (bad)
14361  DB  255,10                              ; decl          (%rdx)
14362  DB  255                                 ; (bad)
14363  DB  255                                 ; (bad)
14364  DB  255,14                              ; decl          (%rsi)
14365  DB  255                                 ; (bad)
14366  DB  255                                 ; (bad)
14367  DB  255,0                               ; incl          (%rax)
14368  DB  248                                 ; clc
14369  DB  0,0                                 ; add           %al,(%rax)
14370  DB  0,248                               ; add           %bh,%al
14371  DB  0,0                                 ; add           %al,(%rax)
14372  DB  0,248                               ; add           %bh,%al
14373  DB  0,0                                 ; add           %al,(%rax)
14374  DB  0,248                               ; add           %bh,%al
14375  DB  0,0                                 ; add           %al,(%rax)
14376  DB  8,33                                ; or            %ah,(%rcx)
14377  DB  132,55                              ; test          %dh,(%rdi)
14378  DB  8,33                                ; or            %ah,(%rcx)
14379  DB  132,55                              ; test          %dh,(%rdi)
14380  DB  8,33                                ; or            %ah,(%rcx)
14381  DB  132,55                              ; test          %dh,(%rdi)
14382  DB  8,33                                ; or            %ah,(%rcx)
14383  DB  132,55                              ; test          %dh,(%rdi)
14384  DB  224,7                               ; loopne        42d9 <.literal16+0x939>
14385  DB  0,0                                 ; add           %al,(%rax)
14386  DB  224,7                               ; loopne        42dd <.literal16+0x93d>
14387  DB  0,0                                 ; add           %al,(%rax)
14388  DB  224,7                               ; loopne        42e1 <.literal16+0x941>
14389  DB  0,0                                 ; add           %al,(%rax)
14390  DB  224,7                               ; loopne        42e5 <.literal16+0x945>
14391  DB  0,0                                 ; add           %al,(%rax)
14392  DB  33,8                                ; and           %ecx,(%rax)
14393  DB  2,58                                ; add           (%rdx),%bh
14394  DB  33,8                                ; and           %ecx,(%rax)
14395  DB  2,58                                ; add           (%rdx),%bh
14396  DB  33,8                                ; and           %ecx,(%rax)
14397  DB  2,58                                ; add           (%rdx),%bh
14398  DB  33,8                                ; and           %ecx,(%rax)
14399  DB  2,58                                ; add           (%rdx),%bh
14400  DB  31                                  ; (bad)
14401  DB  0,0                                 ; add           %al,(%rax)
14402  DB  0,31                                ; add           %bl,(%rdi)
14403  DB  0,0                                 ; add           %al,(%rax)
14404  DB  0,31                                ; add           %bl,(%rdi)
14405  DB  0,0                                 ; add           %al,(%rax)
14406  DB  0,31                                ; add           %bl,(%rdi)
14407  DB  0,0                                 ; add           %al,(%rax)
14408  DB  0,8                                 ; add           %cl,(%rax)
14409  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
14410  DB  8,33                                ; or            %ah,(%rcx)
14411  DB  4,61                                ; add           $0x3d,%al
14412  DB  8,33                                ; or            %ah,(%rcx)
14413  DB  4,61                                ; add           $0x3d,%al
14414  DB  0,0                                 ; add           %al,(%rax)
14415  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14416  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14417  DB  63                                  ; (bad)
14418  DB  0,0                                 ; add           %al,(%rax)
14419  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14420  DB  248                                 ; clc
14421  DB  0,0                                 ; add           %al,(%rax)
14422  DB  0,248                               ; add           %bh,%al
14423  DB  0,0                                 ; add           %al,(%rax)
14424  DB  0,248                               ; add           %bh,%al
14425  DB  0,0                                 ; add           %al,(%rax)
14426  DB  0,248                               ; add           %bh,%al
14427  DB  0,0                                 ; add           %al,(%rax)
14428  DB  8,33                                ; or            %ah,(%rcx)
14429  DB  132,55                              ; test          %dh,(%rdi)
14430  DB  8,33                                ; or            %ah,(%rcx)
14431  DB  132,55                              ; test          %dh,(%rdi)
14432  DB  8,33                                ; or            %ah,(%rcx)
14433  DB  132,55                              ; test          %dh,(%rdi)
14434  DB  8,33                                ; or            %ah,(%rcx)
14435  DB  132,55                              ; test          %dh,(%rdi)
14436  DB  224,7                               ; loopne        4349 <.literal16+0x9a9>
14437  DB  0,0                                 ; add           %al,(%rax)
14438  DB  224,7                               ; loopne        434d <.literal16+0x9ad>
14439  DB  0,0                                 ; add           %al,(%rax)
14440  DB  224,7                               ; loopne        4351 <.literal16+0x9b1>
14441  DB  0,0                                 ; add           %al,(%rax)
14442  DB  224,7                               ; loopne        4355 <.literal16+0x9b5>
14443  DB  0,0                                 ; add           %al,(%rax)
14444  DB  33,8                                ; and           %ecx,(%rax)
14445  DB  2,58                                ; add           (%rdx),%bh
14446  DB  33,8                                ; and           %ecx,(%rax)
14447  DB  2,58                                ; add           (%rdx),%bh
14448  DB  33,8                                ; and           %ecx,(%rax)
14449  DB  2,58                                ; add           (%rdx),%bh
14450  DB  33,8                                ; and           %ecx,(%rax)
14451  DB  2,58                                ; add           (%rdx),%bh
14452  DB  31                                  ; (bad)
14453  DB  0,0                                 ; add           %al,(%rax)
14454  DB  0,31                                ; add           %bl,(%rdi)
14455  DB  0,0                                 ; add           %al,(%rax)
14456  DB  0,31                                ; add           %bl,(%rdi)
14457  DB  0,0                                 ; add           %al,(%rax)
14458  DB  0,31                                ; add           %bl,(%rdi)
14459  DB  0,0                                 ; add           %al,(%rax)
14460  DB  0,8                                 ; add           %cl,(%rax)
14461  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
14462  DB  8,33                                ; or            %ah,(%rcx)
14463  DB  4,61                                ; add           $0x3d,%al
14464  DB  8,33                                ; or            %ah,(%rcx)
14465  DB  4,61                                ; add           $0x3d,%al
14466  DB  0,0                                 ; add           %al,(%rax)
14467  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14468  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14469  DB  63                                  ; (bad)
14470  DB  0,0                                 ; add           %al,(%rax)
14471  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14472  DB  0,248                               ; add           %bh,%al
14473  DB  65,0,0                              ; add           %al,(%r8)
14474  DB  248                                 ; clc
14475  DB  65,0,0                              ; add           %al,(%r8)
14476  DB  248                                 ; clc
14477  DB  65,0,0                              ; add           %al,(%r8)
14478  DB  248                                 ; clc
14479  DB  65,0,0                              ; add           %al,(%r8)
14480  DB  124,66                              ; jl            43e6 <.literal16+0xa46>
14481  DB  0,0                                 ; add           %al,(%rax)
14482  DB  124,66                              ; jl            43ea <.literal16+0xa4a>
14483  DB  0,0                                 ; add           %al,(%rax)
14484  DB  124,66                              ; jl            43ee <.literal16+0xa4e>
14485  DB  0,0                                 ; add           %al,(%rax)
14486  DB  124,66                              ; jl            43f2 <.literal16+0xa52>
14487  DB  0,240                               ; add           %dh,%al
14488  DB  0,0                                 ; add           %al,(%rax)
14489  DB  0,240                               ; add           %dh,%al
14490  DB  0,0                                 ; add           %al,(%rax)
14491  DB  0,240                               ; add           %dh,%al
14492  DB  0,0                                 ; add           %al,(%rax)
14493  DB  0,240                               ; add           %dh,%al
14494  DB  0,0                                 ; add           %al,(%rax)
14495  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
14496  DB  136,55                              ; mov           %dh,(%rdi)
14497  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
14498  DB  136,55                              ; mov           %dh,(%rdi)
14499  DB  0,15                                ; add           %cl,(%rdi)
14500  DB  0,0                                 ; add           %al,(%rax)
14501  DB  0,15                                ; add           %cl,(%rdi)
14502  DB  0,0                                 ; add           %al,(%rax)
14503  DB  0,15                                ; add           %cl,(%rdi)
14504  DB  0,0                                 ; add           %al,(%rax)
14505  DB  0,15                                ; add           %cl,(%rdi)
14506  DB  0,0                                 ; add           %al,(%rax)
14507  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
14508  DB  136,57                              ; mov           %bh,(%rcx)
14509  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
14510  DB  136,57                              ; mov           %bh,(%rcx)
14511  DB  240,0,0                             ; lock          add %al,(%rax)
14512  DB  0,240                               ; add           %dh,%al
14513  DB  0,0                                 ; add           %al,(%rax)
14514  DB  0,240                               ; add           %dh,%al
14515  DB  0,0                                 ; add           %al,(%rax)
14516  DB  0,240                               ; add           %dh,%al
14517  DB  0,0                                 ; add           %al,(%rax)
14518  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
14519  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
14520  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
14521  DB  0,0                                 ; add           %al,(%rax)
14522  DB  0,15                                ; add           %cl,(%rdi)
14523  DB  0,0                                 ; add           %al,(%rax)
14524  DB  0,15                                ; add           %cl,(%rdi)
14525  DB  0,0                                 ; add           %al,(%rax)
14526  DB  0,15                                ; add           %cl,(%rdi)
14527  DB  0,0                                 ; add           %al,(%rax)
14528  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
14529  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
14530  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
14531  DB  0,240                               ; add           %dh,%al
14532  DB  0,0                                 ; add           %al,(%rax)
14533  DB  0,240                               ; add           %dh,%al
14534  DB  0,0                                 ; add           %al,(%rax)
14535  DB  0,240                               ; add           %dh,%al
14536  DB  0,0                                 ; add           %al,(%rax)
14537  DB  0,240                               ; add           %dh,%al
14538  DB  0,0                                 ; add           %al,(%rax)
14539  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
14540  DB  136,55                              ; mov           %dh,(%rdi)
14541  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
14542  DB  136,55                              ; mov           %dh,(%rdi)
14543  DB  0,15                                ; add           %cl,(%rdi)
14544  DB  0,0                                 ; add           %al,(%rax)
14545  DB  0,15                                ; add           %cl,(%rdi)
14546  DB  0,0                                 ; add           %al,(%rax)
14547  DB  0,15                                ; add           %cl,(%rdi)
14548  DB  0,0                                 ; add           %al,(%rax)
14549  DB  0,15                                ; add           %cl,(%rdi)
14550  DB  0,0                                 ; add           %al,(%rax)
14551  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
14552  DB  136,57                              ; mov           %bh,(%rcx)
14553  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
14554  DB  136,57                              ; mov           %bh,(%rcx)
14555  DB  240,0,0                             ; lock          add %al,(%rax)
14556  DB  0,240                               ; add           %dh,%al
14557  DB  0,0                                 ; add           %al,(%rax)
14558  DB  0,240                               ; add           %dh,%al
14559  DB  0,0                                 ; add           %al,(%rax)
14560  DB  0,240                               ; add           %dh,%al
14561  DB  0,0                                 ; add           %al,(%rax)
14562  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
14563  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
14564  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
14565  DB  0,0                                 ; add           %al,(%rax)
14566  DB  0,15                                ; add           %cl,(%rdi)
14567  DB  0,0                                 ; add           %al,(%rax)
14568  DB  0,15                                ; add           %cl,(%rdi)
14569  DB  0,0                                 ; add           %al,(%rax)
14570  DB  0,15                                ; add           %cl,(%rdi)
14571  DB  0,0                                 ; add           %al,(%rax)
14572  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
14573  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
14574  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
14575  DB  0,0                                 ; add           %al,(%rax)
14576  DB  112,65                              ; jo            44f5 <.literal16+0xb55>
14577  DB  0,0                                 ; add           %al,(%rax)
14578  DB  112,65                              ; jo            44f9 <.literal16+0xb59>
14579  DB  0,0                                 ; add           %al,(%rax)
14580  DB  112,65                              ; jo            44fd <.literal16+0xb5d>
14581  DB  0,0                                 ; add           %al,(%rax)
14582  DB  112,65                              ; jo            4501 <.literal16+0xb61>
14583  DB  255,0                               ; incl          (%rax)
14584  DB  0,0                                 ; add           %al,(%rax)
14585  DB  255,0                               ; incl          (%rax)
14586  DB  0,0                                 ; add           %al,(%rax)
14587  DB  255,0                               ; incl          (%rax)
14588  DB  0,0                                 ; add           %al,(%rax)
14589  DB  255,0                               ; incl          (%rax)
14590  DB  0,0                                 ; add           %al,(%rax)
14591  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14592  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14593  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
14594  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
14595  DB  255                                 ; (bad)
14596  DB  255                                 ; (bad)
14597  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 30044f0 <_sk_callback_sse41+0x3000c0a>
14598  DB  255                                 ; (bad)
14599  DB  255                                 ; (bad)
14600  DB  255,6                               ; incl          (%rsi)
14601  DB  255                                 ; (bad)
14602  DB  255                                 ; (bad)
14603  DB  255,10                              ; decl          (%rdx)
14604  DB  255                                 ; (bad)
14605  DB  255                                 ; (bad)
14606  DB  255,14                              ; decl          (%rsi)
14607  DB  255                                 ; (bad)
14608  DB  255                                 ; (bad)
14609  DB  255                                 ; (bad)
14610  DB  255,0                               ; incl          (%rax)
14611  DB  0,0                                 ; add           %al,(%rax)
14612  DB  255,0                               ; incl          (%rax)
14613  DB  0,0                                 ; add           %al,(%rax)
14614  DB  255,0                               ; incl          (%rax)
14615  DB  0,0                                 ; add           %al,(%rax)
14616  DB  255,0                               ; incl          (%rax)
14617  DB  0,0                                 ; add           %al,(%rax)
14618  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14619  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14620  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
14621  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
14622  DB  255                                 ; (bad)
14623  DB  255                                 ; (bad)
14624  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3004530 <_sk_callback_sse41+0x3000c4a>
14625  DB  255                                 ; (bad)
14626  DB  255                                 ; (bad)
14627  DB  255,6                               ; incl          (%rsi)
14628  DB  255                                 ; (bad)
14629  DB  255                                 ; (bad)
14630  DB  255,10                              ; decl          (%rdx)
14631  DB  255                                 ; (bad)
14632  DB  255                                 ; (bad)
14633  DB  255,14                              ; decl          (%rsi)
14634  DB  255                                 ; (bad)
14635  DB  255                                 ; (bad)
14636  DB  255,0                               ; incl          (%rax)
14637  DB  0,127,67                            ; add           %bh,0x43(%rdi)
14638  DB  0,0                                 ; add           %al,(%rax)
14639  DB  127,67                              ; jg            458b <.literal16+0xbeb>
14640  DB  0,0                                 ; add           %al,(%rax)
14641  DB  127,67                              ; jg            458f <.literal16+0xbef>
14642  DB  0,0                                 ; add           %al,(%rax)
14643  DB  127,67                              ; jg            4593 <.literal16+0xbf3>
14644  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
14645  DB  0,0                                 ; add           %al,(%rax)
14646  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
14647  DB  0,0                                 ; add           %al,(%rax)
14648  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
14649  DB  0,0                                 ; add           %al,(%rax)
14650  DB  4,0                                 ; add           $0x0,%al
14651  DB  0,0                                 ; add           %al,(%rax)
14652  DB  4,0                                 ; add           $0x0,%al
14653  DB  0,0                                 ; add           %al,(%rax)
14654  DB  4,0                                 ; add           $0x0,%al
14655  DB  0,0                                 ; add           %al,(%rax)
14656  DB  0,0                                 ; add           %al,(%rax)
14657  DB  56,0                                ; cmp           %al,(%rax)
14658  DB  0,0                                 ; add           %al,(%rax)
14659  DB  56,0                                ; cmp           %al,(%rax)
14660  DB  0,0                                 ; add           %al,(%rax)
14661  DB  56,0                                ; cmp           %al,(%rax)
14662  DB  0,0                                 ; add           %al,(%rax)
14663  DB  56,0                                ; cmp           %al,(%rax)
14664  DB  128,0,0                             ; addb          $0x0,(%rax)
14665  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
14666  DB  0,0                                 ; add           %al,(%rax)
14667  DB  0,128,0,0,0,4                       ; add           %al,0x4000000(%rax)
14668  DB  0,0                                 ; add           %al,(%rax)
14669  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
14670  DB  0,0                                 ; add           %al,(%rax)
14671  DB  4,0                                 ; add           $0x0,%al
14672  DB  0,0                                 ; add           %al,(%rax)
14673  DB  4,0                                 ; add           $0x0,%al
14674  DB  0,0                                 ; add           %al,(%rax)
14675  DB  0,0                                 ; add           %al,(%rax)
14676  DB  56,0                                ; cmp           %al,(%rax)
14677  DB  0,0                                 ; add           %al,(%rax)
14678  DB  56,0                                ; cmp           %al,(%rax)
14679  DB  0,0                                 ; add           %al,(%rax)
14680  DB  56,0                                ; cmp           %al,(%rax)
14681  DB  0,0                                 ; add           %al,(%rax)
14682  DB  56,0                                ; cmp           %al,(%rax)
14683  DB  0,0                                 ; add           %al,(%rax)
14684  DB  128,0,0                             ; addb          $0x0,(%rax)
14685  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
14686  DB  0,0                                 ; add           %al,(%rax)
14687  DB  0,128,0,0,128,56                    ; add           %al,0x38800000(%rax)
14688  DB  0,0                                 ; add           %al,(%rax)
14689  DB  128,56,0                            ; cmpb          $0x0,(%rax)
14690  DB  0,128,56,0,0,128                    ; add           %al,-0x7fffffc8(%rax)
14691  DB  56,0                                ; cmp           %al,(%rax)
14692  DB  64,254                              ; rex           (bad)
14693  DB  255,0                               ; incl          (%rax)
14694  DB  64,254                              ; rex           (bad)
14695  DB  255,0                               ; incl          (%rax)
14696  DB  64,254                              ; rex           (bad)
14697  DB  255,0                               ; incl          (%rax)
14698  DB  64,254                              ; rex           (bad)
14699  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
14700  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
14701  DB  55                                  ; (bad)
14702  DB  128,0,128                           ; addb          $0x80,(%rax)
14703  DB  55                                  ; (bad)
14704  DB  128,0,128                           ; addb          $0x80,(%rax)
14705  DB  55                                  ; (bad)
14706  DB  128,0,128                           ; addb          $0x80,(%rax)
14707  DB  55                                  ; (bad)
14708  DB  128,0,128                           ; addb          $0x80,(%rax)
14709  DB  55                                  ; (bad)
14710  DB  128,0,128                           ; addb          $0x80,(%rax)
14711  DB  55                                  ; (bad)
14712  DB  0,0                                 ; add           %al,(%rax)
14713  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14714  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14715  DB  63                                  ; (bad)
14716  DB  0,0                                 ; add           %al,(%rax)
14717  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14718  DB  255                                 ; (bad)
14719  DB  127,71                              ; jg            465b <.literal16+0xcbb>
14720  DB  0,255                               ; add           %bh,%bh
14721  DB  127,71                              ; jg            465f <.literal16+0xcbf>
14722  DB  0,255                               ; add           %bh,%bh
14723  DB  127,71                              ; jg            4663 <.literal16+0xcc3>
14724  DB  0,255                               ; add           %bh,%bh
14725  DB  127,71                              ; jg            4667 <.literal16+0xcc7>
14726  DB  208                                 ; (bad)
14727  DB  179,89                              ; mov           $0x59,%bl
14728  DB  62,208                              ; ds            (bad)
14729  DB  179,89                              ; mov           $0x59,%bl
14730  DB  62,208                              ; ds            (bad)
14731  DB  179,89                              ; mov           $0x59,%bl
14732  DB  62,208                              ; ds            (bad)
14733  DB  179,89                              ; mov           $0x59,%bl
14734  DB  62,89                               ; ds            pop %rcx
14735  DB  23                                  ; (bad)
14736  DB  55                                  ; (bad)
14737  DB  63                                  ; (bad)
14738  DB  89                                  ; pop           %rcx
14739  DB  23                                  ; (bad)
14740  DB  55                                  ; (bad)
14741  DB  63                                  ; (bad)
14742  DB  89                                  ; pop           %rcx
14743  DB  23                                  ; (bad)
14744  DB  55                                  ; (bad)
14745  DB  63                                  ; (bad)
14746  DB  89                                  ; pop           %rcx
14747  DB  23                                  ; (bad)
14748  DB  55                                  ; (bad)
14749  DB  63                                  ; (bad)
14750  DB  152                                 ; cwtl
14751  DB  221,147,61,152,221,147              ; fstl          -0x6c2267c3(%rbx)
14752  DB  61,152,221,147,61                   ; cmp           $0x3d93dd98,%eax
14753  DB  152                                 ; cwtl
14754  DB  221,147,61,0,0,0                    ; fstl          0x3d(%rbx)
14755  DB  63                                  ; (bad)
14756  DB  0,0                                 ; add           %al,(%rax)
14757  DB  0,63                                ; add           %bh,(%rdi)
14758  DB  0,0                                 ; add           %al,(%rax)
14759  DB  0,63                                ; add           %bh,(%rdi)
14760  DB  0,0                                 ; add           %al,(%rax)
14761  DB  0,63                                ; add           %bh,(%rdi)
14762  DB  0,0                                 ; add           %al,(%rax)
14763  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
14764  DB  0,0                                 ; add           %al,(%rax)
14765  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
14766  DB  0,0                                 ; add           %al,(%rax)
14767  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14768  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14769  DB  63                                  ; (bad)
14770  DB  0,0                                 ; add           %al,(%rax)
14771  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14772  DB  0,0                                 ; add           %al,(%rax)
14773  DB  63                                  ; (bad)
14774  DB  0,0                                 ; add           %al,(%rax)
14775  DB  0,63                                ; add           %bh,(%rdi)
14776  DB  0,0                                 ; add           %al,(%rax)
14777  DB  0,63                                ; add           %bh,(%rdi)
14778  DB  0,0                                 ; add           %al,(%rax)
14779  DB  0,63                                ; add           %bh,(%rdi)
14780  DB  0,0                                 ; add           %al,(%rax)
14781  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
14782  DB  0,0                                 ; add           %al,(%rax)
14783  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
14784  DB  0,0                                 ; add           %al,(%rax)
14785  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14786  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14787  DB  63                                  ; (bad)
14788  DB  0,0                                 ; add           %al,(%rax)
14789  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14790  DB  0,0                                 ; add           %al,(%rax)
14791  DB  63                                  ; (bad)
14792  DB  0,0                                 ; add           %al,(%rax)
14793  DB  0,63                                ; add           %bh,(%rdi)
14794  DB  0,0                                 ; add           %al,(%rax)
14795  DB  0,63                                ; add           %bh,(%rdi)
14796  DB  0,0                                 ; add           %al,(%rax)
14797  DB  0,63                                ; add           %bh,(%rdi)
14798  DB  0,0                                 ; add           %al,(%rax)
14799  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
14800  DB  0,192                               ; add           %al,%al
14801  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
14802  DB  0,0                                 ; add           %al,(%rax)
14803  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14804  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14805  DB  63                                  ; (bad)
14806  DB  0,0                                 ; add           %al,(%rax)
14807  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
14808  DB  28,199                              ; sbb           $0xc7,%al
14809  DB  62,114,28                           ; jb,pt         4702 <.literal16+0xd62>
14810  DB  199                                 ; (bad)
14811  DB  62,114,28                           ; jb,pt         4706 <.literal16+0xd66>
14812  DB  199                                 ; (bad)
14813  DB  62,114,28                           ; jb,pt         470a <.literal16+0xd6a>
14814  DB  199                                 ; (bad)
14815  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
14816  DB  170                                 ; stos          %al,%es:(%rdi)
14817  DB  170                                 ; stos          %al,%es:(%rdi)
14818  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
14819  DB  171                                 ; stos          %eax,%es:(%rdi)
14820  DB  170                                 ; stos          %al,%es:(%rdi)
14821  DB  170                                 ; stos          %al,%es:(%rdi)
14822  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
14823  DB  0,0                                 ; add           %al,(%rax)
14824  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
14825  DB  0,0                                 ; add           %al,(%rax)
14826  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
14827  DB  0,0                                 ; add           %al,(%rax)
14828  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14829  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14830  DB  63                                  ; (bad)
14831  DB  0,0                                 ; add           %al,(%rax)
14832  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
14833  DB  85                                  ; push          %rbp
14834  DB  149                                 ; xchg          %eax,%ebp
14835  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
14836  DB  85                                  ; push          %rbp
14837  DB  85                                  ; push          %rbp
14838  DB  149                                 ; xchg          %eax,%ebp
14839  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
14840  DB  0,0                                 ; add           %al,(%rax)
14841  DB  192,63,0                            ; sarb          $0x0,(%rdi)
14842  DB  0,192                               ; add           %al,%al
14843  DB  63                                  ; (bad)
14844  DB  0,0                                 ; add           %al,(%rax)
14845  DB  192,63,0                            ; sarb          $0x0,(%rdi)
14846  DB  0,192                               ; add           %al,%al
14847  DB  63                                  ; (bad)
14848  DB  0,0                                 ; add           %al,(%rax)
14849  DB  0,63                                ; add           %bh,(%rdi)
14850  DB  0,0                                 ; add           %al,(%rax)
14851  DB  0,63                                ; add           %bh,(%rdi)
14852  DB  0,0                                 ; add           %al,(%rax)
14853  DB  0,63                                ; add           %bh,(%rdi)
14854  DB  0,0                                 ; add           %al,(%rax)
14855  DB  0,63                                ; add           %bh,(%rdi)
14856  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
14857  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63d595 <_sk_callback_sse41+0x3d639caf>
14858  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
14859  DB  0,63                                ; add           %bh,(%rdi)
14860  DB  0,0                                 ; add           %al,(%rax)
14861  DB  0,63                                ; add           %bh,(%rdi)
14862  DB  0,0                                 ; add           %al,(%rax)
14863  DB  0,63                                ; add           %bh,(%rdi)
14864  DB  0,0                                 ; add           %al,(%rax)
14865  DB  0,63                                ; add           %bh,(%rdi)
14866  DB  85                                  ; push          %rbp
14867  DB  85                                  ; push          %rbp
14868  DB  149                                 ; xchg          %eax,%ebp
14869  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
14870  DB  85                                  ; push          %rbp
14871  DB  85                                  ; push          %rbp
14872  DB  149                                 ; xchg          %eax,%ebp
14873  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
14874  DB  0,0                                 ; add           %al,(%rax)
14875  DB  192,63,0                            ; sarb          $0x0,(%rdi)
14876  DB  0,192                               ; add           %al,%al
14877  DB  63                                  ; (bad)
14878  DB  0,0                                 ; add           %al,(%rax)
14879  DB  192,63,0                            ; sarb          $0x0,(%rdi)
14880  DB  0,192                               ; add           %al,%al
14881  DB  63                                  ; (bad)
14882  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
14883  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63d5d5 <_sk_callback_sse41+0x3d639cef>
14884  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
14885  DB  192,63,0                            ; sarb          $0x0,(%rdi)
14886  DB  0,192                               ; add           %al,%al
14887  DB  63                                  ; (bad)
14888  DB  0,0                                 ; add           %al,(%rax)
14889  DB  192,63,0                            ; sarb          $0x0,(%rdi)
14890  DB  0,192                               ; add           %al,%al
14891  DB  63                                  ; (bad)
14892  DB  114,28                              ; jb            47ce <.literal16+0xe2e>
14893  DB  199                                 ; (bad)
14894  DB  62,114,28                           ; jb,pt         47d2 <.literal16+0xe32>
14895  DB  199                                 ; (bad)
14896  DB  62,114,28                           ; jb,pt         47d6 <.literal16+0xe36>
14897  DB  199                                 ; (bad)
14898  DB  62,114,28                           ; jb,pt         47da <.literal16+0xe3a>
14899  DB  199                                 ; (bad)
14900  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
14901  DB  170                                 ; stos          %al,%es:(%rdi)
14902  DB  170                                 ; stos          %al,%es:(%rdi)
14903  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
14904  DB  171                                 ; stos          %eax,%es:(%rdi)
14905  DB  170                                 ; stos          %al,%es:(%rdi)
14906  DB  170                                 ; stos          %al,%es:(%rdi)
14907  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
14908  DB  0,0                                 ; add           %al,(%rax)
14909  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
14910  DB  0,192                               ; add           %al,%al
14911  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
14912  DB  0,0                                 ; add           %al,(%rax)
14913  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14914  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14915  DB  63                                  ; (bad)
14916  DB  0,0                                 ; add           %al,(%rax)
14917  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
14918  DB  28,199                              ; sbb           $0xc7,%al
14919  DB  62,114,28                           ; jb,pt         4812 <.literal16+0xe72>
14920  DB  199                                 ; (bad)
14921  DB  62,114,28                           ; jb,pt         4816 <.literal16+0xe76>
14922  DB  199                                 ; (bad)
14923  DB  62,114,28                           ; jb,pt         481a <.literal16+0xe7a>
14924  DB  199                                 ; (bad)
14925  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
14926  DB  170                                 ; stos          %al,%es:(%rdi)
14927  DB  170                                 ; stos          %al,%es:(%rdi)
14928  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
14929  DB  171                                 ; stos          %eax,%es:(%rdi)
14930  DB  170                                 ; stos          %al,%es:(%rdi)
14931  DB  170                                 ; stos          %al,%es:(%rdi)
14932  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
14933  DB  0,0                                 ; add           %al,(%rax)
14934  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
14935  DB  0,0                                 ; add           %al,(%rax)
14936  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
14937  DB  0,0                                 ; add           %al,(%rax)
14938  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14939  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14940  DB  63                                  ; (bad)
14941  DB  0,0                                 ; add           %al,(%rax)
14942  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
14943  DB  85                                  ; push          %rbp
14944  DB  149                                 ; xchg          %eax,%ebp
14945  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
14946  DB  85                                  ; push          %rbp
14947  DB  85                                  ; push          %rbp
14948  DB  149                                 ; xchg          %eax,%ebp
14949  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
14950  DB  0,0                                 ; add           %al,(%rax)
14951  DB  192,63,0                            ; sarb          $0x0,(%rdi)
14952  DB  0,192                               ; add           %al,%al
14953  DB  63                                  ; (bad)
14954  DB  0,0                                 ; add           %al,(%rax)
14955  DB  192,63,0                            ; sarb          $0x0,(%rdi)
14956  DB  0,192                               ; add           %al,%al
14957  DB  63                                  ; (bad)
14958  DB  0,0                                 ; add           %al,(%rax)
14959  DB  0,63                                ; add           %bh,(%rdi)
14960  DB  0,0                                 ; add           %al,(%rax)
14961  DB  0,63                                ; add           %bh,(%rdi)
14962  DB  0,0                                 ; add           %al,(%rax)
14963  DB  0,63                                ; add           %bh,(%rdi)
14964  DB  0,0                                 ; add           %al,(%rax)
14965  DB  0,63                                ; add           %bh,(%rdi)
14966  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
14967  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63d6a5 <_sk_callback_sse41+0x3d639dbf>
14968  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
14969  DB  0,63                                ; add           %bh,(%rdi)
14970  DB  0,0                                 ; add           %al,(%rax)
14971  DB  0,63                                ; add           %bh,(%rdi)
14972  DB  0,0                                 ; add           %al,(%rax)
14973  DB  0,63                                ; add           %bh,(%rdi)
14974  DB  0,0                                 ; add           %al,(%rax)
14975  DB  0,63                                ; add           %bh,(%rdi)
14976  DB  85                                  ; push          %rbp
14977  DB  85                                  ; push          %rbp
14978  DB  149                                 ; xchg          %eax,%ebp
14979  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
14980  DB  85                                  ; push          %rbp
14981  DB  85                                  ; push          %rbp
14982  DB  149                                 ; xchg          %eax,%ebp
14983  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
14984  DB  0,0                                 ; add           %al,(%rax)
14985  DB  192,63,0                            ; sarb          $0x0,(%rdi)
14986  DB  0,192                               ; add           %al,%al
14987  DB  63                                  ; (bad)
14988  DB  0,0                                 ; add           %al,(%rax)
14989  DB  192,63,0                            ; sarb          $0x0,(%rdi)
14990  DB  0,192                               ; add           %al,%al
14991  DB  63                                  ; (bad)
14992  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
14993  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63d6e5 <_sk_callback_sse41+0x3d639dff>
14994  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
14995  DB  192,63,0                            ; sarb          $0x0,(%rdi)
14996  DB  0,192                               ; add           %al,%al
14997  DB  63                                  ; (bad)
14998  DB  0,0                                 ; add           %al,(%rax)
14999  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15000  DB  0,192                               ; add           %al,%al
15001  DB  63                                  ; (bad)
15002  DB  114,28                              ; jb            48de <.literal16+0xf3e>
15003  DB  199                                 ; (bad)
15004  DB  62,114,28                           ; jb,pt         48e2 <_sk_callback_sse41+0xffc>
15005  DB  199                                 ; (bad)
15006  DB  62,114,28                           ; jb,pt         48e6 <_sk_callback_sse41+0x1000>
15007  DB  199                                 ; (bad)
15008  DB  62,114,28                           ; jb,pt         48ea <_sk_callback_sse41+0x1004>
15009  DB  199                                 ; (bad)
15010  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
15011  DB  170                                 ; stos          %al,%es:(%rdi)
15012  DB  170                                 ; stos          %al,%es:(%rdi)
15013  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
15014  DB  171                                 ; stos          %eax,%es:(%rdi)
15015  DB  170                                 ; stos          %al,%es:(%rdi)
15016  DB  170                                 ; stos          %al,%es:(%rdi)
15017  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
15018ALIGN 32
15019
15020PUBLIC _sk_start_pipeline_sse2
15021_sk_start_pipeline_sse2 LABEL PROC
15022  DB  65,87                               ; push          %r15
15023  DB  65,86                               ; push          %r14
15024  DB  65,85                               ; push          %r13
15025  DB  65,84                               ; push          %r12
15026  DB  86                                  ; push          %rsi
15027  DB  87                                  ; push          %rdi
15028  DB  83                                  ; push          %rbx
15029  DB  72,129,236,160,0,0,0                ; sub           $0xa0,%rsp
15030  DB  68,15,41,188,36,144,0,0,0           ; movaps        %xmm15,0x90(%rsp)
15031  DB  68,15,41,180,36,128,0,0,0           ; movaps        %xmm14,0x80(%rsp)
15032  DB  68,15,41,108,36,112                 ; movaps        %xmm13,0x70(%rsp)
15033  DB  68,15,41,100,36,96                  ; movaps        %xmm12,0x60(%rsp)
15034  DB  68,15,41,92,36,80                   ; movaps        %xmm11,0x50(%rsp)
15035  DB  68,15,41,84,36,64                   ; movaps        %xmm10,0x40(%rsp)
15036  DB  68,15,41,76,36,48                   ; movaps        %xmm9,0x30(%rsp)
15037  DB  68,15,41,68,36,32                   ; movaps        %xmm8,0x20(%rsp)
15038  DB  15,41,124,36,16                     ; movaps        %xmm7,0x10(%rsp)
15039  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
15040  DB  77,137,207                          ; mov           %r9,%r15
15041  DB  77,137,198                          ; mov           %r8,%r14
15042  DB  72,137,203                          ; mov           %rcx,%rbx
15043  DB  72,137,214                          ; mov           %rdx,%rsi
15044  DB  72,173                              ; lods          %ds:(%rsi),%rax
15045  DB  73,137,196                          ; mov           %rax,%r12
15046  DB  73,137,245                          ; mov           %rsi,%r13
15047  DB  72,141,67,4                         ; lea           0x4(%rbx),%rax
15048  DB  76,57,248                           ; cmp           %r15,%rax
15049  DB  118,5                               ; jbe           73 <_sk_start_pipeline_sse2+0x73>
15050  DB  72,137,216                          ; mov           %rbx,%rax
15051  DB  235,52                              ; jmp           a7 <_sk_start_pipeline_sse2+0xa7>
15052  DB  15,87,192                           ; xorps         %xmm0,%xmm0
15053  DB  15,87,201                           ; xorps         %xmm1,%xmm1
15054  DB  15,87,210                           ; xorps         %xmm2,%xmm2
15055  DB  15,87,219                           ; xorps         %xmm3,%xmm3
15056  DB  15,87,228                           ; xorps         %xmm4,%xmm4
15057  DB  15,87,237                           ; xorps         %xmm5,%xmm5
15058  DB  15,87,246                           ; xorps         %xmm6,%xmm6
15059  DB  15,87,255                           ; xorps         %xmm7,%xmm7
15060  DB  72,137,223                          ; mov           %rbx,%rdi
15061  DB  76,137,238                          ; mov           %r13,%rsi
15062  DB  76,137,242                          ; mov           %r14,%rdx
15063  DB  65,255,212                          ; callq         *%r12
15064  DB  72,141,67,4                         ; lea           0x4(%rbx),%rax
15065  DB  72,131,195,8                        ; add           $0x8,%rbx
15066  DB  76,57,251                           ; cmp           %r15,%rbx
15067  DB  72,137,195                          ; mov           %rax,%rbx
15068  DB  118,204                             ; jbe           73 <_sk_start_pipeline_sse2+0x73>
15069  DB  15,40,52,36                         ; movaps        (%rsp),%xmm6
15070  DB  15,40,124,36,16                     ; movaps        0x10(%rsp),%xmm7
15071  DB  68,15,40,68,36,32                   ; movaps        0x20(%rsp),%xmm8
15072  DB  68,15,40,76,36,48                   ; movaps        0x30(%rsp),%xmm9
15073  DB  68,15,40,84,36,64                   ; movaps        0x40(%rsp),%xmm10
15074  DB  68,15,40,92,36,80                   ; movaps        0x50(%rsp),%xmm11
15075  DB  68,15,40,100,36,96                  ; movaps        0x60(%rsp),%xmm12
15076  DB  68,15,40,108,36,112                 ; movaps        0x70(%rsp),%xmm13
15077  DB  68,15,40,180,36,128,0,0,0           ; movaps        0x80(%rsp),%xmm14
15078  DB  68,15,40,188,36,144,0,0,0           ; movaps        0x90(%rsp),%xmm15
15079  DB  72,129,196,160,0,0,0                ; add           $0xa0,%rsp
15080  DB  91                                  ; pop           %rbx
15081  DB  95                                  ; pop           %rdi
15082  DB  94                                  ; pop           %rsi
15083  DB  65,92                               ; pop           %r12
15084  DB  65,93                               ; pop           %r13
15085  DB  65,94                               ; pop           %r14
15086  DB  65,95                               ; pop           %r15
15087  DB  195                                 ; retq
15088
15089PUBLIC _sk_just_return_sse2
15090_sk_just_return_sse2 LABEL PROC
15091  DB  195                                 ; retq
15092
15093PUBLIC _sk_seed_shader_sse2
15094_sk_seed_shader_sse2 LABEL PROC
15095  DB  72,173                              ; lods          %ds:(%rsi),%rax
15096  DB  102,15,110,199                      ; movd          %edi,%xmm0
15097  DB  102,15,112,192,0                    ; pshufd        $0x0,%xmm0,%xmm0
15098  DB  15,91,200                           ; cvtdq2ps      %xmm0,%xmm1
15099  DB  15,40,21,241,60,0,0                 ; movaps        0x3cf1(%rip),%xmm2        # 3e00 <_sk_callback_sse2+0xb5>
15100  DB  15,88,202                           ; addps         %xmm2,%xmm1
15101  DB  15,16,2                             ; movups        (%rdx),%xmm0
15102  DB  15,88,193                           ; addps         %xmm1,%xmm0
15103  DB  102,15,110,8                        ; movd          (%rax),%xmm1
15104  DB  102,15,112,201,0                    ; pshufd        $0x0,%xmm1,%xmm1
15105  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15106  DB  15,88,202                           ; addps         %xmm2,%xmm1
15107  DB  72,173                              ; lods          %ds:(%rsi),%rax
15108  DB  15,40,21,224,60,0,0                 ; movaps        0x3ce0(%rip),%xmm2        # 3e10 <_sk_callback_sse2+0xc5>
15109  DB  15,87,219                           ; xorps         %xmm3,%xmm3
15110  DB  15,87,228                           ; xorps         %xmm4,%xmm4
15111  DB  15,87,237                           ; xorps         %xmm5,%xmm5
15112  DB  15,87,246                           ; xorps         %xmm6,%xmm6
15113  DB  15,87,255                           ; xorps         %xmm7,%xmm7
15114  DB  255,224                             ; jmpq          *%rax
15115
15116PUBLIC _sk_constant_color_sse2
15117_sk_constant_color_sse2 LABEL PROC
15118  DB  72,173                              ; lods          %ds:(%rsi),%rax
15119  DB  243,15,16,0                         ; movss         (%rax),%xmm0
15120  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
15121  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
15122  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
15123  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
15124  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
15125  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
15126  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
15127  DB  72,173                              ; lods          %ds:(%rsi),%rax
15128  DB  255,224                             ; jmpq          *%rax
15129
15130PUBLIC _sk_clear_sse2
15131_sk_clear_sse2 LABEL PROC
15132  DB  72,173                              ; lods          %ds:(%rsi),%rax
15133  DB  15,87,192                           ; xorps         %xmm0,%xmm0
15134  DB  15,87,201                           ; xorps         %xmm1,%xmm1
15135  DB  15,87,210                           ; xorps         %xmm2,%xmm2
15136  DB  15,87,219                           ; xorps         %xmm3,%xmm3
15137  DB  255,224                             ; jmpq          *%rax
15138
15139PUBLIC _sk_srcatop_sse2
15140_sk_srcatop_sse2 LABEL PROC
15141  DB  15,89,199                           ; mulps         %xmm7,%xmm0
15142  DB  68,15,40,5,155,60,0,0               ; movaps        0x3c9b(%rip),%xmm8        # 3e20 <_sk_callback_sse2+0xd5>
15143  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
15144  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15145  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
15146  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
15147  DB  15,89,207                           ; mulps         %xmm7,%xmm1
15148  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15149  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15150  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
15151  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15152  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15153  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
15154  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
15155  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15156  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15157  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
15158  DB  72,173                              ; lods          %ds:(%rsi),%rax
15159  DB  255,224                             ; jmpq          *%rax
15160
15161PUBLIC _sk_dstatop_sse2
15162_sk_dstatop_sse2 LABEL PROC
15163  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
15164  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
15165  DB  68,15,40,13,94,60,0,0               ; movaps        0x3c5e(%rip),%xmm9        # 3e30 <_sk_callback_sse2+0xe5>
15166  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
15167  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
15168  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
15169  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
15170  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
15171  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
15172  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
15173  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
15174  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
15175  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
15176  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
15177  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
15178  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15179  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
15180  DB  72,173                              ; lods          %ds:(%rsi),%rax
15181  DB  255,224                             ; jmpq          *%rax
15182
15183PUBLIC _sk_srcin_sse2
15184_sk_srcin_sse2 LABEL PROC
15185  DB  15,89,199                           ; mulps         %xmm7,%xmm0
15186  DB  15,89,207                           ; mulps         %xmm7,%xmm1
15187  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15188  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15189  DB  72,173                              ; lods          %ds:(%rsi),%rax
15190  DB  255,224                             ; jmpq          *%rax
15191
15192PUBLIC _sk_dstin_sse2
15193_sk_dstin_sse2 LABEL PROC
15194  DB  15,40,195                           ; movaps        %xmm3,%xmm0
15195  DB  15,89,196                           ; mulps         %xmm4,%xmm0
15196  DB  15,40,203                           ; movaps        %xmm3,%xmm1
15197  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15198  DB  15,40,211                           ; movaps        %xmm3,%xmm2
15199  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15200  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15201  DB  72,173                              ; lods          %ds:(%rsi),%rax
15202  DB  255,224                             ; jmpq          *%rax
15203
15204PUBLIC _sk_srcout_sse2
15205_sk_srcout_sse2 LABEL PROC
15206  DB  68,15,40,5,2,60,0,0                 ; movaps        0x3c02(%rip),%xmm8        # 3e40 <_sk_callback_sse2+0xf5>
15207  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
15208  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15209  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15210  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15211  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
15212  DB  72,173                              ; lods          %ds:(%rsi),%rax
15213  DB  255,224                             ; jmpq          *%rax
15214
15215PUBLIC _sk_dstout_sse2
15216_sk_dstout_sse2 LABEL PROC
15217  DB  68,15,40,5,242,59,0,0               ; movaps        0x3bf2(%rip),%xmm8        # 3e50 <_sk_callback_sse2+0x105>
15218  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
15219  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
15220  DB  15,89,196                           ; mulps         %xmm4,%xmm0
15221  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15222  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15223  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15224  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15225  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15226  DB  72,173                              ; lods          %ds:(%rsi),%rax
15227  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
15228  DB  255,224                             ; jmpq          *%rax
15229
15230PUBLIC _sk_srcover_sse2
15231_sk_srcover_sse2 LABEL PROC
15232  DB  68,15,40,5,213,59,0,0               ; movaps        0x3bd5(%rip),%xmm8        # 3e60 <_sk_callback_sse2+0x115>
15233  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
15234  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15235  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
15236  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
15237  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15238  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15239  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
15240  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15241  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
15242  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
15243  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15244  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
15245  DB  72,173                              ; lods          %ds:(%rsi),%rax
15246  DB  255,224                             ; jmpq          *%rax
15247
15248PUBLIC _sk_dstover_sse2
15249_sk_dstover_sse2 LABEL PROC
15250  DB  68,15,40,5,169,59,0,0               ; movaps        0x3ba9(%rip),%xmm8        # 3e70 <_sk_callback_sse2+0x125>
15251  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
15252  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15253  DB  15,88,196                           ; addps         %xmm4,%xmm0
15254  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15255  DB  15,88,205                           ; addps         %xmm5,%xmm1
15256  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15257  DB  15,88,214                           ; addps         %xmm6,%xmm2
15258  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
15259  DB  15,88,223                           ; addps         %xmm7,%xmm3
15260  DB  72,173                              ; lods          %ds:(%rsi),%rax
15261  DB  255,224                             ; jmpq          *%rax
15262
15263PUBLIC _sk_modulate_sse2
15264_sk_modulate_sse2 LABEL PROC
15265  DB  15,89,196                           ; mulps         %xmm4,%xmm0
15266  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15267  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15268  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15269  DB  72,173                              ; lods          %ds:(%rsi),%rax
15270  DB  255,224                             ; jmpq          *%rax
15271
15272PUBLIC _sk_multiply_sse2
15273_sk_multiply_sse2 LABEL PROC
15274  DB  68,15,40,5,125,59,0,0               ; movaps        0x3b7d(%rip),%xmm8        # 3e80 <_sk_callback_sse2+0x135>
15275  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15276  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
15277  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
15278  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
15279  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
15280  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
15281  DB  68,15,89,220                        ; mulps         %xmm4,%xmm11
15282  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
15283  DB  15,89,196                           ; mulps         %xmm4,%xmm0
15284  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
15285  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
15286  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
15287  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
15288  DB  68,15,89,221                        ; mulps         %xmm5,%xmm11
15289  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
15290  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15291  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
15292  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
15293  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
15294  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
15295  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
15296  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
15297  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15298  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
15299  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
15300  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15301  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
15302  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15303  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
15304  DB  72,173                              ; lods          %ds:(%rsi),%rax
15305  DB  255,224                             ; jmpq          *%rax
15306
15307PUBLIC _sk_plus__sse2
15308_sk_plus__sse2 LABEL PROC
15309  DB  15,88,196                           ; addps         %xmm4,%xmm0
15310  DB  15,88,205                           ; addps         %xmm5,%xmm1
15311  DB  15,88,214                           ; addps         %xmm6,%xmm2
15312  DB  15,88,223                           ; addps         %xmm7,%xmm3
15313  DB  72,173                              ; lods          %ds:(%rsi),%rax
15314  DB  255,224                             ; jmpq          *%rax
15315
15316PUBLIC _sk_screen_sse2
15317_sk_screen_sse2 LABEL PROC
15318  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15319  DB  68,15,88,196                        ; addps         %xmm4,%xmm8
15320  DB  15,89,196                           ; mulps         %xmm4,%xmm0
15321  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
15322  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
15323  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
15324  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15325  DB  68,15,92,201                        ; subps         %xmm1,%xmm9
15326  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
15327  DB  68,15,88,214                        ; addps         %xmm6,%xmm10
15328  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15329  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
15330  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
15331  DB  68,15,88,223                        ; addps         %xmm7,%xmm11
15332  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15333  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
15334  DB  72,173                              ; lods          %ds:(%rsi),%rax
15335  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
15336  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
15337  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
15338  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
15339  DB  255,224                             ; jmpq          *%rax
15340
15341PUBLIC _sk_xor__sse2
15342_sk_xor__sse2 LABEL PROC
15343  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
15344  DB  15,40,29,174,58,0,0                 ; movaps        0x3aae(%rip),%xmm3        # 3e90 <_sk_callback_sse2+0x145>
15345  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15346  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
15347  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
15348  DB  65,15,92,216                        ; subps         %xmm8,%xmm3
15349  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
15350  DB  68,15,89,212                        ; mulps         %xmm4,%xmm10
15351  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
15352  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
15353  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
15354  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
15355  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
15356  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
15357  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
15358  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
15359  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
15360  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15361  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15362  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
15363  DB  72,173                              ; lods          %ds:(%rsi),%rax
15364  DB  255,224                             ; jmpq          *%rax
15365
15366PUBLIC _sk_darken_sse2
15367_sk_darken_sse2 LABEL PROC
15368  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
15369  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15370  DB  15,88,196                           ; addps         %xmm4,%xmm0
15371  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
15372  DB  15,40,203                           ; movaps        %xmm3,%xmm1
15373  DB  15,89,204                           ; mulps         %xmm4,%xmm1
15374  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
15375  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
15376  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15377  DB  15,88,205                           ; addps         %xmm5,%xmm1
15378  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15379  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15380  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15381  DB  69,15,95,193                        ; maxps         %xmm9,%xmm8
15382  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
15383  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
15384  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
15385  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15386  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15387  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
15388  DB  65,15,95,209                        ; maxps         %xmm9,%xmm2
15389  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
15390  DB  15,40,21,25,58,0,0                  ; movaps        0x3a19(%rip),%xmm2        # 3ea0 <_sk_callback_sse2+0x155>
15391  DB  15,92,211                           ; subps         %xmm3,%xmm2
15392  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15393  DB  15,88,218                           ; addps         %xmm2,%xmm3
15394  DB  72,173                              ; lods          %ds:(%rsi),%rax
15395  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15396  DB  255,224                             ; jmpq          *%rax
15397
15398PUBLIC _sk_lighten_sse2
15399_sk_lighten_sse2 LABEL PROC
15400  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
15401  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15402  DB  15,88,196                           ; addps         %xmm4,%xmm0
15403  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
15404  DB  15,40,203                           ; movaps        %xmm3,%xmm1
15405  DB  15,89,204                           ; mulps         %xmm4,%xmm1
15406  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
15407  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
15408  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15409  DB  15,88,205                           ; addps         %xmm5,%xmm1
15410  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15411  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15412  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15413  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
15414  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
15415  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
15416  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
15417  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15418  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15419  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
15420  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
15421  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
15422  DB  15,40,21,190,57,0,0                 ; movaps        0x39be(%rip),%xmm2        # 3eb0 <_sk_callback_sse2+0x165>
15423  DB  15,92,211                           ; subps         %xmm3,%xmm2
15424  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15425  DB  15,88,218                           ; addps         %xmm2,%xmm3
15426  DB  72,173                              ; lods          %ds:(%rsi),%rax
15427  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15428  DB  255,224                             ; jmpq          *%rax
15429
15430PUBLIC _sk_difference_sse2
15431_sk_difference_sse2 LABEL PROC
15432  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
15433  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15434  DB  15,88,196                           ; addps         %xmm4,%xmm0
15435  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
15436  DB  15,40,203                           ; movaps        %xmm3,%xmm1
15437  DB  15,89,204                           ; mulps         %xmm4,%xmm1
15438  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
15439  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
15440  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
15441  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15442  DB  15,88,205                           ; addps         %xmm5,%xmm1
15443  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15444  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15445  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15446  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
15447  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
15448  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
15449  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
15450  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
15451  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15452  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15453  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
15454  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
15455  DB  15,88,210                           ; addps         %xmm2,%xmm2
15456  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
15457  DB  15,40,21,88,57,0,0                  ; movaps        0x3958(%rip),%xmm2        # 3ec0 <_sk_callback_sse2+0x175>
15458  DB  15,92,211                           ; subps         %xmm3,%xmm2
15459  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15460  DB  15,88,218                           ; addps         %xmm2,%xmm3
15461  DB  72,173                              ; lods          %ds:(%rsi),%rax
15462  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15463  DB  255,224                             ; jmpq          *%rax
15464
15465PUBLIC _sk_exclusion_sse2
15466_sk_exclusion_sse2 LABEL PROC
15467  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15468  DB  15,88,196                           ; addps         %xmm4,%xmm0
15469  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
15470  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
15471  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
15472  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
15473  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
15474  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15475  DB  15,88,201                           ; addps         %xmm1,%xmm1
15476  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
15477  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
15478  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
15479  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15480  DB  15,88,210                           ; addps         %xmm2,%xmm2
15481  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
15482  DB  15,40,13,25,57,0,0                  ; movaps        0x3919(%rip),%xmm1        # 3ed0 <_sk_callback_sse2+0x185>
15483  DB  15,92,203                           ; subps         %xmm3,%xmm1
15484  DB  15,89,207                           ; mulps         %xmm7,%xmm1
15485  DB  15,88,217                           ; addps         %xmm1,%xmm3
15486  DB  72,173                              ; lods          %ds:(%rsi),%rax
15487  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15488  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
15489  DB  255,224                             ; jmpq          *%rax
15490
15491PUBLIC _sk_colorburn_sse2
15492_sk_colorburn_sse2 LABEL PROC
15493  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15494  DB  68,15,40,21,8,57,0,0                ; movaps        0x3908(%rip),%xmm10        # 3ee0 <_sk_callback_sse2+0x195>
15495  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
15496  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
15497  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
15498  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
15499  DB  15,40,199                           ; movaps        %xmm7,%xmm0
15500  DB  15,92,196                           ; subps         %xmm4,%xmm0
15501  DB  15,89,195                           ; mulps         %xmm3,%xmm0
15502  DB  65,15,94,192                        ; divps         %xmm8,%xmm0
15503  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
15504  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
15505  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
15506  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
15507  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
15508  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
15509  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
15510  DB  15,88,196                           ; addps         %xmm4,%xmm0
15511  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
15512  DB  69,15,40,224                        ; movaps        %xmm8,%xmm12
15513  DB  69,15,194,227,0                     ; cmpeqps       %xmm11,%xmm12
15514  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
15515  DB  69,15,84,196                        ; andps         %xmm12,%xmm8
15516  DB  69,15,85,229                        ; andnps        %xmm13,%xmm12
15517  DB  69,15,40,234                        ; movaps        %xmm10,%xmm13
15518  DB  68,15,89,236                        ; mulps         %xmm4,%xmm13
15519  DB  69,15,86,224                        ; orps          %xmm8,%xmm12
15520  DB  68,15,40,196                        ; movaps        %xmm4,%xmm8
15521  DB  68,15,194,199,0                     ; cmpeqps       %xmm7,%xmm8
15522  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
15523  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
15524  DB  69,15,85,196                        ; andnps        %xmm12,%xmm8
15525  DB  65,15,86,192                        ; orps          %xmm8,%xmm0
15526  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
15527  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
15528  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
15529  DB  68,15,92,229                        ; subps         %xmm5,%xmm12
15530  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
15531  DB  68,15,94,225                        ; divps         %xmm1,%xmm12
15532  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
15533  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
15534  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
15535  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
15536  DB  68,15,40,233                        ; movaps        %xmm1,%xmm13
15537  DB  69,15,194,235,0                     ; cmpeqps       %xmm11,%xmm13
15538  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
15539  DB  69,15,88,224                        ; addps         %xmm8,%xmm12
15540  DB  65,15,84,205                        ; andps         %xmm13,%xmm1
15541  DB  69,15,85,236                        ; andnps        %xmm12,%xmm13
15542  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
15543  DB  68,15,86,233                        ; orps          %xmm1,%xmm13
15544  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
15545  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15546  DB  68,15,88,233                        ; addps         %xmm1,%xmm13
15547  DB  15,40,205                           ; movaps        %xmm5,%xmm1
15548  DB  15,194,207,0                        ; cmpeqps       %xmm7,%xmm1
15549  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
15550  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
15551  DB  68,15,86,193                        ; orps          %xmm1,%xmm8
15552  DB  15,40,207                           ; movaps        %xmm7,%xmm1
15553  DB  15,92,206                           ; subps         %xmm6,%xmm1
15554  DB  15,89,203                           ; mulps         %xmm3,%xmm1
15555  DB  15,94,202                           ; divps         %xmm2,%xmm1
15556  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
15557  DB  68,15,93,225                        ; minps         %xmm1,%xmm12
15558  DB  15,40,207                           ; movaps        %xmm7,%xmm1
15559  DB  65,15,92,204                        ; subps         %xmm12,%xmm1
15560  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
15561  DB  68,15,194,218,0                     ; cmpeqps       %xmm2,%xmm11
15562  DB  15,89,203                           ; mulps         %xmm3,%xmm1
15563  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
15564  DB  65,15,84,211                        ; andps         %xmm11,%xmm2
15565  DB  68,15,85,217                        ; andnps        %xmm1,%xmm11
15566  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
15567  DB  68,15,86,218                        ; orps          %xmm2,%xmm11
15568  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
15569  DB  15,89,206                           ; mulps         %xmm6,%xmm1
15570  DB  68,15,88,217                        ; addps         %xmm1,%xmm11
15571  DB  15,40,206                           ; movaps        %xmm6,%xmm1
15572  DB  15,194,207,0                        ; cmpeqps       %xmm7,%xmm1
15573  DB  68,15,84,201                        ; andps         %xmm1,%xmm9
15574  DB  65,15,85,203                        ; andnps        %xmm11,%xmm1
15575  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
15576  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
15577  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
15578  DB  72,173                              ; lods          %ds:(%rsi),%rax
15579  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15580  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
15581  DB  255,224                             ; jmpq          *%rax
15582
15583PUBLIC _sk_colordodge_sse2
15584_sk_colordodge_sse2 LABEL PROC
15585  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15586  DB  68,15,40,21,190,55,0,0              ; movaps        0x37be(%rip),%xmm10        # 3ef0 <_sk_callback_sse2+0x1a5>
15587  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
15588  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
15589  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
15590  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
15591  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
15592  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
15593  DB  15,40,195                           ; movaps        %xmm3,%xmm0
15594  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
15595  DB  68,15,94,192                        ; divps         %xmm0,%xmm8
15596  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
15597  DB  15,40,199                           ; movaps        %xmm7,%xmm0
15598  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
15599  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
15600  DB  68,15,194,243,0                     ; cmpeqps       %xmm3,%xmm14
15601  DB  15,89,195                           ; mulps         %xmm3,%xmm0
15602  DB  65,15,88,196                        ; addps         %xmm12,%xmm0
15603  DB  69,15,84,206                        ; andps         %xmm14,%xmm9
15604  DB  68,15,85,240                        ; andnps        %xmm0,%xmm14
15605  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
15606  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
15607  DB  15,88,196                           ; addps         %xmm4,%xmm0
15608  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
15609  DB  69,15,86,241                        ; orps          %xmm9,%xmm14
15610  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
15611  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
15612  DB  69,15,88,241                        ; addps         %xmm9,%xmm14
15613  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
15614  DB  69,15,194,200,0                     ; cmpeqps       %xmm8,%xmm9
15615  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
15616  DB  69,15,85,206                        ; andnps        %xmm14,%xmm9
15617  DB  65,15,86,193                        ; orps          %xmm9,%xmm0
15618  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15619  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15620  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
15621  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
15622  DB  69,15,94,204                        ; divps         %xmm12,%xmm9
15623  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
15624  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
15625  DB  69,15,93,233                        ; minps         %xmm9,%xmm13
15626  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
15627  DB  68,15,194,243,0                     ; cmpeqps       %xmm3,%xmm14
15628  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
15629  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
15630  DB  65,15,84,206                        ; andps         %xmm14,%xmm1
15631  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
15632  DB  69,15,40,204                        ; movaps        %xmm12,%xmm9
15633  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
15634  DB  68,15,86,241                        ; orps          %xmm1,%xmm14
15635  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
15636  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15637  DB  68,15,88,241                        ; addps         %xmm1,%xmm14
15638  DB  15,40,205                           ; movaps        %xmm5,%xmm1
15639  DB  65,15,194,200,0                     ; cmpeqps       %xmm8,%xmm1
15640  DB  68,15,84,201                        ; andps         %xmm1,%xmm9
15641  DB  65,15,85,206                        ; andnps        %xmm14,%xmm1
15642  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
15643  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
15644  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
15645  DB  15,40,203                           ; movaps        %xmm3,%xmm1
15646  DB  15,92,202                           ; subps         %xmm2,%xmm1
15647  DB  68,15,94,225                        ; divps         %xmm1,%xmm12
15648  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
15649  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
15650  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
15651  DB  15,40,202                           ; movaps        %xmm2,%xmm1
15652  DB  15,194,203,0                        ; cmpeqps       %xmm3,%xmm1
15653  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
15654  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
15655  DB  15,84,209                           ; andps         %xmm1,%xmm2
15656  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
15657  DB  15,86,202                           ; orps          %xmm2,%xmm1
15658  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
15659  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15660  DB  15,88,202                           ; addps         %xmm2,%xmm1
15661  DB  68,15,194,198,0                     ; cmpeqps       %xmm6,%xmm8
15662  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
15663  DB  69,15,84,216                        ; andps         %xmm8,%xmm11
15664  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
15665  DB  69,15,86,195                        ; orps          %xmm11,%xmm8
15666  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
15667  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
15668  DB  72,173                              ; lods          %ds:(%rsi),%rax
15669  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
15670  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15671  DB  255,224                             ; jmpq          *%rax
15672
15673PUBLIC _sk_hardlight_sse2
15674_sk_hardlight_sse2 LABEL PROC
15675  DB  72,131,236,24                       ; sub           $0x18,%rsp
15676  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
15677  DB  15,40,245                           ; movaps        %xmm5,%xmm6
15678  DB  15,40,236                           ; movaps        %xmm4,%xmm5
15679  DB  68,15,40,29,112,54,0,0              ; movaps        0x3670(%rip),%xmm11        # 3f00 <_sk_callback_sse2+0x1b5>
15680  DB  69,15,40,211                        ; movaps        %xmm11,%xmm10
15681  DB  68,15,92,215                        ; subps         %xmm7,%xmm10
15682  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
15683  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
15684  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
15685  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
15686  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15687  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
15688  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
15689  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
15690  DB  15,40,227                           ; movaps        %xmm3,%xmm4
15691  DB  15,89,231                           ; mulps         %xmm7,%xmm4
15692  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
15693  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
15694  DB  68,15,40,255                        ; movaps        %xmm7,%xmm15
15695  DB  68,15,92,253                        ; subps         %xmm5,%xmm15
15696  DB  69,15,89,248                        ; mulps         %xmm8,%xmm15
15697  DB  69,15,88,255                        ; addps         %xmm15,%xmm15
15698  DB  68,15,40,228                        ; movaps        %xmm4,%xmm12
15699  DB  69,15,92,231                        ; subps         %xmm15,%xmm12
15700  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15701  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
15702  DB  68,15,194,195,2                     ; cmpleps       %xmm3,%xmm8
15703  DB  15,89,197                           ; mulps         %xmm5,%xmm0
15704  DB  15,88,192                           ; addps         %xmm0,%xmm0
15705  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
15706  DB  69,15,85,196                        ; andnps        %xmm12,%xmm8
15707  DB  68,15,86,192                        ; orps          %xmm0,%xmm8
15708  DB  69,15,40,251                        ; movaps        %xmm11,%xmm15
15709  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
15710  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
15711  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
15712  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
15713  DB  15,89,193                           ; mulps         %xmm1,%xmm0
15714  DB  68,15,89,254                        ; mulps         %xmm6,%xmm15
15715  DB  68,15,88,248                        ; addps         %xmm0,%xmm15
15716  DB  15,40,195                           ; movaps        %xmm3,%xmm0
15717  DB  15,92,193                           ; subps         %xmm1,%xmm0
15718  DB  68,15,92,238                        ; subps         %xmm6,%xmm13
15719  DB  68,15,89,232                        ; mulps         %xmm0,%xmm13
15720  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
15721  DB  15,40,196                           ; movaps        %xmm4,%xmm0
15722  DB  65,15,92,197                        ; subps         %xmm13,%xmm0
15723  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
15724  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
15725  DB  68,15,194,203,2                     ; cmpleps       %xmm3,%xmm9
15726  DB  15,89,206                           ; mulps         %xmm6,%xmm1
15727  DB  15,88,201                           ; addps         %xmm1,%xmm1
15728  DB  65,15,84,201                        ; andps         %xmm9,%xmm1
15729  DB  68,15,85,200                        ; andnps        %xmm0,%xmm9
15730  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
15731  DB  69,15,88,207                        ; addps         %xmm15,%xmm9
15732  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
15733  DB  68,15,40,44,36                      ; movaps        (%rsp),%xmm13
15734  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
15735  DB  69,15,88,226                        ; addps         %xmm10,%xmm12
15736  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
15737  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
15738  DB  68,15,194,211,2                     ; cmpleps       %xmm3,%xmm10
15739  DB  15,40,195                           ; movaps        %xmm3,%xmm0
15740  DB  15,92,194                           ; subps         %xmm2,%xmm0
15741  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
15742  DB  15,88,210                           ; addps         %xmm2,%xmm2
15743  DB  69,15,92,245                        ; subps         %xmm13,%xmm14
15744  DB  68,15,89,240                        ; mulps         %xmm0,%xmm14
15745  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
15746  DB  65,15,92,230                        ; subps         %xmm14,%xmm4
15747  DB  65,15,84,210                        ; andps         %xmm10,%xmm2
15748  DB  68,15,85,212                        ; andnps        %xmm4,%xmm10
15749  DB  68,15,86,210                        ; orps          %xmm2,%xmm10
15750  DB  69,15,88,212                        ; addps         %xmm12,%xmm10
15751  DB  65,15,88,219                        ; addps         %xmm11,%xmm3
15752  DB  72,173                              ; lods          %ds:(%rsi),%rax
15753  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
15754  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
15755  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
15756  DB  15,40,229                           ; movaps        %xmm5,%xmm4
15757  DB  15,40,238                           ; movaps        %xmm6,%xmm5
15758  DB  65,15,40,245                        ; movaps        %xmm13,%xmm6
15759  DB  72,131,196,24                       ; add           $0x18,%rsp
15760  DB  255,224                             ; jmpq          *%rax
15761
15762PUBLIC _sk_overlay_sse2
15763_sk_overlay_sse2 LABEL PROC
15764  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
15765  DB  68,15,40,232                        ; movaps        %xmm0,%xmm13
15766  DB  68,15,40,13,59,53,0,0               ; movaps        0x353b(%rip),%xmm9        # 3f10 <_sk_callback_sse2+0x1c5>
15767  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
15768  DB  68,15,92,215                        ; subps         %xmm7,%xmm10
15769  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
15770  DB  69,15,89,221                        ; mulps         %xmm13,%xmm11
15771  DB  68,15,92,203                        ; subps         %xmm3,%xmm9
15772  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
15773  DB  15,89,196                           ; mulps         %xmm4,%xmm0
15774  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
15775  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
15776  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
15777  DB  68,15,89,236                        ; mulps         %xmm4,%xmm13
15778  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
15779  DB  68,15,92,244                        ; subps         %xmm4,%xmm14
15780  DB  15,40,204                           ; movaps        %xmm4,%xmm1
15781  DB  15,88,201                           ; addps         %xmm1,%xmm1
15782  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
15783  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
15784  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
15785  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
15786  DB  69,15,89,244                        ; mulps         %xmm12,%xmm14
15787  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
15788  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
15789  DB  69,15,92,230                        ; subps         %xmm14,%xmm12
15790  DB  68,15,84,233                        ; andps         %xmm1,%xmm13
15791  DB  65,15,85,204                        ; andnps        %xmm12,%xmm1
15792  DB  65,15,86,205                        ; orps          %xmm13,%xmm1
15793  DB  15,88,193                           ; addps         %xmm1,%xmm0
15794  DB  69,15,40,226                        ; movaps        %xmm10,%xmm12
15795  DB  69,15,89,224                        ; mulps         %xmm8,%xmm12
15796  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
15797  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15798  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
15799  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
15800  DB  69,15,92,224                        ; subps         %xmm8,%xmm12
15801  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
15802  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
15803  DB  68,15,92,237                        ; subps         %xmm5,%xmm13
15804  DB  68,15,40,245                        ; movaps        %xmm5,%xmm14
15805  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
15806  DB  68,15,194,247,2                     ; cmpleps       %xmm7,%xmm14
15807  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
15808  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
15809  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
15810  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
15811  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
15812  DB  69,15,84,198                        ; andps         %xmm14,%xmm8
15813  DB  69,15,85,244                        ; andnps        %xmm12,%xmm14
15814  DB  69,15,86,240                        ; orps          %xmm8,%xmm14
15815  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
15816  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
15817  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
15818  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
15819  DB  69,15,88,194                        ; addps         %xmm10,%xmm8
15820  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
15821  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
15822  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15823  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
15824  DB  68,15,92,230                        ; subps         %xmm6,%xmm12
15825  DB  68,15,40,238                        ; movaps        %xmm6,%xmm13
15826  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
15827  DB  68,15,194,239,2                     ; cmpleps       %xmm7,%xmm13
15828  DB  15,88,210                           ; addps         %xmm2,%xmm2
15829  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
15830  DB  69,15,88,228                        ; addps         %xmm12,%xmm12
15831  DB  69,15,92,220                        ; subps         %xmm12,%xmm11
15832  DB  65,15,84,213                        ; andps         %xmm13,%xmm2
15833  DB  69,15,85,235                        ; andnps        %xmm11,%xmm13
15834  DB  68,15,86,234                        ; orps          %xmm2,%xmm13
15835  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
15836  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
15837  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
15838  DB  72,173                              ; lods          %ds:(%rsi),%rax
15839  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15840  DB  255,224                             ; jmpq          *%rax
15841
15842PUBLIC _sk_softlight_sse2
15843_sk_softlight_sse2 LABEL PROC
15844  DB  72,131,236,40                       ; sub           $0x28,%rsp
15845  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
15846  DB  15,40,245                           ; movaps        %xmm5,%xmm6
15847  DB  15,40,236                           ; movaps        %xmm4,%xmm5
15848  DB  15,41,84,36,16                      ; movaps        %xmm2,0x10(%rsp)
15849  DB  15,40,209                           ; movaps        %xmm1,%xmm2
15850  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15851  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
15852  DB  68,15,194,231,1                     ; cmpltps       %xmm7,%xmm12
15853  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
15854  DB  68,15,94,215                        ; divps         %xmm7,%xmm10
15855  DB  69,15,84,212                        ; andps         %xmm12,%xmm10
15856  DB  68,15,40,13,245,51,0,0              ; movaps        0x33f5(%rip),%xmm9        # 3f20 <_sk_callback_sse2+0x1d5>
15857  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
15858  DB  69,15,92,250                        ; subps         %xmm10,%xmm15
15859  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
15860  DB  69,15,40,234                        ; movaps        %xmm10,%xmm13
15861  DB  65,15,82,194                        ; rsqrtps       %xmm10,%xmm0
15862  DB  15,83,200                           ; rcpps         %xmm0,%xmm1
15863  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
15864  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
15865  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
15866  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
15867  DB  15,89,192                           ; mulps         %xmm0,%xmm0
15868  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
15869  DB  68,15,40,53,207,51,0,0              ; movaps        0x33cf(%rip),%xmm14        # 3f30 <_sk_callback_sse2+0x1e5>
15870  DB  69,15,88,222                        ; addps         %xmm14,%xmm11
15871  DB  68,15,89,216                        ; mulps         %xmm0,%xmm11
15872  DB  68,15,40,21,207,51,0,0              ; movaps        0x33cf(%rip),%xmm10        # 3f40 <_sk_callback_sse2+0x1f5>
15873  DB  69,15,89,234                        ; mulps         %xmm10,%xmm13
15874  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
15875  DB  15,88,228                           ; addps         %xmm4,%xmm4
15876  DB  15,88,228                           ; addps         %xmm4,%xmm4
15877  DB  15,194,231,2                        ; cmpleps       %xmm7,%xmm4
15878  DB  68,15,84,236                        ; andps         %xmm4,%xmm13
15879  DB  15,85,225                           ; andnps        %xmm1,%xmm4
15880  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
15881  DB  15,88,192                           ; addps         %xmm0,%xmm0
15882  DB  65,15,86,229                        ; orps          %xmm13,%xmm4
15883  DB  15,40,200                           ; movaps        %xmm0,%xmm1
15884  DB  15,92,203                           ; subps         %xmm3,%xmm1
15885  DB  68,15,89,249                        ; mulps         %xmm1,%xmm15
15886  DB  15,89,207                           ; mulps         %xmm7,%xmm1
15887  DB  15,89,225                           ; mulps         %xmm1,%xmm4
15888  DB  15,40,203                           ; movaps        %xmm3,%xmm1
15889  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15890  DB  15,88,225                           ; addps         %xmm1,%xmm4
15891  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
15892  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
15893  DB  65,15,40,203                        ; movaps        %xmm11,%xmm1
15894  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15895  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
15896  DB  68,15,92,239                        ; subps         %xmm7,%xmm13
15897  DB  69,15,89,197                        ; mulps         %xmm13,%xmm8
15898  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
15899  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
15900  DB  68,15,89,253                        ; mulps         %xmm5,%xmm15
15901  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
15902  DB  68,15,84,248                        ; andps         %xmm0,%xmm15
15903  DB  15,85,196                           ; andnps        %xmm4,%xmm0
15904  DB  65,15,86,199                        ; orps          %xmm15,%xmm0
15905  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
15906  DB  68,15,40,198                        ; movaps        %xmm6,%xmm8
15907  DB  68,15,94,199                        ; divps         %xmm7,%xmm8
15908  DB  69,15,84,196                        ; andps         %xmm12,%xmm8
15909  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15910  DB  15,88,201                           ; addps         %xmm1,%xmm1
15911  DB  15,88,201                           ; addps         %xmm1,%xmm1
15912  DB  15,40,225                           ; movaps        %xmm1,%xmm4
15913  DB  15,89,228                           ; mulps         %xmm4,%xmm4
15914  DB  15,88,225                           ; addps         %xmm1,%xmm4
15915  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15916  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
15917  DB  15,89,204                           ; mulps         %xmm4,%xmm1
15918  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
15919  DB  69,15,92,248                        ; subps         %xmm8,%xmm15
15920  DB  65,15,82,224                        ; rsqrtps       %xmm8,%xmm4
15921  DB  15,83,228                           ; rcpps         %xmm4,%xmm4
15922  DB  65,15,92,224                        ; subps         %xmm8,%xmm4
15923  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
15924  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
15925  DB  15,40,206                           ; movaps        %xmm6,%xmm1
15926  DB  15,88,201                           ; addps         %xmm1,%xmm1
15927  DB  15,88,201                           ; addps         %xmm1,%xmm1
15928  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
15929  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
15930  DB  15,85,204                           ; andnps        %xmm4,%xmm1
15931  DB  65,15,86,200                        ; orps          %xmm8,%xmm1
15932  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
15933  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
15934  DB  65,15,40,224                        ; movaps        %xmm8,%xmm4
15935  DB  15,92,227                           ; subps         %xmm3,%xmm4
15936  DB  68,15,89,252                        ; mulps         %xmm4,%xmm15
15937  DB  15,89,231                           ; mulps         %xmm7,%xmm4
15938  DB  15,89,204                           ; mulps         %xmm4,%xmm1
15939  DB  15,40,227                           ; movaps        %xmm3,%xmm4
15940  DB  15,89,230                           ; mulps         %xmm6,%xmm4
15941  DB  15,88,204                           ; addps         %xmm4,%xmm1
15942  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
15943  DB  15,89,230                           ; mulps         %xmm6,%xmm4
15944  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
15945  DB  15,88,212                           ; addps         %xmm4,%xmm2
15946  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
15947  DB  68,15,89,254                        ; mulps         %xmm6,%xmm15
15948  DB  68,15,194,195,2                     ; cmpleps       %xmm3,%xmm8
15949  DB  69,15,84,248                        ; andps         %xmm8,%xmm15
15950  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
15951  DB  69,15,86,199                        ; orps          %xmm15,%xmm8
15952  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
15953  DB  68,15,40,60,36                      ; movaps        (%rsp),%xmm15
15954  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
15955  DB  15,94,207                           ; divps         %xmm7,%xmm1
15956  DB  65,15,84,204                        ; andps         %xmm12,%xmm1
15957  DB  68,15,92,201                        ; subps         %xmm1,%xmm9
15958  DB  68,15,88,241                        ; addps         %xmm1,%xmm14
15959  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
15960  DB  15,82,209                           ; rsqrtps       %xmm1,%xmm2
15961  DB  15,83,210                           ; rcpps         %xmm2,%xmm2
15962  DB  15,92,209                           ; subps         %xmm1,%xmm2
15963  DB  15,88,201                           ; addps         %xmm1,%xmm1
15964  DB  15,88,201                           ; addps         %xmm1,%xmm1
15965  DB  15,40,225                           ; movaps        %xmm1,%xmm4
15966  DB  15,89,228                           ; mulps         %xmm4,%xmm4
15967  DB  15,88,225                           ; addps         %xmm1,%xmm4
15968  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
15969  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
15970  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
15971  DB  15,88,201                           ; addps         %xmm1,%xmm1
15972  DB  15,88,201                           ; addps         %xmm1,%xmm1
15973  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
15974  DB  68,15,84,209                        ; andps         %xmm1,%xmm10
15975  DB  15,85,202                           ; andnps        %xmm2,%xmm1
15976  DB  15,40,84,36,16                      ; movaps        0x10(%rsp),%xmm2
15977  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
15978  DB  15,88,210                           ; addps         %xmm2,%xmm2
15979  DB  65,15,86,202                        ; orps          %xmm10,%xmm1
15980  DB  15,40,226                           ; movaps        %xmm2,%xmm4
15981  DB  15,92,227                           ; subps         %xmm3,%xmm4
15982  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
15983  DB  15,89,231                           ; mulps         %xmm7,%xmm4
15984  DB  15,89,204                           ; mulps         %xmm4,%xmm1
15985  DB  15,40,227                           ; movaps        %xmm3,%xmm4
15986  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
15987  DB  15,88,204                           ; addps         %xmm4,%xmm1
15988  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
15989  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
15990  DB  65,15,88,229                        ; addps         %xmm13,%xmm4
15991  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
15992  DB  69,15,89,207                        ; mulps         %xmm15,%xmm9
15993  DB  69,15,40,215                        ; movaps        %xmm15,%xmm10
15994  DB  15,194,211,2                        ; cmpleps       %xmm3,%xmm2
15995  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
15996  DB  15,85,209                           ; andnps        %xmm1,%xmm2
15997  DB  65,15,86,209                        ; orps          %xmm9,%xmm2
15998  DB  15,88,212                           ; addps         %xmm4,%xmm2
15999  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
16000  DB  65,15,88,219                        ; addps         %xmm11,%xmm3
16001  DB  72,173                              ; lods          %ds:(%rsi),%rax
16002  DB  15,40,229                           ; movaps        %xmm5,%xmm4
16003  DB  15,40,238                           ; movaps        %xmm6,%xmm5
16004  DB  65,15,40,242                        ; movaps        %xmm10,%xmm6
16005  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
16006  DB  72,131,196,40                       ; add           $0x28,%rsp
16007  DB  255,224                             ; jmpq          *%rax
16008
16009PUBLIC _sk_clamp_0_sse2
16010_sk_clamp_0_sse2 LABEL PROC
16011  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16012  DB  65,15,95,192                        ; maxps         %xmm8,%xmm0
16013  DB  65,15,95,200                        ; maxps         %xmm8,%xmm1
16014  DB  65,15,95,208                        ; maxps         %xmm8,%xmm2
16015  DB  65,15,95,216                        ; maxps         %xmm8,%xmm3
16016  DB  72,173                              ; lods          %ds:(%rsi),%rax
16017  DB  255,224                             ; jmpq          *%rax
16018
16019PUBLIC _sk_clamp_1_sse2
16020_sk_clamp_1_sse2 LABEL PROC
16021  DB  68,15,40,5,219,49,0,0               ; movaps        0x31db(%rip),%xmm8        # 3f50 <_sk_callback_sse2+0x205>
16022  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
16023  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
16024  DB  65,15,93,208                        ; minps         %xmm8,%xmm2
16025  DB  65,15,93,216                        ; minps         %xmm8,%xmm3
16026  DB  72,173                              ; lods          %ds:(%rsi),%rax
16027  DB  255,224                             ; jmpq          *%rax
16028
16029PUBLIC _sk_clamp_a_sse2
16030_sk_clamp_a_sse2 LABEL PROC
16031  DB  15,93,29,208,49,0,0                 ; minps         0x31d0(%rip),%xmm3        # 3f60 <_sk_callback_sse2+0x215>
16032  DB  15,93,195                           ; minps         %xmm3,%xmm0
16033  DB  15,93,203                           ; minps         %xmm3,%xmm1
16034  DB  15,93,211                           ; minps         %xmm3,%xmm2
16035  DB  72,173                              ; lods          %ds:(%rsi),%rax
16036  DB  255,224                             ; jmpq          *%rax
16037
16038PUBLIC _sk_set_rgb_sse2
16039_sk_set_rgb_sse2 LABEL PROC
16040  DB  72,173                              ; lods          %ds:(%rsi),%rax
16041  DB  243,15,16,0                         ; movss         (%rax),%xmm0
16042  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
16043  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
16044  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
16045  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
16046  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16047  DB  72,173                              ; lods          %ds:(%rsi),%rax
16048  DB  255,224                             ; jmpq          *%rax
16049
16050PUBLIC _sk_swap_rb_sse2
16051_sk_swap_rb_sse2 LABEL PROC
16052  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16053  DB  72,173                              ; lods          %ds:(%rsi),%rax
16054  DB  15,40,194                           ; movaps        %xmm2,%xmm0
16055  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
16056  DB  255,224                             ; jmpq          *%rax
16057
16058PUBLIC _sk_swap_sse2
16059_sk_swap_sse2 LABEL PROC
16060  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
16061  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
16062  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
16063  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
16064  DB  72,173                              ; lods          %ds:(%rsi),%rax
16065  DB  15,40,196                           ; movaps        %xmm4,%xmm0
16066  DB  15,40,205                           ; movaps        %xmm5,%xmm1
16067  DB  15,40,214                           ; movaps        %xmm6,%xmm2
16068  DB  15,40,223                           ; movaps        %xmm7,%xmm3
16069  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
16070  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
16071  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
16072  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
16073  DB  255,224                             ; jmpq          *%rax
16074
16075PUBLIC _sk_move_src_dst_sse2
16076_sk_move_src_dst_sse2 LABEL PROC
16077  DB  72,173                              ; lods          %ds:(%rsi),%rax
16078  DB  15,40,224                           ; movaps        %xmm0,%xmm4
16079  DB  15,40,233                           ; movaps        %xmm1,%xmm5
16080  DB  15,40,242                           ; movaps        %xmm2,%xmm6
16081  DB  15,40,251                           ; movaps        %xmm3,%xmm7
16082  DB  255,224                             ; jmpq          *%rax
16083
16084PUBLIC _sk_move_dst_src_sse2
16085_sk_move_dst_src_sse2 LABEL PROC
16086  DB  72,173                              ; lods          %ds:(%rsi),%rax
16087  DB  15,40,196                           ; movaps        %xmm4,%xmm0
16088  DB  15,40,205                           ; movaps        %xmm5,%xmm1
16089  DB  15,40,214                           ; movaps        %xmm6,%xmm2
16090  DB  15,40,223                           ; movaps        %xmm7,%xmm3
16091  DB  255,224                             ; jmpq          *%rax
16092
16093PUBLIC _sk_premul_sse2
16094_sk_premul_sse2 LABEL PROC
16095  DB  15,89,195                           ; mulps         %xmm3,%xmm0
16096  DB  15,89,203                           ; mulps         %xmm3,%xmm1
16097  DB  15,89,211                           ; mulps         %xmm3,%xmm2
16098  DB  72,173                              ; lods          %ds:(%rsi),%rax
16099  DB  255,224                             ; jmpq          *%rax
16100
16101PUBLIC _sk_unpremul_sse2
16102_sk_unpremul_sse2 LABEL PROC
16103  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16104  DB  68,15,40,13,59,49,0,0               ; movaps        0x313b(%rip),%xmm9        # 3f70 <_sk_callback_sse2+0x225>
16105  DB  68,15,94,203                        ; divps         %xmm3,%xmm9
16106  DB  68,15,194,195,4                     ; cmpneqps      %xmm3,%xmm8
16107  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
16108  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16109  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16110  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16111  DB  72,173                              ; lods          %ds:(%rsi),%rax
16112  DB  255,224                             ; jmpq          *%rax
16113
16114PUBLIC _sk_from_srgb_sse2
16115_sk_from_srgb_sse2 LABEL PROC
16116  DB  68,15,40,5,38,49,0,0                ; movaps        0x3126(%rip),%xmm8        # 3f80 <_sk_callback_sse2+0x235>
16117  DB  68,15,40,232                        ; movaps        %xmm0,%xmm13
16118  DB  69,15,89,232                        ; mulps         %xmm8,%xmm13
16119  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
16120  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
16121  DB  68,15,40,13,30,49,0,0               ; movaps        0x311e(%rip),%xmm9        # 3f90 <_sk_callback_sse2+0x245>
16122  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
16123  DB  69,15,89,241                        ; mulps         %xmm9,%xmm14
16124  DB  68,15,40,21,30,49,0,0               ; movaps        0x311e(%rip),%xmm10        # 3fa0 <_sk_callback_sse2+0x255>
16125  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
16126  DB  69,15,89,243                        ; mulps         %xmm11,%xmm14
16127  DB  68,15,40,29,30,49,0,0               ; movaps        0x311e(%rip),%xmm11        # 3fb0 <_sk_callback_sse2+0x265>
16128  DB  69,15,88,243                        ; addps         %xmm11,%xmm14
16129  DB  68,15,40,37,34,49,0,0               ; movaps        0x3122(%rip),%xmm12        # 3fc0 <_sk_callback_sse2+0x275>
16130  DB  65,15,194,196,1                     ; cmpltps       %xmm12,%xmm0
16131  DB  68,15,84,232                        ; andps         %xmm0,%xmm13
16132  DB  65,15,85,198                        ; andnps        %xmm14,%xmm0
16133  DB  65,15,86,197                        ; orps          %xmm13,%xmm0
16134  DB  68,15,40,233                        ; movaps        %xmm1,%xmm13
16135  DB  69,15,89,232                        ; mulps         %xmm8,%xmm13
16136  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
16137  DB  69,15,89,246                        ; mulps         %xmm14,%xmm14
16138  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
16139  DB  69,15,89,249                        ; mulps         %xmm9,%xmm15
16140  DB  69,15,88,250                        ; addps         %xmm10,%xmm15
16141  DB  69,15,89,254                        ; mulps         %xmm14,%xmm15
16142  DB  69,15,88,251                        ; addps         %xmm11,%xmm15
16143  DB  65,15,194,204,1                     ; cmpltps       %xmm12,%xmm1
16144  DB  68,15,84,233                        ; andps         %xmm1,%xmm13
16145  DB  65,15,85,207                        ; andnps        %xmm15,%xmm1
16146  DB  65,15,86,205                        ; orps          %xmm13,%xmm1
16147  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
16148  DB  68,15,40,234                        ; movaps        %xmm2,%xmm13
16149  DB  69,15,89,237                        ; mulps         %xmm13,%xmm13
16150  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
16151  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
16152  DB  69,15,89,205                        ; mulps         %xmm13,%xmm9
16153  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
16154  DB  65,15,194,212,1                     ; cmpltps       %xmm12,%xmm2
16155  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
16156  DB  65,15,85,209                        ; andnps        %xmm9,%xmm2
16157  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
16158  DB  72,173                              ; lods          %ds:(%rsi),%rax
16159  DB  255,224                             ; jmpq          *%rax
16160
16161PUBLIC _sk_to_srgb_sse2
16162_sk_to_srgb_sse2 LABEL PROC
16163  DB  68,15,82,192                        ; rsqrtps       %xmm0,%xmm8
16164  DB  69,15,83,200                        ; rcpps         %xmm8,%xmm9
16165  DB  69,15,82,232                        ; rsqrtps       %xmm8,%xmm13
16166  DB  68,15,40,5,167,48,0,0               ; movaps        0x30a7(%rip),%xmm8        # 3fd0 <_sk_callback_sse2+0x285>
16167  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
16168  DB  69,15,89,240                        ; mulps         %xmm8,%xmm14
16169  DB  68,15,40,21,167,48,0,0              ; movaps        0x30a7(%rip),%xmm10        # 3fe0 <_sk_callback_sse2+0x295>
16170  DB  69,15,89,202                        ; mulps         %xmm10,%xmm9
16171  DB  68,15,40,29,171,48,0,0              ; movaps        0x30ab(%rip),%xmm11        # 3ff0 <_sk_callback_sse2+0x2a5>
16172  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
16173  DB  68,15,40,37,175,48,0,0              ; movaps        0x30af(%rip),%xmm12        # 4000 <_sk_callback_sse2+0x2b5>
16174  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
16175  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
16176  DB  68,15,40,13,175,48,0,0              ; movaps        0x30af(%rip),%xmm9        # 4010 <_sk_callback_sse2+0x2c5>
16177  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
16178  DB  69,15,93,253                        ; minps         %xmm13,%xmm15
16179  DB  68,15,40,45,175,48,0,0              ; movaps        0x30af(%rip),%xmm13        # 4020 <_sk_callback_sse2+0x2d5>
16180  DB  65,15,194,197,1                     ; cmpltps       %xmm13,%xmm0
16181  DB  68,15,84,240                        ; andps         %xmm0,%xmm14
16182  DB  65,15,85,199                        ; andnps        %xmm15,%xmm0
16183  DB  65,15,86,198                        ; orps          %xmm14,%xmm0
16184  DB  68,15,82,241                        ; rsqrtps       %xmm1,%xmm14
16185  DB  69,15,83,254                        ; rcpps         %xmm14,%xmm15
16186  DB  69,15,82,246                        ; rsqrtps       %xmm14,%xmm14
16187  DB  69,15,89,250                        ; mulps         %xmm10,%xmm15
16188  DB  69,15,88,251                        ; addps         %xmm11,%xmm15
16189  DB  69,15,89,244                        ; mulps         %xmm12,%xmm14
16190  DB  69,15,88,247                        ; addps         %xmm15,%xmm14
16191  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
16192  DB  69,15,93,254                        ; minps         %xmm14,%xmm15
16193  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
16194  DB  69,15,89,240                        ; mulps         %xmm8,%xmm14
16195  DB  65,15,194,205,1                     ; cmpltps       %xmm13,%xmm1
16196  DB  68,15,84,241                        ; andps         %xmm1,%xmm14
16197  DB  65,15,85,207                        ; andnps        %xmm15,%xmm1
16198  DB  65,15,86,206                        ; orps          %xmm14,%xmm1
16199  DB  68,15,82,242                        ; rsqrtps       %xmm2,%xmm14
16200  DB  69,15,83,254                        ; rcpps         %xmm14,%xmm15
16201  DB  69,15,89,250                        ; mulps         %xmm10,%xmm15
16202  DB  69,15,88,251                        ; addps         %xmm11,%xmm15
16203  DB  69,15,82,214                        ; rsqrtps       %xmm14,%xmm10
16204  DB  69,15,89,212                        ; mulps         %xmm12,%xmm10
16205  DB  69,15,88,215                        ; addps         %xmm15,%xmm10
16206  DB  69,15,93,202                        ; minps         %xmm10,%xmm9
16207  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
16208  DB  65,15,194,213,1                     ; cmpltps       %xmm13,%xmm2
16209  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
16210  DB  65,15,85,209                        ; andnps        %xmm9,%xmm2
16211  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
16212  DB  72,173                              ; lods          %ds:(%rsi),%rax
16213  DB  255,224                             ; jmpq          *%rax
16214
16215PUBLIC _sk_rgb_to_hsl_sse2
16216_sk_rgb_to_hsl_sse2 LABEL PROC
16217  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
16218  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16219  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
16220  DB  69,15,95,209                        ; maxps         %xmm9,%xmm10
16221  DB  68,15,95,210                        ; maxps         %xmm2,%xmm10
16222  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
16223  DB  69,15,93,217                        ; minps         %xmm9,%xmm11
16224  DB  68,15,93,218                        ; minps         %xmm2,%xmm11
16225  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
16226  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
16227  DB  68,15,40,45,8,48,0,0                ; movaps        0x3008(%rip),%xmm13        # 4030 <_sk_callback_sse2+0x2e5>
16228  DB  68,15,94,233                        ; divps         %xmm1,%xmm13
16229  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
16230  DB  65,15,194,192,0                     ; cmpeqps       %xmm8,%xmm0
16231  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
16232  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
16233  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
16234  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
16235  DB  68,15,194,242,1                     ; cmpltps       %xmm2,%xmm14
16236  DB  68,15,84,53,238,47,0,0              ; andps         0x2fee(%rip),%xmm14        # 4040 <_sk_callback_sse2+0x2f5>
16237  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
16238  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
16239  DB  69,15,194,249,0                     ; cmpeqps       %xmm9,%xmm15
16240  DB  65,15,92,208                        ; subps         %xmm8,%xmm2
16241  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
16242  DB  68,15,40,37,225,47,0,0              ; movaps        0x2fe1(%rip),%xmm12        # 4050 <_sk_callback_sse2+0x305>
16243  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
16244  DB  69,15,92,193                        ; subps         %xmm9,%xmm8
16245  DB  69,15,89,197                        ; mulps         %xmm13,%xmm8
16246  DB  68,15,88,5,221,47,0,0               ; addps         0x2fdd(%rip),%xmm8        # 4060 <_sk_callback_sse2+0x315>
16247  DB  65,15,84,215                        ; andps         %xmm15,%xmm2
16248  DB  69,15,85,248                        ; andnps        %xmm8,%xmm15
16249  DB  68,15,86,250                        ; orps          %xmm2,%xmm15
16250  DB  68,15,84,240                        ; andps         %xmm0,%xmm14
16251  DB  65,15,85,199                        ; andnps        %xmm15,%xmm0
16252  DB  65,15,86,198                        ; orps          %xmm14,%xmm0
16253  DB  15,89,5,206,47,0,0                  ; mulps         0x2fce(%rip),%xmm0        # 4070 <_sk_callback_sse2+0x325>
16254  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
16255  DB  69,15,194,195,4                     ; cmpneqps      %xmm11,%xmm8
16256  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
16257  DB  69,15,92,226                        ; subps         %xmm10,%xmm12
16258  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16259  DB  68,15,40,13,193,47,0,0              ; movaps        0x2fc1(%rip),%xmm9        # 4080 <_sk_callback_sse2+0x335>
16260  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
16261  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
16262  DB  68,15,194,202,1                     ; cmpltps       %xmm2,%xmm9
16263  DB  69,15,92,227                        ; subps         %xmm11,%xmm12
16264  DB  69,15,84,225                        ; andps         %xmm9,%xmm12
16265  DB  69,15,85,202                        ; andnps        %xmm10,%xmm9
16266  DB  69,15,86,204                        ; orps          %xmm12,%xmm9
16267  DB  65,15,94,201                        ; divps         %xmm9,%xmm1
16268  DB  65,15,84,200                        ; andps         %xmm8,%xmm1
16269  DB  72,173                              ; lods          %ds:(%rsi),%rax
16270  DB  255,224                             ; jmpq          *%rax
16271
16272PUBLIC _sk_hsl_to_rgb_sse2
16273_sk_hsl_to_rgb_sse2 LABEL PROC
16274  DB  72,131,236,120                      ; sub           $0x78,%rsp
16275  DB  15,41,124,36,96                     ; movaps        %xmm7,0x60(%rsp)
16276  DB  15,41,116,36,80                     ; movaps        %xmm6,0x50(%rsp)
16277  DB  15,41,108,36,64                     ; movaps        %xmm5,0x40(%rsp)
16278  DB  15,41,100,36,48                     ; movaps        %xmm4,0x30(%rsp)
16279  DB  15,41,92,36,32                      ; movaps        %xmm3,0x20(%rsp)
16280  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
16281  DB  15,40,240                           ; movaps        %xmm0,%xmm6
16282  DB  68,15,40,13,124,47,0,0              ; movaps        0x2f7c(%rip),%xmm9        # 4090 <_sk_callback_sse2+0x345>
16283  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
16284  DB  69,15,194,211,2                     ; cmpleps       %xmm11,%xmm10
16285  DB  15,40,193                           ; movaps        %xmm1,%xmm0
16286  DB  15,87,219                           ; xorps         %xmm3,%xmm3
16287  DB  15,194,217,0                        ; cmpeqps       %xmm1,%xmm3
16288  DB  15,40,251                           ; movaps        %xmm3,%xmm7
16289  DB  15,41,60,36                         ; movaps        %xmm7,(%rsp)
16290  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
16291  DB  15,92,193                           ; subps         %xmm1,%xmm0
16292  DB  65,15,84,194                        ; andps         %xmm10,%xmm0
16293  DB  68,15,85,209                        ; andnps        %xmm1,%xmm10
16294  DB  68,15,86,208                        ; orps          %xmm0,%xmm10
16295  DB  68,15,41,92,36,16                   ; movaps        %xmm11,0x10(%rsp)
16296  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16297  DB  69,15,88,219                        ; addps         %xmm11,%xmm11
16298  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
16299  DB  15,40,5,70,47,0,0                   ; movaps        0x2f46(%rip),%xmm0        # 40a0 <_sk_callback_sse2+0x355>
16300  DB  15,88,198                           ; addps         %xmm6,%xmm0
16301  DB  243,15,91,200                       ; cvttps2dq     %xmm0,%xmm1
16302  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
16303  DB  15,40,216                           ; movaps        %xmm0,%xmm3
16304  DB  15,194,217,1                        ; cmpltps       %xmm1,%xmm3
16305  DB  15,84,29,62,47,0,0                  ; andps         0x2f3e(%rip),%xmm3        # 40b0 <_sk_callback_sse2+0x365>
16306  DB  15,92,203                           ; subps         %xmm3,%xmm1
16307  DB  15,92,193                           ; subps         %xmm1,%xmm0
16308  DB  68,15,40,45,64,47,0,0               ; movaps        0x2f40(%rip),%xmm13        # 40c0 <_sk_callback_sse2+0x375>
16309  DB  69,15,40,197                        ; movaps        %xmm13,%xmm8
16310  DB  68,15,194,192,2                     ; cmpleps       %xmm0,%xmm8
16311  DB  69,15,40,242                        ; movaps        %xmm10,%xmm14
16312  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
16313  DB  65,15,40,217                        ; movaps        %xmm9,%xmm3
16314  DB  15,194,216,2                        ; cmpleps       %xmm0,%xmm3
16315  DB  15,40,21,80,47,0,0                  ; movaps        0x2f50(%rip),%xmm2        # 40f0 <_sk_callback_sse2+0x3a5>
16316  DB  68,15,40,250                        ; movaps        %xmm2,%xmm15
16317  DB  68,15,194,248,2                     ; cmpleps       %xmm0,%xmm15
16318  DB  15,40,13,32,47,0,0                  ; movaps        0x2f20(%rip),%xmm1        # 40d0 <_sk_callback_sse2+0x385>
16319  DB  15,89,193                           ; mulps         %xmm1,%xmm0
16320  DB  15,40,45,38,47,0,0                  ; movaps        0x2f26(%rip),%xmm5        # 40e0 <_sk_callback_sse2+0x395>
16321  DB  15,40,229                           ; movaps        %xmm5,%xmm4
16322  DB  15,92,224                           ; subps         %xmm0,%xmm4
16323  DB  65,15,89,230                        ; mulps         %xmm14,%xmm4
16324  DB  65,15,88,227                        ; addps         %xmm11,%xmm4
16325  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
16326  DB  69,15,84,224                        ; andps         %xmm8,%xmm12
16327  DB  68,15,85,196                        ; andnps        %xmm4,%xmm8
16328  DB  69,15,86,196                        ; orps          %xmm12,%xmm8
16329  DB  68,15,84,195                        ; andps         %xmm3,%xmm8
16330  DB  65,15,85,218                        ; andnps        %xmm10,%xmm3
16331  DB  65,15,86,216                        ; orps          %xmm8,%xmm3
16332  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
16333  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
16334  DB  65,15,84,223                        ; andps         %xmm15,%xmm3
16335  DB  68,15,85,248                        ; andnps        %xmm0,%xmm15
16336  DB  68,15,86,251                        ; orps          %xmm3,%xmm15
16337  DB  68,15,40,199                        ; movaps        %xmm7,%xmm8
16338  DB  69,15,85,199                        ; andnps        %xmm15,%xmm8
16339  DB  243,15,91,198                       ; cvttps2dq     %xmm6,%xmm0
16340  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
16341  DB  15,40,222                           ; movaps        %xmm6,%xmm3
16342  DB  15,194,216,1                        ; cmpltps       %xmm0,%xmm3
16343  DB  15,84,29,155,46,0,0                 ; andps         0x2e9b(%rip),%xmm3        # 40b0 <_sk_callback_sse2+0x365>
16344  DB  15,92,195                           ; subps         %xmm3,%xmm0
16345  DB  68,15,40,230                        ; movaps        %xmm6,%xmm12
16346  DB  68,15,92,224                        ; subps         %xmm0,%xmm12
16347  DB  69,15,40,253                        ; movaps        %xmm13,%xmm15
16348  DB  69,15,194,252,2                     ; cmpleps       %xmm12,%xmm15
16349  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
16350  DB  65,15,194,228,2                     ; cmpleps       %xmm12,%xmm4
16351  DB  15,40,218                           ; movaps        %xmm2,%xmm3
16352  DB  65,15,194,220,2                     ; cmpleps       %xmm12,%xmm3
16353  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
16354  DB  15,40,197                           ; movaps        %xmm5,%xmm0
16355  DB  65,15,92,196                        ; subps         %xmm12,%xmm0
16356  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
16357  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
16358  DB  65,15,40,251                        ; movaps        %xmm11,%xmm7
16359  DB  65,15,84,255                        ; andps         %xmm15,%xmm7
16360  DB  68,15,85,248                        ; andnps        %xmm0,%xmm15
16361  DB  68,15,86,255                        ; orps          %xmm7,%xmm15
16362  DB  68,15,84,252                        ; andps         %xmm4,%xmm15
16363  DB  65,15,85,226                        ; andnps        %xmm10,%xmm4
16364  DB  65,15,86,231                        ; orps          %xmm15,%xmm4
16365  DB  69,15,89,230                        ; mulps         %xmm14,%xmm12
16366  DB  69,15,88,227                        ; addps         %xmm11,%xmm12
16367  DB  15,84,227                           ; andps         %xmm3,%xmm4
16368  DB  65,15,85,220                        ; andnps        %xmm12,%xmm3
16369  DB  15,86,220                           ; orps          %xmm4,%xmm3
16370  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
16371  DB  15,40,231                           ; movaps        %xmm7,%xmm4
16372  DB  15,85,227                           ; andnps        %xmm3,%xmm4
16373  DB  15,88,53,116,46,0,0                 ; addps         0x2e74(%rip),%xmm6        # 4100 <_sk_callback_sse2+0x3b5>
16374  DB  243,15,91,198                       ; cvttps2dq     %xmm6,%xmm0
16375  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
16376  DB  15,40,222                           ; movaps        %xmm6,%xmm3
16377  DB  15,194,216,1                        ; cmpltps       %xmm0,%xmm3
16378  DB  15,84,29,15,46,0,0                  ; andps         0x2e0f(%rip),%xmm3        # 40b0 <_sk_callback_sse2+0x365>
16379  DB  15,92,195                           ; subps         %xmm3,%xmm0
16380  DB  15,92,240                           ; subps         %xmm0,%xmm6
16381  DB  15,89,206                           ; mulps         %xmm6,%xmm1
16382  DB  15,92,233                           ; subps         %xmm1,%xmm5
16383  DB  65,15,89,238                        ; mulps         %xmm14,%xmm5
16384  DB  65,15,89,206                        ; mulps         %xmm14,%xmm1
16385  DB  65,15,88,235                        ; addps         %xmm11,%xmm5
16386  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
16387  DB  68,15,194,238,2                     ; cmpleps       %xmm6,%xmm13
16388  DB  69,15,84,221                        ; andps         %xmm13,%xmm11
16389  DB  68,15,85,237                        ; andnps        %xmm5,%xmm13
16390  DB  69,15,86,235                        ; orps          %xmm11,%xmm13
16391  DB  68,15,194,206,2                     ; cmpleps       %xmm6,%xmm9
16392  DB  69,15,84,233                        ; andps         %xmm9,%xmm13
16393  DB  69,15,85,202                        ; andnps        %xmm10,%xmm9
16394  DB  69,15,86,205                        ; orps          %xmm13,%xmm9
16395  DB  15,194,214,2                        ; cmpleps       %xmm6,%xmm2
16396  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
16397  DB  15,85,209                           ; andnps        %xmm1,%xmm2
16398  DB  65,15,86,209                        ; orps          %xmm9,%xmm2
16399  DB  15,40,68,36,16                      ; movaps        0x10(%rsp),%xmm0
16400  DB  15,40,207                           ; movaps        %xmm7,%xmm1
16401  DB  15,84,193                           ; andps         %xmm1,%xmm0
16402  DB  15,85,202                           ; andnps        %xmm2,%xmm1
16403  DB  68,15,86,192                        ; orps          %xmm0,%xmm8
16404  DB  15,86,224                           ; orps          %xmm0,%xmm4
16405  DB  15,86,193                           ; orps          %xmm1,%xmm0
16406  DB  15,40,208                           ; movaps        %xmm0,%xmm2
16407  DB  72,173                              ; lods          %ds:(%rsi),%rax
16408  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16409  DB  15,40,204                           ; movaps        %xmm4,%xmm1
16410  DB  15,40,92,36,32                      ; movaps        0x20(%rsp),%xmm3
16411  DB  15,40,100,36,48                     ; movaps        0x30(%rsp),%xmm4
16412  DB  15,40,108,36,64                     ; movaps        0x40(%rsp),%xmm5
16413  DB  15,40,116,36,80                     ; movaps        0x50(%rsp),%xmm6
16414  DB  15,40,124,36,96                     ; movaps        0x60(%rsp),%xmm7
16415  DB  72,131,196,120                      ; add           $0x78,%rsp
16416  DB  255,224                             ; jmpq          *%rax
16417
16418PUBLIC _sk_scale_1_float_sse2
16419_sk_scale_1_float_sse2 LABEL PROC
16420  DB  72,173                              ; lods          %ds:(%rsi),%rax
16421  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
16422  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
16423  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16424  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16425  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16426  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16427  DB  72,173                              ; lods          %ds:(%rsi),%rax
16428  DB  255,224                             ; jmpq          *%rax
16429
16430PUBLIC _sk_scale_u8_sse2
16431_sk_scale_u8_sse2 LABEL PROC
16432  DB  72,173                              ; lods          %ds:(%rsi),%rax
16433  DB  72,139,0                            ; mov           (%rax),%rax
16434  DB  102,68,15,110,4,56                  ; movd          (%rax,%rdi,1),%xmm8
16435  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
16436  DB  102,69,15,96,193                    ; punpcklbw     %xmm9,%xmm8
16437  DB  102,69,15,97,193                    ; punpcklwd     %xmm9,%xmm8
16438  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
16439  DB  68,15,89,5,153,45,0,0               ; mulps         0x2d99(%rip),%xmm8        # 4110 <_sk_callback_sse2+0x3c5>
16440  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16441  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16442  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16443  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16444  DB  72,173                              ; lods          %ds:(%rsi),%rax
16445  DB  255,224                             ; jmpq          *%rax
16446
16447PUBLIC _sk_lerp_1_float_sse2
16448_sk_lerp_1_float_sse2 LABEL PROC
16449  DB  72,173                              ; lods          %ds:(%rsi),%rax
16450  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
16451  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
16452  DB  15,92,196                           ; subps         %xmm4,%xmm0
16453  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16454  DB  15,88,196                           ; addps         %xmm4,%xmm0
16455  DB  15,92,205                           ; subps         %xmm5,%xmm1
16456  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16457  DB  15,88,205                           ; addps         %xmm5,%xmm1
16458  DB  15,92,214                           ; subps         %xmm6,%xmm2
16459  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16460  DB  15,88,214                           ; addps         %xmm6,%xmm2
16461  DB  15,92,223                           ; subps         %xmm7,%xmm3
16462  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16463  DB  15,88,223                           ; addps         %xmm7,%xmm3
16464  DB  72,173                              ; lods          %ds:(%rsi),%rax
16465  DB  255,224                             ; jmpq          *%rax
16466
16467PUBLIC _sk_lerp_u8_sse2
16468_sk_lerp_u8_sse2 LABEL PROC
16469  DB  72,173                              ; lods          %ds:(%rsi),%rax
16470  DB  72,139,0                            ; mov           (%rax),%rax
16471  DB  102,68,15,110,4,56                  ; movd          (%rax,%rdi,1),%xmm8
16472  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
16473  DB  102,69,15,96,193                    ; punpcklbw     %xmm9,%xmm8
16474  DB  102,69,15,97,193                    ; punpcklwd     %xmm9,%xmm8
16475  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
16476  DB  68,15,89,5,55,45,0,0                ; mulps         0x2d37(%rip),%xmm8        # 4120 <_sk_callback_sse2+0x3d5>
16477  DB  15,92,196                           ; subps         %xmm4,%xmm0
16478  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16479  DB  15,88,196                           ; addps         %xmm4,%xmm0
16480  DB  15,92,205                           ; subps         %xmm5,%xmm1
16481  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16482  DB  15,88,205                           ; addps         %xmm5,%xmm1
16483  DB  15,92,214                           ; subps         %xmm6,%xmm2
16484  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16485  DB  15,88,214                           ; addps         %xmm6,%xmm2
16486  DB  15,92,223                           ; subps         %xmm7,%xmm3
16487  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16488  DB  15,88,223                           ; addps         %xmm7,%xmm3
16489  DB  72,173                              ; lods          %ds:(%rsi),%rax
16490  DB  255,224                             ; jmpq          *%rax
16491
16492PUBLIC _sk_lerp_565_sse2
16493_sk_lerp_565_sse2 LABEL PROC
16494  DB  72,173                              ; lods          %ds:(%rsi),%rax
16495  DB  72,139,0                            ; mov           (%rax),%rax
16496  DB  243,68,15,126,4,120                 ; movq          (%rax,%rdi,2),%xmm8
16497  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
16498  DB  102,68,15,97,195                    ; punpcklwd     %xmm3,%xmm8
16499  DB  102,15,111,29,255,44,0,0            ; movdqa        0x2cff(%rip),%xmm3        # 4130 <_sk_callback_sse2+0x3e5>
16500  DB  102,65,15,219,216                   ; pand          %xmm8,%xmm3
16501  DB  68,15,91,203                        ; cvtdq2ps      %xmm3,%xmm9
16502  DB  68,15,89,13,254,44,0,0              ; mulps         0x2cfe(%rip),%xmm9        # 4140 <_sk_callback_sse2+0x3f5>
16503  DB  102,15,111,29,6,45,0,0              ; movdqa        0x2d06(%rip),%xmm3        # 4150 <_sk_callback_sse2+0x405>
16504  DB  102,65,15,219,216                   ; pand          %xmm8,%xmm3
16505  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
16506  DB  15,89,29,7,45,0,0                   ; mulps         0x2d07(%rip),%xmm3        # 4160 <_sk_callback_sse2+0x415>
16507  DB  102,68,15,219,5,14,45,0,0           ; pand          0x2d0e(%rip),%xmm8        # 4170 <_sk_callback_sse2+0x425>
16508  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
16509  DB  68,15,89,5,18,45,0,0                ; mulps         0x2d12(%rip),%xmm8        # 4180 <_sk_callback_sse2+0x435>
16510  DB  15,92,196                           ; subps         %xmm4,%xmm0
16511  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
16512  DB  15,88,196                           ; addps         %xmm4,%xmm0
16513  DB  15,92,205                           ; subps         %xmm5,%xmm1
16514  DB  15,89,203                           ; mulps         %xmm3,%xmm1
16515  DB  15,88,205                           ; addps         %xmm5,%xmm1
16516  DB  15,92,214                           ; subps         %xmm6,%xmm2
16517  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16518  DB  15,88,214                           ; addps         %xmm6,%xmm2
16519  DB  72,173                              ; lods          %ds:(%rsi),%rax
16520  DB  15,40,29,252,44,0,0                 ; movaps        0x2cfc(%rip),%xmm3        # 4190 <_sk_callback_sse2+0x445>
16521  DB  255,224                             ; jmpq          *%rax
16522
16523PUBLIC _sk_load_tables_sse2
16524_sk_load_tables_sse2 LABEL PROC
16525  DB  72,173                              ; lods          %ds:(%rsi),%rax
16526  DB  76,139,0                            ; mov           (%rax),%r8
16527  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
16528  DB  243,69,15,111,12,184                ; movdqu        (%r8,%rdi,4),%xmm9
16529  DB  102,68,15,111,5,242,44,0,0          ; movdqa        0x2cf2(%rip),%xmm8        # 41a0 <_sk_callback_sse2+0x455>
16530  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
16531  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
16532  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
16533  DB  102,73,15,126,200                   ; movq          %xmm1,%r8
16534  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
16535  DB  68,15,182,209                       ; movzbl        %cl,%r10d
16536  DB  72,193,233,30                       ; shr           $0x1e,%rcx
16537  DB  69,15,182,216                       ; movzbl        %r8b,%r11d
16538  DB  73,193,232,30                       ; shr           $0x1e,%r8
16539  DB  243,65,15,16,12,9                   ; movss         (%r9,%rcx,1),%xmm1
16540  DB  243,67,15,16,4,1                    ; movss         (%r9,%r8,1),%xmm0
16541  DB  15,20,200                           ; unpcklps      %xmm0,%xmm1
16542  DB  243,67,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm0
16543  DB  243,67,15,16,20,153                 ; movss         (%r9,%r11,4),%xmm2
16544  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
16545  DB  15,20,193                           ; unpcklps      %xmm1,%xmm0
16546  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
16547  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
16548  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
16549  DB  102,65,15,219,200                   ; pand          %xmm8,%xmm1
16550  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
16551  DB  102,73,15,126,209                   ; movq          %xmm2,%r9
16552  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
16553  DB  68,15,182,209                       ; movzbl        %cl,%r10d
16554  DB  72,193,233,30                       ; shr           $0x1e,%rcx
16555  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
16556  DB  73,193,233,30                       ; shr           $0x1e,%r9
16557  DB  243,65,15,16,20,8                   ; movss         (%r8,%rcx,1),%xmm2
16558  DB  243,67,15,16,12,8                   ; movss         (%r8,%r9,1),%xmm1
16559  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
16560  DB  243,67,15,16,12,144                 ; movss         (%r8,%r10,4),%xmm1
16561  DB  243,67,15,16,28,152                 ; movss         (%r8,%r11,4),%xmm3
16562  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
16563  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
16564  DB  76,139,64,24                        ; mov           0x18(%rax),%r8
16565  DB  102,65,15,111,209                   ; movdqa        %xmm9,%xmm2
16566  DB  102,15,114,210,16                   ; psrld         $0x10,%xmm2
16567  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
16568  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
16569  DB  102,72,15,126,217                   ; movq          %xmm3,%rcx
16570  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
16571  DB  68,15,182,200                       ; movzbl        %al,%r9d
16572  DB  72,193,232,30                       ; shr           $0x1e,%rax
16573  DB  68,15,182,209                       ; movzbl        %cl,%r10d
16574  DB  72,193,233,30                       ; shr           $0x1e,%rcx
16575  DB  243,69,15,16,4,0                    ; movss         (%r8,%rax,1),%xmm8
16576  DB  243,65,15,16,20,8                   ; movss         (%r8,%rcx,1),%xmm2
16577  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
16578  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
16579  DB  243,67,15,16,28,144                 ; movss         (%r8,%r10,4),%xmm3
16580  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
16581  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
16582  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
16583  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
16584  DB  15,89,29,255,43,0,0                 ; mulps         0x2bff(%rip),%xmm3        # 41b0 <_sk_callback_sse2+0x465>
16585  DB  72,173                              ; lods          %ds:(%rsi),%rax
16586  DB  255,224                             ; jmpq          *%rax
16587
16588PUBLIC _sk_load_tables_u16_be_sse2
16589_sk_load_tables_u16_be_sse2 LABEL PROC
16590  DB  72,173                              ; lods          %ds:(%rsi),%rax
16591  DB  72,139,8                            ; mov           (%rax),%rcx
16592  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
16593  DB  243,15,111,4,249                    ; movdqu        (%rcx,%rdi,8),%xmm0
16594  DB  243,15,111,76,249,16                ; movdqu        0x10(%rcx,%rdi,8),%xmm1
16595  DB  102,68,15,111,200                   ; movdqa        %xmm0,%xmm9
16596  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
16597  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
16598  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
16599  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
16600  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
16601  DB  102,68,15,111,21,210,43,0,0         ; movdqa        0x2bd2(%rip),%xmm10        # 41c0 <_sk_callback_sse2+0x475>
16602  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
16603  DB  102,65,15,219,194                   ; pand          %xmm10,%xmm0
16604  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
16605  DB  102,65,15,97,192                    ; punpcklwd     %xmm8,%xmm0
16606  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
16607  DB  102,72,15,126,217                   ; movq          %xmm3,%rcx
16608  DB  68,15,182,201                       ; movzbl        %cl,%r9d
16609  DB  72,193,233,32                       ; shr           $0x20,%rcx
16610  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
16611  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
16612  DB  73,193,234,30                       ; shr           $0x1e,%r10
16613  DB  243,67,15,16,28,16                  ; movss         (%r8,%r10,1),%xmm3
16614  DB  243,65,15,16,4,136                  ; movss         (%r8,%rcx,4),%xmm0
16615  DB  15,20,216                           ; unpcklps      %xmm0,%xmm3
16616  DB  243,67,15,16,4,152                  ; movss         (%r8,%r11,4),%xmm0
16617  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
16618  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
16619  DB  15,20,195                           ; unpcklps      %xmm3,%xmm0
16620  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
16621  DB  102,15,115,217,8                    ; psrldq        $0x8,%xmm1
16622  DB  102,65,15,219,202                   ; pand          %xmm10,%xmm1
16623  DB  102,65,15,97,200                    ; punpcklwd     %xmm8,%xmm1
16624  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
16625  DB  102,73,15,126,208                   ; movq          %xmm2,%r8
16626  DB  69,15,182,200                       ; movzbl        %r8b,%r9d
16627  DB  73,193,232,32                       ; shr           $0x20,%r8
16628  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
16629  DB  68,15,182,217                       ; movzbl        %cl,%r11d
16630  DB  72,193,233,30                       ; shr           $0x1e,%rcx
16631  DB  243,65,15,16,20,10                  ; movss         (%r10,%rcx,1),%xmm2
16632  DB  243,67,15,16,12,130                 ; movss         (%r10,%r8,4),%xmm1
16633  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
16634  DB  243,67,15,16,12,154                 ; movss         (%r10,%r11,4),%xmm1
16635  DB  243,67,15,16,28,138                 ; movss         (%r10,%r9,4),%xmm3
16636  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
16637  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
16638  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
16639  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
16640  DB  102,69,15,97,208                    ; punpcklwd     %xmm8,%xmm10
16641  DB  102,65,15,112,210,78                ; pshufd        $0x4e,%xmm10,%xmm2
16642  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
16643  DB  68,15,182,193                       ; movzbl        %cl,%r8d
16644  DB  72,193,233,32                       ; shr           $0x20,%rcx
16645  DB  102,76,15,126,208                   ; movq          %xmm10,%rax
16646  DB  68,15,182,208                       ; movzbl        %al,%r10d
16647  DB  72,193,232,30                       ; shr           $0x1e,%rax
16648  DB  243,69,15,16,20,1                   ; movss         (%r9,%rax,1),%xmm10
16649  DB  243,65,15,16,20,137                 ; movss         (%r9,%rcx,4),%xmm2
16650  DB  68,15,20,210                        ; unpcklps      %xmm2,%xmm10
16651  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
16652  DB  243,67,15,16,28,129                 ; movss         (%r9,%r8,4),%xmm3
16653  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
16654  DB  65,15,20,210                        ; unpcklps      %xmm10,%xmm2
16655  DB  102,65,15,112,217,78                ; pshufd        $0x4e,%xmm9,%xmm3
16656  DB  102,68,15,111,203                   ; movdqa        %xmm3,%xmm9
16657  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
16658  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
16659  DB  102,65,15,235,217                   ; por           %xmm9,%xmm3
16660  DB  102,65,15,97,216                    ; punpcklwd     %xmm8,%xmm3
16661  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
16662  DB  15,89,29,193,42,0,0                 ; mulps         0x2ac1(%rip),%xmm3        # 41d0 <_sk_callback_sse2+0x485>
16663  DB  72,173                              ; lods          %ds:(%rsi),%rax
16664  DB  255,224                             ; jmpq          *%rax
16665
16666PUBLIC _sk_load_tables_rgb_u16_be_sse2
16667_sk_load_tables_rgb_u16_be_sse2 LABEL PROC
16668  DB  72,173                              ; lods          %ds:(%rsi),%rax
16669  DB  76,141,12,127                       ; lea           (%rdi,%rdi,2),%r9
16670  DB  72,139,8                            ; mov           (%rax),%rcx
16671  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
16672  DB  243,70,15,111,28,73                 ; movdqu        (%rcx,%r9,2),%xmm11
16673  DB  243,66,15,111,68,73,8               ; movdqu        0x8(%rcx,%r9,2),%xmm0
16674  DB  102,15,115,216,4                    ; psrldq        $0x4,%xmm0
16675  DB  102,69,15,111,211                   ; movdqa        %xmm11,%xmm10
16676  DB  102,65,15,115,218,6                 ; psrldq        $0x6,%xmm10
16677  DB  102,68,15,97,216                    ; punpcklwd     %xmm0,%xmm11
16678  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
16679  DB  102,68,15,97,208                    ; punpcklwd     %xmm0,%xmm10
16680  DB  102,65,15,111,195                   ; movdqa        %xmm11,%xmm0
16681  DB  102,65,15,97,194                    ; punpcklwd     %xmm10,%xmm0
16682  DB  102,68,15,111,5,129,42,0,0          ; movdqa        0x2a81(%rip),%xmm8        # 41e0 <_sk_callback_sse2+0x495>
16683  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
16684  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
16685  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
16686  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
16687  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
16688  DB  102,72,15,126,217                   ; movq          %xmm3,%rcx
16689  DB  68,15,182,201                       ; movzbl        %cl,%r9d
16690  DB  72,193,233,32                       ; shr           $0x20,%rcx
16691  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
16692  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
16693  DB  73,193,234,30                       ; shr           $0x1e,%r10
16694  DB  243,67,15,16,28,16                  ; movss         (%r8,%r10,1),%xmm3
16695  DB  243,65,15,16,4,136                  ; movss         (%r8,%rcx,4),%xmm0
16696  DB  15,20,216                           ; unpcklps      %xmm0,%xmm3
16697  DB  243,67,15,16,4,152                  ; movss         (%r8,%r11,4),%xmm0
16698  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
16699  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
16700  DB  15,20,195                           ; unpcklps      %xmm3,%xmm0
16701  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
16702  DB  102,65,15,219,200                   ; pand          %xmm8,%xmm1
16703  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
16704  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
16705  DB  102,73,15,126,208                   ; movq          %xmm2,%r8
16706  DB  69,15,182,200                       ; movzbl        %r8b,%r9d
16707  DB  73,193,232,32                       ; shr           $0x20,%r8
16708  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
16709  DB  68,15,182,217                       ; movzbl        %cl,%r11d
16710  DB  72,193,233,30                       ; shr           $0x1e,%rcx
16711  DB  243,65,15,16,20,10                  ; movss         (%r10,%rcx,1),%xmm2
16712  DB  243,67,15,16,12,130                 ; movss         (%r10,%r8,4),%xmm1
16713  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
16714  DB  243,67,15,16,12,154                 ; movss         (%r10,%r11,4),%xmm1
16715  DB  243,67,15,16,28,138                 ; movss         (%r10,%r9,4),%xmm3
16716  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
16717  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
16718  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
16719  DB  102,69,15,105,218                   ; punpckhwd     %xmm10,%xmm11
16720  DB  102,69,15,219,216                   ; pand          %xmm8,%xmm11
16721  DB  102,69,15,97,217                    ; punpcklwd     %xmm9,%xmm11
16722  DB  102,65,15,112,211,78                ; pshufd        $0x4e,%xmm11,%xmm2
16723  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
16724  DB  68,15,182,193                       ; movzbl        %cl,%r8d
16725  DB  72,193,233,32                       ; shr           $0x20,%rcx
16726  DB  102,76,15,126,216                   ; movq          %xmm11,%rax
16727  DB  68,15,182,208                       ; movzbl        %al,%r10d
16728  DB  72,193,232,30                       ; shr           $0x1e,%rax
16729  DB  243,69,15,16,4,1                    ; movss         (%r9,%rax,1),%xmm8
16730  DB  243,65,15,16,20,137                 ; movss         (%r9,%rcx,4),%xmm2
16731  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
16732  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
16733  DB  243,67,15,16,28,129                 ; movss         (%r9,%r8,4),%xmm3
16734  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
16735  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
16736  DB  72,173                              ; lods          %ds:(%rsi),%rax
16737  DB  15,40,29,144,41,0,0                 ; movaps        0x2990(%rip),%xmm3        # 41f0 <_sk_callback_sse2+0x4a5>
16738  DB  255,224                             ; jmpq          *%rax
16739
16740PUBLIC _sk_byte_tables_sse2
16741_sk_byte_tables_sse2 LABEL PROC
16742  DB  65,86                               ; push          %r14
16743  DB  83                                  ; push          %rbx
16744  DB  72,173                              ; lods          %ds:(%rsi),%rax
16745  DB  68,15,40,5,145,41,0,0               ; movaps        0x2991(%rip),%xmm8        # 4200 <_sk_callback_sse2+0x4b5>
16746  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16747  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
16748  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
16749  DB  65,137,200                          ; mov           %ecx,%r8d
16750  DB  72,193,233,32                       ; shr           $0x20,%rcx
16751  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
16752  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
16753  DB  69,137,202                          ; mov           %r9d,%r10d
16754  DB  77,137,203                          ; mov           %r9,%r11
16755  DB  73,193,235,32                       ; shr           $0x20,%r11
16756  DB  76,139,48                           ; mov           (%rax),%r14
16757  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
16758  DB  71,15,182,20,22                     ; movzbl        (%r14,%r10,1),%r10d
16759  DB  67,15,182,28,30                     ; movzbl        (%r14,%r11,1),%ebx
16760  DB  193,227,8                           ; shl           $0x8,%ebx
16761  DB  68,9,211                            ; or            %r10d,%ebx
16762  DB  71,15,182,4,6                       ; movzbl        (%r14,%r8,1),%r8d
16763  DB  65,15,182,12,14                     ; movzbl        (%r14,%rcx,1),%ecx
16764  DB  193,225,8                           ; shl           $0x8,%ecx
16765  DB  68,9,193                            ; or            %r8d,%ecx
16766  DB  102,15,196,193,0                    ; pinsrw        $0x0,%ecx,%xmm0
16767  DB  102,15,196,195,1                    ; pinsrw        $0x1,%ebx,%xmm0
16768  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
16769  DB  102,65,15,96,193                    ; punpcklbw     %xmm9,%xmm0
16770  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
16771  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
16772  DB  68,15,40,21,46,41,0,0               ; movaps        0x292e(%rip),%xmm10        # 4210 <_sk_callback_sse2+0x4c5>
16773  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
16774  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16775  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
16776  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
16777  DB  65,137,200                          ; mov           %ecx,%r8d
16778  DB  72,193,233,32                       ; shr           $0x20,%rcx
16779  DB  102,15,112,201,78                   ; pshufd        $0x4e,%xmm1,%xmm1
16780  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
16781  DB  65,137,218                          ; mov           %ebx,%r10d
16782  DB  72,193,235,32                       ; shr           $0x20,%rbx
16783  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
16784  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
16785  DB  193,227,8                           ; shl           $0x8,%ebx
16786  DB  68,9,211                            ; or            %r10d,%ebx
16787  DB  71,15,182,4,1                       ; movzbl        (%r9,%r8,1),%r8d
16788  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
16789  DB  193,225,8                           ; shl           $0x8,%ecx
16790  DB  68,9,193                            ; or            %r8d,%ecx
16791  DB  102,15,196,201,0                    ; pinsrw        $0x0,%ecx,%xmm1
16792  DB  102,15,196,203,1                    ; pinsrw        $0x1,%ebx,%xmm1
16793  DB  102,65,15,96,201                    ; punpcklbw     %xmm9,%xmm1
16794  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
16795  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
16796  DB  65,15,89,202                        ; mulps         %xmm10,%xmm1
16797  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
16798  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16799  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
16800  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
16801  DB  65,137,216                          ; mov           %ebx,%r8d
16802  DB  72,193,235,32                       ; shr           $0x20,%rbx
16803  DB  102,15,112,210,78                   ; pshufd        $0x4e,%xmm2,%xmm2
16804  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
16805  DB  65,137,202                          ; mov           %ecx,%r10d
16806  DB  72,193,233,32                       ; shr           $0x20,%rcx
16807  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
16808  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
16809  DB  193,225,8                           ; shl           $0x8,%ecx
16810  DB  68,9,209                            ; or            %r10d,%ecx
16811  DB  71,15,182,4,1                       ; movzbl        (%r9,%r8,1),%r8d
16812  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
16813  DB  193,227,8                           ; shl           $0x8,%ebx
16814  DB  68,9,195                            ; or            %r8d,%ebx
16815  DB  102,15,196,211,0                    ; pinsrw        $0x0,%ebx,%xmm2
16816  DB  102,15,196,209,1                    ; pinsrw        $0x1,%ecx,%xmm2
16817  DB  102,65,15,96,209                    ; punpcklbw     %xmm9,%xmm2
16818  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
16819  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
16820  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
16821  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
16822  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16823  DB  102,15,91,219                       ; cvtps2dq      %xmm3,%xmm3
16824  DB  102,72,15,126,217                   ; movq          %xmm3,%rcx
16825  DB  65,137,200                          ; mov           %ecx,%r8d
16826  DB  72,193,233,32                       ; shr           $0x20,%rcx
16827  DB  102,15,112,219,78                   ; pshufd        $0x4e,%xmm3,%xmm3
16828  DB  102,72,15,126,219                   ; movq          %xmm3,%rbx
16829  DB  65,137,217                          ; mov           %ebx,%r9d
16830  DB  72,193,235,32                       ; shr           $0x20,%rbx
16831  DB  70,15,182,12,8                      ; movzbl        (%rax,%r9,1),%r9d
16832  DB  15,182,28,24                        ; movzbl        (%rax,%rbx,1),%ebx
16833  DB  193,227,8                           ; shl           $0x8,%ebx
16834  DB  68,9,203                            ; or            %r9d,%ebx
16835  DB  70,15,182,4,0                       ; movzbl        (%rax,%r8,1),%r8d
16836  DB  15,182,4,8                          ; movzbl        (%rax,%rcx,1),%eax
16837  DB  193,224,8                           ; shl           $0x8,%eax
16838  DB  68,9,192                            ; or            %r8d,%eax
16839  DB  102,15,196,216,0                    ; pinsrw        $0x0,%eax,%xmm3
16840  DB  102,15,196,219,1                    ; pinsrw        $0x1,%ebx,%xmm3
16841  DB  102,65,15,96,217                    ; punpcklbw     %xmm9,%xmm3
16842  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
16843  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
16844  DB  65,15,89,218                        ; mulps         %xmm10,%xmm3
16845  DB  72,173                              ; lods          %ds:(%rsi),%rax
16846  DB  91                                  ; pop           %rbx
16847  DB  65,94                               ; pop           %r14
16848  DB  255,224                             ; jmpq          *%rax
16849
16850PUBLIC _sk_byte_tables_rgb_sse2
16851_sk_byte_tables_rgb_sse2 LABEL PROC
16852  DB  65,86                               ; push          %r14
16853  DB  83                                  ; push          %rbx
16854  DB  72,173                              ; lods          %ds:(%rsi),%rax
16855  DB  139,72,24                           ; mov           0x18(%rax),%ecx
16856  DB  255,201                             ; dec           %ecx
16857  DB  102,68,15,110,193                   ; movd          %ecx,%xmm8
16858  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
16859  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
16860  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16861  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
16862  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
16863  DB  65,137,200                          ; mov           %ecx,%r8d
16864  DB  72,193,233,32                       ; shr           $0x20,%rcx
16865  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
16866  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
16867  DB  69,137,202                          ; mov           %r9d,%r10d
16868  DB  77,137,203                          ; mov           %r9,%r11
16869  DB  73,193,235,32                       ; shr           $0x20,%r11
16870  DB  76,139,48                           ; mov           (%rax),%r14
16871  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
16872  DB  71,15,182,20,22                     ; movzbl        (%r14,%r10,1),%r10d
16873  DB  67,15,182,28,30                     ; movzbl        (%r14,%r11,1),%ebx
16874  DB  193,227,8                           ; shl           $0x8,%ebx
16875  DB  68,9,211                            ; or            %r10d,%ebx
16876  DB  71,15,182,4,6                       ; movzbl        (%r14,%r8,1),%r8d
16877  DB  65,15,182,12,14                     ; movzbl        (%r14,%rcx,1),%ecx
16878  DB  193,225,8                           ; shl           $0x8,%ecx
16879  DB  68,9,193                            ; or            %r8d,%ecx
16880  DB  102,15,196,193,0                    ; pinsrw        $0x0,%ecx,%xmm0
16881  DB  102,15,196,195,1                    ; pinsrw        $0x1,%ebx,%xmm0
16882  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
16883  DB  102,65,15,96,193                    ; punpcklbw     %xmm9,%xmm0
16884  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
16885  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
16886  DB  68,15,40,21,129,39,0,0              ; movaps        0x2781(%rip),%xmm10        # 4220 <_sk_callback_sse2+0x4d5>
16887  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
16888  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16889  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
16890  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
16891  DB  65,137,200                          ; mov           %ecx,%r8d
16892  DB  72,193,233,32                       ; shr           $0x20,%rcx
16893  DB  102,15,112,201,78                   ; pshufd        $0x4e,%xmm1,%xmm1
16894  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
16895  DB  65,137,218                          ; mov           %ebx,%r10d
16896  DB  72,193,235,32                       ; shr           $0x20,%rbx
16897  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
16898  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
16899  DB  193,227,8                           ; shl           $0x8,%ebx
16900  DB  68,9,211                            ; or            %r10d,%ebx
16901  DB  71,15,182,4,1                       ; movzbl        (%r9,%r8,1),%r8d
16902  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
16903  DB  193,225,8                           ; shl           $0x8,%ecx
16904  DB  68,9,193                            ; or            %r8d,%ecx
16905  DB  102,15,196,201,0                    ; pinsrw        $0x0,%ecx,%xmm1
16906  DB  102,15,196,203,1                    ; pinsrw        $0x1,%ebx,%xmm1
16907  DB  102,65,15,96,201                    ; punpcklbw     %xmm9,%xmm1
16908  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
16909  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
16910  DB  65,15,89,202                        ; mulps         %xmm10,%xmm1
16911  DB  72,139,64,16                        ; mov           0x10(%rax),%rax
16912  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16913  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
16914  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
16915  DB  65,137,200                          ; mov           %ecx,%r8d
16916  DB  72,193,233,32                       ; shr           $0x20,%rcx
16917  DB  102,15,112,210,78                   ; pshufd        $0x4e,%xmm2,%xmm2
16918  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
16919  DB  65,137,217                          ; mov           %ebx,%r9d
16920  DB  72,193,235,32                       ; shr           $0x20,%rbx
16921  DB  70,15,182,12,8                      ; movzbl        (%rax,%r9,1),%r9d
16922  DB  15,182,28,24                        ; movzbl        (%rax,%rbx,1),%ebx
16923  DB  193,227,8                           ; shl           $0x8,%ebx
16924  DB  68,9,203                            ; or            %r9d,%ebx
16925  DB  70,15,182,4,0                       ; movzbl        (%rax,%r8,1),%r8d
16926  DB  15,182,4,8                          ; movzbl        (%rax,%rcx,1),%eax
16927  DB  193,224,8                           ; shl           $0x8,%eax
16928  DB  68,9,192                            ; or            %r8d,%eax
16929  DB  102,15,196,208,0                    ; pinsrw        $0x0,%eax,%xmm2
16930  DB  102,15,196,211,1                    ; pinsrw        $0x1,%ebx,%xmm2
16931  DB  102,65,15,96,209                    ; punpcklbw     %xmm9,%xmm2
16932  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
16933  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
16934  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
16935  DB  72,173                              ; lods          %ds:(%rsi),%rax
16936  DB  91                                  ; pop           %rbx
16937  DB  65,94                               ; pop           %r14
16938  DB  255,224                             ; jmpq          *%rax
16939
16940PUBLIC _sk_table_r_sse2
16941_sk_table_r_sse2 LABEL PROC
16942  DB  72,173                              ; lods          %ds:(%rsi),%rax
16943  DB  76,139,8                            ; mov           (%rax),%r9
16944  DB  139,64,8                            ; mov           0x8(%rax),%eax
16945  DB  255,200                             ; dec           %eax
16946  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
16947  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
16948  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
16949  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
16950  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
16951  DB  102,65,15,112,192,78                ; pshufd        $0x4e,%xmm8,%xmm0
16952  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
16953  DB  65,137,192                          ; mov           %eax,%r8d
16954  DB  72,193,232,32                       ; shr           $0x20,%rax
16955  DB  102,76,15,126,193                   ; movq          %xmm8,%rcx
16956  DB  65,137,202                          ; mov           %ecx,%r10d
16957  DB  72,193,233,32                       ; shr           $0x20,%rcx
16958  DB  243,69,15,16,4,137                  ; movss         (%r9,%rcx,4),%xmm8
16959  DB  243,65,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm0
16960  DB  68,15,20,192                        ; unpcklps      %xmm0,%xmm8
16961  DB  243,67,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm0
16962  DB  243,71,15,16,12,129                 ; movss         (%r9,%r8,4),%xmm9
16963  DB  65,15,20,193                        ; unpcklps      %xmm9,%xmm0
16964  DB  65,15,20,192                        ; unpcklps      %xmm8,%xmm0
16965  DB  72,173                              ; lods          %ds:(%rsi),%rax
16966  DB  255,224                             ; jmpq          *%rax
16967
16968PUBLIC _sk_table_g_sse2
16969_sk_table_g_sse2 LABEL PROC
16970  DB  72,173                              ; lods          %ds:(%rsi),%rax
16971  DB  76,139,8                            ; mov           (%rax),%r9
16972  DB  139,64,8                            ; mov           0x8(%rax),%eax
16973  DB  255,200                             ; dec           %eax
16974  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
16975  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
16976  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
16977  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
16978  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
16979  DB  102,65,15,112,200,78                ; pshufd        $0x4e,%xmm8,%xmm1
16980  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
16981  DB  65,137,192                          ; mov           %eax,%r8d
16982  DB  72,193,232,32                       ; shr           $0x20,%rax
16983  DB  102,76,15,126,193                   ; movq          %xmm8,%rcx
16984  DB  65,137,202                          ; mov           %ecx,%r10d
16985  DB  72,193,233,32                       ; shr           $0x20,%rcx
16986  DB  243,69,15,16,4,137                  ; movss         (%r9,%rcx,4),%xmm8
16987  DB  243,65,15,16,12,129                 ; movss         (%r9,%rax,4),%xmm1
16988  DB  68,15,20,193                        ; unpcklps      %xmm1,%xmm8
16989  DB  243,67,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm1
16990  DB  243,71,15,16,12,129                 ; movss         (%r9,%r8,4),%xmm9
16991  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
16992  DB  65,15,20,200                        ; unpcklps      %xmm8,%xmm1
16993  DB  72,173                              ; lods          %ds:(%rsi),%rax
16994  DB  255,224                             ; jmpq          *%rax
16995
16996PUBLIC _sk_table_b_sse2
16997_sk_table_b_sse2 LABEL PROC
16998  DB  72,173                              ; lods          %ds:(%rsi),%rax
16999  DB  76,139,8                            ; mov           (%rax),%r9
17000  DB  139,64,8                            ; mov           0x8(%rax),%eax
17001  DB  255,200                             ; dec           %eax
17002  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
17003  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
17004  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
17005  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
17006  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
17007  DB  102,65,15,112,208,78                ; pshufd        $0x4e,%xmm8,%xmm2
17008  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
17009  DB  65,137,192                          ; mov           %eax,%r8d
17010  DB  72,193,232,32                       ; shr           $0x20,%rax
17011  DB  102,76,15,126,193                   ; movq          %xmm8,%rcx
17012  DB  65,137,202                          ; mov           %ecx,%r10d
17013  DB  72,193,233,32                       ; shr           $0x20,%rcx
17014  DB  243,69,15,16,4,137                  ; movss         (%r9,%rcx,4),%xmm8
17015  DB  243,65,15,16,20,129                 ; movss         (%r9,%rax,4),%xmm2
17016  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
17017  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
17018  DB  243,71,15,16,12,129                 ; movss         (%r9,%r8,4),%xmm9
17019  DB  65,15,20,209                        ; unpcklps      %xmm9,%xmm2
17020  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
17021  DB  72,173                              ; lods          %ds:(%rsi),%rax
17022  DB  255,224                             ; jmpq          *%rax
17023
17024PUBLIC _sk_table_a_sse2
17025_sk_table_a_sse2 LABEL PROC
17026  DB  72,173                              ; lods          %ds:(%rsi),%rax
17027  DB  76,139,8                            ; mov           (%rax),%r9
17028  DB  139,64,8                            ; mov           0x8(%rax),%eax
17029  DB  255,200                             ; dec           %eax
17030  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
17031  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
17032  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
17033  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
17034  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
17035  DB  102,65,15,112,216,78                ; pshufd        $0x4e,%xmm8,%xmm3
17036  DB  102,72,15,126,216                   ; movq          %xmm3,%rax
17037  DB  65,137,192                          ; mov           %eax,%r8d
17038  DB  72,193,232,32                       ; shr           $0x20,%rax
17039  DB  102,76,15,126,193                   ; movq          %xmm8,%rcx
17040  DB  65,137,202                          ; mov           %ecx,%r10d
17041  DB  72,193,233,32                       ; shr           $0x20,%rcx
17042  DB  243,69,15,16,4,137                  ; movss         (%r9,%rcx,4),%xmm8
17043  DB  243,65,15,16,28,129                 ; movss         (%r9,%rax,4),%xmm3
17044  DB  68,15,20,195                        ; unpcklps      %xmm3,%xmm8
17045  DB  243,67,15,16,28,145                 ; movss         (%r9,%r10,4),%xmm3
17046  DB  243,71,15,16,12,129                 ; movss         (%r9,%r8,4),%xmm9
17047  DB  65,15,20,217                        ; unpcklps      %xmm9,%xmm3
17048  DB  65,15,20,216                        ; unpcklps      %xmm8,%xmm3
17049  DB  72,173                              ; lods          %ds:(%rsi),%rax
17050  DB  255,224                             ; jmpq          *%rax
17051
17052PUBLIC _sk_parametric_r_sse2
17053_sk_parametric_r_sse2 LABEL PROC
17054  DB  72,173                              ; lods          %ds:(%rsi),%rax
17055  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
17056  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17057  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
17058  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
17059  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
17060  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
17061  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
17062  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
17063  DB  65,15,194,193,2                     ; cmpleps       %xmm9,%xmm0
17064  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
17065  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17066  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
17067  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
17068  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
17069  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17070  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
17071  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
17072  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
17073  DB  68,15,89,13,192,36,0,0              ; mulps         0x24c0(%rip),%xmm9        # 4230 <_sk_callback_sse2+0x4e5>
17074  DB  68,15,84,21,200,36,0,0              ; andps         0x24c8(%rip),%xmm10        # 4240 <_sk_callback_sse2+0x4f5>
17075  DB  68,15,86,21,208,36,0,0              ; orps          0x24d0(%rip),%xmm10        # 4250 <_sk_callback_sse2+0x505>
17076  DB  68,15,88,13,216,36,0,0              ; addps         0x24d8(%rip),%xmm9        # 4260 <_sk_callback_sse2+0x515>
17077  DB  68,15,40,37,224,36,0,0              ; movaps        0x24e0(%rip),%xmm12        # 4270 <_sk_callback_sse2+0x525>
17078  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
17079  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17080  DB  68,15,88,21,224,36,0,0              ; addps         0x24e0(%rip),%xmm10        # 4280 <_sk_callback_sse2+0x535>
17081  DB  68,15,40,37,232,36,0,0              ; movaps        0x24e8(%rip),%xmm12        # 4290 <_sk_callback_sse2+0x545>
17082  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
17083  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17084  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
17085  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
17086  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
17087  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17088  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
17089  DB  68,15,40,21,210,36,0,0              ; movaps        0x24d2(%rip),%xmm10        # 42a0 <_sk_callback_sse2+0x555>
17090  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
17091  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
17092  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17093  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17094  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
17095  DB  68,15,88,13,198,36,0,0              ; addps         0x24c6(%rip),%xmm9        # 42b0 <_sk_callback_sse2+0x565>
17096  DB  68,15,40,37,206,36,0,0              ; movaps        0x24ce(%rip),%xmm12        # 42c0 <_sk_callback_sse2+0x575>
17097  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
17098  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17099  DB  68,15,40,37,206,36,0,0              ; movaps        0x24ce(%rip),%xmm12        # 42d0 <_sk_callback_sse2+0x585>
17100  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17101  DB  68,15,40,45,210,36,0,0              ; movaps        0x24d2(%rip),%xmm13        # 42e0 <_sk_callback_sse2+0x595>
17102  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
17103  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
17104  DB  68,15,89,45,210,36,0,0              ; mulps         0x24d2(%rip),%xmm13        # 42f0 <_sk_callback_sse2+0x5a5>
17105  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
17106  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
17107  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
17108  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
17109  DB  68,15,84,192                        ; andps         %xmm0,%xmm8
17110  DB  65,15,85,196                        ; andnps        %xmm12,%xmm0
17111  DB  65,15,86,192                        ; orps          %xmm8,%xmm0
17112  DB  65,15,95,195                        ; maxps         %xmm11,%xmm0
17113  DB  65,15,93,194                        ; minps         %xmm10,%xmm0
17114  DB  72,173                              ; lods          %ds:(%rsi),%rax
17115  DB  255,224                             ; jmpq          *%rax
17116
17117PUBLIC _sk_parametric_g_sse2
17118_sk_parametric_g_sse2 LABEL PROC
17119  DB  72,173                              ; lods          %ds:(%rsi),%rax
17120  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
17121  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17122  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
17123  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
17124  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
17125  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
17126  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
17127  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
17128  DB  65,15,194,201,2                     ; cmpleps       %xmm9,%xmm1
17129  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
17130  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17131  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
17132  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
17133  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
17134  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17135  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
17136  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
17137  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
17138  DB  68,15,89,13,82,36,0,0               ; mulps         0x2452(%rip),%xmm9        # 4300 <_sk_callback_sse2+0x5b5>
17139  DB  68,15,84,21,90,36,0,0               ; andps         0x245a(%rip),%xmm10        # 4310 <_sk_callback_sse2+0x5c5>
17140  DB  68,15,86,21,98,36,0,0               ; orps          0x2462(%rip),%xmm10        # 4320 <_sk_callback_sse2+0x5d5>
17141  DB  68,15,88,13,106,36,0,0              ; addps         0x246a(%rip),%xmm9        # 4330 <_sk_callback_sse2+0x5e5>
17142  DB  68,15,40,37,114,36,0,0              ; movaps        0x2472(%rip),%xmm12        # 4340 <_sk_callback_sse2+0x5f5>
17143  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
17144  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17145  DB  68,15,88,21,114,36,0,0              ; addps         0x2472(%rip),%xmm10        # 4350 <_sk_callback_sse2+0x605>
17146  DB  68,15,40,37,122,36,0,0              ; movaps        0x247a(%rip),%xmm12        # 4360 <_sk_callback_sse2+0x615>
17147  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
17148  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17149  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
17150  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
17151  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
17152  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17153  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
17154  DB  68,15,40,21,100,36,0,0              ; movaps        0x2464(%rip),%xmm10        # 4370 <_sk_callback_sse2+0x625>
17155  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
17156  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
17157  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17158  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17159  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
17160  DB  68,15,88,13,88,36,0,0               ; addps         0x2458(%rip),%xmm9        # 4380 <_sk_callback_sse2+0x635>
17161  DB  68,15,40,37,96,36,0,0               ; movaps        0x2460(%rip),%xmm12        # 4390 <_sk_callback_sse2+0x645>
17162  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
17163  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17164  DB  68,15,40,37,96,36,0,0               ; movaps        0x2460(%rip),%xmm12        # 43a0 <_sk_callback_sse2+0x655>
17165  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17166  DB  68,15,40,45,100,36,0,0              ; movaps        0x2464(%rip),%xmm13        # 43b0 <_sk_callback_sse2+0x665>
17167  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
17168  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
17169  DB  68,15,89,45,100,36,0,0              ; mulps         0x2464(%rip),%xmm13        # 43c0 <_sk_callback_sse2+0x675>
17170  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
17171  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
17172  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
17173  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
17174  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
17175  DB  65,15,85,204                        ; andnps        %xmm12,%xmm1
17176  DB  65,15,86,200                        ; orps          %xmm8,%xmm1
17177  DB  65,15,95,203                        ; maxps         %xmm11,%xmm1
17178  DB  65,15,93,202                        ; minps         %xmm10,%xmm1
17179  DB  72,173                              ; lods          %ds:(%rsi),%rax
17180  DB  255,224                             ; jmpq          *%rax
17181
17182PUBLIC _sk_parametric_b_sse2
17183_sk_parametric_b_sse2 LABEL PROC
17184  DB  72,173                              ; lods          %ds:(%rsi),%rax
17185  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
17186  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17187  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
17188  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
17189  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
17190  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
17191  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
17192  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
17193  DB  65,15,194,209,2                     ; cmpleps       %xmm9,%xmm2
17194  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
17195  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17196  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
17197  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
17198  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
17199  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17200  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
17201  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
17202  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
17203  DB  68,15,89,13,228,35,0,0              ; mulps         0x23e4(%rip),%xmm9        # 43d0 <_sk_callback_sse2+0x685>
17204  DB  68,15,84,21,236,35,0,0              ; andps         0x23ec(%rip),%xmm10        # 43e0 <_sk_callback_sse2+0x695>
17205  DB  68,15,86,21,244,35,0,0              ; orps          0x23f4(%rip),%xmm10        # 43f0 <_sk_callback_sse2+0x6a5>
17206  DB  68,15,88,13,252,35,0,0              ; addps         0x23fc(%rip),%xmm9        # 4400 <_sk_callback_sse2+0x6b5>
17207  DB  68,15,40,37,4,36,0,0                ; movaps        0x2404(%rip),%xmm12        # 4410 <_sk_callback_sse2+0x6c5>
17208  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
17209  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17210  DB  68,15,88,21,4,36,0,0                ; addps         0x2404(%rip),%xmm10        # 4420 <_sk_callback_sse2+0x6d5>
17211  DB  68,15,40,37,12,36,0,0               ; movaps        0x240c(%rip),%xmm12        # 4430 <_sk_callback_sse2+0x6e5>
17212  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
17213  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17214  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
17215  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
17216  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
17217  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17218  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
17219  DB  68,15,40,21,246,35,0,0              ; movaps        0x23f6(%rip),%xmm10        # 4440 <_sk_callback_sse2+0x6f5>
17220  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
17221  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
17222  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17223  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17224  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
17225  DB  68,15,88,13,234,35,0,0              ; addps         0x23ea(%rip),%xmm9        # 4450 <_sk_callback_sse2+0x705>
17226  DB  68,15,40,37,242,35,0,0              ; movaps        0x23f2(%rip),%xmm12        # 4460 <_sk_callback_sse2+0x715>
17227  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
17228  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17229  DB  68,15,40,37,242,35,0,0              ; movaps        0x23f2(%rip),%xmm12        # 4470 <_sk_callback_sse2+0x725>
17230  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17231  DB  68,15,40,45,246,35,0,0              ; movaps        0x23f6(%rip),%xmm13        # 4480 <_sk_callback_sse2+0x735>
17232  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
17233  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
17234  DB  68,15,89,45,246,35,0,0              ; mulps         0x23f6(%rip),%xmm13        # 4490 <_sk_callback_sse2+0x745>
17235  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
17236  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
17237  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
17238  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
17239  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
17240  DB  65,15,85,212                        ; andnps        %xmm12,%xmm2
17241  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
17242  DB  65,15,95,211                        ; maxps         %xmm11,%xmm2
17243  DB  65,15,93,210                        ; minps         %xmm10,%xmm2
17244  DB  72,173                              ; lods          %ds:(%rsi),%rax
17245  DB  255,224                             ; jmpq          *%rax
17246
17247PUBLIC _sk_parametric_a_sse2
17248_sk_parametric_a_sse2 LABEL PROC
17249  DB  72,173                              ; lods          %ds:(%rsi),%rax
17250  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
17251  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17252  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
17253  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
17254  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
17255  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
17256  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
17257  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
17258  DB  65,15,194,217,2                     ; cmpleps       %xmm9,%xmm3
17259  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
17260  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17261  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
17262  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
17263  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
17264  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17265  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
17266  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
17267  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
17268  DB  68,15,89,13,118,35,0,0              ; mulps         0x2376(%rip),%xmm9        # 44a0 <_sk_callback_sse2+0x755>
17269  DB  68,15,84,21,126,35,0,0              ; andps         0x237e(%rip),%xmm10        # 44b0 <_sk_callback_sse2+0x765>
17270  DB  68,15,86,21,134,35,0,0              ; orps          0x2386(%rip),%xmm10        # 44c0 <_sk_callback_sse2+0x775>
17271  DB  68,15,88,13,142,35,0,0              ; addps         0x238e(%rip),%xmm9        # 44d0 <_sk_callback_sse2+0x785>
17272  DB  68,15,40,37,150,35,0,0              ; movaps        0x2396(%rip),%xmm12        # 44e0 <_sk_callback_sse2+0x795>
17273  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
17274  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17275  DB  68,15,88,21,150,35,0,0              ; addps         0x2396(%rip),%xmm10        # 44f0 <_sk_callback_sse2+0x7a5>
17276  DB  68,15,40,37,158,35,0,0              ; movaps        0x239e(%rip),%xmm12        # 4500 <_sk_callback_sse2+0x7b5>
17277  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
17278  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17279  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
17280  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
17281  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
17282  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17283  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
17284  DB  68,15,40,21,136,35,0,0              ; movaps        0x2388(%rip),%xmm10        # 4510 <_sk_callback_sse2+0x7c5>
17285  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
17286  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
17287  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17288  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17289  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
17290  DB  68,15,88,13,124,35,0,0              ; addps         0x237c(%rip),%xmm9        # 4520 <_sk_callback_sse2+0x7d5>
17291  DB  68,15,40,37,132,35,0,0              ; movaps        0x2384(%rip),%xmm12        # 4530 <_sk_callback_sse2+0x7e5>
17292  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
17293  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17294  DB  68,15,40,37,132,35,0,0              ; movaps        0x2384(%rip),%xmm12        # 4540 <_sk_callback_sse2+0x7f5>
17295  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17296  DB  68,15,40,45,136,35,0,0              ; movaps        0x2388(%rip),%xmm13        # 4550 <_sk_callback_sse2+0x805>
17297  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
17298  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
17299  DB  68,15,89,45,136,35,0,0              ; mulps         0x2388(%rip),%xmm13        # 4560 <_sk_callback_sse2+0x815>
17300  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
17301  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
17302  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
17303  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
17304  DB  68,15,84,195                        ; andps         %xmm3,%xmm8
17305  DB  65,15,85,220                        ; andnps        %xmm12,%xmm3
17306  DB  65,15,86,216                        ; orps          %xmm8,%xmm3
17307  DB  65,15,95,219                        ; maxps         %xmm11,%xmm3
17308  DB  65,15,93,218                        ; minps         %xmm10,%xmm3
17309  DB  72,173                              ; lods          %ds:(%rsi),%rax
17310  DB  255,224                             ; jmpq          *%rax
17311
17312PUBLIC _sk_lab_to_xyz_sse2
17313_sk_lab_to_xyz_sse2 LABEL PROC
17314  DB  15,89,5,101,35,0,0                  ; mulps         0x2365(%rip),%xmm0        # 4570 <_sk_callback_sse2+0x825>
17315  DB  68,15,40,5,109,35,0,0               ; movaps        0x236d(%rip),%xmm8        # 4580 <_sk_callback_sse2+0x835>
17316  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
17317  DB  68,15,40,13,113,35,0,0              ; movaps        0x2371(%rip),%xmm9        # 4590 <_sk_callback_sse2+0x845>
17318  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
17319  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
17320  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
17321  DB  15,88,5,110,35,0,0                  ; addps         0x236e(%rip),%xmm0        # 45a0 <_sk_callback_sse2+0x855>
17322  DB  15,89,5,119,35,0,0                  ; mulps         0x2377(%rip),%xmm0        # 45b0 <_sk_callback_sse2+0x865>
17323  DB  15,89,13,128,35,0,0                 ; mulps         0x2380(%rip),%xmm1        # 45c0 <_sk_callback_sse2+0x875>
17324  DB  15,88,200                           ; addps         %xmm0,%xmm1
17325  DB  15,89,21,134,35,0,0                 ; mulps         0x2386(%rip),%xmm2        # 45d0 <_sk_callback_sse2+0x885>
17326  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
17327  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
17328  DB  68,15,40,225                        ; movaps        %xmm1,%xmm12
17329  DB  69,15,89,228                        ; mulps         %xmm12,%xmm12
17330  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
17331  DB  15,40,21,123,35,0,0                 ; movaps        0x237b(%rip),%xmm2        # 45e0 <_sk_callback_sse2+0x895>
17332  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
17333  DB  69,15,194,196,1                     ; cmpltps       %xmm12,%xmm8
17334  DB  68,15,40,21,122,35,0,0              ; movaps        0x237a(%rip),%xmm10        # 45f0 <_sk_callback_sse2+0x8a5>
17335  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
17336  DB  68,15,40,29,126,35,0,0              ; movaps        0x237e(%rip),%xmm11        # 4600 <_sk_callback_sse2+0x8b5>
17337  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
17338  DB  69,15,84,224                        ; andps         %xmm8,%xmm12
17339  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
17340  DB  69,15,86,196                        ; orps          %xmm12,%xmm8
17341  DB  68,15,40,224                        ; movaps        %xmm0,%xmm12
17342  DB  69,15,89,228                        ; mulps         %xmm12,%xmm12
17343  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
17344  DB  15,40,202                           ; movaps        %xmm2,%xmm1
17345  DB  65,15,194,204,1                     ; cmpltps       %xmm12,%xmm1
17346  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
17347  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
17348  DB  68,15,84,225                        ; andps         %xmm1,%xmm12
17349  DB  15,85,200                           ; andnps        %xmm0,%xmm1
17350  DB  65,15,86,204                        ; orps          %xmm12,%xmm1
17351  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
17352  DB  15,89,192                           ; mulps         %xmm0,%xmm0
17353  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
17354  DB  15,194,208,1                        ; cmpltps       %xmm0,%xmm2
17355  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
17356  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
17357  DB  15,84,194                           ; andps         %xmm2,%xmm0
17358  DB  65,15,85,209                        ; andnps        %xmm9,%xmm2
17359  DB  15,86,208                           ; orps          %xmm0,%xmm2
17360  DB  68,15,89,5,46,35,0,0                ; mulps         0x232e(%rip),%xmm8        # 4610 <_sk_callback_sse2+0x8c5>
17361  DB  15,89,21,55,35,0,0                  ; mulps         0x2337(%rip),%xmm2        # 4620 <_sk_callback_sse2+0x8d5>
17362  DB  72,173                              ; lods          %ds:(%rsi),%rax
17363  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
17364  DB  255,224                             ; jmpq          *%rax
17365
17366PUBLIC _sk_load_a8_sse2
17367_sk_load_a8_sse2 LABEL PROC
17368  DB  72,173                              ; lods          %ds:(%rsi),%rax
17369  DB  72,139,0                            ; mov           (%rax),%rax
17370  DB  102,15,110,4,56                     ; movd          (%rax,%rdi,1),%xmm0
17371  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17372  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
17373  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
17374  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
17375  DB  15,89,29,31,35,0,0                  ; mulps         0x231f(%rip),%xmm3        # 4630 <_sk_callback_sse2+0x8e5>
17376  DB  72,173                              ; lods          %ds:(%rsi),%rax
17377  DB  15,87,192                           ; xorps         %xmm0,%xmm0
17378  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17379  DB  15,87,210                           ; xorps         %xmm2,%xmm2
17380  DB  255,224                             ; jmpq          *%rax
17381
17382PUBLIC _sk_gather_a8_sse2
17383_sk_gather_a8_sse2 LABEL PROC
17384  DB  72,173                              ; lods          %ds:(%rsi),%rax
17385  DB  76,139,8                            ; mov           (%rax),%r9
17386  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
17387  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
17388  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
17389  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
17390  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
17391  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
17392  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
17393  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
17394  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
17395  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
17396  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
17397  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
17398  DB  65,137,192                          ; mov           %eax,%r8d
17399  DB  72,193,232,32                       ; shr           $0x20,%rax
17400  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
17401  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17402  DB  65,137,202                          ; mov           %ecx,%r10d
17403  DB  72,193,233,32                       ; shr           $0x20,%rcx
17404  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
17405  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
17406  DB  193,225,8                           ; shl           $0x8,%ecx
17407  DB  68,9,209                            ; or            %r10d,%ecx
17408  DB  71,15,182,4,1                       ; movzbl        (%r9,%r8,1),%r8d
17409  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
17410  DB  193,224,8                           ; shl           $0x8,%eax
17411  DB  68,9,192                            ; or            %r8d,%eax
17412  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
17413  DB  102,15,196,193,1                    ; pinsrw        $0x1,%ecx,%xmm0
17414  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17415  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
17416  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
17417  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
17418  DB  15,89,29,142,34,0,0                 ; mulps         0x228e(%rip),%xmm3        # 4640 <_sk_callback_sse2+0x8f5>
17419  DB  72,173                              ; lods          %ds:(%rsi),%rax
17420  DB  15,87,192                           ; xorps         %xmm0,%xmm0
17421  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17422  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
17423  DB  255,224                             ; jmpq          *%rax
17424
17425PUBLIC _sk_store_a8_sse2
17426_sk_store_a8_sse2 LABEL PROC
17427  DB  72,173                              ; lods          %ds:(%rsi),%rax
17428  DB  72,139,0                            ; mov           (%rax),%rax
17429  DB  68,15,40,5,130,34,0,0               ; movaps        0x2282(%rip),%xmm8        # 4650 <_sk_callback_sse2+0x905>
17430  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
17431  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
17432  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
17433  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
17434  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
17435  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
17436  DB  102,68,15,126,4,56                  ; movd          %xmm8,(%rax,%rdi,1)
17437  DB  72,173                              ; lods          %ds:(%rsi),%rax
17438  DB  255,224                             ; jmpq          *%rax
17439
17440PUBLIC _sk_load_g8_sse2
17441_sk_load_g8_sse2 LABEL PROC
17442  DB  72,173                              ; lods          %ds:(%rsi),%rax
17443  DB  72,139,0                            ; mov           (%rax),%rax
17444  DB  102,15,110,4,56                     ; movd          (%rax,%rdi,1),%xmm0
17445  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17446  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
17447  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
17448  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17449  DB  15,89,5,73,34,0,0                   ; mulps         0x2249(%rip),%xmm0        # 4660 <_sk_callback_sse2+0x915>
17450  DB  72,173                              ; lods          %ds:(%rsi),%rax
17451  DB  15,40,29,80,34,0,0                  ; movaps        0x2250(%rip),%xmm3        # 4670 <_sk_callback_sse2+0x925>
17452  DB  15,40,200                           ; movaps        %xmm0,%xmm1
17453  DB  15,40,208                           ; movaps        %xmm0,%xmm2
17454  DB  255,224                             ; jmpq          *%rax
17455
17456PUBLIC _sk_gather_g8_sse2
17457_sk_gather_g8_sse2 LABEL PROC
17458  DB  72,173                              ; lods          %ds:(%rsi),%rax
17459  DB  76,139,8                            ; mov           (%rax),%r9
17460  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
17461  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
17462  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
17463  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
17464  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
17465  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
17466  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
17467  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
17468  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
17469  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
17470  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
17471  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
17472  DB  65,137,192                          ; mov           %eax,%r8d
17473  DB  72,193,232,32                       ; shr           $0x20,%rax
17474  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
17475  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17476  DB  65,137,202                          ; mov           %ecx,%r10d
17477  DB  72,193,233,32                       ; shr           $0x20,%rcx
17478  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
17479  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
17480  DB  193,225,8                           ; shl           $0x8,%ecx
17481  DB  68,9,209                            ; or            %r10d,%ecx
17482  DB  71,15,182,4,1                       ; movzbl        (%r9,%r8,1),%r8d
17483  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
17484  DB  193,224,8                           ; shl           $0x8,%eax
17485  DB  68,9,192                            ; or            %r8d,%eax
17486  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
17487  DB  102,15,196,193,1                    ; pinsrw        $0x1,%ecx,%xmm0
17488  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17489  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
17490  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
17491  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17492  DB  15,89,5,197,33,0,0                  ; mulps         0x21c5(%rip),%xmm0        # 4680 <_sk_callback_sse2+0x935>
17493  DB  72,173                              ; lods          %ds:(%rsi),%rax
17494  DB  15,40,29,204,33,0,0                 ; movaps        0x21cc(%rip),%xmm3        # 4690 <_sk_callback_sse2+0x945>
17495  DB  15,40,200                           ; movaps        %xmm0,%xmm1
17496  DB  15,40,208                           ; movaps        %xmm0,%xmm2
17497  DB  255,224                             ; jmpq          *%rax
17498
17499PUBLIC _sk_gather_i8_sse2
17500_sk_gather_i8_sse2 LABEL PROC
17501  DB  72,173                              ; lods          %ds:(%rsi),%rax
17502  DB  73,137,192                          ; mov           %rax,%r8
17503  DB  77,133,192                          ; test          %r8,%r8
17504  DB  116,5                               ; je            24db <_sk_gather_i8_sse2+0xf>
17505  DB  76,137,192                          ; mov           %r8,%rax
17506  DB  235,2                               ; jmp           24dd <_sk_gather_i8_sse2+0x11>
17507  DB  72,173                              ; lods          %ds:(%rsi),%rax
17508  DB  76,139,16                           ; mov           (%rax),%r10
17509  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
17510  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
17511  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
17512  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
17513  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
17514  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
17515  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
17516  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
17517  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
17518  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
17519  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
17520  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
17521  DB  65,137,193                          ; mov           %eax,%r9d
17522  DB  72,193,232,32                       ; shr           $0x20,%rax
17523  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
17524  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17525  DB  65,137,203                          ; mov           %ecx,%r11d
17526  DB  72,193,233,32                       ; shr           $0x20,%rcx
17527  DB  71,15,182,28,26                     ; movzbl        (%r10,%r11,1),%r11d
17528  DB  65,15,182,12,10                     ; movzbl        (%r10,%rcx,1),%ecx
17529  DB  193,225,8                           ; shl           $0x8,%ecx
17530  DB  68,9,217                            ; or            %r11d,%ecx
17531  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
17532  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
17533  DB  193,224,8                           ; shl           $0x8,%eax
17534  DB  68,9,200                            ; or            %r9d,%eax
17535  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
17536  DB  102,15,196,193,1                    ; pinsrw        $0x1,%ecx,%xmm0
17537  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17538  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
17539  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
17540  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
17541  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
17542  DB  68,15,182,200                       ; movzbl        %al,%r9d
17543  DB  72,193,232,32                       ; shr           $0x20,%rax
17544  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17545  DB  77,139,64,8                         ; mov           0x8(%r8),%r8
17546  DB  68,15,182,209                       ; movzbl        %cl,%r10d
17547  DB  72,193,233,30                       ; shr           $0x1e,%rcx
17548  DB  102,65,15,110,4,8                   ; movd          (%r8,%rcx,1),%xmm0
17549  DB  102,65,15,110,12,128                ; movd          (%r8,%rax,4),%xmm1
17550  DB  102,15,98,193                       ; punpckldq     %xmm1,%xmm0
17551  DB  102,71,15,110,12,144                ; movd          (%r8,%r10,4),%xmm9
17552  DB  102,67,15,110,12,136                ; movd          (%r8,%r9,4),%xmm1
17553  DB  102,68,15,98,201                    ; punpckldq     %xmm1,%xmm9
17554  DB  102,68,15,98,200                    ; punpckldq     %xmm0,%xmm9
17555  DB  102,15,111,21,235,32,0,0            ; movdqa        0x20eb(%rip),%xmm2        # 46a0 <_sk_callback_sse2+0x955>
17556  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
17557  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
17558  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17559  DB  68,15,40,5,231,32,0,0               ; movaps        0x20e7(%rip),%xmm8        # 46b0 <_sk_callback_sse2+0x965>
17560  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
17561  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
17562  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
17563  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
17564  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
17565  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
17566  DB  102,65,15,111,217                   ; movdqa        %xmm9,%xmm3
17567  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
17568  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
17569  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
17570  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
17571  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
17572  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
17573  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
17574  DB  72,173                              ; lods          %ds:(%rsi),%rax
17575  DB  255,224                             ; jmpq          *%rax
17576
17577PUBLIC _sk_load_565_sse2
17578_sk_load_565_sse2 LABEL PROC
17579  DB  72,173                              ; lods          %ds:(%rsi),%rax
17580  DB  72,139,0                            ; mov           (%rax),%rax
17581  DB  243,15,126,20,120                   ; movq          (%rax,%rdi,2),%xmm2
17582  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
17583  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
17584  DB  102,15,111,5,157,32,0,0             ; movdqa        0x209d(%rip),%xmm0        # 46c0 <_sk_callback_sse2+0x975>
17585  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
17586  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17587  DB  15,89,5,159,32,0,0                  ; mulps         0x209f(%rip),%xmm0        # 46d0 <_sk_callback_sse2+0x985>
17588  DB  102,15,111,13,167,32,0,0            ; movdqa        0x20a7(%rip),%xmm1        # 46e0 <_sk_callback_sse2+0x995>
17589  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
17590  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
17591  DB  15,89,13,169,32,0,0                 ; mulps         0x20a9(%rip),%xmm1        # 46f0 <_sk_callback_sse2+0x9a5>
17592  DB  102,15,219,21,177,32,0,0            ; pand          0x20b1(%rip),%xmm2        # 4700 <_sk_callback_sse2+0x9b5>
17593  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
17594  DB  15,89,21,183,32,0,0                 ; mulps         0x20b7(%rip),%xmm2        # 4710 <_sk_callback_sse2+0x9c5>
17595  DB  72,173                              ; lods          %ds:(%rsi),%rax
17596  DB  15,40,29,190,32,0,0                 ; movaps        0x20be(%rip),%xmm3        # 4720 <_sk_callback_sse2+0x9d5>
17597  DB  255,224                             ; jmpq          *%rax
17598
17599PUBLIC _sk_gather_565_sse2
17600_sk_gather_565_sse2 LABEL PROC
17601  DB  72,173                              ; lods          %ds:(%rsi),%rax
17602  DB  76,139,8                            ; mov           (%rax),%r9
17603  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
17604  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
17605  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
17606  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
17607  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
17608  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
17609  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
17610  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
17611  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
17612  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
17613  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
17614  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
17615  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
17616  DB  65,137,192                          ; mov           %eax,%r8d
17617  DB  72,193,232,32                       ; shr           $0x20,%rax
17618  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17619  DB  65,137,202                          ; mov           %ecx,%r10d
17620  DB  72,193,233,32                       ; shr           $0x20,%rcx
17621  DB  102,67,15,196,20,81,0               ; pinsrw        $0x0,(%r9,%r10,2),%xmm2
17622  DB  102,65,15,196,20,73,1               ; pinsrw        $0x1,(%r9,%rcx,2),%xmm2
17623  DB  67,15,183,12,65                     ; movzwl        (%r9,%r8,2),%ecx
17624  DB  102,15,196,209,2                    ; pinsrw        $0x2,%ecx,%xmm2
17625  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
17626  DB  102,15,196,208,3                    ; pinsrw        $0x3,%eax,%xmm2
17627  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
17628  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
17629  DB  102,15,111,5,71,32,0,0              ; movdqa        0x2047(%rip),%xmm0        # 4730 <_sk_callback_sse2+0x9e5>
17630  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
17631  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17632  DB  15,89,5,73,32,0,0                   ; mulps         0x2049(%rip),%xmm0        # 4740 <_sk_callback_sse2+0x9f5>
17633  DB  102,15,111,13,81,32,0,0             ; movdqa        0x2051(%rip),%xmm1        # 4750 <_sk_callback_sse2+0xa05>
17634  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
17635  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
17636  DB  15,89,13,83,32,0,0                  ; mulps         0x2053(%rip),%xmm1        # 4760 <_sk_callback_sse2+0xa15>
17637  DB  102,15,219,21,91,32,0,0             ; pand          0x205b(%rip),%xmm2        # 4770 <_sk_callback_sse2+0xa25>
17638  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
17639  DB  15,89,21,97,32,0,0                  ; mulps         0x2061(%rip),%xmm2        # 4780 <_sk_callback_sse2+0xa35>
17640  DB  72,173                              ; lods          %ds:(%rsi),%rax
17641  DB  15,40,29,104,32,0,0                 ; movaps        0x2068(%rip),%xmm3        # 4790 <_sk_callback_sse2+0xa45>
17642  DB  255,224                             ; jmpq          *%rax
17643
17644PUBLIC _sk_store_565_sse2
17645_sk_store_565_sse2 LABEL PROC
17646  DB  72,173                              ; lods          %ds:(%rsi),%rax
17647  DB  72,139,0                            ; mov           (%rax),%rax
17648  DB  68,15,40,5,105,32,0,0               ; movaps        0x2069(%rip),%xmm8        # 47a0 <_sk_callback_sse2+0xa55>
17649  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
17650  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
17651  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
17652  DB  102,65,15,114,241,11                ; pslld         $0xb,%xmm9
17653  DB  68,15,40,21,94,32,0,0               ; movaps        0x205e(%rip),%xmm10        # 47b0 <_sk_callback_sse2+0xa65>
17654  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
17655  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
17656  DB  102,65,15,114,242,5                 ; pslld         $0x5,%xmm10
17657  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
17658  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
17659  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
17660  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
17661  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
17662  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
17663  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
17664  DB  102,68,15,214,4,120                 ; movq          %xmm8,(%rax,%rdi,2)
17665  DB  72,173                              ; lods          %ds:(%rsi),%rax
17666  DB  255,224                             ; jmpq          *%rax
17667
17668PUBLIC _sk_load_4444_sse2
17669_sk_load_4444_sse2 LABEL PROC
17670  DB  72,173                              ; lods          %ds:(%rsi),%rax
17671  DB  72,139,0                            ; mov           (%rax),%rax
17672  DB  243,15,126,28,120                   ; movq          (%rax,%rdi,2),%xmm3
17673  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
17674  DB  102,15,97,216                       ; punpcklwd     %xmm0,%xmm3
17675  DB  102,15,111,5,23,32,0,0              ; movdqa        0x2017(%rip),%xmm0        # 47c0 <_sk_callback_sse2+0xa75>
17676  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
17677  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17678  DB  15,89,5,25,32,0,0                   ; mulps         0x2019(%rip),%xmm0        # 47d0 <_sk_callback_sse2+0xa85>
17679  DB  102,15,111,13,33,32,0,0             ; movdqa        0x2021(%rip),%xmm1        # 47e0 <_sk_callback_sse2+0xa95>
17680  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
17681  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
17682  DB  15,89,13,35,32,0,0                  ; mulps         0x2023(%rip),%xmm1        # 47f0 <_sk_callback_sse2+0xaa5>
17683  DB  102,15,111,21,43,32,0,0             ; movdqa        0x202b(%rip),%xmm2        # 4800 <_sk_callback_sse2+0xab5>
17684  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
17685  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
17686  DB  15,89,21,45,32,0,0                  ; mulps         0x202d(%rip),%xmm2        # 4810 <_sk_callback_sse2+0xac5>
17687  DB  102,15,219,29,53,32,0,0             ; pand          0x2035(%rip),%xmm3        # 4820 <_sk_callback_sse2+0xad5>
17688  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
17689  DB  15,89,29,59,32,0,0                  ; mulps         0x203b(%rip),%xmm3        # 4830 <_sk_callback_sse2+0xae5>
17690  DB  72,173                              ; lods          %ds:(%rsi),%rax
17691  DB  255,224                             ; jmpq          *%rax
17692
17693PUBLIC _sk_gather_4444_sse2
17694_sk_gather_4444_sse2 LABEL PROC
17695  DB  72,173                              ; lods          %ds:(%rsi),%rax
17696  DB  76,139,8                            ; mov           (%rax),%r9
17697  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
17698  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
17699  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
17700  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
17701  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
17702  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
17703  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
17704  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
17705  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
17706  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
17707  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
17708  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
17709  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
17710  DB  65,137,192                          ; mov           %eax,%r8d
17711  DB  72,193,232,32                       ; shr           $0x20,%rax
17712  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17713  DB  65,137,202                          ; mov           %ecx,%r10d
17714  DB  72,193,233,32                       ; shr           $0x20,%rcx
17715  DB  102,67,15,196,28,81,0               ; pinsrw        $0x0,(%r9,%r10,2),%xmm3
17716  DB  102,65,15,196,28,73,1               ; pinsrw        $0x1,(%r9,%rcx,2),%xmm3
17717  DB  67,15,183,12,65                     ; movzwl        (%r9,%r8,2),%ecx
17718  DB  102,15,196,217,2                    ; pinsrw        $0x2,%ecx,%xmm3
17719  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
17720  DB  102,15,196,216,3                    ; pinsrw        $0x3,%eax,%xmm3
17721  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
17722  DB  102,15,97,216                       ; punpcklwd     %xmm0,%xmm3
17723  DB  102,15,111,5,194,31,0,0             ; movdqa        0x1fc2(%rip),%xmm0        # 4840 <_sk_callback_sse2+0xaf5>
17724  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
17725  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17726  DB  15,89,5,196,31,0,0                  ; mulps         0x1fc4(%rip),%xmm0        # 4850 <_sk_callback_sse2+0xb05>
17727  DB  102,15,111,13,204,31,0,0            ; movdqa        0x1fcc(%rip),%xmm1        # 4860 <_sk_callback_sse2+0xb15>
17728  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
17729  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
17730  DB  15,89,13,206,31,0,0                 ; mulps         0x1fce(%rip),%xmm1        # 4870 <_sk_callback_sse2+0xb25>
17731  DB  102,15,111,21,214,31,0,0            ; movdqa        0x1fd6(%rip),%xmm2        # 4880 <_sk_callback_sse2+0xb35>
17732  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
17733  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
17734  DB  15,89,21,216,31,0,0                 ; mulps         0x1fd8(%rip),%xmm2        # 4890 <_sk_callback_sse2+0xb45>
17735  DB  102,15,219,29,224,31,0,0            ; pand          0x1fe0(%rip),%xmm3        # 48a0 <_sk_callback_sse2+0xb55>
17736  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
17737  DB  15,89,29,230,31,0,0                 ; mulps         0x1fe6(%rip),%xmm3        # 48b0 <_sk_callback_sse2+0xb65>
17738  DB  72,173                              ; lods          %ds:(%rsi),%rax
17739  DB  255,224                             ; jmpq          *%rax
17740
17741PUBLIC _sk_store_4444_sse2
17742_sk_store_4444_sse2 LABEL PROC
17743  DB  72,173                              ; lods          %ds:(%rsi),%rax
17744  DB  72,139,0                            ; mov           (%rax),%rax
17745  DB  68,15,40,5,229,31,0,0               ; movaps        0x1fe5(%rip),%xmm8        # 48c0 <_sk_callback_sse2+0xb75>
17746  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
17747  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
17748  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
17749  DB  102,65,15,114,241,12                ; pslld         $0xc,%xmm9
17750  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
17751  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
17752  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
17753  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
17754  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
17755  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
17756  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
17757  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
17758  DB  102,65,15,114,241,4                 ; pslld         $0x4,%xmm9
17759  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
17760  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
17761  DB  102,69,15,86,193                    ; orpd          %xmm9,%xmm8
17762  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
17763  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
17764  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
17765  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
17766  DB  102,68,15,214,4,120                 ; movq          %xmm8,(%rax,%rdi,2)
17767  DB  72,173                              ; lods          %ds:(%rsi),%rax
17768  DB  255,224                             ; jmpq          *%rax
17769
17770PUBLIC _sk_load_8888_sse2
17771_sk_load_8888_sse2 LABEL PROC
17772  DB  72,173                              ; lods          %ds:(%rsi),%rax
17773  DB  72,139,0                            ; mov           (%rax),%rax
17774  DB  68,15,16,12,184                     ; movups        (%rax,%rdi,4),%xmm9
17775  DB  15,40,21,120,31,0,0                 ; movaps        0x1f78(%rip),%xmm2        # 48d0 <_sk_callback_sse2+0xb85>
17776  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
17777  DB  15,84,194                           ; andps         %xmm2,%xmm0
17778  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17779  DB  68,15,40,5,118,31,0,0               ; movaps        0x1f76(%rip),%xmm8        # 48e0 <_sk_callback_sse2+0xb95>
17780  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
17781  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
17782  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
17783  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
17784  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
17785  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
17786  DB  65,15,40,217                        ; movaps        %xmm9,%xmm3
17787  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
17788  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
17789  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
17790  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
17791  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
17792  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
17793  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
17794  DB  72,173                              ; lods          %ds:(%rsi),%rax
17795  DB  255,224                             ; jmpq          *%rax
17796
17797PUBLIC _sk_gather_8888_sse2
17798_sk_gather_8888_sse2 LABEL PROC
17799  DB  72,173                              ; lods          %ds:(%rsi),%rax
17800  DB  76,139,8                            ; mov           (%rax),%r9
17801  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
17802  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
17803  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
17804  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
17805  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
17806  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
17807  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
17808  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
17809  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
17810  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
17811  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
17812  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
17813  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
17814  DB  65,137,192                          ; mov           %eax,%r8d
17815  DB  72,193,232,32                       ; shr           $0x20,%rax
17816  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17817  DB  65,137,202                          ; mov           %ecx,%r10d
17818  DB  72,193,233,32                       ; shr           $0x20,%rcx
17819  DB  102,65,15,110,4,137                 ; movd          (%r9,%rcx,4),%xmm0
17820  DB  102,65,15,110,12,129                ; movd          (%r9,%rax,4),%xmm1
17821  DB  102,15,98,193                       ; punpckldq     %xmm1,%xmm0
17822  DB  102,71,15,110,12,145                ; movd          (%r9,%r10,4),%xmm9
17823  DB  102,67,15,110,12,129                ; movd          (%r9,%r8,4),%xmm1
17824  DB  102,68,15,98,201                    ; punpckldq     %xmm1,%xmm9
17825  DB  102,68,15,98,200                    ; punpckldq     %xmm0,%xmm9
17826  DB  102,15,111,21,199,30,0,0            ; movdqa        0x1ec7(%rip),%xmm2        # 48f0 <_sk_callback_sse2+0xba5>
17827  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
17828  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
17829  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17830  DB  68,15,40,5,195,30,0,0               ; movaps        0x1ec3(%rip),%xmm8        # 4900 <_sk_callback_sse2+0xbb5>
17831  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
17832  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
17833  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
17834  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
17835  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
17836  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
17837  DB  102,65,15,111,217                   ; movdqa        %xmm9,%xmm3
17838  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
17839  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
17840  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
17841  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
17842  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
17843  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
17844  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
17845  DB  72,173                              ; lods          %ds:(%rsi),%rax
17846  DB  255,224                             ; jmpq          *%rax
17847
17848PUBLIC _sk_store_8888_sse2
17849_sk_store_8888_sse2 LABEL PROC
17850  DB  72,173                              ; lods          %ds:(%rsi),%rax
17851  DB  72,139,0                            ; mov           (%rax),%rax
17852  DB  68,15,40,5,134,30,0,0               ; movaps        0x1e86(%rip),%xmm8        # 4910 <_sk_callback_sse2+0xbc5>
17853  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
17854  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
17855  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
17856  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
17857  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
17858  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
17859  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
17860  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
17861  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
17862  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
17863  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
17864  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
17865  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
17866  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
17867  DB  102,65,15,114,240,24                ; pslld         $0x18,%xmm8
17868  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
17869  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
17870  DB  243,68,15,127,4,184                 ; movdqu        %xmm8,(%rax,%rdi,4)
17871  DB  72,173                              ; lods          %ds:(%rsi),%rax
17872  DB  255,224                             ; jmpq          *%rax
17873
17874PUBLIC _sk_load_f16_sse2
17875_sk_load_f16_sse2 LABEL PROC
17876  DB  72,173                              ; lods          %ds:(%rsi),%rax
17877  DB  72,139,0                            ; mov           (%rax),%rax
17878  DB  243,15,111,4,248                    ; movdqu        (%rax,%rdi,8),%xmm0
17879  DB  243,15,111,76,248,16                ; movdqu        0x10(%rax,%rdi,8),%xmm1
17880  DB  102,68,15,111,192                   ; movdqa        %xmm0,%xmm8
17881  DB  102,68,15,97,193                    ; punpcklwd     %xmm1,%xmm8
17882  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
17883  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
17884  DB  102,68,15,97,240                    ; punpcklwd     %xmm0,%xmm14
17885  DB  102,68,15,105,192                   ; punpckhwd     %xmm0,%xmm8
17886  DB  102,69,15,239,210                   ; pxor          %xmm10,%xmm10
17887  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
17888  DB  102,65,15,97,202                    ; punpcklwd     %xmm10,%xmm1
17889  DB  102,68,15,111,13,246,29,0,0         ; movdqa        0x1df6(%rip),%xmm9        # 4920 <_sk_callback_sse2+0xbd5>
17890  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
17891  DB  102,65,15,219,193                   ; pand          %xmm9,%xmm0
17892  DB  102,15,239,200                      ; pxor          %xmm0,%xmm1
17893  DB  102,15,114,240,16                   ; pslld         $0x10,%xmm0
17894  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
17895  DB  102,65,15,114,245,13                ; pslld         $0xd,%xmm13
17896  DB  102,68,15,235,232                   ; por           %xmm0,%xmm13
17897  DB  102,68,15,111,29,219,29,0,0         ; movdqa        0x1ddb(%rip),%xmm11        # 4930 <_sk_callback_sse2+0xbe5>
17898  DB  102,69,15,254,235                   ; paddd         %xmm11,%xmm13
17899  DB  102,68,15,111,37,221,29,0,0         ; movdqa        0x1ddd(%rip),%xmm12        # 4940 <_sk_callback_sse2+0xbf5>
17900  DB  102,65,15,239,204                   ; pxor          %xmm12,%xmm1
17901  DB  102,15,111,29,224,29,0,0            ; movdqa        0x1de0(%rip),%xmm3        # 4950 <_sk_callback_sse2+0xc05>
17902  DB  102,15,111,195                      ; movdqa        %xmm3,%xmm0
17903  DB  102,15,102,193                      ; pcmpgtd       %xmm1,%xmm0
17904  DB  102,65,15,223,197                   ; pandn         %xmm13,%xmm0
17905  DB  102,65,15,115,222,8                 ; psrldq        $0x8,%xmm14
17906  DB  102,69,15,97,242                    ; punpcklwd     %xmm10,%xmm14
17907  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
17908  DB  102,65,15,219,201                   ; pand          %xmm9,%xmm1
17909  DB  102,68,15,239,241                   ; pxor          %xmm1,%xmm14
17910  DB  102,15,114,241,16                   ; pslld         $0x10,%xmm1
17911  DB  102,65,15,111,214                   ; movdqa        %xmm14,%xmm2
17912  DB  102,15,114,242,13                   ; pslld         $0xd,%xmm2
17913  DB  102,15,235,209                      ; por           %xmm1,%xmm2
17914  DB  102,65,15,254,211                   ; paddd         %xmm11,%xmm2
17915  DB  102,69,15,239,244                   ; pxor          %xmm12,%xmm14
17916  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
17917  DB  102,65,15,102,206                   ; pcmpgtd       %xmm14,%xmm1
17918  DB  102,15,223,202                      ; pandn         %xmm2,%xmm1
17919  DB  102,69,15,111,232                   ; movdqa        %xmm8,%xmm13
17920  DB  102,69,15,97,234                    ; punpcklwd     %xmm10,%xmm13
17921  DB  102,65,15,111,213                   ; movdqa        %xmm13,%xmm2
17922  DB  102,65,15,219,209                   ; pand          %xmm9,%xmm2
17923  DB  102,68,15,239,234                   ; pxor          %xmm2,%xmm13
17924  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
17925  DB  102,69,15,111,245                   ; movdqa        %xmm13,%xmm14
17926  DB  102,65,15,114,246,13                ; pslld         $0xd,%xmm14
17927  DB  102,68,15,235,242                   ; por           %xmm2,%xmm14
17928  DB  102,69,15,254,243                   ; paddd         %xmm11,%xmm14
17929  DB  102,69,15,239,236                   ; pxor          %xmm12,%xmm13
17930  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
17931  DB  102,65,15,102,213                   ; pcmpgtd       %xmm13,%xmm2
17932  DB  102,65,15,223,214                   ; pandn         %xmm14,%xmm2
17933  DB  102,65,15,115,216,8                 ; psrldq        $0x8,%xmm8
17934  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
17935  DB  102,69,15,219,200                   ; pand          %xmm8,%xmm9
17936  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
17937  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
17938  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
17939  DB  102,65,15,114,242,13                ; pslld         $0xd,%xmm10
17940  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
17941  DB  102,69,15,254,211                   ; paddd         %xmm11,%xmm10
17942  DB  102,69,15,239,196                   ; pxor          %xmm12,%xmm8
17943  DB  102,65,15,102,216                   ; pcmpgtd       %xmm8,%xmm3
17944  DB  102,65,15,223,218                   ; pandn         %xmm10,%xmm3
17945  DB  72,173                              ; lods          %ds:(%rsi),%rax
17946  DB  255,224                             ; jmpq          *%rax
17947
17948PUBLIC _sk_gather_f16_sse2
17949_sk_gather_f16_sse2 LABEL PROC
17950  DB  72,173                              ; lods          %ds:(%rsi),%rax
17951  DB  76,139,8                            ; mov           (%rax),%r9
17952  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
17953  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
17954  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
17955  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
17956  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
17957  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
17958  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
17959  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
17960  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
17961  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
17962  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
17963  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
17964  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
17965  DB  65,137,192                          ; mov           %eax,%r8d
17966  DB  72,193,232,32                       ; shr           $0x20,%rax
17967  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17968  DB  65,137,202                          ; mov           %ecx,%r10d
17969  DB  72,193,233,32                       ; shr           $0x20,%rcx
17970  DB  243,65,15,126,4,201                 ; movq          (%r9,%rcx,8),%xmm0
17971  DB  243,67,15,126,12,209                ; movq          (%r9,%r10,8),%xmm1
17972  DB  102,15,108,200                      ; punpcklqdq    %xmm0,%xmm1
17973  DB  243,65,15,126,4,193                 ; movq          (%r9,%rax,8),%xmm0
17974  DB  243,67,15,126,20,193                ; movq          (%r9,%r8,8),%xmm2
17975  DB  102,15,108,208                      ; punpcklqdq    %xmm0,%xmm2
17976  DB  102,68,15,111,193                   ; movdqa        %xmm1,%xmm8
17977  DB  102,68,15,97,194                    ; punpcklwd     %xmm2,%xmm8
17978  DB  102,15,105,202                      ; punpckhwd     %xmm2,%xmm1
17979  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
17980  DB  102,68,15,97,241                    ; punpcklwd     %xmm1,%xmm14
17981  DB  102,68,15,105,193                   ; punpckhwd     %xmm1,%xmm8
17982  DB  102,69,15,239,210                   ; pxor          %xmm10,%xmm10
17983  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
17984  DB  102,65,15,97,202                    ; punpcklwd     %xmm10,%xmm1
17985  DB  102,68,15,111,13,110,28,0,0         ; movdqa        0x1c6e(%rip),%xmm9        # 4960 <_sk_callback_sse2+0xc15>
17986  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
17987  DB  102,65,15,219,193                   ; pand          %xmm9,%xmm0
17988  DB  102,15,239,200                      ; pxor          %xmm0,%xmm1
17989  DB  102,15,114,240,16                   ; pslld         $0x10,%xmm0
17990  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
17991  DB  102,65,15,114,245,13                ; pslld         $0xd,%xmm13
17992  DB  102,68,15,235,232                   ; por           %xmm0,%xmm13
17993  DB  102,68,15,111,29,83,28,0,0          ; movdqa        0x1c53(%rip),%xmm11        # 4970 <_sk_callback_sse2+0xc25>
17994  DB  102,69,15,254,235                   ; paddd         %xmm11,%xmm13
17995  DB  102,68,15,111,37,85,28,0,0          ; movdqa        0x1c55(%rip),%xmm12        # 4980 <_sk_callback_sse2+0xc35>
17996  DB  102,65,15,239,204                   ; pxor          %xmm12,%xmm1
17997  DB  102,15,111,29,88,28,0,0             ; movdqa        0x1c58(%rip),%xmm3        # 4990 <_sk_callback_sse2+0xc45>
17998  DB  102,15,111,195                      ; movdqa        %xmm3,%xmm0
17999  DB  102,15,102,193                      ; pcmpgtd       %xmm1,%xmm0
18000  DB  102,65,15,223,197                   ; pandn         %xmm13,%xmm0
18001  DB  102,65,15,115,222,8                 ; psrldq        $0x8,%xmm14
18002  DB  102,69,15,97,242                    ; punpcklwd     %xmm10,%xmm14
18003  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
18004  DB  102,65,15,219,201                   ; pand          %xmm9,%xmm1
18005  DB  102,68,15,239,241                   ; pxor          %xmm1,%xmm14
18006  DB  102,15,114,241,16                   ; pslld         $0x10,%xmm1
18007  DB  102,65,15,111,214                   ; movdqa        %xmm14,%xmm2
18008  DB  102,15,114,242,13                   ; pslld         $0xd,%xmm2
18009  DB  102,15,235,209                      ; por           %xmm1,%xmm2
18010  DB  102,65,15,254,211                   ; paddd         %xmm11,%xmm2
18011  DB  102,69,15,239,244                   ; pxor          %xmm12,%xmm14
18012  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
18013  DB  102,65,15,102,206                   ; pcmpgtd       %xmm14,%xmm1
18014  DB  102,15,223,202                      ; pandn         %xmm2,%xmm1
18015  DB  102,69,15,111,232                   ; movdqa        %xmm8,%xmm13
18016  DB  102,69,15,97,234                    ; punpcklwd     %xmm10,%xmm13
18017  DB  102,65,15,111,213                   ; movdqa        %xmm13,%xmm2
18018  DB  102,65,15,219,209                   ; pand          %xmm9,%xmm2
18019  DB  102,68,15,239,234                   ; pxor          %xmm2,%xmm13
18020  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
18021  DB  102,69,15,111,245                   ; movdqa        %xmm13,%xmm14
18022  DB  102,65,15,114,246,13                ; pslld         $0xd,%xmm14
18023  DB  102,68,15,235,242                   ; por           %xmm2,%xmm14
18024  DB  102,69,15,254,243                   ; paddd         %xmm11,%xmm14
18025  DB  102,69,15,239,236                   ; pxor          %xmm12,%xmm13
18026  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
18027  DB  102,65,15,102,213                   ; pcmpgtd       %xmm13,%xmm2
18028  DB  102,65,15,223,214                   ; pandn         %xmm14,%xmm2
18029  DB  102,65,15,115,216,8                 ; psrldq        $0x8,%xmm8
18030  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
18031  DB  102,69,15,219,200                   ; pand          %xmm8,%xmm9
18032  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
18033  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
18034  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
18035  DB  102,65,15,114,242,13                ; pslld         $0xd,%xmm10
18036  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
18037  DB  102,69,15,254,211                   ; paddd         %xmm11,%xmm10
18038  DB  102,69,15,239,196                   ; pxor          %xmm12,%xmm8
18039  DB  102,65,15,102,216                   ; pcmpgtd       %xmm8,%xmm3
18040  DB  102,65,15,223,218                   ; pandn         %xmm10,%xmm3
18041  DB  72,173                              ; lods          %ds:(%rsi),%rax
18042  DB  255,224                             ; jmpq          *%rax
18043
18044PUBLIC _sk_store_f16_sse2
18045_sk_store_f16_sse2 LABEL PROC
18046  DB  72,173                              ; lods          %ds:(%rsi),%rax
18047  DB  72,139,0                            ; mov           (%rax),%rax
18048  DB  102,68,15,111,21,128,27,0,0         ; movdqa        0x1b80(%rip),%xmm10        # 49a0 <_sk_callback_sse2+0xc55>
18049  DB  102,68,15,111,224                   ; movdqa        %xmm0,%xmm12
18050  DB  102,68,15,111,232                   ; movdqa        %xmm0,%xmm13
18051  DB  102,69,15,219,234                   ; pand          %xmm10,%xmm13
18052  DB  102,69,15,239,229                   ; pxor          %xmm13,%xmm12
18053  DB  102,68,15,111,13,115,27,0,0         ; movdqa        0x1b73(%rip),%xmm9        # 49b0 <_sk_callback_sse2+0xc65>
18054  DB  102,65,15,114,213,16                ; psrld         $0x10,%xmm13
18055  DB  102,69,15,111,193                   ; movdqa        %xmm9,%xmm8
18056  DB  102,69,15,102,196                   ; pcmpgtd       %xmm12,%xmm8
18057  DB  102,65,15,114,212,13                ; psrld         $0xd,%xmm12
18058  DB  102,68,15,111,29,100,27,0,0         ; movdqa        0x1b64(%rip),%xmm11        # 49c0 <_sk_callback_sse2+0xc75>
18059  DB  102,69,15,235,235                   ; por           %xmm11,%xmm13
18060  DB  102,69,15,254,236                   ; paddd         %xmm12,%xmm13
18061  DB  102,65,15,114,245,16                ; pslld         $0x10,%xmm13
18062  DB  102,65,15,114,229,16                ; psrad         $0x10,%xmm13
18063  DB  102,69,15,223,197                   ; pandn         %xmm13,%xmm8
18064  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
18065  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
18066  DB  102,68,15,111,241                   ; movdqa        %xmm1,%xmm14
18067  DB  102,69,15,219,242                   ; pand          %xmm10,%xmm14
18068  DB  102,69,15,239,238                   ; pxor          %xmm14,%xmm13
18069  DB  102,65,15,114,214,16                ; psrld         $0x10,%xmm14
18070  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
18071  DB  102,69,15,102,229                   ; pcmpgtd       %xmm13,%xmm12
18072  DB  102,65,15,114,213,13                ; psrld         $0xd,%xmm13
18073  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
18074  DB  102,69,15,254,245                   ; paddd         %xmm13,%xmm14
18075  DB  102,65,15,114,246,16                ; pslld         $0x10,%xmm14
18076  DB  102,65,15,114,230,16                ; psrad         $0x10,%xmm14
18077  DB  102,69,15,223,230                   ; pandn         %xmm14,%xmm12
18078  DB  102,69,15,107,228                   ; packssdw      %xmm12,%xmm12
18079  DB  102,68,15,111,242                   ; movdqa        %xmm2,%xmm14
18080  DB  102,68,15,111,250                   ; movdqa        %xmm2,%xmm15
18081  DB  102,69,15,219,250                   ; pand          %xmm10,%xmm15
18082  DB  102,69,15,239,247                   ; pxor          %xmm15,%xmm14
18083  DB  102,65,15,114,215,16                ; psrld         $0x10,%xmm15
18084  DB  102,69,15,111,233                   ; movdqa        %xmm9,%xmm13
18085  DB  102,69,15,102,238                   ; pcmpgtd       %xmm14,%xmm13
18086  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
18087  DB  102,69,15,235,251                   ; por           %xmm11,%xmm15
18088  DB  102,69,15,254,254                   ; paddd         %xmm14,%xmm15
18089  DB  102,65,15,114,247,16                ; pslld         $0x10,%xmm15
18090  DB  102,65,15,114,231,16                ; psrad         $0x10,%xmm15
18091  DB  102,69,15,223,239                   ; pandn         %xmm15,%xmm13
18092  DB  102,69,15,107,237                   ; packssdw      %xmm13,%xmm13
18093  DB  102,68,15,219,211                   ; pand          %xmm3,%xmm10
18094  DB  102,68,15,111,243                   ; movdqa        %xmm3,%xmm14
18095  DB  102,69,15,239,242                   ; pxor          %xmm10,%xmm14
18096  DB  102,65,15,114,210,16                ; psrld         $0x10,%xmm10
18097  DB  102,69,15,102,206                   ; pcmpgtd       %xmm14,%xmm9
18098  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
18099  DB  102,69,15,235,211                   ; por           %xmm11,%xmm10
18100  DB  102,69,15,254,214                   ; paddd         %xmm14,%xmm10
18101  DB  102,65,15,114,242,16                ; pslld         $0x10,%xmm10
18102  DB  102,65,15,114,226,16                ; psrad         $0x10,%xmm10
18103  DB  102,69,15,223,202                   ; pandn         %xmm10,%xmm9
18104  DB  102,69,15,107,201                   ; packssdw      %xmm9,%xmm9
18105  DB  102,69,15,97,196                    ; punpcklwd     %xmm12,%xmm8
18106  DB  102,69,15,97,233                    ; punpcklwd     %xmm9,%xmm13
18107  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
18108  DB  102,69,15,98,205                    ; punpckldq     %xmm13,%xmm9
18109  DB  243,68,15,127,12,248                ; movdqu        %xmm9,(%rax,%rdi,8)
18110  DB  102,69,15,106,197                   ; punpckhdq     %xmm13,%xmm8
18111  DB  243,68,15,127,68,248,16             ; movdqu        %xmm8,0x10(%rax,%rdi,8)
18112  DB  72,173                              ; lods          %ds:(%rsi),%rax
18113  DB  255,224                             ; jmpq          *%rax
18114
18115PUBLIC _sk_load_u16_be_sse2
18116_sk_load_u16_be_sse2 LABEL PROC
18117  DB  72,173                              ; lods          %ds:(%rsi),%rax
18118  DB  72,139,0                            ; mov           (%rax),%rax
18119  DB  243,15,111,4,248                    ; movdqu        (%rax,%rdi,8),%xmm0
18120  DB  243,15,111,76,248,16                ; movdqu        0x10(%rax,%rdi,8),%xmm1
18121  DB  102,15,111,208                      ; movdqa        %xmm0,%xmm2
18122  DB  102,15,97,209                       ; punpcklwd     %xmm1,%xmm2
18123  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
18124  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
18125  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
18126  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
18127  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
18128  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
18129  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
18130  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
18131  DB  102,15,235,200                      ; por           %xmm0,%xmm1
18132  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
18133  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
18134  DB  15,91,193                           ; cvtdq2ps      %xmm1,%xmm0
18135  DB  68,15,40,5,2,26,0,0                 ; movaps        0x1a02(%rip),%xmm8        # 49d0 <_sk_callback_sse2+0xc85>
18136  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18137  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
18138  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
18139  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
18140  DB  102,15,235,217                      ; por           %xmm1,%xmm3
18141  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
18142  DB  15,91,203                           ; cvtdq2ps      %xmm3,%xmm1
18143  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18144  DB  102,68,15,111,210                   ; movdqa        %xmm2,%xmm10
18145  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
18146  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
18147  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
18148  DB  102,65,15,235,210                   ; por           %xmm10,%xmm2
18149  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
18150  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
18151  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
18152  DB  102,68,15,111,211                   ; movdqa        %xmm3,%xmm10
18153  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
18154  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
18155  DB  102,65,15,235,218                   ; por           %xmm10,%xmm3
18156  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
18157  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
18158  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
18159  DB  72,173                              ; lods          %ds:(%rsi),%rax
18160  DB  255,224                             ; jmpq          *%rax
18161
18162PUBLIC _sk_load_rgb_u16_be_sse2
18163_sk_load_rgb_u16_be_sse2 LABEL PROC
18164  DB  72,173                              ; lods          %ds:(%rsi),%rax
18165  DB  72,139,0                            ; mov           (%rax),%rax
18166  DB  72,141,12,127                       ; lea           (%rdi,%rdi,2),%rcx
18167  DB  243,15,111,20,72                    ; movdqu        (%rax,%rcx,2),%xmm2
18168  DB  243,15,111,68,72,8                  ; movdqu        0x8(%rax,%rcx,2),%xmm0
18169  DB  102,15,115,216,4                    ; psrldq        $0x4,%xmm0
18170  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
18171  DB  102,15,115,217,6                    ; psrldq        $0x6,%xmm1
18172  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
18173  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
18174  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
18175  DB  102,15,111,194                      ; movdqa        %xmm2,%xmm0
18176  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
18177  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
18178  DB  102,15,105,209                      ; punpckhwd     %xmm1,%xmm2
18179  DB  102,15,111,200                      ; movdqa        %xmm0,%xmm1
18180  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
18181  DB  102,15,113,208,8                    ; psrlw         $0x8,%xmm0
18182  DB  102,15,235,193                      ; por           %xmm1,%xmm0
18183  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
18184  DB  102,65,15,97,192                    ; punpcklwd     %xmm8,%xmm0
18185  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
18186  DB  68,15,40,13,62,25,0,0               ; movaps        0x193e(%rip),%xmm9        # 49e0 <_sk_callback_sse2+0xc95>
18187  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
18188  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
18189  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
18190  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
18191  DB  102,15,235,217                      ; por           %xmm1,%xmm3
18192  DB  102,65,15,97,216                    ; punpcklwd     %xmm8,%xmm3
18193  DB  15,91,203                           ; cvtdq2ps      %xmm3,%xmm1
18194  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
18195  DB  102,15,111,218                      ; movdqa        %xmm2,%xmm3
18196  DB  102,15,113,243,8                    ; psllw         $0x8,%xmm3
18197  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
18198  DB  102,15,235,211                      ; por           %xmm3,%xmm2
18199  DB  102,65,15,97,208                    ; punpcklwd     %xmm8,%xmm2
18200  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
18201  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
18202  DB  72,173                              ; lods          %ds:(%rsi),%rax
18203  DB  15,40,29,5,25,0,0                   ; movaps        0x1905(%rip),%xmm3        # 49f0 <_sk_callback_sse2+0xca5>
18204  DB  255,224                             ; jmpq          *%rax
18205
18206PUBLIC _sk_store_u16_be_sse2
18207_sk_store_u16_be_sse2 LABEL PROC
18208  DB  72,173                              ; lods          %ds:(%rsi),%rax
18209  DB  72,139,0                            ; mov           (%rax),%rax
18210  DB  68,15,40,13,6,25,0,0                ; movaps        0x1906(%rip),%xmm9        # 4a00 <_sk_callback_sse2+0xcb5>
18211  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18212  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
18213  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
18214  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
18215  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
18216  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
18217  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
18218  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
18219  DB  102,65,15,113,208,8                 ; psrlw         $0x8,%xmm8
18220  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
18221  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
18222  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18223  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
18224  DB  102,65,15,114,242,16                ; pslld         $0x10,%xmm10
18225  DB  102,65,15,114,226,16                ; psrad         $0x10,%xmm10
18226  DB  102,69,15,107,210                   ; packssdw      %xmm10,%xmm10
18227  DB  102,69,15,111,218                   ; movdqa        %xmm10,%xmm11
18228  DB  102,65,15,113,243,8                 ; psllw         $0x8,%xmm11
18229  DB  102,65,15,113,210,8                 ; psrlw         $0x8,%xmm10
18230  DB  102,69,15,235,211                   ; por           %xmm11,%xmm10
18231  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
18232  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
18233  DB  102,69,15,91,219                    ; cvtps2dq      %xmm11,%xmm11
18234  DB  102,65,15,114,243,16                ; pslld         $0x10,%xmm11
18235  DB  102,65,15,114,227,16                ; psrad         $0x10,%xmm11
18236  DB  102,69,15,107,219                   ; packssdw      %xmm11,%xmm11
18237  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
18238  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
18239  DB  102,65,15,113,211,8                 ; psrlw         $0x8,%xmm11
18240  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
18241  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
18242  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
18243  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
18244  DB  102,65,15,114,225,16                ; psrad         $0x10,%xmm9
18245  DB  102,69,15,107,201                   ; packssdw      %xmm9,%xmm9
18246  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
18247  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
18248  DB  102,65,15,113,209,8                 ; psrlw         $0x8,%xmm9
18249  DB  102,69,15,235,204                   ; por           %xmm12,%xmm9
18250  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
18251  DB  102,69,15,97,217                    ; punpcklwd     %xmm9,%xmm11
18252  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
18253  DB  102,69,15,98,203                    ; punpckldq     %xmm11,%xmm9
18254  DB  243,68,15,127,12,248                ; movdqu        %xmm9,(%rax,%rdi,8)
18255  DB  102,69,15,106,195                   ; punpckhdq     %xmm11,%xmm8
18256  DB  243,68,15,127,68,248,16             ; movdqu        %xmm8,0x10(%rax,%rdi,8)
18257  DB  72,173                              ; lods          %ds:(%rsi),%rax
18258  DB  255,224                             ; jmpq          *%rax
18259
18260PUBLIC _sk_load_f32_sse2
18261_sk_load_f32_sse2 LABEL PROC
18262  DB  72,173                              ; lods          %ds:(%rsi),%rax
18263  DB  72,139,0                            ; mov           (%rax),%rax
18264  DB  72,137,249                          ; mov           %rdi,%rcx
18265  DB  72,193,225,4                        ; shl           $0x4,%rcx
18266  DB  68,15,16,4,8                        ; movups        (%rax,%rcx,1),%xmm8
18267  DB  15,16,68,8,16                       ; movups        0x10(%rax,%rcx,1),%xmm0
18268  DB  15,16,92,8,32                       ; movups        0x20(%rax,%rcx,1),%xmm3
18269  DB  68,15,16,76,8,48                    ; movups        0x30(%rax,%rcx,1),%xmm9
18270  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
18271  DB  15,20,208                           ; unpcklps      %xmm0,%xmm2
18272  DB  15,40,203                           ; movaps        %xmm3,%xmm1
18273  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
18274  DB  68,15,21,192                        ; unpckhps      %xmm0,%xmm8
18275  DB  65,15,21,217                        ; unpckhps      %xmm9,%xmm3
18276  DB  15,40,194                           ; movaps        %xmm2,%xmm0
18277  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
18278  DB  15,18,202                           ; movhlps       %xmm2,%xmm1
18279  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
18280  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
18281  DB  65,15,18,216                        ; movhlps       %xmm8,%xmm3
18282  DB  72,173                              ; lods          %ds:(%rsi),%rax
18283  DB  255,224                             ; jmpq          *%rax
18284
18285PUBLIC _sk_store_f32_sse2
18286_sk_store_f32_sse2 LABEL PROC
18287  DB  72,173                              ; lods          %ds:(%rsi),%rax
18288  DB  72,139,0                            ; mov           (%rax),%rax
18289  DB  72,137,249                          ; mov           %rdi,%rcx
18290  DB  72,193,225,4                        ; shl           $0x4,%rcx
18291  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18292  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
18293  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
18294  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
18295  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
18296  DB  68,15,20,219                        ; unpcklps      %xmm3,%xmm11
18297  DB  68,15,21,193                        ; unpckhps      %xmm1,%xmm8
18298  DB  68,15,21,211                        ; unpckhps      %xmm3,%xmm10
18299  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
18300  DB  102,69,15,20,227                    ; unpcklpd      %xmm11,%xmm12
18301  DB  69,15,18,217                        ; movhlps       %xmm9,%xmm11
18302  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18303  DB  102,69,15,20,202                    ; unpcklpd      %xmm10,%xmm9
18304  DB  69,15,18,208                        ; movhlps       %xmm8,%xmm10
18305  DB  102,68,15,17,36,8                   ; movupd        %xmm12,(%rax,%rcx,1)
18306  DB  68,15,17,92,8,16                    ; movups        %xmm11,0x10(%rax,%rcx,1)
18307  DB  102,68,15,17,76,8,32                ; movupd        %xmm9,0x20(%rax,%rcx,1)
18308  DB  68,15,17,84,8,48                    ; movups        %xmm10,0x30(%rax,%rcx,1)
18309  DB  72,173                              ; lods          %ds:(%rsi),%rax
18310  DB  255,224                             ; jmpq          *%rax
18311
18312PUBLIC _sk_clamp_x_sse2
18313_sk_clamp_x_sse2 LABEL PROC
18314  DB  72,173                              ; lods          %ds:(%rsi),%rax
18315  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
18316  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
18317  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
18318  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18319  DB  102,15,118,192                      ; pcmpeqd       %xmm0,%xmm0
18320  DB  102,65,15,254,193                   ; paddd         %xmm9,%xmm0
18321  DB  68,15,93,192                        ; minps         %xmm0,%xmm8
18322  DB  72,173                              ; lods          %ds:(%rsi),%rax
18323  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
18324  DB  255,224                             ; jmpq          *%rax
18325
18326PUBLIC _sk_clamp_y_sse2
18327_sk_clamp_y_sse2 LABEL PROC
18328  DB  72,173                              ; lods          %ds:(%rsi),%rax
18329  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
18330  DB  68,15,95,193                        ; maxps         %xmm1,%xmm8
18331  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
18332  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18333  DB  102,15,118,201                      ; pcmpeqd       %xmm1,%xmm1
18334  DB  102,65,15,254,201                   ; paddd         %xmm9,%xmm1
18335  DB  68,15,93,193                        ; minps         %xmm1,%xmm8
18336  DB  72,173                              ; lods          %ds:(%rsi),%rax
18337  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
18338  DB  255,224                             ; jmpq          *%rax
18339
18340PUBLIC _sk_repeat_x_sse2
18341_sk_repeat_x_sse2 LABEL PROC
18342  DB  72,173                              ; lods          %ds:(%rsi),%rax
18343  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
18344  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
18345  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
18346  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
18347  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
18348  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
18349  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
18350  DB  68,15,84,13,240,22,0,0              ; andps         0x16f0(%rip),%xmm9        # 4a10 <_sk_callback_sse2+0xcc5>
18351  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
18352  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
18353  DB  65,15,92,194                        ; subps         %xmm10,%xmm0
18354  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
18355  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
18356  DB  65,15,93,193                        ; minps         %xmm9,%xmm0
18357  DB  72,173                              ; lods          %ds:(%rsi),%rax
18358  DB  255,224                             ; jmpq          *%rax
18359
18360PUBLIC _sk_repeat_y_sse2
18361_sk_repeat_y_sse2 LABEL PROC
18362  DB  72,173                              ; lods          %ds:(%rsi),%rax
18363  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
18364  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
18365  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
18366  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
18367  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
18368  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
18369  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
18370  DB  68,15,84,13,184,22,0,0              ; andps         0x16b8(%rip),%xmm9        # 4a20 <_sk_callback_sse2+0xcd5>
18371  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
18372  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
18373  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
18374  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
18375  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
18376  DB  65,15,93,201                        ; minps         %xmm9,%xmm1
18377  DB  72,173                              ; lods          %ds:(%rsi),%rax
18378  DB  255,224                             ; jmpq          *%rax
18379
18380PUBLIC _sk_mirror_x_sse2
18381_sk_mirror_x_sse2 LABEL PROC
18382  DB  72,173                              ; lods          %ds:(%rsi),%rax
18383  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
18384  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18385  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18386  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
18387  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
18388  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
18389  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
18390  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
18391  DB  243,69,15,91,218                    ; cvttps2dq     %xmm10,%xmm11
18392  DB  69,15,91,219                        ; cvtdq2ps      %xmm11,%xmm11
18393  DB  69,15,194,211,1                     ; cmpltps       %xmm11,%xmm10
18394  DB  68,15,84,21,110,22,0,0              ; andps         0x166e(%rip),%xmm10        # 4a30 <_sk_callback_sse2+0xce5>
18395  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
18396  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
18397  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
18398  DB  65,15,92,195                        ; subps         %xmm11,%xmm0
18399  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
18400  DB  68,15,92,224                        ; subps         %xmm0,%xmm12
18401  DB  65,15,84,196                        ; andps         %xmm12,%xmm0
18402  DB  102,69,15,118,192                   ; pcmpeqd       %xmm8,%xmm8
18403  DB  102,69,15,254,193                   ; paddd         %xmm9,%xmm8
18404  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
18405  DB  72,173                              ; lods          %ds:(%rsi),%rax
18406  DB  255,224                             ; jmpq          *%rax
18407
18408PUBLIC _sk_mirror_y_sse2
18409_sk_mirror_y_sse2 LABEL PROC
18410  DB  72,173                              ; lods          %ds:(%rsi),%rax
18411  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
18412  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18413  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18414  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
18415  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
18416  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
18417  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
18418  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
18419  DB  243,69,15,91,218                    ; cvttps2dq     %xmm10,%xmm11
18420  DB  69,15,91,219                        ; cvtdq2ps      %xmm11,%xmm11
18421  DB  69,15,194,211,1                     ; cmpltps       %xmm11,%xmm10
18422  DB  68,15,84,21,20,22,0,0               ; andps         0x1614(%rip),%xmm10        # 4a40 <_sk_callback_sse2+0xcf5>
18423  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
18424  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
18425  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
18426  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
18427  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
18428  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
18429  DB  65,15,84,204                        ; andps         %xmm12,%xmm1
18430  DB  102,69,15,118,192                   ; pcmpeqd       %xmm8,%xmm8
18431  DB  102,69,15,254,193                   ; paddd         %xmm9,%xmm8
18432  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
18433  DB  72,173                              ; lods          %ds:(%rsi),%rax
18434  DB  255,224                             ; jmpq          *%rax
18435
18436PUBLIC _sk_luminance_to_alpha_sse2
18437_sk_luminance_to_alpha_sse2 LABEL PROC
18438  DB  15,40,218                           ; movaps        %xmm2,%xmm3
18439  DB  15,89,5,236,21,0,0                  ; mulps         0x15ec(%rip),%xmm0        # 4a50 <_sk_callback_sse2+0xd05>
18440  DB  15,89,13,245,21,0,0                 ; mulps         0x15f5(%rip),%xmm1        # 4a60 <_sk_callback_sse2+0xd15>
18441  DB  15,88,200                           ; addps         %xmm0,%xmm1
18442  DB  15,89,29,251,21,0,0                 ; mulps         0x15fb(%rip),%xmm3        # 4a70 <_sk_callback_sse2+0xd25>
18443  DB  15,88,217                           ; addps         %xmm1,%xmm3
18444  DB  72,173                              ; lods          %ds:(%rsi),%rax
18445  DB  15,87,192                           ; xorps         %xmm0,%xmm0
18446  DB  15,87,201                           ; xorps         %xmm1,%xmm1
18447  DB  15,87,210                           ; xorps         %xmm2,%xmm2
18448  DB  255,224                             ; jmpq          *%rax
18449
18450PUBLIC _sk_matrix_2x3_sse2
18451_sk_matrix_2x3_sse2 LABEL PROC
18452  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
18453  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18454  DB  72,173                              ; lods          %ds:(%rsi),%rax
18455  DB  243,15,16,0                         ; movss         (%rax),%xmm0
18456  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
18457  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
18458  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
18459  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18460  DB  243,68,15,16,88,16                  ; movss         0x10(%rax),%xmm11
18461  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18462  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18463  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18464  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18465  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
18466  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
18467  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
18468  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18469  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
18470  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18471  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18472  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18473  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18474  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
18475  DB  72,173                              ; lods          %ds:(%rsi),%rax
18476  DB  255,224                             ; jmpq          *%rax
18477
18478PUBLIC _sk_matrix_3x4_sse2
18479_sk_matrix_3x4_sse2 LABEL PROC
18480  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
18481  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18482  DB  72,173                              ; lods          %ds:(%rsi),%rax
18483  DB  243,15,16,0                         ; movss         (%rax),%xmm0
18484  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
18485  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
18486  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
18487  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18488  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
18489  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18490  DB  243,68,15,16,96,36                  ; movss         0x24(%rax),%xmm12
18491  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18492  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
18493  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18494  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18495  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18496  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18497  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
18498  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
18499  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
18500  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18501  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
18502  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18503  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
18504  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18505  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
18506  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18507  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18508  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18509  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18510  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
18511  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
18512  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18513  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
18514  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18515  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
18516  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18517  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
18518  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18519  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
18520  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
18521  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
18522  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18523  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
18524  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18525  DB  72,173                              ; lods          %ds:(%rsi),%rax
18526  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
18527  DB  255,224                             ; jmpq          *%rax
18528
18529PUBLIC _sk_matrix_4x5_sse2
18530_sk_matrix_4x5_sse2 LABEL PROC
18531  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
18532  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18533  DB  72,173                              ; lods          %ds:(%rsi),%rax
18534  DB  243,15,16,0                         ; movss         (%rax),%xmm0
18535  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
18536  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
18537  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
18538  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18539  DB  243,68,15,16,88,32                  ; movss         0x20(%rax),%xmm11
18540  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18541  DB  243,68,15,16,96,48                  ; movss         0x30(%rax),%xmm12
18542  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18543  DB  243,68,15,16,104,64                 ; movss         0x40(%rax),%xmm13
18544  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18545  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
18546  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
18547  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
18548  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18549  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18550  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18551  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18552  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
18553  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
18554  DB  243,68,15,16,80,20                  ; movss         0x14(%rax),%xmm10
18555  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18556  DB  243,68,15,16,88,36                  ; movss         0x24(%rax),%xmm11
18557  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18558  DB  243,68,15,16,96,52                  ; movss         0x34(%rax),%xmm12
18559  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18560  DB  243,68,15,16,104,68                 ; movss         0x44(%rax),%xmm13
18561  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18562  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
18563  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
18564  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
18565  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18566  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18567  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18568  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18569  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
18570  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
18571  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18572  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
18573  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18574  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
18575  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18576  DB  243,68,15,16,104,56                 ; movss         0x38(%rax),%xmm13
18577  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18578  DB  243,68,15,16,112,72                 ; movss         0x48(%rax),%xmm14
18579  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
18580  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
18581  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
18582  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
18583  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
18584  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
18585  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18586  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
18587  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18588  DB  243,68,15,16,88,12                  ; movss         0xc(%rax),%xmm11
18589  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18590  DB  243,68,15,16,96,28                  ; movss         0x1c(%rax),%xmm12
18591  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18592  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
18593  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18594  DB  243,68,15,16,112,60                 ; movss         0x3c(%rax),%xmm14
18595  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
18596  DB  243,68,15,16,120,76                 ; movss         0x4c(%rax),%xmm15
18597  DB  69,15,198,255,0                     ; shufps        $0x0,%xmm15,%xmm15
18598  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
18599  DB  69,15,88,247                        ; addps         %xmm15,%xmm14
18600  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
18601  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
18602  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
18603  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
18604  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
18605  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18606  DB  72,173                              ; lods          %ds:(%rsi),%rax
18607  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
18608  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
18609  DB  255,224                             ; jmpq          *%rax
18610
18611PUBLIC _sk_matrix_perspective_sse2
18612_sk_matrix_perspective_sse2 LABEL PROC
18613  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18614  DB  72,173                              ; lods          %ds:(%rsi),%rax
18615  DB  243,15,16,0                         ; movss         (%rax),%xmm0
18616  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
18617  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
18618  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18619  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
18620  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18621  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
18622  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
18623  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18624  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
18625  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
18626  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18627  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
18628  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18629  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
18630  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18631  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
18632  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18633  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
18634  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
18635  DB  243,68,15,16,80,24                  ; movss         0x18(%rax),%xmm10
18636  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18637  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
18638  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18639  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
18640  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18641  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
18642  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18643  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
18644  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18645  DB  65,15,83,202                        ; rcpps         %xmm10,%xmm1
18646  DB  15,89,193                           ; mulps         %xmm1,%xmm0
18647  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
18648  DB  72,173                              ; lods          %ds:(%rsi),%rax
18649  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
18650  DB  255,224                             ; jmpq          *%rax
18651
18652PUBLIC _sk_linear_gradient_sse2
18653_sk_linear_gradient_sse2 LABEL PROC
18654  DB  72,173                              ; lods          %ds:(%rsi),%rax
18655  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
18656  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18657  DB  243,68,15,16,80,20                  ; movss         0x14(%rax),%xmm10
18658  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18659  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
18660  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18661  DB  243,68,15,16,96,28                  ; movss         0x1c(%rax),%xmm12
18662  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18663  DB  72,139,8                            ; mov           (%rax),%rcx
18664  DB  72,133,201                          ; test          %rcx,%rcx
18665  DB  15,132,15,1,0,0                     ; je            3928 <_sk_linear_gradient_sse2+0x149>
18666  DB  72,139,64,8                         ; mov           0x8(%rax),%rax
18667  DB  72,131,192,32                       ; add           $0x20,%rax
18668  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
18669  DB  15,87,219                           ; xorps         %xmm3,%xmm3
18670  DB  15,87,210                           ; xorps         %xmm2,%xmm2
18671  DB  15,87,201                           ; xorps         %xmm1,%xmm1
18672  DB  243,68,15,16,112,224                ; movss         -0x20(%rax),%xmm14
18673  DB  243,68,15,16,104,228                ; movss         -0x1c(%rax),%xmm13
18674  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
18675  DB  69,15,40,252                        ; movaps        %xmm12,%xmm15
18676  DB  68,15,40,224                        ; movaps        %xmm0,%xmm12
18677  DB  69,15,194,230,1                     ; cmpltps       %xmm14,%xmm12
18678  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18679  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
18680  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
18681  DB  69,15,84,196                        ; andps         %xmm12,%xmm8
18682  DB  69,15,86,198                        ; orps          %xmm14,%xmm8
18683  DB  243,68,15,16,104,232                ; movss         -0x18(%rax),%xmm13
18684  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18685  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
18686  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
18687  DB  65,15,84,204                        ; andps         %xmm12,%xmm1
18688  DB  65,15,86,206                        ; orps          %xmm14,%xmm1
18689  DB  243,68,15,16,104,236                ; movss         -0x14(%rax),%xmm13
18690  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18691  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
18692  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
18693  DB  65,15,84,212                        ; andps         %xmm12,%xmm2
18694  DB  65,15,86,214                        ; orps          %xmm14,%xmm2
18695  DB  243,68,15,16,104,240                ; movss         -0x10(%rax),%xmm13
18696  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18697  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
18698  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
18699  DB  65,15,84,220                        ; andps         %xmm12,%xmm3
18700  DB  65,15,86,222                        ; orps          %xmm14,%xmm3
18701  DB  243,68,15,16,104,244                ; movss         -0xc(%rax),%xmm13
18702  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18703  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
18704  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
18705  DB  69,15,84,204                        ; andps         %xmm12,%xmm9
18706  DB  69,15,86,206                        ; orps          %xmm14,%xmm9
18707  DB  243,68,15,16,104,248                ; movss         -0x8(%rax),%xmm13
18708  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18709  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
18710  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
18711  DB  69,15,84,212                        ; andps         %xmm12,%xmm10
18712  DB  69,15,86,214                        ; orps          %xmm14,%xmm10
18713  DB  243,68,15,16,104,252                ; movss         -0x4(%rax),%xmm13
18714  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18715  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
18716  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
18717  DB  69,15,84,220                        ; andps         %xmm12,%xmm11
18718  DB  69,15,86,222                        ; orps          %xmm14,%xmm11
18719  DB  243,68,15,16,40                     ; movss         (%rax),%xmm13
18720  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18721  DB  69,15,84,252                        ; andps         %xmm12,%xmm15
18722  DB  69,15,85,229                        ; andnps        %xmm13,%xmm12
18723  DB  69,15,86,231                        ; orps          %xmm15,%xmm12
18724  DB  72,131,192,36                       ; add           $0x24,%rax
18725  DB  72,255,201                          ; dec           %rcx
18726  DB  15,133,8,255,255,255                ; jne           382e <_sk_linear_gradient_sse2+0x4f>
18727  DB  235,13                              ; jmp           3935 <_sk_linear_gradient_sse2+0x156>
18728  DB  15,87,201                           ; xorps         %xmm1,%xmm1
18729  DB  15,87,210                           ; xorps         %xmm2,%xmm2
18730  DB  15,87,219                           ; xorps         %xmm3,%xmm3
18731  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
18732  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
18733  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
18734  DB  15,89,200                           ; mulps         %xmm0,%xmm1
18735  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
18736  DB  15,89,208                           ; mulps         %xmm0,%xmm2
18737  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
18738  DB  15,89,216                           ; mulps         %xmm0,%xmm3
18739  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
18740  DB  72,173                              ; lods          %ds:(%rsi),%rax
18741  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
18742  DB  255,224                             ; jmpq          *%rax
18743
18744PUBLIC _sk_linear_gradient_2stops_sse2
18745_sk_linear_gradient_2stops_sse2 LABEL PROC
18746  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18747  DB  72,173                              ; lods          %ds:(%rsi),%rax
18748  DB  243,15,16,0                         ; movss         (%rax),%xmm0
18749  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
18750  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
18751  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
18752  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
18753  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18754  DB  15,88,194                           ; addps         %xmm2,%xmm0
18755  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
18756  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
18757  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
18758  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18759  DB  15,88,202                           ; addps         %xmm2,%xmm1
18760  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
18761  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
18762  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
18763  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
18764  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
18765  DB  15,88,211                           ; addps         %xmm3,%xmm2
18766  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
18767  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
18768  DB  243,68,15,16,72,28                  ; movss         0x1c(%rax),%xmm9
18769  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18770  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
18771  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
18772  DB  72,173                              ; lods          %ds:(%rsi),%rax
18773  DB  255,224                             ; jmpq          *%rax
18774
18775PUBLIC _sk_save_xy_sse2
18776_sk_save_xy_sse2 LABEL PROC
18777  DB  72,173                              ; lods          %ds:(%rsi),%rax
18778  DB  68,15,40,5,172,16,0,0               ; movaps        0x10ac(%rip),%xmm8        # 4a80 <_sk_callback_sse2+0xd35>
18779  DB  15,17,0                             ; movups        %xmm0,(%rax)
18780  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
18781  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
18782  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
18783  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
18784  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
18785  DB  69,15,194,218,1                     ; cmpltps       %xmm10,%xmm11
18786  DB  68,15,40,37,151,16,0,0              ; movaps        0x1097(%rip),%xmm12        # 4a90 <_sk_callback_sse2+0xd45>
18787  DB  69,15,84,220                        ; andps         %xmm12,%xmm11
18788  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
18789  DB  69,15,92,202                        ; subps         %xmm10,%xmm9
18790  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
18791  DB  243,69,15,91,208                    ; cvttps2dq     %xmm8,%xmm10
18792  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
18793  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
18794  DB  69,15,194,218,1                     ; cmpltps       %xmm10,%xmm11
18795  DB  69,15,84,220                        ; andps         %xmm12,%xmm11
18796  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
18797  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
18798  DB  15,17,72,32                         ; movups        %xmm1,0x20(%rax)
18799  DB  68,15,17,72,64                      ; movups        %xmm9,0x40(%rax)
18800  DB  68,15,17,64,96                      ; movups        %xmm8,0x60(%rax)
18801  DB  72,173                              ; lods          %ds:(%rsi),%rax
18802  DB  255,224                             ; jmpq          *%rax
18803
18804PUBLIC _sk_accumulate_sse2
18805_sk_accumulate_sse2 LABEL PROC
18806  DB  72,173                              ; lods          %ds:(%rsi),%rax
18807  DB  68,15,16,128,128,0,0,0              ; movups        0x80(%rax),%xmm8
18808  DB  68,15,16,136,160,0,0,0              ; movups        0xa0(%rax),%xmm9
18809  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
18810  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
18811  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
18812  DB  65,15,88,224                        ; addps         %xmm8,%xmm4
18813  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
18814  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
18815  DB  65,15,88,232                        ; addps         %xmm8,%xmm5
18816  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
18817  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
18818  DB  65,15,88,240                        ; addps         %xmm8,%xmm6
18819  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
18820  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
18821  DB  72,173                              ; lods          %ds:(%rsi),%rax
18822  DB  255,224                             ; jmpq          *%rax
18823
18824PUBLIC _sk_bilinear_nx_sse2
18825_sk_bilinear_nx_sse2 LABEL PROC
18826  DB  72,173                              ; lods          %ds:(%rsi),%rax
18827  DB  15,16,0                             ; movups        (%rax),%xmm0
18828  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
18829  DB  15,88,5,16,16,0,0                   ; addps         0x1010(%rip),%xmm0        # 4aa0 <_sk_callback_sse2+0xd55>
18830  DB  68,15,40,13,24,16,0,0               ; movaps        0x1018(%rip),%xmm9        # 4ab0 <_sk_callback_sse2+0xd65>
18831  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
18832  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
18833  DB  72,173                              ; lods          %ds:(%rsi),%rax
18834  DB  255,224                             ; jmpq          *%rax
18835
18836PUBLIC _sk_bilinear_px_sse2
18837_sk_bilinear_px_sse2 LABEL PROC
18838  DB  72,173                              ; lods          %ds:(%rsi),%rax
18839  DB  15,16,0                             ; movups        (%rax),%xmm0
18840  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
18841  DB  15,88,5,7,16,0,0                    ; addps         0x1007(%rip),%xmm0        # 4ac0 <_sk_callback_sse2+0xd75>
18842  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
18843  DB  72,173                              ; lods          %ds:(%rsi),%rax
18844  DB  255,224                             ; jmpq          *%rax
18845
18846PUBLIC _sk_bilinear_ny_sse2
18847_sk_bilinear_ny_sse2 LABEL PROC
18848  DB  72,173                              ; lods          %ds:(%rsi),%rax
18849  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
18850  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
18851  DB  15,88,13,249,15,0,0                 ; addps         0xff9(%rip),%xmm1        # 4ad0 <_sk_callback_sse2+0xd85>
18852  DB  68,15,40,13,1,16,0,0                ; movaps        0x1001(%rip),%xmm9        # 4ae0 <_sk_callback_sse2+0xd95>
18853  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
18854  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
18855  DB  72,173                              ; lods          %ds:(%rsi),%rax
18856  DB  255,224                             ; jmpq          *%rax
18857
18858PUBLIC _sk_bilinear_py_sse2
18859_sk_bilinear_py_sse2 LABEL PROC
18860  DB  72,173                              ; lods          %ds:(%rsi),%rax
18861  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
18862  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
18863  DB  15,88,13,239,15,0,0                 ; addps         0xfef(%rip),%xmm1        # 4af0 <_sk_callback_sse2+0xda5>
18864  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
18865  DB  72,173                              ; lods          %ds:(%rsi),%rax
18866  DB  255,224                             ; jmpq          *%rax
18867
18868PUBLIC _sk_bicubic_n3x_sse2
18869_sk_bicubic_n3x_sse2 LABEL PROC
18870  DB  72,173                              ; lods          %ds:(%rsi),%rax
18871  DB  15,16,0                             ; movups        (%rax),%xmm0
18872  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
18873  DB  15,88,5,226,15,0,0                  ; addps         0xfe2(%rip),%xmm0        # 4b00 <_sk_callback_sse2+0xdb5>
18874  DB  68,15,40,13,234,15,0,0              ; movaps        0xfea(%rip),%xmm9        # 4b10 <_sk_callback_sse2+0xdc5>
18875  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
18876  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
18877  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
18878  DB  68,15,89,13,230,15,0,0              ; mulps         0xfe6(%rip),%xmm9        # 4b20 <_sk_callback_sse2+0xdd5>
18879  DB  68,15,88,13,238,15,0,0              ; addps         0xfee(%rip),%xmm9        # 4b30 <_sk_callback_sse2+0xde5>
18880  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
18881  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
18882  DB  72,173                              ; lods          %ds:(%rsi),%rax
18883  DB  255,224                             ; jmpq          *%rax
18884
18885PUBLIC _sk_bicubic_n1x_sse2
18886_sk_bicubic_n1x_sse2 LABEL PROC
18887  DB  72,173                              ; lods          %ds:(%rsi),%rax
18888  DB  15,16,0                             ; movups        (%rax),%xmm0
18889  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
18890  DB  15,88,5,221,15,0,0                  ; addps         0xfdd(%rip),%xmm0        # 4b40 <_sk_callback_sse2+0xdf5>
18891  DB  68,15,40,13,229,15,0,0              ; movaps        0xfe5(%rip),%xmm9        # 4b50 <_sk_callback_sse2+0xe05>
18892  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
18893  DB  68,15,40,5,233,15,0,0               ; movaps        0xfe9(%rip),%xmm8        # 4b60 <_sk_callback_sse2+0xe15>
18894  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
18895  DB  68,15,88,5,237,15,0,0               ; addps         0xfed(%rip),%xmm8        # 4b70 <_sk_callback_sse2+0xe25>
18896  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
18897  DB  68,15,88,5,241,15,0,0               ; addps         0xff1(%rip),%xmm8        # 4b80 <_sk_callback_sse2+0xe35>
18898  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
18899  DB  68,15,88,5,245,15,0,0               ; addps         0xff5(%rip),%xmm8        # 4b90 <_sk_callback_sse2+0xe45>
18900  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
18901  DB  72,173                              ; lods          %ds:(%rsi),%rax
18902  DB  255,224                             ; jmpq          *%rax
18903
18904PUBLIC _sk_bicubic_p1x_sse2
18905_sk_bicubic_p1x_sse2 LABEL PROC
18906  DB  72,173                              ; lods          %ds:(%rsi),%rax
18907  DB  68,15,40,5,239,15,0,0               ; movaps        0xfef(%rip),%xmm8        # 4ba0 <_sk_callback_sse2+0xe55>
18908  DB  15,16,0                             ; movups        (%rax),%xmm0
18909  DB  68,15,16,72,64                      ; movups        0x40(%rax),%xmm9
18910  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
18911  DB  68,15,40,21,235,15,0,0              ; movaps        0xfeb(%rip),%xmm10        # 4bb0 <_sk_callback_sse2+0xe65>
18912  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18913  DB  68,15,88,21,239,15,0,0              ; addps         0xfef(%rip),%xmm10        # 4bc0 <_sk_callback_sse2+0xe75>
18914  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18915  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
18916  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18917  DB  68,15,88,21,235,15,0,0              ; addps         0xfeb(%rip),%xmm10        # 4bd0 <_sk_callback_sse2+0xe85>
18918  DB  68,15,17,144,128,0,0,0              ; movups        %xmm10,0x80(%rax)
18919  DB  72,173                              ; lods          %ds:(%rsi),%rax
18920  DB  255,224                             ; jmpq          *%rax
18921
18922PUBLIC _sk_bicubic_p3x_sse2
18923_sk_bicubic_p3x_sse2 LABEL PROC
18924  DB  72,173                              ; lods          %ds:(%rsi),%rax
18925  DB  15,16,0                             ; movups        (%rax),%xmm0
18926  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
18927  DB  15,88,5,222,15,0,0                  ; addps         0xfde(%rip),%xmm0        # 4be0 <_sk_callback_sse2+0xe95>
18928  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18929  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
18930  DB  68,15,89,5,222,15,0,0               ; mulps         0xfde(%rip),%xmm8        # 4bf0 <_sk_callback_sse2+0xea5>
18931  DB  68,15,88,5,230,15,0,0               ; addps         0xfe6(%rip),%xmm8        # 4c00 <_sk_callback_sse2+0xeb5>
18932  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
18933  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
18934  DB  72,173                              ; lods          %ds:(%rsi),%rax
18935  DB  255,224                             ; jmpq          *%rax
18936
18937PUBLIC _sk_bicubic_n3y_sse2
18938_sk_bicubic_n3y_sse2 LABEL PROC
18939  DB  72,173                              ; lods          %ds:(%rsi),%rax
18940  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
18941  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
18942  DB  15,88,13,212,15,0,0                 ; addps         0xfd4(%rip),%xmm1        # 4c10 <_sk_callback_sse2+0xec5>
18943  DB  68,15,40,13,220,15,0,0              ; movaps        0xfdc(%rip),%xmm9        # 4c20 <_sk_callback_sse2+0xed5>
18944  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
18945  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
18946  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
18947  DB  68,15,89,13,216,15,0,0              ; mulps         0xfd8(%rip),%xmm9        # 4c30 <_sk_callback_sse2+0xee5>
18948  DB  68,15,88,13,224,15,0,0              ; addps         0xfe0(%rip),%xmm9        # 4c40 <_sk_callback_sse2+0xef5>
18949  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
18950  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
18951  DB  72,173                              ; lods          %ds:(%rsi),%rax
18952  DB  255,224                             ; jmpq          *%rax
18953
18954PUBLIC _sk_bicubic_n1y_sse2
18955_sk_bicubic_n1y_sse2 LABEL PROC
18956  DB  72,173                              ; lods          %ds:(%rsi),%rax
18957  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
18958  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
18959  DB  15,88,13,206,15,0,0                 ; addps         0xfce(%rip),%xmm1        # 4c50 <_sk_callback_sse2+0xf05>
18960  DB  68,15,40,13,214,15,0,0              ; movaps        0xfd6(%rip),%xmm9        # 4c60 <_sk_callback_sse2+0xf15>
18961  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
18962  DB  68,15,40,5,218,15,0,0               ; movaps        0xfda(%rip),%xmm8        # 4c70 <_sk_callback_sse2+0xf25>
18963  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
18964  DB  68,15,88,5,222,15,0,0               ; addps         0xfde(%rip),%xmm8        # 4c80 <_sk_callback_sse2+0xf35>
18965  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
18966  DB  68,15,88,5,226,15,0,0               ; addps         0xfe2(%rip),%xmm8        # 4c90 <_sk_callback_sse2+0xf45>
18967  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
18968  DB  68,15,88,5,230,15,0,0               ; addps         0xfe6(%rip),%xmm8        # 4ca0 <_sk_callback_sse2+0xf55>
18969  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
18970  DB  72,173                              ; lods          %ds:(%rsi),%rax
18971  DB  255,224                             ; jmpq          *%rax
18972
18973PUBLIC _sk_bicubic_p1y_sse2
18974_sk_bicubic_p1y_sse2 LABEL PROC
18975  DB  72,173                              ; lods          %ds:(%rsi),%rax
18976  DB  68,15,40,5,224,15,0,0               ; movaps        0xfe0(%rip),%xmm8        # 4cb0 <_sk_callback_sse2+0xf65>
18977  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
18978  DB  68,15,16,72,96                      ; movups        0x60(%rax),%xmm9
18979  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
18980  DB  68,15,40,21,219,15,0,0              ; movaps        0xfdb(%rip),%xmm10        # 4cc0 <_sk_callback_sse2+0xf75>
18981  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18982  DB  68,15,88,21,223,15,0,0              ; addps         0xfdf(%rip),%xmm10        # 4cd0 <_sk_callback_sse2+0xf85>
18983  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18984  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
18985  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18986  DB  68,15,88,21,219,15,0,0              ; addps         0xfdb(%rip),%xmm10        # 4ce0 <_sk_callback_sse2+0xf95>
18987  DB  68,15,17,144,160,0,0,0              ; movups        %xmm10,0xa0(%rax)
18988  DB  72,173                              ; lods          %ds:(%rsi),%rax
18989  DB  255,224                             ; jmpq          *%rax
18990
18991PUBLIC _sk_bicubic_p3y_sse2
18992_sk_bicubic_p3y_sse2 LABEL PROC
18993  DB  72,173                              ; lods          %ds:(%rsi),%rax
18994  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
18995  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
18996  DB  15,88,13,205,15,0,0                 ; addps         0xfcd(%rip),%xmm1        # 4cf0 <_sk_callback_sse2+0xfa5>
18997  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18998  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
18999  DB  68,15,89,5,205,15,0,0               ; mulps         0xfcd(%rip),%xmm8        # 4d00 <_sk_callback_sse2+0xfb5>
19000  DB  68,15,88,5,213,15,0,0               ; addps         0xfd5(%rip),%xmm8        # 4d10 <_sk_callback_sse2+0xfc5>
19001  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
19002  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
19003  DB  72,173                              ; lods          %ds:(%rsi),%rax
19004  DB  255,224                             ; jmpq          *%rax
19005
19006PUBLIC _sk_callback_sse2
19007_sk_callback_sse2 LABEL PROC
19008  DB  65,86                               ; push          %r14
19009  DB  83                                  ; push          %rbx
19010  DB  72,131,236,40                       ; sub           $0x28,%rsp
19011  DB  68,15,40,197                        ; movaps        %xmm5,%xmm8
19012  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
19013  DB  73,137,214                          ; mov           %rdx,%r14
19014  DB  72,173                              ; lods          %ds:(%rsi),%rax
19015  DB  72,137,195                          ; mov           %rax,%rbx
19016  DB  15,40,224                           ; movaps        %xmm0,%xmm4
19017  DB  15,20,225                           ; unpcklps      %xmm1,%xmm4
19018  DB  15,40,234                           ; movaps        %xmm2,%xmm5
19019  DB  15,20,235                           ; unpcklps      %xmm3,%xmm5
19020  DB  15,21,193                           ; unpckhps      %xmm1,%xmm0
19021  DB  15,21,211                           ; unpckhps      %xmm3,%xmm2
19022  DB  15,40,204                           ; movaps        %xmm4,%xmm1
19023  DB  102,15,20,205                       ; unpcklpd      %xmm5,%xmm1
19024  DB  15,18,236                           ; movhlps       %xmm4,%xmm5
19025  DB  15,40,216                           ; movaps        %xmm0,%xmm3
19026  DB  102,15,20,218                       ; unpcklpd      %xmm2,%xmm3
19027  DB  15,18,208                           ; movhlps       %xmm0,%xmm2
19028  DB  102,15,17,75,8                      ; movupd        %xmm1,0x8(%rbx)
19029  DB  15,17,107,24                        ; movups        %xmm5,0x18(%rbx)
19030  DB  102,15,17,91,40                     ; movupd        %xmm3,0x28(%rbx)
19031  DB  15,17,83,56                         ; movups        %xmm2,0x38(%rbx)
19032  DB  186,4,0,0,0                         ; mov           $0x4,%edx
19033  DB  72,137,217                          ; mov           %rbx,%rcx
19034  DB  255,19                              ; callq         *(%rbx)
19035  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
19036  DB  15,16,32                            ; movups        (%rax),%xmm4
19037  DB  15,16,64,16                         ; movups        0x10(%rax),%xmm0
19038  DB  15,16,88,32                         ; movups        0x20(%rax),%xmm3
19039  DB  15,16,80,48                         ; movups        0x30(%rax),%xmm2
19040  DB  15,40,236                           ; movaps        %xmm4,%xmm5
19041  DB  15,20,232                           ; unpcklps      %xmm0,%xmm5
19042  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19043  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
19044  DB  15,21,224                           ; unpckhps      %xmm0,%xmm4
19045  DB  15,21,218                           ; unpckhps      %xmm2,%xmm3
19046  DB  15,40,197                           ; movaps        %xmm5,%xmm0
19047  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
19048  DB  15,18,205                           ; movhlps       %xmm5,%xmm1
19049  DB  15,40,212                           ; movaps        %xmm4,%xmm2
19050  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
19051  DB  15,18,220                           ; movhlps       %xmm4,%xmm3
19052  DB  72,173                              ; lods          %ds:(%rsi),%rax
19053  DB  76,137,242                          ; mov           %r14,%rdx
19054  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
19055  DB  65,15,40,232                        ; movaps        %xmm8,%xmm5
19056  DB  72,131,196,40                       ; add           $0x28,%rsp
19057  DB  91                                  ; pop           %rbx
19058  DB  65,94                               ; pop           %r14
19059  DB  255,224                             ; jmpq          *%rax
19060
19061ALIGN 16
19062  DB  0,0                                 ; add           %al,(%rax)
19063  DB  0,63                                ; add           %bh,(%rdi)
19064  DB  0,0                                 ; add           %al,(%rax)
19065  DB  0,63                                ; add           %bh,(%rdi)
19066  DB  0,0                                 ; add           %al,(%rax)
19067  DB  0,63                                ; add           %bh,(%rdi)
19068  DB  0,0                                 ; add           %al,(%rax)
19069  DB  0,63                                ; add           %bh,(%rdi)
19070  DB  0,0                                 ; add           %al,(%rax)
19071  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19072  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19073  DB  63                                  ; (bad)
19074  DB  0,0                                 ; add           %al,(%rax)
19075  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19076  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19077  DB  63                                  ; (bad)
19078  DB  0,0                                 ; add           %al,(%rax)
19079  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19080  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19081  DB  63                                  ; (bad)
19082  DB  0,0                                 ; add           %al,(%rax)
19083  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19084  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19085  DB  63                                  ; (bad)
19086  DB  0,0                                 ; add           %al,(%rax)
19087  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19088  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19089  DB  63                                  ; (bad)
19090  DB  0,0                                 ; add           %al,(%rax)
19091  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19092  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19093  DB  63                                  ; (bad)
19094  DB  0,0                                 ; add           %al,(%rax)
19095  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19096  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19097  DB  63                                  ; (bad)
19098  DB  0,0                                 ; add           %al,(%rax)
19099  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19100  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19101  DB  63                                  ; (bad)
19102  DB  0,0                                 ; add           %al,(%rax)
19103  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19104  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19105  DB  63                                  ; (bad)
19106  DB  0,0                                 ; add           %al,(%rax)
19107  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19108  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19109  DB  63                                  ; (bad)
19110  DB  0,0                                 ; add           %al,(%rax)
19111  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19112  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19113  DB  63                                  ; (bad)
19114  DB  0,0                                 ; add           %al,(%rax)
19115  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19116  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19117  DB  63                                  ; (bad)
19118  DB  0,0                                 ; add           %al,(%rax)
19119  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19120  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19121  DB  63                                  ; (bad)
19122  DB  0,0                                 ; add           %al,(%rax)
19123  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19124  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19125  DB  63                                  ; (bad)
19126  DB  0,0                                 ; add           %al,(%rax)
19127  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19128  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19129  DB  63                                  ; (bad)
19130  DB  0,0                                 ; add           %al,(%rax)
19131  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19132  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19133  DB  63                                  ; (bad)
19134  DB  0,0                                 ; add           %al,(%rax)
19135  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19136  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19137  DB  63                                  ; (bad)
19138  DB  0,0                                 ; add           %al,(%rax)
19139  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19140  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19141  DB  63                                  ; (bad)
19142  DB  0,0                                 ; add           %al,(%rax)
19143  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19144  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19145  DB  63                                  ; (bad)
19146  DB  0,0                                 ; add           %al,(%rax)
19147  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19148  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19149  DB  63                                  ; (bad)
19150  DB  0,0                                 ; add           %al,(%rax)
19151  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19152  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19153  DB  63                                  ; (bad)
19154  DB  0,0                                 ; add           %al,(%rax)
19155  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19156  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19157  DB  63                                  ; (bad)
19158  DB  0,0                                 ; add           %al,(%rax)
19159  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19160  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19161  DB  63                                  ; (bad)
19162  DB  0,0                                 ; add           %al,(%rax)
19163  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19164  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19165  DB  63                                  ; (bad)
19166  DB  0,0                                 ; add           %al,(%rax)
19167  DB  128,191,0,0,128,191,0               ; cmpb          $0x0,-0x40800000(%rdi)
19168  DB  0,128,191,0,0,128                   ; add           %al,-0x7fffff41(%rax)
19169  DB  191,0,0,224,64                      ; mov           $0x40e00000,%edi
19170  DB  0,0                                 ; add           %al,(%rax)
19171  DB  224,64                              ; loopne        3f88 <.literal16+0x188>
19172  DB  0,0                                 ; add           %al,(%rax)
19173  DB  224,64                              ; loopne        3f8c <.literal16+0x18c>
19174  DB  0,0                                 ; add           %al,(%rax)
19175  DB  224,64                              ; loopne        3f90 <.literal16+0x190>
19176  DB  0,0                                 ; add           %al,(%rax)
19177  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19178  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19179  DB  63                                  ; (bad)
19180  DB  0,0                                 ; add           %al,(%rax)
19181  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19182  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19183  DB  63                                  ; (bad)
19184  DB  0,0                                 ; add           %al,(%rax)
19185  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19186  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19187  DB  63                                  ; (bad)
19188  DB  0,0                                 ; add           %al,(%rax)
19189  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19190  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19191  DB  63                                  ; (bad)
19192  DB  145                                 ; xchg          %eax,%ecx
19193  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
19194  DB  145                                 ; xchg          %eax,%ecx
19195  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
19196  DB  154                                 ; (bad)
19197  DB  153                                 ; cltd
19198  DB  153                                 ; cltd
19199  DB  62,154                              ; ds            (bad)
19200  DB  153                                 ; cltd
19201  DB  153                                 ; cltd
19202  DB  62,154                              ; ds            (bad)
19203  DB  153                                 ; cltd
19204  DB  153                                 ; cltd
19205  DB  62,154                              ; ds            (bad)
19206  DB  153                                 ; cltd
19207  DB  153                                 ; cltd
19208  DB  62,92                               ; ds            pop %rsp
19209  DB  143                                 ; (bad)
19210  DB  50,63                               ; xor           (%rdi),%bh
19211  DB  92                                  ; pop           %rsp
19212  DB  143                                 ; (bad)
19213  DB  50,63                               ; xor           (%rdi),%bh
19214  DB  92                                  ; pop           %rsp
19215  DB  143                                 ; (bad)
19216  DB  50,63                               ; xor           (%rdi),%bh
19217  DB  92                                  ; pop           %rsp
19218  DB  143                                 ; (bad)
19219  DB  50,63                               ; xor           (%rdi),%bh
19220  DB  10,215                              ; or            %bh,%dl
19221  DB  35,59                               ; and           (%rbx),%edi
19222  DB  10,215                              ; or            %bh,%dl
19223  DB  35,59                               ; and           (%rbx),%edi
19224  DB  10,215                              ; or            %bh,%dl
19225  DB  35,59                               ; and           (%rbx),%edi
19226  DB  10,215                              ; or            %bh,%dl
19227  DB  35,59                               ; and           (%rbx),%edi
19228  DB  174                                 ; scas          %es:(%rdi),%al
19229  DB  71,97                               ; rex.RXB       (bad)
19230  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
19231  DB  174                                 ; scas          %es:(%rdi),%al
19232  DB  71,97                               ; rex.RXB       (bad)
19233  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
19234  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
19235  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
19236  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
19237  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
19238  DB  206                                 ; (bad)
19239  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
19240  DB  48,63                               ; xor           %bh,(%rdi)
19241  DB  206                                 ; (bad)
19242  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
19243  DB  48,63                               ; xor           %bh,(%rdi)
19244  DB  206                                 ; (bad)
19245  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
19246  DB  48,63                               ; xor           %bh,(%rdi)
19247  DB  206                                 ; (bad)
19248  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
19249  DB  48,63                               ; xor           %bh,(%rdi)
19250  DB  168,87                              ; test          $0x57,%al
19251  DB  202,189,168                         ; lret          $0xa8bd
19252  DB  87                                  ; push          %rdi
19253  DB  202,189,168                         ; lret          $0xa8bd
19254  DB  87                                  ; push          %rdi
19255  DB  202,189,168                         ; lret          $0xa8bd
19256  DB  87                                  ; push          %rdi
19257  DB  202,189,194                         ; lret          $0xc2bd
19258  DB  135,210                             ; xchg          %edx,%edx
19259  DB  62,194,135,210                      ; ds            retq $0xd287
19260  DB  62,194,135,210                      ; ds            retq $0xd287
19261  DB  62,194,135,210                      ; ds            retq $0xd287
19262  DB  62,0,0                              ; add           %al,%ds:(%rax)
19263  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19264  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19265  DB  63                                  ; (bad)
19266  DB  0,0                                 ; add           %al,(%rax)
19267  DB  128,63,4                            ; cmpb          $0x4,(%rdi)
19268  DB  231,140                             ; out           %eax,$0x8c
19269  DB  59,4,231                            ; cmp           (%rdi,%riz,8),%eax
19270  DB  140,59                              ; mov           %?,(%rbx)
19271  DB  4,231                               ; add           $0xe7,%al
19272  DB  140,59                              ; mov           %?,(%rbx)
19273  DB  4,231                               ; add           $0xe7,%al
19274  DB  140,59                              ; mov           %?,(%rbx)
19275  DB  0,0                                 ; add           %al,(%rax)
19276  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19277  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19278  DB  63                                  ; (bad)
19279  DB  0,0                                 ; add           %al,(%rax)
19280  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19281  DB  0,192                               ; add           %al,%al
19282  DB  64,0,0                              ; add           %al,(%rax)
19283  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19284  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19285  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19286  DB  0,64,0                              ; add           %al,0x0(%rax)
19287  DB  0,0                                 ; add           %al,(%rax)
19288  DB  64,0,0                              ; add           %al,(%rax)
19289  DB  0,64,0                              ; add           %al,0x0(%rax)
19290  DB  0,0                                 ; add           %al,(%rax)
19291  DB  64,0,0                              ; add           %al,(%rax)
19292  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19293  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19294  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19295  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
19296  DB  42,62                               ; sub           (%rsi),%bh
19297  DB  171                                 ; stos          %eax,%es:(%rdi)
19298  DB  170                                 ; stos          %al,%es:(%rdi)
19299  DB  42,62                               ; sub           (%rsi),%bh
19300  DB  171                                 ; stos          %eax,%es:(%rdi)
19301  DB  170                                 ; stos          %al,%es:(%rdi)
19302  DB  42,62                               ; sub           (%rsi),%bh
19303  DB  171                                 ; stos          %eax,%es:(%rdi)
19304  DB  170                                 ; stos          %al,%es:(%rdi)
19305  DB  42,62                               ; sub           (%rsi),%bh
19306  DB  0,0                                 ; add           %al,(%rax)
19307  DB  0,63                                ; add           %bh,(%rdi)
19308  DB  0,0                                 ; add           %al,(%rax)
19309  DB  0,63                                ; add           %bh,(%rdi)
19310  DB  0,0                                 ; add           %al,(%rax)
19311  DB  0,63                                ; add           %bh,(%rdi)
19312  DB  0,0                                 ; add           %al,(%rax)
19313  DB  0,63                                ; add           %bh,(%rdi)
19314  DB  0,0                                 ; add           %al,(%rax)
19315  DB  0,63                                ; add           %bh,(%rdi)
19316  DB  0,0                                 ; add           %al,(%rax)
19317  DB  0,63                                ; add           %bh,(%rdi)
19318  DB  0,0                                 ; add           %al,(%rax)
19319  DB  0,63                                ; add           %bh,(%rdi)
19320  DB  0,0                                 ; add           %al,(%rax)
19321  DB  0,63                                ; add           %bh,(%rdi)
19322  DB  171                                 ; stos          %eax,%es:(%rdi)
19323  DB  170                                 ; stos          %al,%es:(%rdi)
19324  DB  170                                 ; stos          %al,%es:(%rdi)
19325  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
19326  DB  170                                 ; stos          %al,%es:(%rdi)
19327  DB  170                                 ; stos          %al,%es:(%rdi)
19328  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
19329  DB  170                                 ; stos          %al,%es:(%rdi)
19330  DB  170                                 ; stos          %al,%es:(%rdi)
19331  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
19332  DB  170                                 ; stos          %al,%es:(%rdi)
19333  DB  170                                 ; stos          %al,%es:(%rdi)
19334  DB  62,0,0                              ; add           %al,%ds:(%rax)
19335  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19336  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19337  DB  63                                  ; (bad)
19338  DB  0,0                                 ; add           %al,(%rax)
19339  DB  128,63,171                          ; cmpb          $0xab,(%rdi)
19340  DB  170                                 ; stos          %al,%es:(%rdi)
19341  DB  42,63                               ; sub           (%rdi),%bh
19342  DB  171                                 ; stos          %eax,%es:(%rdi)
19343  DB  170                                 ; stos          %al,%es:(%rdi)
19344  DB  42,63                               ; sub           (%rdi),%bh
19345  DB  171                                 ; stos          %eax,%es:(%rdi)
19346  DB  170                                 ; stos          %al,%es:(%rdi)
19347  DB  42,63                               ; sub           (%rdi),%bh
19348  DB  171                                 ; stos          %eax,%es:(%rdi)
19349  DB  170                                 ; stos          %al,%es:(%rdi)
19350  DB  42,63                               ; sub           (%rdi),%bh
19351  DB  0,0                                 ; add           %al,(%rax)
19352  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19353  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19354  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19355  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19356  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19357  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19358  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19359  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
19360  DB  42,62                               ; sub           (%rsi),%bh
19361  DB  171                                 ; stos          %eax,%es:(%rdi)
19362  DB  170                                 ; stos          %al,%es:(%rdi)
19363  DB  42,62                               ; sub           (%rsi),%bh
19364  DB  171                                 ; stos          %eax,%es:(%rdi)
19365  DB  170                                 ; stos          %al,%es:(%rdi)
19366  DB  42,62                               ; sub           (%rsi),%bh
19367  DB  171                                 ; stos          %eax,%es:(%rdi)
19368  DB  170                                 ; stos          %al,%es:(%rdi)
19369  DB  42,62                               ; sub           (%rsi),%bh
19370  DB  171                                 ; stos          %eax,%es:(%rdi)
19371  DB  170                                 ; stos          %al,%es:(%rdi)
19372  DB  170                                 ; stos          %al,%es:(%rdi)
19373  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
19374  DB  171                                 ; stos          %eax,%es:(%rdi)
19375  DB  170                                 ; stos          %al,%es:(%rdi)
19376  DB  170                                 ; stos          %al,%es:(%rdi)
19377  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
19378  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19379  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
19380  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
19381  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19382  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
19383  DB  248                                 ; clc
19384  DB  0,0                                 ; add           %al,(%rax)
19385  DB  0,248                               ; add           %bh,%al
19386  DB  0,0                                 ; add           %al,(%rax)
19387  DB  0,248                               ; add           %bh,%al
19388  DB  0,0                                 ; add           %al,(%rax)
19389  DB  0,248                               ; add           %bh,%al
19390  DB  0,0                                 ; add           %al,(%rax)
19391  DB  8,33                                ; or            %ah,(%rcx)
19392  DB  132,55                              ; test          %dh,(%rdi)
19393  DB  8,33                                ; or            %ah,(%rcx)
19394  DB  132,55                              ; test          %dh,(%rdi)
19395  DB  8,33                                ; or            %ah,(%rcx)
19396  DB  132,55                              ; test          %dh,(%rdi)
19397  DB  8,33                                ; or            %ah,(%rcx)
19398  DB  132,55                              ; test          %dh,(%rdi)
19399  DB  224,7                               ; loopne        4159 <.literal16+0x359>
19400  DB  0,0                                 ; add           %al,(%rax)
19401  DB  224,7                               ; loopne        415d <.literal16+0x35d>
19402  DB  0,0                                 ; add           %al,(%rax)
19403  DB  224,7                               ; loopne        4161 <.literal16+0x361>
19404  DB  0,0                                 ; add           %al,(%rax)
19405  DB  224,7                               ; loopne        4165 <.literal16+0x365>
19406  DB  0,0                                 ; add           %al,(%rax)
19407  DB  33,8                                ; and           %ecx,(%rax)
19408  DB  2,58                                ; add           (%rdx),%bh
19409  DB  33,8                                ; and           %ecx,(%rax)
19410  DB  2,58                                ; add           (%rdx),%bh
19411  DB  33,8                                ; and           %ecx,(%rax)
19412  DB  2,58                                ; add           (%rdx),%bh
19413  DB  33,8                                ; and           %ecx,(%rax)
19414  DB  2,58                                ; add           (%rdx),%bh
19415  DB  31                                  ; (bad)
19416  DB  0,0                                 ; add           %al,(%rax)
19417  DB  0,31                                ; add           %bl,(%rdi)
19418  DB  0,0                                 ; add           %al,(%rax)
19419  DB  0,31                                ; add           %bl,(%rdi)
19420  DB  0,0                                 ; add           %al,(%rax)
19421  DB  0,31                                ; add           %bl,(%rdi)
19422  DB  0,0                                 ; add           %al,(%rax)
19423  DB  0,8                                 ; add           %cl,(%rax)
19424  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
19425  DB  8,33                                ; or            %ah,(%rcx)
19426  DB  4,61                                ; add           $0x3d,%al
19427  DB  8,33                                ; or            %ah,(%rcx)
19428  DB  4,61                                ; add           $0x3d,%al
19429  DB  0,0                                 ; add           %al,(%rax)
19430  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19431  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19432  DB  63                                  ; (bad)
19433  DB  0,0                                 ; add           %al,(%rax)
19434  DB  128,63,255                          ; cmpb          $0xff,(%rdi)
19435  DB  0,0                                 ; add           %al,(%rax)
19436  DB  0,255                               ; add           %bh,%bh
19437  DB  0,0                                 ; add           %al,(%rax)
19438  DB  0,255                               ; add           %bh,%bh
19439  DB  0,0                                 ; add           %al,(%rax)
19440  DB  0,255                               ; add           %bh,%bh
19441  DB  0,0                                 ; add           %al,(%rax)
19442  DB  0,129,128,128,59,129                ; add           %al,-0x7ec47f80(%rcx)
19443  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
19444  DB  129,128,128,59,255,0,255,0,255,0    ; addl          $0xff00ff,0xff3b80(%rax)
19445  DB  255,0                               ; incl          (%rax)
19446  DB  0,0                                 ; add           %al,(%rax)
19447  DB  0,0                                 ; add           %al,(%rax)
19448  DB  0,0                                 ; add           %al,(%rax)
19449  DB  0,0                                 ; add           %al,(%rax)
19450  DB  128,0,128                           ; addb          $0x80,(%rax)
19451  DB  55                                  ; (bad)
19452  DB  128,0,128                           ; addb          $0x80,(%rax)
19453  DB  55                                  ; (bad)
19454  DB  128,0,128                           ; addb          $0x80,(%rax)
19455  DB  55                                  ; (bad)
19456  DB  128,0,128                           ; addb          $0x80,(%rax)
19457  DB  55                                  ; (bad)
19458  DB  255,0                               ; incl          (%rax)
19459  DB  255,0                               ; incl          (%rax)
19460  DB  255,0                               ; incl          (%rax)
19461  DB  255,0                               ; incl          (%rax)
19462  DB  0,0                                 ; add           %al,(%rax)
19463  DB  0,0                                 ; add           %al,(%rax)
19464  DB  0,0                                 ; add           %al,(%rax)
19465  DB  0,0                                 ; add           %al,(%rax)
19466  DB  0,0                                 ; add           %al,(%rax)
19467  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19468  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19469  DB  63                                  ; (bad)
19470  DB  0,0                                 ; add           %al,(%rax)
19471  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19472  DB  0,127,67                            ; add           %bh,0x43(%rdi)
19473  DB  0,0                                 ; add           %al,(%rax)
19474  DB  127,67                              ; jg            424b <.literal16+0x44b>
19475  DB  0,0                                 ; add           %al,(%rax)
19476  DB  127,67                              ; jg            424f <.literal16+0x44f>
19477  DB  0,0                                 ; add           %al,(%rax)
19478  DB  127,67                              ; jg            4253 <.literal16+0x453>
19479  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19480  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
19481  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
19482  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19483  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
19484  DB  0,0                                 ; add           %al,(%rax)
19485  DB  52,0                                ; xor           $0x0,%al
19486  DB  0,0                                 ; add           %al,(%rax)
19487  DB  52,0                                ; xor           $0x0,%al
19488  DB  0,0                                 ; add           %al,(%rax)
19489  DB  52,0                                ; xor           $0x0,%al
19490  DB  0,0                                 ; add           %al,(%rax)
19491  DB  52,255                              ; xor           $0xff,%al
19492  DB  255                                 ; (bad)
19493  DB  127,0                               ; jg            4244 <.literal16+0x444>
19494  DB  255                                 ; (bad)
19495  DB  255                                 ; (bad)
19496  DB  127,0                               ; jg            4248 <.literal16+0x448>
19497  DB  255                                 ; (bad)
19498  DB  255                                 ; (bad)
19499  DB  127,0                               ; jg            424c <.literal16+0x44c>
19500  DB  255                                 ; (bad)
19501  DB  255                                 ; (bad)
19502  DB  127,0                               ; jg            4250 <.literal16+0x450>
19503  DB  0,0                                 ; add           %al,(%rax)
19504  DB  0,63                                ; add           %bh,(%rdi)
19505  DB  0,0                                 ; add           %al,(%rax)
19506  DB  0,63                                ; add           %bh,(%rdi)
19507  DB  0,0                                 ; add           %al,(%rax)
19508  DB  0,63                                ; add           %bh,(%rdi)
19509  DB  0,0                                 ; add           %al,(%rax)
19510  DB  0,63                                ; add           %bh,(%rdi)
19511  DB  119,115                             ; ja            42d5 <.literal16+0x4d5>
19512  DB  248                                 ; clc
19513  DB  194,119,115                         ; retq          $0x7377
19514  DB  248                                 ; clc
19515  DB  194,119,115                         ; retq          $0x7377
19516  DB  248                                 ; clc
19517  DB  194,119,115                         ; retq          $0x7377
19518  DB  248                                 ; clc
19519  DB  194,117,191                         ; retq          $0xbf75
19520  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
19521  DB  63                                  ; (bad)
19522  DB  117,191                             ; jne           4239 <.literal16+0x439>
19523  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
19524  DB  63                                  ; (bad)
19525  DB  249                                 ; stc
19526  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19527  DB  249                                 ; stc
19528  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19529  DB  249                                 ; stc
19530  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19531  DB  249                                 ; stc
19532  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19533  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
19534  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a3827a <_sk_callback_sse2+0xffffffffe9a3452f>
19535  DB  220,63                              ; fdivrl        (%rdi)
19536  DB  0,0                                 ; add           %al,(%rax)
19537  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19538  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19539  DB  63                                  ; (bad)
19540  DB  0,0                                 ; add           %al,(%rax)
19541  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
19542  DB  140,242                             ; mov           %?,%edx
19543  DB  66,81                               ; rex.X         push %rcx
19544  DB  140,242                             ; mov           %?,%edx
19545  DB  66,81                               ; rex.X         push %rcx
19546  DB  140,242                             ; mov           %?,%edx
19547  DB  66,81                               ; rex.X         push %rcx
19548  DB  140,242                             ; mov           %?,%edx
19549  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
19550  DB  63                                  ; (bad)
19551  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
19552  DB  63                                  ; (bad)
19553  DB  248                                 ; clc
19554  DB  245                                 ; cmc
19555  DB  154                                 ; (bad)
19556  DB  64,248                              ; rex           clc
19557  DB  245                                 ; cmc
19558  DB  154                                 ; (bad)
19559  DB  64,248                              ; rex           clc
19560  DB  245                                 ; cmc
19561  DB  154                                 ; (bad)
19562  DB  64,248                              ; rex           clc
19563  DB  245                                 ; cmc
19564  DB  154                                 ; (bad)
19565  DB  64,254                              ; rex           (bad)
19566  DB  210,221                             ; rcr           %cl,%ch
19567  DB  65,254                              ; rex.B         (bad)
19568  DB  210,221                             ; rcr           %cl,%ch
19569  DB  65,254                              ; rex.B         (bad)
19570  DB  210,221                             ; rcr           %cl,%ch
19571  DB  65,254                              ; rex.B         (bad)
19572  DB  210,221                             ; rcr           %cl,%ch
19573  DB  65,0,0                              ; add           %al,(%r8)
19574  DB  0,75,0                              ; add           %cl,0x0(%rbx)
19575  DB  0,0                                 ; add           %al,(%rax)
19576  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
19577  DB  0,75,0                              ; add           %cl,0x0(%rbx)
19578  DB  0,0                                 ; add           %al,(%rax)
19579  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
19580  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
19581  DB  0,0                                 ; add           %al,(%rax)
19582  DB  52,0                                ; xor           $0x0,%al
19583  DB  0,0                                 ; add           %al,(%rax)
19584  DB  52,0                                ; xor           $0x0,%al
19585  DB  0,0                                 ; add           %al,(%rax)
19586  DB  52,255                              ; xor           $0xff,%al
19587  DB  255                                 ; (bad)
19588  DB  127,0                               ; jg            4314 <.literal16+0x514>
19589  DB  255                                 ; (bad)
19590  DB  255                                 ; (bad)
19591  DB  127,0                               ; jg            4318 <.literal16+0x518>
19592  DB  255                                 ; (bad)
19593  DB  255                                 ; (bad)
19594  DB  127,0                               ; jg            431c <.literal16+0x51c>
19595  DB  255                                 ; (bad)
19596  DB  255                                 ; (bad)
19597  DB  127,0                               ; jg            4320 <.literal16+0x520>
19598  DB  0,0                                 ; add           %al,(%rax)
19599  DB  0,63                                ; add           %bh,(%rdi)
19600  DB  0,0                                 ; add           %al,(%rax)
19601  DB  0,63                                ; add           %bh,(%rdi)
19602  DB  0,0                                 ; add           %al,(%rax)
19603  DB  0,63                                ; add           %bh,(%rdi)
19604  DB  0,0                                 ; add           %al,(%rax)
19605  DB  0,63                                ; add           %bh,(%rdi)
19606  DB  119,115                             ; ja            43a5 <.literal16+0x5a5>
19607  DB  248                                 ; clc
19608  DB  194,119,115                         ; retq          $0x7377
19609  DB  248                                 ; clc
19610  DB  194,119,115                         ; retq          $0x7377
19611  DB  248                                 ; clc
19612  DB  194,119,115                         ; retq          $0x7377
19613  DB  248                                 ; clc
19614  DB  194,117,191                         ; retq          $0xbf75
19615  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
19616  DB  63                                  ; (bad)
19617  DB  117,191                             ; jne           4309 <.literal16+0x509>
19618  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
19619  DB  63                                  ; (bad)
19620  DB  249                                 ; stc
19621  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19622  DB  249                                 ; stc
19623  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19624  DB  249                                 ; stc
19625  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19626  DB  249                                 ; stc
19627  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19628  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
19629  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a3834a <_sk_callback_sse2+0xffffffffe9a345ff>
19630  DB  220,63                              ; fdivrl        (%rdi)
19631  DB  0,0                                 ; add           %al,(%rax)
19632  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19633  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19634  DB  63                                  ; (bad)
19635  DB  0,0                                 ; add           %al,(%rax)
19636  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
19637  DB  140,242                             ; mov           %?,%edx
19638  DB  66,81                               ; rex.X         push %rcx
19639  DB  140,242                             ; mov           %?,%edx
19640  DB  66,81                               ; rex.X         push %rcx
19641  DB  140,242                             ; mov           %?,%edx
19642  DB  66,81                               ; rex.X         push %rcx
19643  DB  140,242                             ; mov           %?,%edx
19644  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
19645  DB  63                                  ; (bad)
19646  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
19647  DB  63                                  ; (bad)
19648  DB  248                                 ; clc
19649  DB  245                                 ; cmc
19650  DB  154                                 ; (bad)
19651  DB  64,248                              ; rex           clc
19652  DB  245                                 ; cmc
19653  DB  154                                 ; (bad)
19654  DB  64,248                              ; rex           clc
19655  DB  245                                 ; cmc
19656  DB  154                                 ; (bad)
19657  DB  64,248                              ; rex           clc
19658  DB  245                                 ; cmc
19659  DB  154                                 ; (bad)
19660  DB  64,254                              ; rex           (bad)
19661  DB  210,221                             ; rcr           %cl,%ch
19662  DB  65,254                              ; rex.B         (bad)
19663  DB  210,221                             ; rcr           %cl,%ch
19664  DB  65,254                              ; rex.B         (bad)
19665  DB  210,221                             ; rcr           %cl,%ch
19666  DB  65,254                              ; rex.B         (bad)
19667  DB  210,221                             ; rcr           %cl,%ch
19668  DB  65,0,0                              ; add           %al,(%r8)
19669  DB  0,75,0                              ; add           %cl,0x0(%rbx)
19670  DB  0,0                                 ; add           %al,(%rax)
19671  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
19672  DB  0,75,0                              ; add           %cl,0x0(%rbx)
19673  DB  0,0                                 ; add           %al,(%rax)
19674  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
19675  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
19676  DB  0,0                                 ; add           %al,(%rax)
19677  DB  52,0                                ; xor           $0x0,%al
19678  DB  0,0                                 ; add           %al,(%rax)
19679  DB  52,0                                ; xor           $0x0,%al
19680  DB  0,0                                 ; add           %al,(%rax)
19681  DB  52,255                              ; xor           $0xff,%al
19682  DB  255                                 ; (bad)
19683  DB  127,0                               ; jg            43e4 <.literal16+0x5e4>
19684  DB  255                                 ; (bad)
19685  DB  255                                 ; (bad)
19686  DB  127,0                               ; jg            43e8 <.literal16+0x5e8>
19687  DB  255                                 ; (bad)
19688  DB  255                                 ; (bad)
19689  DB  127,0                               ; jg            43ec <.literal16+0x5ec>
19690  DB  255                                 ; (bad)
19691  DB  255                                 ; (bad)
19692  DB  127,0                               ; jg            43f0 <.literal16+0x5f0>
19693  DB  0,0                                 ; add           %al,(%rax)
19694  DB  0,63                                ; add           %bh,(%rdi)
19695  DB  0,0                                 ; add           %al,(%rax)
19696  DB  0,63                                ; add           %bh,(%rdi)
19697  DB  0,0                                 ; add           %al,(%rax)
19698  DB  0,63                                ; add           %bh,(%rdi)
19699  DB  0,0                                 ; add           %al,(%rax)
19700  DB  0,63                                ; add           %bh,(%rdi)
19701  DB  119,115                             ; ja            4475 <.literal16+0x675>
19702  DB  248                                 ; clc
19703  DB  194,119,115                         ; retq          $0x7377
19704  DB  248                                 ; clc
19705  DB  194,119,115                         ; retq          $0x7377
19706  DB  248                                 ; clc
19707  DB  194,119,115                         ; retq          $0x7377
19708  DB  248                                 ; clc
19709  DB  194,117,191                         ; retq          $0xbf75
19710  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
19711  DB  63                                  ; (bad)
19712  DB  117,191                             ; jne           43d9 <.literal16+0x5d9>
19713  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
19714  DB  63                                  ; (bad)
19715  DB  249                                 ; stc
19716  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19717  DB  249                                 ; stc
19718  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19719  DB  249                                 ; stc
19720  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19721  DB  249                                 ; stc
19722  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19723  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
19724  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a3841a <_sk_callback_sse2+0xffffffffe9a346cf>
19725  DB  220,63                              ; fdivrl        (%rdi)
19726  DB  0,0                                 ; add           %al,(%rax)
19727  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19728  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19729  DB  63                                  ; (bad)
19730  DB  0,0                                 ; add           %al,(%rax)
19731  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
19732  DB  140,242                             ; mov           %?,%edx
19733  DB  66,81                               ; rex.X         push %rcx
19734  DB  140,242                             ; mov           %?,%edx
19735  DB  66,81                               ; rex.X         push %rcx
19736  DB  140,242                             ; mov           %?,%edx
19737  DB  66,81                               ; rex.X         push %rcx
19738  DB  140,242                             ; mov           %?,%edx
19739  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
19740  DB  63                                  ; (bad)
19741  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
19742  DB  63                                  ; (bad)
19743  DB  248                                 ; clc
19744  DB  245                                 ; cmc
19745  DB  154                                 ; (bad)
19746  DB  64,248                              ; rex           clc
19747  DB  245                                 ; cmc
19748  DB  154                                 ; (bad)
19749  DB  64,248                              ; rex           clc
19750  DB  245                                 ; cmc
19751  DB  154                                 ; (bad)
19752  DB  64,248                              ; rex           clc
19753  DB  245                                 ; cmc
19754  DB  154                                 ; (bad)
19755  DB  64,254                              ; rex           (bad)
19756  DB  210,221                             ; rcr           %cl,%ch
19757  DB  65,254                              ; rex.B         (bad)
19758  DB  210,221                             ; rcr           %cl,%ch
19759  DB  65,254                              ; rex.B         (bad)
19760  DB  210,221                             ; rcr           %cl,%ch
19761  DB  65,254                              ; rex.B         (bad)
19762  DB  210,221                             ; rcr           %cl,%ch
19763  DB  65,0,0                              ; add           %al,(%r8)
19764  DB  0,75,0                              ; add           %cl,0x0(%rbx)
19765  DB  0,0                                 ; add           %al,(%rax)
19766  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
19767  DB  0,75,0                              ; add           %cl,0x0(%rbx)
19768  DB  0,0                                 ; add           %al,(%rax)
19769  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
19770  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
19771  DB  0,0                                 ; add           %al,(%rax)
19772  DB  52,0                                ; xor           $0x0,%al
19773  DB  0,0                                 ; add           %al,(%rax)
19774  DB  52,0                                ; xor           $0x0,%al
19775  DB  0,0                                 ; add           %al,(%rax)
19776  DB  52,255                              ; xor           $0xff,%al
19777  DB  255                                 ; (bad)
19778  DB  127,0                               ; jg            44b4 <.literal16+0x6b4>
19779  DB  255                                 ; (bad)
19780  DB  255                                 ; (bad)
19781  DB  127,0                               ; jg            44b8 <.literal16+0x6b8>
19782  DB  255                                 ; (bad)
19783  DB  255                                 ; (bad)
19784  DB  127,0                               ; jg            44bc <.literal16+0x6bc>
19785  DB  255                                 ; (bad)
19786  DB  255                                 ; (bad)
19787  DB  127,0                               ; jg            44c0 <.literal16+0x6c0>
19788  DB  0,0                                 ; add           %al,(%rax)
19789  DB  0,63                                ; add           %bh,(%rdi)
19790  DB  0,0                                 ; add           %al,(%rax)
19791  DB  0,63                                ; add           %bh,(%rdi)
19792  DB  0,0                                 ; add           %al,(%rax)
19793  DB  0,63                                ; add           %bh,(%rdi)
19794  DB  0,0                                 ; add           %al,(%rax)
19795  DB  0,63                                ; add           %bh,(%rdi)
19796  DB  119,115                             ; ja            4545 <.literal16+0x745>
19797  DB  248                                 ; clc
19798  DB  194,119,115                         ; retq          $0x7377
19799  DB  248                                 ; clc
19800  DB  194,119,115                         ; retq          $0x7377
19801  DB  248                                 ; clc
19802  DB  194,119,115                         ; retq          $0x7377
19803  DB  248                                 ; clc
19804  DB  194,117,191                         ; retq          $0xbf75
19805  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
19806  DB  63                                  ; (bad)
19807  DB  117,191                             ; jne           44a9 <.literal16+0x6a9>
19808  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
19809  DB  63                                  ; (bad)
19810  DB  249                                 ; stc
19811  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19812  DB  249                                 ; stc
19813  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19814  DB  249                                 ; stc
19815  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19816  DB  249                                 ; stc
19817  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
19818  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
19819  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a384ea <_sk_callback_sse2+0xffffffffe9a3479f>
19820  DB  220,63                              ; fdivrl        (%rdi)
19821  DB  0,0                                 ; add           %al,(%rax)
19822  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19823  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19824  DB  63                                  ; (bad)
19825  DB  0,0                                 ; add           %al,(%rax)
19826  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
19827  DB  140,242                             ; mov           %?,%edx
19828  DB  66,81                               ; rex.X         push %rcx
19829  DB  140,242                             ; mov           %?,%edx
19830  DB  66,81                               ; rex.X         push %rcx
19831  DB  140,242                             ; mov           %?,%edx
19832  DB  66,81                               ; rex.X         push %rcx
19833  DB  140,242                             ; mov           %?,%edx
19834  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
19835  DB  63                                  ; (bad)
19836  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
19837  DB  63                                  ; (bad)
19838  DB  248                                 ; clc
19839  DB  245                                 ; cmc
19840  DB  154                                 ; (bad)
19841  DB  64,248                              ; rex           clc
19842  DB  245                                 ; cmc
19843  DB  154                                 ; (bad)
19844  DB  64,248                              ; rex           clc
19845  DB  245                                 ; cmc
19846  DB  154                                 ; (bad)
19847  DB  64,248                              ; rex           clc
19848  DB  245                                 ; cmc
19849  DB  154                                 ; (bad)
19850  DB  64,254                              ; rex           (bad)
19851  DB  210,221                             ; rcr           %cl,%ch
19852  DB  65,254                              ; rex.B         (bad)
19853  DB  210,221                             ; rcr           %cl,%ch
19854  DB  65,254                              ; rex.B         (bad)
19855  DB  210,221                             ; rcr           %cl,%ch
19856  DB  65,254                              ; rex.B         (bad)
19857  DB  210,221                             ; rcr           %cl,%ch
19858  DB  65,0,0                              ; add           %al,(%r8)
19859  DB  0,75,0                              ; add           %cl,0x0(%rbx)
19860  DB  0,0                                 ; add           %al,(%rax)
19861  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
19862  DB  0,75,0                              ; add           %cl,0x0(%rbx)
19863  DB  0,0                                 ; add           %al,(%rax)
19864  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
19865  DB  200,66,0,0                          ; enterq        $0x42,$0x0
19866  DB  200,66,0,0                          ; enterq        $0x42,$0x0
19867  DB  200,66,0,0                          ; enterq        $0x42,$0x0
19868  DB  200,66,0,0                          ; enterq        $0x42,$0x0
19869  DB  127,67                              ; jg            45c7 <.literal16+0x7c7>
19870  DB  0,0                                 ; add           %al,(%rax)
19871  DB  127,67                              ; jg            45cb <.literal16+0x7cb>
19872  DB  0,0                                 ; add           %al,(%rax)
19873  DB  127,67                              ; jg            45cf <.literal16+0x7cf>
19874  DB  0,0                                 ; add           %al,(%rax)
19875  DB  127,67                              ; jg            45d3 <.literal16+0x7d3>
19876  DB  0,0                                 ; add           %al,(%rax)
19877  DB  0,195                               ; add           %al,%bl
19878  DB  0,0                                 ; add           %al,(%rax)
19879  DB  0,195                               ; add           %al,%bl
19880  DB  0,0                                 ; add           %al,(%rax)
19881  DB  0,195                               ; add           %al,%bl
19882  DB  0,0                                 ; add           %al,(%rax)
19883  DB  0,195                               ; add           %al,%bl
19884  DB  0,0                                 ; add           %al,(%rax)
19885  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
19886  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
19887  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
19888  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
19889  DB  13,60,203,61,13                     ; or            $0xd3dcb3c,%eax
19890  DB  60,203                              ; cmp           $0xcb,%al
19891  DB  61,13,60,203,61                     ; cmp           $0x3dcb3c0d,%eax
19892  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
19893  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
19894  DB  3,59                                ; add           (%rbx),%edi
19895  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
19896  DB  18,3                                ; adc           (%rbx),%al
19897  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
19898  DB  3,59                                ; add           (%rbx),%edi
19899  DB  10,215                              ; or            %bh,%dl
19900  DB  163,59,10,215,163,59,10,215,163     ; movabs        %eax,0xa3d70a3ba3d70a3b
19901  DB  59,10                               ; cmp           (%rdx),%ecx
19902  DB  215                                 ; xlat          %ds:(%rbx)
19903  DB  163,59,194,24,17,60,194,24,17       ; movabs        %eax,0x1118c23c1118c23b
19904  DB  60,194                              ; cmp           $0xc2,%al
19905  DB  24,17                               ; sbb           %dl,(%rcx)
19906  DB  60,194                              ; cmp           $0xc2,%al
19907  DB  24,17                               ; sbb           %dl,(%rcx)
19908  DB  60,203                              ; cmp           $0xcb,%al
19909  DB  61,13,190,203,61                    ; cmp           $0x3dcbbe0d,%eax
19910  DB  13,190,203,61,13                    ; or            $0xd3dcbbe,%eax
19911  DB  190,203,61,13,190                   ; mov           $0xbe0d3dcb,%esi
19912  DB  80                                  ; push          %rax
19913  DB  128,3,62                            ; addb          $0x3e,(%rbx)
19914  DB  80                                  ; push          %rax
19915  DB  128,3,62                            ; addb          $0x3e,(%rbx)
19916  DB  80                                  ; push          %rax
19917  DB  128,3,62                            ; addb          $0x3e,(%rbx)
19918  DB  80                                  ; push          %rax
19919  DB  128,3,62                            ; addb          $0x3e,(%rbx)
19920  DB  31                                  ; (bad)
19921  DB  215                                 ; xlat          %ds:(%rbx)
19922  DB  118,63                              ; jbe           4653 <.literal16+0x853>
19923  DB  31                                  ; (bad)
19924  DB  215                                 ; xlat          %ds:(%rbx)
19925  DB  118,63                              ; jbe           4657 <.literal16+0x857>
19926  DB  31                                  ; (bad)
19927  DB  215                                 ; xlat          %ds:(%rbx)
19928  DB  118,63                              ; jbe           465b <.literal16+0x85b>
19929  DB  31                                  ; (bad)
19930  DB  215                                 ; xlat          %ds:(%rbx)
19931  DB  118,63                              ; jbe           465f <.literal16+0x85f>
19932  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
19933  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
19934  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
19935  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
19936  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19937  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
19938  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
19939  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19940  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
19941  DB  0,127,67                            ; add           %bh,0x43(%rdi)
19942  DB  0,0                                 ; add           %al,(%rax)
19943  DB  127,67                              ; jg            469b <.literal16+0x89b>
19944  DB  0,0                                 ; add           %al,(%rax)
19945  DB  127,67                              ; jg            469f <.literal16+0x89f>
19946  DB  0,0                                 ; add           %al,(%rax)
19947  DB  127,67                              ; jg            46a3 <.literal16+0x8a3>
19948  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19949  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
19950  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
19951  DB  0,0                                 ; add           %al,(%rax)
19952  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19953  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19954  DB  63                                  ; (bad)
19955  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19956  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
19957  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
19958  DB  0,0                                 ; add           %al,(%rax)
19959  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19960  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19961  DB  63                                  ; (bad)
19962  DB  255,0                               ; incl          (%rax)
19963  DB  0,0                                 ; add           %al,(%rax)
19964  DB  255,0                               ; incl          (%rax)
19965  DB  0,0                                 ; add           %al,(%rax)
19966  DB  255,0                               ; incl          (%rax)
19967  DB  0,0                                 ; add           %al,(%rax)
19968  DB  255,0                               ; incl          (%rax)
19969  DB  0,0                                 ; add           %al,(%rax)
19970  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19971  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
19972  DB  128,128,59,0,248,0,0                ; addb          $0x0,0xf8003b(%rax)
19973  DB  0,248                               ; add           %bh,%al
19974  DB  0,0                                 ; add           %al,(%rax)
19975  DB  0,248                               ; add           %bh,%al
19976  DB  0,0                                 ; add           %al,(%rax)
19977  DB  0,248                               ; add           %bh,%al
19978  DB  0,0                                 ; add           %al,(%rax)
19979  DB  8,33                                ; or            %ah,(%rcx)
19980  DB  132,55                              ; test          %dh,(%rdi)
19981  DB  8,33                                ; or            %ah,(%rcx)
19982  DB  132,55                              ; test          %dh,(%rdi)
19983  DB  8,33                                ; or            %ah,(%rcx)
19984  DB  132,55                              ; test          %dh,(%rdi)
19985  DB  8,33                                ; or            %ah,(%rcx)
19986  DB  132,55                              ; test          %dh,(%rdi)
19987  DB  224,7                               ; loopne        46e9 <.literal16+0x8e9>
19988  DB  0,0                                 ; add           %al,(%rax)
19989  DB  224,7                               ; loopne        46ed <.literal16+0x8ed>
19990  DB  0,0                                 ; add           %al,(%rax)
19991  DB  224,7                               ; loopne        46f1 <.literal16+0x8f1>
19992  DB  0,0                                 ; add           %al,(%rax)
19993  DB  224,7                               ; loopne        46f5 <.literal16+0x8f5>
19994  DB  0,0                                 ; add           %al,(%rax)
19995  DB  33,8                                ; and           %ecx,(%rax)
19996  DB  2,58                                ; add           (%rdx),%bh
19997  DB  33,8                                ; and           %ecx,(%rax)
19998  DB  2,58                                ; add           (%rdx),%bh
19999  DB  33,8                                ; and           %ecx,(%rax)
20000  DB  2,58                                ; add           (%rdx),%bh
20001  DB  33,8                                ; and           %ecx,(%rax)
20002  DB  2,58                                ; add           (%rdx),%bh
20003  DB  31                                  ; (bad)
20004  DB  0,0                                 ; add           %al,(%rax)
20005  DB  0,31                                ; add           %bl,(%rdi)
20006  DB  0,0                                 ; add           %al,(%rax)
20007  DB  0,31                                ; add           %bl,(%rdi)
20008  DB  0,0                                 ; add           %al,(%rax)
20009  DB  0,31                                ; add           %bl,(%rdi)
20010  DB  0,0                                 ; add           %al,(%rax)
20011  DB  0,8                                 ; add           %cl,(%rax)
20012  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
20013  DB  8,33                                ; or            %ah,(%rcx)
20014  DB  4,61                                ; add           $0x3d,%al
20015  DB  8,33                                ; or            %ah,(%rcx)
20016  DB  4,61                                ; add           $0x3d,%al
20017  DB  0,0                                 ; add           %al,(%rax)
20018  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20019  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20020  DB  63                                  ; (bad)
20021  DB  0,0                                 ; add           %al,(%rax)
20022  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20023  DB  248                                 ; clc
20024  DB  0,0                                 ; add           %al,(%rax)
20025  DB  0,248                               ; add           %bh,%al
20026  DB  0,0                                 ; add           %al,(%rax)
20027  DB  0,248                               ; add           %bh,%al
20028  DB  0,0                                 ; add           %al,(%rax)
20029  DB  0,248                               ; add           %bh,%al
20030  DB  0,0                                 ; add           %al,(%rax)
20031  DB  8,33                                ; or            %ah,(%rcx)
20032  DB  132,55                              ; test          %dh,(%rdi)
20033  DB  8,33                                ; or            %ah,(%rcx)
20034  DB  132,55                              ; test          %dh,(%rdi)
20035  DB  8,33                                ; or            %ah,(%rcx)
20036  DB  132,55                              ; test          %dh,(%rdi)
20037  DB  8,33                                ; or            %ah,(%rcx)
20038  DB  132,55                              ; test          %dh,(%rdi)
20039  DB  224,7                               ; loopne        4759 <.literal16+0x959>
20040  DB  0,0                                 ; add           %al,(%rax)
20041  DB  224,7                               ; loopne        475d <.literal16+0x95d>
20042  DB  0,0                                 ; add           %al,(%rax)
20043  DB  224,7                               ; loopne        4761 <.literal16+0x961>
20044  DB  0,0                                 ; add           %al,(%rax)
20045  DB  224,7                               ; loopne        4765 <.literal16+0x965>
20046  DB  0,0                                 ; add           %al,(%rax)
20047  DB  33,8                                ; and           %ecx,(%rax)
20048  DB  2,58                                ; add           (%rdx),%bh
20049  DB  33,8                                ; and           %ecx,(%rax)
20050  DB  2,58                                ; add           (%rdx),%bh
20051  DB  33,8                                ; and           %ecx,(%rax)
20052  DB  2,58                                ; add           (%rdx),%bh
20053  DB  33,8                                ; and           %ecx,(%rax)
20054  DB  2,58                                ; add           (%rdx),%bh
20055  DB  31                                  ; (bad)
20056  DB  0,0                                 ; add           %al,(%rax)
20057  DB  0,31                                ; add           %bl,(%rdi)
20058  DB  0,0                                 ; add           %al,(%rax)
20059  DB  0,31                                ; add           %bl,(%rdi)
20060  DB  0,0                                 ; add           %al,(%rax)
20061  DB  0,31                                ; add           %bl,(%rdi)
20062  DB  0,0                                 ; add           %al,(%rax)
20063  DB  0,8                                 ; add           %cl,(%rax)
20064  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
20065  DB  8,33                                ; or            %ah,(%rcx)
20066  DB  4,61                                ; add           $0x3d,%al
20067  DB  8,33                                ; or            %ah,(%rcx)
20068  DB  4,61                                ; add           $0x3d,%al
20069  DB  0,0                                 ; add           %al,(%rax)
20070  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20071  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20072  DB  63                                  ; (bad)
20073  DB  0,0                                 ; add           %al,(%rax)
20074  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20075  DB  0,248                               ; add           %bh,%al
20076  DB  65,0,0                              ; add           %al,(%r8)
20077  DB  248                                 ; clc
20078  DB  65,0,0                              ; add           %al,(%r8)
20079  DB  248                                 ; clc
20080  DB  65,0,0                              ; add           %al,(%r8)
20081  DB  248                                 ; clc
20082  DB  65,0,0                              ; add           %al,(%r8)
20083  DB  124,66                              ; jl            47f6 <.literal16+0x9f6>
20084  DB  0,0                                 ; add           %al,(%rax)
20085  DB  124,66                              ; jl            47fa <.literal16+0x9fa>
20086  DB  0,0                                 ; add           %al,(%rax)
20087  DB  124,66                              ; jl            47fe <.literal16+0x9fe>
20088  DB  0,0                                 ; add           %al,(%rax)
20089  DB  124,66                              ; jl            4802 <.literal16+0xa02>
20090  DB  0,240                               ; add           %dh,%al
20091  DB  0,0                                 ; add           %al,(%rax)
20092  DB  0,240                               ; add           %dh,%al
20093  DB  0,0                                 ; add           %al,(%rax)
20094  DB  0,240                               ; add           %dh,%al
20095  DB  0,0                                 ; add           %al,(%rax)
20096  DB  0,240                               ; add           %dh,%al
20097  DB  0,0                                 ; add           %al,(%rax)
20098  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
20099  DB  136,55                              ; mov           %dh,(%rdi)
20100  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
20101  DB  136,55                              ; mov           %dh,(%rdi)
20102  DB  0,15                                ; add           %cl,(%rdi)
20103  DB  0,0                                 ; add           %al,(%rax)
20104  DB  0,15                                ; add           %cl,(%rdi)
20105  DB  0,0                                 ; add           %al,(%rax)
20106  DB  0,15                                ; add           %cl,(%rdi)
20107  DB  0,0                                 ; add           %al,(%rax)
20108  DB  0,15                                ; add           %cl,(%rdi)
20109  DB  0,0                                 ; add           %al,(%rax)
20110  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
20111  DB  136,57                              ; mov           %bh,(%rcx)
20112  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
20113  DB  136,57                              ; mov           %bh,(%rcx)
20114  DB  240,0,0                             ; lock          add %al,(%rax)
20115  DB  0,240                               ; add           %dh,%al
20116  DB  0,0                                 ; add           %al,(%rax)
20117  DB  0,240                               ; add           %dh,%al
20118  DB  0,0                                 ; add           %al,(%rax)
20119  DB  0,240                               ; add           %dh,%al
20120  DB  0,0                                 ; add           %al,(%rax)
20121  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
20122  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
20123  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
20124  DB  0,0                                 ; add           %al,(%rax)
20125  DB  0,15                                ; add           %cl,(%rdi)
20126  DB  0,0                                 ; add           %al,(%rax)
20127  DB  0,15                                ; add           %cl,(%rdi)
20128  DB  0,0                                 ; add           %al,(%rax)
20129  DB  0,15                                ; add           %cl,(%rdi)
20130  DB  0,0                                 ; add           %al,(%rax)
20131  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
20132  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
20133  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
20134  DB  0,240                               ; add           %dh,%al
20135  DB  0,0                                 ; add           %al,(%rax)
20136  DB  0,240                               ; add           %dh,%al
20137  DB  0,0                                 ; add           %al,(%rax)
20138  DB  0,240                               ; add           %dh,%al
20139  DB  0,0                                 ; add           %al,(%rax)
20140  DB  0,240                               ; add           %dh,%al
20141  DB  0,0                                 ; add           %al,(%rax)
20142  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
20143  DB  136,55                              ; mov           %dh,(%rdi)
20144  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
20145  DB  136,55                              ; mov           %dh,(%rdi)
20146  DB  0,15                                ; add           %cl,(%rdi)
20147  DB  0,0                                 ; add           %al,(%rax)
20148  DB  0,15                                ; add           %cl,(%rdi)
20149  DB  0,0                                 ; add           %al,(%rax)
20150  DB  0,15                                ; add           %cl,(%rdi)
20151  DB  0,0                                 ; add           %al,(%rax)
20152  DB  0,15                                ; add           %cl,(%rdi)
20153  DB  0,0                                 ; add           %al,(%rax)
20154  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
20155  DB  136,57                              ; mov           %bh,(%rcx)
20156  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
20157  DB  136,57                              ; mov           %bh,(%rcx)
20158  DB  240,0,0                             ; lock          add %al,(%rax)
20159  DB  0,240                               ; add           %dh,%al
20160  DB  0,0                                 ; add           %al,(%rax)
20161  DB  0,240                               ; add           %dh,%al
20162  DB  0,0                                 ; add           %al,(%rax)
20163  DB  0,240                               ; add           %dh,%al
20164  DB  0,0                                 ; add           %al,(%rax)
20165  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
20166  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
20167  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
20168  DB  0,0                                 ; add           %al,(%rax)
20169  DB  0,15                                ; add           %cl,(%rdi)
20170  DB  0,0                                 ; add           %al,(%rax)
20171  DB  0,15                                ; add           %cl,(%rdi)
20172  DB  0,0                                 ; add           %al,(%rax)
20173  DB  0,15                                ; add           %cl,(%rdi)
20174  DB  0,0                                 ; add           %al,(%rax)
20175  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
20176  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
20177  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
20178  DB  0,0                                 ; add           %al,(%rax)
20179  DB  112,65                              ; jo            4905 <.literal16+0xb05>
20180  DB  0,0                                 ; add           %al,(%rax)
20181  DB  112,65                              ; jo            4909 <.literal16+0xb09>
20182  DB  0,0                                 ; add           %al,(%rax)
20183  DB  112,65                              ; jo            490d <.literal16+0xb0d>
20184  DB  0,0                                 ; add           %al,(%rax)
20185  DB  112,65                              ; jo            4911 <.literal16+0xb11>
20186  DB  255,0                               ; incl          (%rax)
20187  DB  0,0                                 ; add           %al,(%rax)
20188  DB  255,0                               ; incl          (%rax)
20189  DB  0,0                                 ; add           %al,(%rax)
20190  DB  255,0                               ; incl          (%rax)
20191  DB  0,0                                 ; add           %al,(%rax)
20192  DB  255,0                               ; incl          (%rax)
20193  DB  0,0                                 ; add           %al,(%rax)
20194  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
20195  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
20196  DB  128,128,59,255,0,0,0                ; addb          $0x0,0xff3b(%rax)
20197  DB  255,0                               ; incl          (%rax)
20198  DB  0,0                                 ; add           %al,(%rax)
20199  DB  255,0                               ; incl          (%rax)
20200  DB  0,0                                 ; add           %al,(%rax)
20201  DB  255,0                               ; incl          (%rax)
20202  DB  0,0                                 ; add           %al,(%rax)
20203  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
20204  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
20205  DB  128,128,59,0,0,127,67               ; addb          $0x43,0x7f00003b(%rax)
20206  DB  0,0                                 ; add           %al,(%rax)
20207  DB  127,67                              ; jg            495b <.literal16+0xb5b>
20208  DB  0,0                                 ; add           %al,(%rax)
20209  DB  127,67                              ; jg            495f <.literal16+0xb5f>
20210  DB  0,0                                 ; add           %al,(%rax)
20211  DB  127,67                              ; jg            4963 <.literal16+0xb63>
20212  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20213  DB  0,0                                 ; add           %al,(%rax)
20214  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20215  DB  0,0                                 ; add           %al,(%rax)
20216  DB  0,0                                 ; add           %al,(%rax)
20217  DB  0,56                                ; add           %bh,(%rax)
20218  DB  0,0                                 ; add           %al,(%rax)
20219  DB  0,56                                ; add           %bh,(%rax)
20220  DB  0,0                                 ; add           %al,(%rax)
20221  DB  0,56                                ; add           %bh,(%rax)
20222  DB  0,0                                 ; add           %al,(%rax)
20223  DB  0,56                                ; add           %bh,(%rax)
20224  DB  0,0                                 ; add           %al,(%rax)
20225  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20226  DB  0,0                                 ; add           %al,(%rax)
20227  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20228  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
20229  DB  128,0,4                             ; addb          $0x4,(%rax)
20230  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
20231  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
20232  DB  128,0,128                           ; addb          $0x80,(%rax)
20233  DB  0,0                                 ; add           %al,(%rax)
20234  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20235  DB  0,0                                 ; add           %al,(%rax)
20236  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
20237  DB  0,56                                ; add           %bh,(%rax)
20238  DB  0,0                                 ; add           %al,(%rax)
20239  DB  0,56                                ; add           %bh,(%rax)
20240  DB  0,0                                 ; add           %al,(%rax)
20241  DB  0,56                                ; add           %bh,(%rax)
20242  DB  0,0                                 ; add           %al,(%rax)
20243  DB  0,56                                ; add           %bh,(%rax)
20244  DB  0,0                                 ; add           %al,(%rax)
20245  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20246  DB  0,0                                 ; add           %al,(%rax)
20247  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20248  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
20249  DB  128,0,4                             ; addb          $0x4,(%rax)
20250  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
20251  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
20252  DB  128,0,0                             ; addb          $0x0,(%rax)
20253  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20254  DB  0,0                                 ; add           %al,(%rax)
20255  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20256  DB  0,0                                 ; add           %al,(%rax)
20257  DB  128,56,0                            ; cmpb          $0x0,(%rax)
20258  DB  0,128,56,0,0,128                    ; add           %al,-0x7fffffc8(%rax)
20259  DB  56,0                                ; cmp           %al,(%rax)
20260  DB  0,128,56,0,64,254                   ; add           %al,-0x1bfffc8(%rax)
20261  DB  255,0                               ; incl          (%rax)
20262  DB  64,254                              ; rex           (bad)
20263  DB  255,0                               ; incl          (%rax)
20264  DB  64,254                              ; rex           (bad)
20265  DB  255,0                               ; incl          (%rax)
20266  DB  64,254                              ; rex           (bad)
20267  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
20268  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
20269  DB  55                                  ; (bad)
20270  DB  128,0,128                           ; addb          $0x80,(%rax)
20271  DB  55                                  ; (bad)
20272  DB  128,0,128                           ; addb          $0x80,(%rax)
20273  DB  55                                  ; (bad)
20274  DB  128,0,128                           ; addb          $0x80,(%rax)
20275  DB  55                                  ; (bad)
20276  DB  128,0,128                           ; addb          $0x80,(%rax)
20277  DB  55                                  ; (bad)
20278  DB  128,0,128                           ; addb          $0x80,(%rax)
20279  DB  55                                  ; (bad)
20280  DB  0,0                                 ; add           %al,(%rax)
20281  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20282  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20283  DB  63                                  ; (bad)
20284  DB  0,0                                 ; add           %al,(%rax)
20285  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20286  DB  255                                 ; (bad)
20287  DB  127,71                              ; jg            4a4b <.literal16+0xc4b>
20288  DB  0,255                               ; add           %bh,%bh
20289  DB  127,71                              ; jg            4a4f <.literal16+0xc4f>
20290  DB  0,255                               ; add           %bh,%bh
20291  DB  127,71                              ; jg            4a53 <.literal16+0xc53>
20292  DB  0,255                               ; add           %bh,%bh
20293  DB  127,71                              ; jg            4a57 <.literal16+0xc57>
20294  DB  0,0                                 ; add           %al,(%rax)
20295  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20296  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20297  DB  63                                  ; (bad)
20298  DB  0,0                                 ; add           %al,(%rax)
20299  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20300  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20301  DB  63                                  ; (bad)
20302  DB  0,0                                 ; add           %al,(%rax)
20303  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20304  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20305  DB  63                                  ; (bad)
20306  DB  0,0                                 ; add           %al,(%rax)
20307  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20308  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20309  DB  63                                  ; (bad)
20310  DB  0,0                                 ; add           %al,(%rax)
20311  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20312  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20313  DB  63                                  ; (bad)
20314  DB  0,0                                 ; add           %al,(%rax)
20315  DB  128,63,208                          ; cmpb          $0xd0,(%rdi)
20316  DB  179,89                              ; mov           $0x59,%bl
20317  DB  62,208                              ; ds            (bad)
20318  DB  179,89                              ; mov           $0x59,%bl
20319  DB  62,208                              ; ds            (bad)
20320  DB  179,89                              ; mov           $0x59,%bl
20321  DB  62,208                              ; ds            (bad)
20322  DB  179,89                              ; mov           $0x59,%bl
20323  DB  62,89                               ; ds            pop %rcx
20324  DB  23                                  ; (bad)
20325  DB  55                                  ; (bad)
20326  DB  63                                  ; (bad)
20327  DB  89                                  ; pop           %rcx
20328  DB  23                                  ; (bad)
20329  DB  55                                  ; (bad)
20330  DB  63                                  ; (bad)
20331  DB  89                                  ; pop           %rcx
20332  DB  23                                  ; (bad)
20333  DB  55                                  ; (bad)
20334  DB  63                                  ; (bad)
20335  DB  89                                  ; pop           %rcx
20336  DB  23                                  ; (bad)
20337  DB  55                                  ; (bad)
20338  DB  63                                  ; (bad)
20339  DB  152                                 ; cwtl
20340  DB  221,147,61,152,221,147              ; fstl          -0x6c2267c3(%rbx)
20341  DB  61,152,221,147,61                   ; cmp           $0x3d93dd98,%eax
20342  DB  152                                 ; cwtl
20343  DB  221,147,61,0,0,0                    ; fstl          0x3d(%rbx)
20344  DB  63                                  ; (bad)
20345  DB  0,0                                 ; add           %al,(%rax)
20346  DB  0,63                                ; add           %bh,(%rdi)
20347  DB  0,0                                 ; add           %al,(%rax)
20348  DB  0,63                                ; add           %bh,(%rdi)
20349  DB  0,0                                 ; add           %al,(%rax)
20350  DB  0,63                                ; add           %bh,(%rdi)
20351  DB  0,0                                 ; add           %al,(%rax)
20352  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20353  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20354  DB  63                                  ; (bad)
20355  DB  0,0                                 ; add           %al,(%rax)
20356  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20357  DB  0,0                                 ; add           %al,(%rax)
20358  DB  191,0,0,0,191                       ; mov           $0xbf000000,%edi
20359  DB  0,0                                 ; add           %al,(%rax)
20360  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20361  DB  0,0                                 ; add           %al,(%rax)
20362  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20363  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20364  DB  63                                  ; (bad)
20365  DB  0,0                                 ; add           %al,(%rax)
20366  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20367  DB  0,0                                 ; add           %al,(%rax)
20368  DB  63                                  ; (bad)
20369  DB  0,0                                 ; add           %al,(%rax)
20370  DB  0,63                                ; add           %bh,(%rdi)
20371  DB  0,0                                 ; add           %al,(%rax)
20372  DB  0,63                                ; add           %bh,(%rdi)
20373  DB  0,0                                 ; add           %al,(%rax)
20374  DB  0,63                                ; add           %bh,(%rdi)
20375  DB  0,0                                 ; add           %al,(%rax)
20376  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20377  DB  0,0                                 ; add           %al,(%rax)
20378  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20379  DB  0,0                                 ; add           %al,(%rax)
20380  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20381  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20382  DB  63                                  ; (bad)
20383  DB  0,0                                 ; add           %al,(%rax)
20384  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20385  DB  0,0                                 ; add           %al,(%rax)
20386  DB  63                                  ; (bad)
20387  DB  0,0                                 ; add           %al,(%rax)
20388  DB  0,63                                ; add           %bh,(%rdi)
20389  DB  0,0                                 ; add           %al,(%rax)
20390  DB  0,63                                ; add           %bh,(%rdi)
20391  DB  0,0                                 ; add           %al,(%rax)
20392  DB  0,63                                ; add           %bh,(%rdi)
20393  DB  0,0                                 ; add           %al,(%rax)
20394  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
20395  DB  0,192                               ; add           %al,%al
20396  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
20397  DB  0,0                                 ; add           %al,(%rax)
20398  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20399  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20400  DB  63                                  ; (bad)
20401  DB  0,0                                 ; add           %al,(%rax)
20402  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
20403  DB  28,199                              ; sbb           $0xc7,%al
20404  DB  62,114,28                           ; jb,pt         4b42 <.literal16+0xd42>
20405  DB  199                                 ; (bad)
20406  DB  62,114,28                           ; jb,pt         4b46 <.literal16+0xd46>
20407  DB  199                                 ; (bad)
20408  DB  62,114,28                           ; jb,pt         4b4a <.literal16+0xd4a>
20409  DB  199                                 ; (bad)
20410  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
20411  DB  170                                 ; stos          %al,%es:(%rdi)
20412  DB  170                                 ; stos          %al,%es:(%rdi)
20413  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
20414  DB  171                                 ; stos          %eax,%es:(%rdi)
20415  DB  170                                 ; stos          %al,%es:(%rdi)
20416  DB  170                                 ; stos          %al,%es:(%rdi)
20417  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
20418  DB  0,0                                 ; add           %al,(%rax)
20419  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20420  DB  0,0                                 ; add           %al,(%rax)
20421  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20422  DB  0,0                                 ; add           %al,(%rax)
20423  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20424  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20425  DB  63                                  ; (bad)
20426  DB  0,0                                 ; add           %al,(%rax)
20427  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
20428  DB  85                                  ; push          %rbp
20429  DB  149                                 ; xchg          %eax,%ebp
20430  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
20431  DB  85                                  ; push          %rbp
20432  DB  85                                  ; push          %rbp
20433  DB  149                                 ; xchg          %eax,%ebp
20434  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
20435  DB  0,0                                 ; add           %al,(%rax)
20436  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20437  DB  0,192                               ; add           %al,%al
20438  DB  63                                  ; (bad)
20439  DB  0,0                                 ; add           %al,(%rax)
20440  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20441  DB  0,192                               ; add           %al,%al
20442  DB  63                                  ; (bad)
20443  DB  0,0                                 ; add           %al,(%rax)
20444  DB  0,63                                ; add           %bh,(%rdi)
20445  DB  0,0                                 ; add           %al,(%rax)
20446  DB  0,63                                ; add           %bh,(%rdi)
20447  DB  0,0                                 ; add           %al,(%rax)
20448  DB  0,63                                ; add           %bh,(%rdi)
20449  DB  0,0                                 ; add           %al,(%rax)
20450  DB  0,63                                ; add           %bh,(%rdi)
20451  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
20452  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63d9d5 <_sk_callback_sse2+0x3d639c8a>
20453  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
20454  DB  0,63                                ; add           %bh,(%rdi)
20455  DB  0,0                                 ; add           %al,(%rax)
20456  DB  0,63                                ; add           %bh,(%rdi)
20457  DB  0,0                                 ; add           %al,(%rax)
20458  DB  0,63                                ; add           %bh,(%rdi)
20459  DB  0,0                                 ; add           %al,(%rax)
20460  DB  0,63                                ; add           %bh,(%rdi)
20461  DB  85                                  ; push          %rbp
20462  DB  85                                  ; push          %rbp
20463  DB  149                                 ; xchg          %eax,%ebp
20464  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
20465  DB  85                                  ; push          %rbp
20466  DB  85                                  ; push          %rbp
20467  DB  149                                 ; xchg          %eax,%ebp
20468  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
20469  DB  0,0                                 ; add           %al,(%rax)
20470  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20471  DB  0,192                               ; add           %al,%al
20472  DB  63                                  ; (bad)
20473  DB  0,0                                 ; add           %al,(%rax)
20474  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20475  DB  0,192                               ; add           %al,%al
20476  DB  63                                  ; (bad)
20477  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
20478  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63da15 <_sk_callback_sse2+0x3d639cca>
20479  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
20480  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20481  DB  0,192                               ; add           %al,%al
20482  DB  63                                  ; (bad)
20483  DB  0,0                                 ; add           %al,(%rax)
20484  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20485  DB  0,192                               ; add           %al,%al
20486  DB  63                                  ; (bad)
20487  DB  114,28                              ; jb            4c0e <.literal16+0xe0e>
20488  DB  199                                 ; (bad)
20489  DB  62,114,28                           ; jb,pt         4c12 <.literal16+0xe12>
20490  DB  199                                 ; (bad)
20491  DB  62,114,28                           ; jb,pt         4c16 <.literal16+0xe16>
20492  DB  199                                 ; (bad)
20493  DB  62,114,28                           ; jb,pt         4c1a <.literal16+0xe1a>
20494  DB  199                                 ; (bad)
20495  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
20496  DB  170                                 ; stos          %al,%es:(%rdi)
20497  DB  170                                 ; stos          %al,%es:(%rdi)
20498  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
20499  DB  171                                 ; stos          %eax,%es:(%rdi)
20500  DB  170                                 ; stos          %al,%es:(%rdi)
20501  DB  170                                 ; stos          %al,%es:(%rdi)
20502  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
20503  DB  0,0                                 ; add           %al,(%rax)
20504  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
20505  DB  0,192                               ; add           %al,%al
20506  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
20507  DB  0,0                                 ; add           %al,(%rax)
20508  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20509  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20510  DB  63                                  ; (bad)
20511  DB  0,0                                 ; add           %al,(%rax)
20512  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
20513  DB  28,199                              ; sbb           $0xc7,%al
20514  DB  62,114,28                           ; jb,pt         4c52 <.literal16+0xe52>
20515  DB  199                                 ; (bad)
20516  DB  62,114,28                           ; jb,pt         4c56 <.literal16+0xe56>
20517  DB  199                                 ; (bad)
20518  DB  62,114,28                           ; jb,pt         4c5a <.literal16+0xe5a>
20519  DB  199                                 ; (bad)
20520  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
20521  DB  170                                 ; stos          %al,%es:(%rdi)
20522  DB  170                                 ; stos          %al,%es:(%rdi)
20523  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
20524  DB  171                                 ; stos          %eax,%es:(%rdi)
20525  DB  170                                 ; stos          %al,%es:(%rdi)
20526  DB  170                                 ; stos          %al,%es:(%rdi)
20527  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
20528  DB  0,0                                 ; add           %al,(%rax)
20529  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20530  DB  0,0                                 ; add           %al,(%rax)
20531  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20532  DB  0,0                                 ; add           %al,(%rax)
20533  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20534  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20535  DB  63                                  ; (bad)
20536  DB  0,0                                 ; add           %al,(%rax)
20537  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
20538  DB  85                                  ; push          %rbp
20539  DB  149                                 ; xchg          %eax,%ebp
20540  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
20541  DB  85                                  ; push          %rbp
20542  DB  85                                  ; push          %rbp
20543  DB  149                                 ; xchg          %eax,%ebp
20544  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
20545  DB  0,0                                 ; add           %al,(%rax)
20546  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20547  DB  0,192                               ; add           %al,%al
20548  DB  63                                  ; (bad)
20549  DB  0,0                                 ; add           %al,(%rax)
20550  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20551  DB  0,192                               ; add           %al,%al
20552  DB  63                                  ; (bad)
20553  DB  0,0                                 ; add           %al,(%rax)
20554  DB  0,63                                ; add           %bh,(%rdi)
20555  DB  0,0                                 ; add           %al,(%rax)
20556  DB  0,63                                ; add           %bh,(%rdi)
20557  DB  0,0                                 ; add           %al,(%rax)
20558  DB  0,63                                ; add           %bh,(%rdi)
20559  DB  0,0                                 ; add           %al,(%rax)
20560  DB  0,63                                ; add           %bh,(%rdi)
20561  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
20562  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63dae5 <_sk_callback_sse2+0x3d639d9a>
20563  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
20564  DB  0,63                                ; add           %bh,(%rdi)
20565  DB  0,0                                 ; add           %al,(%rax)
20566  DB  0,63                                ; add           %bh,(%rdi)
20567  DB  0,0                                 ; add           %al,(%rax)
20568  DB  0,63                                ; add           %bh,(%rdi)
20569  DB  0,0                                 ; add           %al,(%rax)
20570  DB  0,63                                ; add           %bh,(%rdi)
20571  DB  85                                  ; push          %rbp
20572  DB  85                                  ; push          %rbp
20573  DB  149                                 ; xchg          %eax,%ebp
20574  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
20575  DB  85                                  ; push          %rbp
20576  DB  85                                  ; push          %rbp
20577  DB  149                                 ; xchg          %eax,%ebp
20578  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
20579  DB  0,0                                 ; add           %al,(%rax)
20580  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20581  DB  0,192                               ; add           %al,%al
20582  DB  63                                  ; (bad)
20583  DB  0,0                                 ; add           %al,(%rax)
20584  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20585  DB  0,192                               ; add           %al,%al
20586  DB  63                                  ; (bad)
20587  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
20588  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63db25 <_sk_callback_sse2+0x3d639dda>
20589  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
20590  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20591  DB  0,192                               ; add           %al,%al
20592  DB  63                                  ; (bad)
20593  DB  0,0                                 ; add           %al,(%rax)
20594  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20595  DB  0,192                               ; add           %al,%al
20596  DB  63                                  ; (bad)
20597  DB  114,28                              ; jb            4d1e <.literal16+0xf1e>
20598  DB  199                                 ; (bad)
20599  DB  62,114,28                           ; jb,pt         4d22 <_sk_callback_sse2+0xfd7>
20600  DB  199                                 ; (bad)
20601  DB  62,114,28                           ; jb,pt         4d26 <_sk_callback_sse2+0xfdb>
20602  DB  199                                 ; (bad)
20603  DB  62,114,28                           ; jb,pt         4d2a <_sk_callback_sse2+0xfdf>
20604  DB  199                                 ; (bad)
20605  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
20606  DB  170                                 ; stos          %al,%es:(%rdi)
20607  DB  170                                 ; stos          %al,%es:(%rdi)
20608  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
20609  DB  171                                 ; stos          %eax,%es:(%rdi)
20610  DB  170                                 ; stos          %al,%es:(%rdi)
20611  DB  170                                 ; stos          %al,%es:(%rdi)
20612  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
20613ENDIF
20614END
20615