SkJumper_generated_win.S revision db711c982bfaa805d2de5a253c55a680c30189e0
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,174,61,0,0        ; vbroadcastss  0x3dae(%rip),%ymm1        # 3f08 <_sk_callback_hsw+0x11b>
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,146,61,0,0        ; vbroadcastss  0x3d92(%rip),%ymm2        # 3f0c <_sk_callback_hsw+0x11f>
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_dither_hsw
125_sk_dither_hsw LABEL PROC
126  DB  72,173                              ; lods          %ds:(%rsi),%rax
127  DB  197,121,110,199                     ; vmovd         %edi,%xmm8
128  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
129  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
130  DB  197,60,88,2                         ; vaddps        (%rdx),%ymm8,%ymm8
131  DB  196,65,126,91,192                   ; vcvttps2dq    %ymm8,%ymm8
132  DB  76,139,0                            ; mov           (%rax),%r8
133  DB  196,66,125,88,8                     ; vpbroadcastd  (%r8),%ymm9
134  DB  196,65,61,239,201                   ; vpxor         %ymm9,%ymm8,%ymm9
135  DB  196,98,125,88,21,81,61,0,0          ; vpbroadcastd  0x3d51(%rip),%ymm10        # 3f10 <_sk_callback_hsw+0x123>
136  DB  196,65,53,219,218                   ; vpand         %ymm10,%ymm9,%ymm11
137  DB  196,193,37,114,243,5                ; vpslld        $0x5,%ymm11,%ymm11
138  DB  196,65,61,219,210                   ; vpand         %ymm10,%ymm8,%ymm10
139  DB  196,193,45,114,242,4                ; vpslld        $0x4,%ymm10,%ymm10
140  DB  196,98,125,88,37,54,61,0,0          ; vpbroadcastd  0x3d36(%rip),%ymm12        # 3f14 <_sk_callback_hsw+0x127>
141  DB  196,98,125,88,45,49,61,0,0          ; vpbroadcastd  0x3d31(%rip),%ymm13        # 3f18 <_sk_callback_hsw+0x12b>
142  DB  196,65,53,219,245                   ; vpand         %ymm13,%ymm9,%ymm14
143  DB  196,193,13,114,246,2                ; vpslld        $0x2,%ymm14,%ymm14
144  DB  196,65,61,219,237                   ; vpand         %ymm13,%ymm8,%ymm13
145  DB  196,65,21,254,237                   ; vpaddd        %ymm13,%ymm13,%ymm13
146  DB  196,65,53,219,204                   ; vpand         %ymm12,%ymm9,%ymm9
147  DB  196,193,53,114,209,1                ; vpsrld        $0x1,%ymm9,%ymm9
148  DB  196,65,61,219,196                   ; vpand         %ymm12,%ymm8,%ymm8
149  DB  196,193,61,114,208,2                ; vpsrld        $0x2,%ymm8,%ymm8
150  DB  196,65,21,235,210                   ; vpor          %ymm10,%ymm13,%ymm10
151  DB  196,65,45,235,192                   ; vpor          %ymm8,%ymm10,%ymm8
152  DB  196,65,37,235,214                   ; vpor          %ymm14,%ymm11,%ymm10
153  DB  196,65,61,235,194                   ; vpor          %ymm10,%ymm8,%ymm8
154  DB  196,65,61,235,193                   ; vpor          %ymm9,%ymm8,%ymm8
155  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
156  DB  196,98,125,24,13,227,60,0,0         ; vbroadcastss  0x3ce3(%rip),%ymm9        # 3f1c <_sk_callback_hsw+0x12f>
157  DB  196,98,125,24,21,222,60,0,0         ; vbroadcastss  0x3cde(%rip),%ymm10        # 3f20 <_sk_callback_hsw+0x133>
158  DB  196,66,61,184,209                   ; vfmadd231ps   %ymm9,%ymm8,%ymm10
159  DB  196,98,125,24,64,8                  ; vbroadcastss  0x8(%rax),%ymm8
160  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
161  DB  197,188,88,192                      ; vaddps        %ymm0,%ymm8,%ymm0
162  DB  197,188,88,201                      ; vaddps        %ymm1,%ymm8,%ymm1
163  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
164  DB  72,173                              ; lods          %ds:(%rsi),%rax
165  DB  255,224                             ; jmpq          *%rax
166
167PUBLIC _sk_constant_color_hsw
168_sk_constant_color_hsw LABEL PROC
169  DB  72,173                              ; lods          %ds:(%rsi),%rax
170  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
171  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
172  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
173  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
174  DB  72,173                              ; lods          %ds:(%rsi),%rax
175  DB  255,224                             ; jmpq          *%rax
176
177PUBLIC _sk_clear_hsw
178_sk_clear_hsw LABEL PROC
179  DB  72,173                              ; lods          %ds:(%rsi),%rax
180  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
181  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
182  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
183  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
184  DB  255,224                             ; jmpq          *%rax
185
186PUBLIC _sk_srcatop_hsw
187_sk_srcatop_hsw LABEL PROC
188  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
189  DB  196,98,125,24,5,132,60,0,0          ; vbroadcastss  0x3c84(%rip),%ymm8        # 3f24 <_sk_callback_hsw+0x137>
190  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
191  DB  196,226,61,184,196                  ; vfmadd231ps   %ymm4,%ymm8,%ymm0
192  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
193  DB  196,226,61,184,205                  ; vfmadd231ps   %ymm5,%ymm8,%ymm1
194  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
195  DB  196,226,61,184,214                  ; vfmadd231ps   %ymm6,%ymm8,%ymm2
196  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
197  DB  196,194,69,168,216                  ; vfmadd213ps   %ymm8,%ymm7,%ymm3
198  DB  72,173                              ; lods          %ds:(%rsi),%rax
199  DB  255,224                             ; jmpq          *%rax
200
201PUBLIC _sk_dstatop_hsw
202_sk_dstatop_hsw LABEL PROC
203  DB  196,98,125,24,5,87,60,0,0           ; vbroadcastss  0x3c57(%rip),%ymm8        # 3f28 <_sk_callback_hsw+0x13b>
204  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
205  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
206  DB  196,226,101,184,196                 ; vfmadd231ps   %ymm4,%ymm3,%ymm0
207  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
208  DB  196,226,101,184,205                 ; vfmadd231ps   %ymm5,%ymm3,%ymm1
209  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
210  DB  196,226,101,184,214                 ; vfmadd231ps   %ymm6,%ymm3,%ymm2
211  DB  197,60,89,195                       ; vmulps        %ymm3,%ymm8,%ymm8
212  DB  196,194,69,168,216                  ; vfmadd213ps   %ymm8,%ymm7,%ymm3
213  DB  72,173                              ; lods          %ds:(%rsi),%rax
214  DB  255,224                             ; jmpq          *%rax
215
216PUBLIC _sk_srcin_hsw
217_sk_srcin_hsw LABEL PROC
218  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
219  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
220  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
221  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
222  DB  72,173                              ; lods          %ds:(%rsi),%rax
223  DB  255,224                             ; jmpq          *%rax
224
225PUBLIC _sk_dstin_hsw
226_sk_dstin_hsw LABEL PROC
227  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
228  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
229  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
230  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
231  DB  72,173                              ; lods          %ds:(%rsi),%rax
232  DB  255,224                             ; jmpq          *%rax
233
234PUBLIC _sk_srcout_hsw
235_sk_srcout_hsw LABEL PROC
236  DB  196,98,125,24,5,254,59,0,0          ; vbroadcastss  0x3bfe(%rip),%ymm8        # 3f2c <_sk_callback_hsw+0x13f>
237  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
238  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
239  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
240  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
241  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
242  DB  72,173                              ; lods          %ds:(%rsi),%rax
243  DB  255,224                             ; jmpq          *%rax
244
245PUBLIC _sk_dstout_hsw
246_sk_dstout_hsw LABEL PROC
247  DB  196,226,125,24,5,225,59,0,0         ; vbroadcastss  0x3be1(%rip),%ymm0        # 3f30 <_sk_callback_hsw+0x143>
248  DB  197,252,92,219                      ; vsubps        %ymm3,%ymm0,%ymm3
249  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
250  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
251  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
252  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
253  DB  72,173                              ; lods          %ds:(%rsi),%rax
254  DB  255,224                             ; jmpq          *%rax
255
256PUBLIC _sk_srcover_hsw
257_sk_srcover_hsw LABEL PROC
258  DB  196,98,125,24,5,196,59,0,0          ; vbroadcastss  0x3bc4(%rip),%ymm8        # 3f34 <_sk_callback_hsw+0x147>
259  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
260  DB  196,194,93,184,192                  ; vfmadd231ps   %ymm8,%ymm4,%ymm0
261  DB  196,194,85,184,200                  ; vfmadd231ps   %ymm8,%ymm5,%ymm1
262  DB  196,194,77,184,208                  ; vfmadd231ps   %ymm8,%ymm6,%ymm2
263  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
264  DB  72,173                              ; lods          %ds:(%rsi),%rax
265  DB  255,224                             ; jmpq          *%rax
266
267PUBLIC _sk_dstover_hsw
268_sk_dstover_hsw LABEL PROC
269  DB  196,98,125,24,5,163,59,0,0          ; vbroadcastss  0x3ba3(%rip),%ymm8        # 3f38 <_sk_callback_hsw+0x14b>
270  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
271  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
272  DB  196,226,61,168,205                  ; vfmadd213ps   %ymm5,%ymm8,%ymm1
273  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
274  DB  196,226,61,168,223                  ; vfmadd213ps   %ymm7,%ymm8,%ymm3
275  DB  72,173                              ; lods          %ds:(%rsi),%rax
276  DB  255,224                             ; jmpq          *%rax
277
278PUBLIC _sk_modulate_hsw
279_sk_modulate_hsw LABEL PROC
280  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
281  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
282  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
283  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
284  DB  72,173                              ; lods          %ds:(%rsi),%rax
285  DB  255,224                             ; jmpq          *%rax
286
287PUBLIC _sk_multiply_hsw
288_sk_multiply_hsw LABEL PROC
289  DB  196,98,125,24,5,110,59,0,0          ; vbroadcastss  0x3b6e(%rip),%ymm8        # 3f3c <_sk_callback_hsw+0x14f>
290  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
291  DB  197,52,89,208                       ; vmulps        %ymm0,%ymm9,%ymm10
292  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
293  DB  196,98,61,184,212                   ; vfmadd231ps   %ymm4,%ymm8,%ymm10
294  DB  196,194,93,168,194                  ; vfmadd213ps   %ymm10,%ymm4,%ymm0
295  DB  197,52,89,209                       ; vmulps        %ymm1,%ymm9,%ymm10
296  DB  196,98,61,184,213                   ; vfmadd231ps   %ymm5,%ymm8,%ymm10
297  DB  196,194,85,168,202                  ; vfmadd213ps   %ymm10,%ymm5,%ymm1
298  DB  197,52,89,210                       ; vmulps        %ymm2,%ymm9,%ymm10
299  DB  196,98,61,184,214                   ; vfmadd231ps   %ymm6,%ymm8,%ymm10
300  DB  196,194,77,168,210                  ; vfmadd213ps   %ymm10,%ymm6,%ymm2
301  DB  197,52,89,203                       ; vmulps        %ymm3,%ymm9,%ymm9
302  DB  196,66,69,168,193                   ; vfmadd213ps   %ymm9,%ymm7,%ymm8
303  DB  196,194,69,168,216                  ; vfmadd213ps   %ymm8,%ymm7,%ymm3
304  DB  72,173                              ; lods          %ds:(%rsi),%rax
305  DB  255,224                             ; jmpq          *%rax
306
307PUBLIC _sk_plus__hsw
308_sk_plus__hsw LABEL PROC
309  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
310  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
311  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
312  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
313  DB  72,173                              ; lods          %ds:(%rsi),%rax
314  DB  255,224                             ; jmpq          *%rax
315
316PUBLIC _sk_screen_hsw
317_sk_screen_hsw LABEL PROC
318  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
319  DB  196,194,93,172,192                  ; vfnmadd213ps  %ymm8,%ymm4,%ymm0
320  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
321  DB  196,194,85,172,200                  ; vfnmadd213ps  %ymm8,%ymm5,%ymm1
322  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
323  DB  196,194,77,172,208                  ; vfnmadd213ps  %ymm8,%ymm6,%ymm2
324  DB  197,100,88,199                      ; vaddps        %ymm7,%ymm3,%ymm8
325  DB  196,194,69,172,216                  ; vfnmadd213ps  %ymm8,%ymm7,%ymm3
326  DB  72,173                              ; lods          %ds:(%rsi),%rax
327  DB  255,224                             ; jmpq          *%rax
328
329PUBLIC _sk_xor__hsw
330_sk_xor__hsw LABEL PROC
331  DB  196,98,125,24,5,233,58,0,0          ; vbroadcastss  0x3ae9(%rip),%ymm8        # 3f40 <_sk_callback_hsw+0x153>
332  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
333  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
334  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
335  DB  196,226,61,184,196                  ; vfmadd231ps   %ymm4,%ymm8,%ymm0
336  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
337  DB  196,226,61,184,205                  ; vfmadd231ps   %ymm5,%ymm8,%ymm1
338  DB  197,180,89,210                      ; vmulps        %ymm2,%ymm9,%ymm2
339  DB  196,226,61,184,214                  ; vfmadd231ps   %ymm6,%ymm8,%ymm2
340  DB  197,180,89,219                      ; vmulps        %ymm3,%ymm9,%ymm3
341  DB  196,98,69,168,195                   ; vfmadd213ps   %ymm3,%ymm7,%ymm8
342  DB  72,173                              ; lods          %ds:(%rsi),%rax
343  DB  197,124,41,195                      ; vmovaps       %ymm8,%ymm3
344  DB  255,224                             ; jmpq          *%rax
345
346PUBLIC _sk_darken_hsw
347_sk_darken_hsw LABEL PROC
348  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
349  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
350  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
351  DB  196,193,124,95,193                  ; vmaxps        %ymm9,%ymm0,%ymm0
352  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
353  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
354  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
355  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
356  DB  196,193,116,95,201                  ; vmaxps        %ymm9,%ymm1,%ymm1
357  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
358  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
359  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
360  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
361  DB  196,193,108,95,209                  ; vmaxps        %ymm9,%ymm2,%ymm2
362  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
363  DB  196,98,125,24,5,113,58,0,0          ; vbroadcastss  0x3a71(%rip),%ymm8        # 3f44 <_sk_callback_hsw+0x157>
364  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
365  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
366  DB  72,173                              ; lods          %ds:(%rsi),%rax
367  DB  255,224                             ; jmpq          *%rax
368
369PUBLIC _sk_lighten_hsw
370_sk_lighten_hsw LABEL PROC
371  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
372  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
373  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
374  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
375  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
376  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
377  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
378  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
379  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
380  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
381  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
382  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
383  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
384  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
385  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
386  DB  196,98,125,24,5,32,58,0,0           ; vbroadcastss  0x3a20(%rip),%ymm8        # 3f48 <_sk_callback_hsw+0x15b>
387  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
388  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
389  DB  72,173                              ; lods          %ds:(%rsi),%rax
390  DB  255,224                             ; jmpq          *%rax
391
392PUBLIC _sk_difference_hsw
393_sk_difference_hsw LABEL PROC
394  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
395  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
396  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
397  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
398  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
399  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
400  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
401  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
402  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
403  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
404  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
405  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
406  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
407  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
408  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
409  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
410  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
411  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
412  DB  196,98,125,24,5,195,57,0,0          ; vbroadcastss  0x39c3(%rip),%ymm8        # 3f4c <_sk_callback_hsw+0x15f>
413  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
414  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
415  DB  72,173                              ; lods          %ds:(%rsi),%rax
416  DB  255,224                             ; jmpq          *%rax
417
418PUBLIC _sk_exclusion_hsw
419_sk_exclusion_hsw LABEL PROC
420  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
421  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
422  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
423  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
424  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
425  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
426  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
427  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
428  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
429  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
430  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
431  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
432  DB  196,98,125,24,5,129,57,0,0          ; vbroadcastss  0x3981(%rip),%ymm8        # 3f50 <_sk_callback_hsw+0x163>
433  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
434  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
435  DB  72,173                              ; lods          %ds:(%rsi),%rax
436  DB  255,224                             ; jmpq          *%rax
437
438PUBLIC _sk_colorburn_hsw
439_sk_colorburn_hsw LABEL PROC
440  DB  196,98,125,24,5,111,57,0,0          ; vbroadcastss  0x396f(%rip),%ymm8        # 3f54 <_sk_callback_hsw+0x167>
441  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
442  DB  197,52,89,216                       ; vmulps        %ymm0,%ymm9,%ymm11
443  DB  196,65,44,87,210                    ; vxorps        %ymm10,%ymm10,%ymm10
444  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
445  DB  197,60,89,228                       ; vmulps        %ymm4,%ymm8,%ymm12
446  DB  197,68,92,236                       ; vsubps        %ymm4,%ymm7,%ymm13
447  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
448  DB  197,20,94,232                       ; vdivps        %ymm0,%ymm13,%ymm13
449  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
450  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
451  DB  196,66,101,168,235                  ; vfmadd213ps   %ymm11,%ymm3,%ymm13
452  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
453  DB  197,28,88,224                       ; vaddps        %ymm0,%ymm12,%ymm12
454  DB  196,193,124,194,194,0               ; vcmpeqps      %ymm10,%ymm0,%ymm0
455  DB  196,195,21,74,196,0                 ; vblendvps     %ymm0,%ymm12,%ymm13,%ymm0
456  DB  197,92,194,231,0                    ; vcmpeqps      %ymm7,%ymm4,%ymm12
457  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
458  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
459  DB  197,52,89,217                       ; vmulps        %ymm1,%ymm9,%ymm11
460  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
461  DB  197,68,92,237                       ; vsubps        %ymm5,%ymm7,%ymm13
462  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
463  DB  197,20,94,233                       ; vdivps        %ymm1,%ymm13,%ymm13
464  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
465  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
466  DB  196,66,101,168,235                  ; vfmadd213ps   %ymm11,%ymm3,%ymm13
467  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
468  DB  197,28,88,225                       ; vaddps        %ymm1,%ymm12,%ymm12
469  DB  196,193,116,194,202,0               ; vcmpeqps      %ymm10,%ymm1,%ymm1
470  DB  196,195,21,74,204,16                ; vblendvps     %ymm1,%ymm12,%ymm13,%ymm1
471  DB  197,84,194,231,0                    ; vcmpeqps      %ymm7,%ymm5,%ymm12
472  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
473  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
474  DB  197,52,89,202                       ; vmulps        %ymm2,%ymm9,%ymm9
475  DB  196,65,108,194,210,0                ; vcmpeqps      %ymm10,%ymm2,%ymm10
476  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
477  DB  197,68,92,230                       ; vsubps        %ymm6,%ymm7,%ymm12
478  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
479  DB  197,28,94,226                       ; vdivps        %ymm2,%ymm12,%ymm12
480  DB  197,164,88,210                      ; vaddps        %ymm2,%ymm11,%ymm2
481  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
482  DB  196,65,68,92,228                    ; vsubps        %ymm12,%ymm7,%ymm12
483  DB  196,66,101,168,225                  ; vfmadd213ps   %ymm9,%ymm3,%ymm12
484  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
485  DB  196,227,37,74,210,160               ; vblendvps     %ymm10,%ymm2,%ymm11,%ymm2
486  DB  197,76,194,215,0                    ; vcmpeqps      %ymm7,%ymm6,%ymm10
487  DB  197,52,88,206                       ; vaddps        %ymm6,%ymm9,%ymm9
488  DB  196,195,109,74,209,160              ; vblendvps     %ymm10,%ymm9,%ymm2,%ymm2
489  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
490  DB  72,173                              ; lods          %ds:(%rsi),%rax
491  DB  255,224                             ; jmpq          *%rax
492
493PUBLIC _sk_colordodge_hsw
494_sk_colordodge_hsw LABEL PROC
495  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
496  DB  196,98,125,24,13,122,56,0,0         ; vbroadcastss  0x387a(%rip),%ymm9        # 3f58 <_sk_callback_hsw+0x16b>
497  DB  197,52,92,215                       ; vsubps        %ymm7,%ymm9,%ymm10
498  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
499  DB  197,52,92,203                       ; vsubps        %ymm3,%ymm9,%ymm9
500  DB  197,100,89,228                      ; vmulps        %ymm4,%ymm3,%ymm12
501  DB  197,100,92,232                      ; vsubps        %ymm0,%ymm3,%ymm13
502  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
503  DB  197,52,89,236                       ; vmulps        %ymm4,%ymm9,%ymm13
504  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
505  DB  196,66,101,168,227                  ; vfmadd213ps   %ymm11,%ymm3,%ymm12
506  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
507  DB  197,20,88,232                       ; vaddps        %ymm0,%ymm13,%ymm13
508  DB  197,252,194,195,0                   ; vcmpeqps      %ymm3,%ymm0,%ymm0
509  DB  196,195,29,74,197,0                 ; vblendvps     %ymm0,%ymm13,%ymm12,%ymm0
510  DB  196,65,92,194,224,0                 ; vcmpeqps      %ymm8,%ymm4,%ymm12
511  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
512  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
513  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
514  DB  197,100,89,229                      ; vmulps        %ymm5,%ymm3,%ymm12
515  DB  197,100,92,233                      ; vsubps        %ymm1,%ymm3,%ymm13
516  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
517  DB  197,52,89,237                       ; vmulps        %ymm5,%ymm9,%ymm13
518  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
519  DB  196,66,101,168,227                  ; vfmadd213ps   %ymm11,%ymm3,%ymm12
520  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
521  DB  197,20,88,233                       ; vaddps        %ymm1,%ymm13,%ymm13
522  DB  197,244,194,203,0                   ; vcmpeqps      %ymm3,%ymm1,%ymm1
523  DB  196,195,29,74,205,16                ; vblendvps     %ymm1,%ymm13,%ymm12,%ymm1
524  DB  196,65,84,194,224,0                 ; vcmpeqps      %ymm8,%ymm5,%ymm12
525  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
526  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
527  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
528  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
529  DB  197,100,92,226                      ; vsubps        %ymm2,%ymm3,%ymm12
530  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
531  DB  197,52,89,230                       ; vmulps        %ymm6,%ymm9,%ymm12
532  DB  196,65,68,93,219                    ; vminps        %ymm11,%ymm7,%ymm11
533  DB  196,66,101,168,218                  ; vfmadd213ps   %ymm10,%ymm3,%ymm11
534  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
535  DB  197,28,88,226                       ; vaddps        %ymm2,%ymm12,%ymm12
536  DB  197,236,194,211,0                   ; vcmpeqps      %ymm3,%ymm2,%ymm2
537  DB  196,195,37,74,212,32                ; vblendvps     %ymm2,%ymm12,%ymm11,%ymm2
538  DB  196,65,76,194,192,0                 ; vcmpeqps      %ymm8,%ymm6,%ymm8
539  DB  197,44,88,214                       ; vaddps        %ymm6,%ymm10,%ymm10
540  DB  196,195,109,74,210,128              ; vblendvps     %ymm8,%ymm10,%ymm2,%ymm2
541  DB  196,194,69,184,217                  ; vfmadd231ps   %ymm9,%ymm7,%ymm3
542  DB  72,173                              ; lods          %ds:(%rsi),%rax
543  DB  255,224                             ; jmpq          *%rax
544
545PUBLIC _sk_hardlight_hsw
546_sk_hardlight_hsw LABEL PROC
547  DB  196,98,125,24,5,155,55,0,0          ; vbroadcastss  0x379b(%rip),%ymm8        # 3f5c <_sk_callback_hsw+0x16f>
548  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
549  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
550  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
551  DB  196,98,61,184,220                   ; vfmadd231ps   %ymm4,%ymm8,%ymm11
552  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
553  DB  197,52,194,227,2                    ; vcmpleps      %ymm3,%ymm9,%ymm12
554  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
555  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
556  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
557  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
558  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
559  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
560  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
561  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
562  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
563  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
564  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
565  DB  196,98,61,184,221                   ; vfmadd231ps   %ymm5,%ymm8,%ymm11
566  DB  197,116,88,225                      ; vaddps        %ymm1,%ymm1,%ymm12
567  DB  197,28,194,227,2                    ; vcmpleps      %ymm3,%ymm12,%ymm12
568  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
569  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
570  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
571  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
572  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
573  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
574  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
575  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
576  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
577  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
578  DB  196,98,61,184,214                   ; vfmadd231ps   %ymm6,%ymm8,%ymm10
579  DB  197,108,88,218                      ; vaddps        %ymm2,%ymm2,%ymm11
580  DB  197,36,194,219,2                    ; vcmpleps      %ymm3,%ymm11,%ymm11
581  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
582  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
583  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
584  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
585  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
586  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
587  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
588  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
589  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
590  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
591  DB  72,173                              ; lods          %ds:(%rsi),%rax
592  DB  255,224                             ; jmpq          *%rax
593
594PUBLIC _sk_overlay_hsw
595_sk_overlay_hsw LABEL PROC
596  DB  196,98,125,24,5,211,54,0,0          ; vbroadcastss  0x36d3(%rip),%ymm8        # 3f60 <_sk_callback_hsw+0x173>
597  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
598  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
599  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
600  DB  196,98,61,184,220                   ; vfmadd231ps   %ymm4,%ymm8,%ymm11
601  DB  197,92,88,204                       ; vaddps        %ymm4,%ymm4,%ymm9
602  DB  197,52,194,231,2                    ; vcmpleps      %ymm7,%ymm9,%ymm12
603  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
604  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
605  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
606  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
607  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
608  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
609  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
610  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
611  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
612  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
613  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
614  DB  196,98,61,184,221                   ; vfmadd231ps   %ymm5,%ymm8,%ymm11
615  DB  197,84,88,229                       ; vaddps        %ymm5,%ymm5,%ymm12
616  DB  197,28,194,231,2                    ; vcmpleps      %ymm7,%ymm12,%ymm12
617  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
618  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
619  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
620  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
621  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
622  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
623  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
624  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
625  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
626  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
627  DB  196,98,61,184,214                   ; vfmadd231ps   %ymm6,%ymm8,%ymm10
628  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
629  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
630  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
631  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
632  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
633  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
634  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
635  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
636  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
637  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
638  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
639  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
640  DB  72,173                              ; lods          %ds:(%rsi),%rax
641  DB  255,224                             ; jmpq          *%rax
642
643PUBLIC _sk_softlight_hsw
644_sk_softlight_hsw LABEL PROC
645  DB  72,131,236,88                       ; sub           $0x58,%rsp
646  DB  197,252,17,84,36,32                 ; vmovups       %ymm2,0x20(%rsp)
647  DB  197,252,40,209                      ; vmovaps       %ymm1,%ymm2
648  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
649  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
650  DB  197,52,194,215,1                    ; vcmpltps      %ymm7,%ymm9,%ymm10
651  DB  197,92,94,199                       ; vdivps        %ymm7,%ymm4,%ymm8
652  DB  196,67,53,74,232,160                ; vblendvps     %ymm10,%ymm8,%ymm9,%ymm13
653  DB  196,65,20,88,197                    ; vaddps        %ymm13,%ymm13,%ymm8
654  DB  196,65,60,88,192                    ; vaddps        %ymm8,%ymm8,%ymm8
655  DB  196,66,61,168,192                   ; vfmadd213ps   %ymm8,%ymm8,%ymm8
656  DB  196,98,125,24,29,218,53,0,0         ; vbroadcastss  0x35da(%rip),%ymm11        # 3f68 <_sk_callback_hsw+0x17b>
657  DB  196,65,20,88,227                    ; vaddps        %ymm11,%ymm13,%ymm12
658  DB  196,65,28,89,192                    ; vmulps        %ymm8,%ymm12,%ymm8
659  DB  196,98,125,24,37,203,53,0,0         ; vbroadcastss  0x35cb(%rip),%ymm12        # 3f6c <_sk_callback_hsw+0x17f>
660  DB  196,66,21,184,196                   ; vfmadd231ps   %ymm12,%ymm13,%ymm8
661  DB  196,65,124,82,245                   ; vrsqrtps      %ymm13,%ymm14
662  DB  196,65,124,83,246                   ; vrcpps        %ymm14,%ymm14
663  DB  196,65,12,92,245                    ; vsubps        %ymm13,%ymm14,%ymm14
664  DB  197,92,88,252                       ; vaddps        %ymm4,%ymm4,%ymm15
665  DB  196,65,4,88,255                     ; vaddps        %ymm15,%ymm15,%ymm15
666  DB  197,4,194,255,2                     ; vcmpleps      %ymm7,%ymm15,%ymm15
667  DB  196,67,13,74,240,240                ; vblendvps     %ymm15,%ymm8,%ymm14,%ymm14
668  DB  197,116,88,249                      ; vaddps        %ymm1,%ymm1,%ymm15
669  DB  196,98,125,24,5,142,53,0,0          ; vbroadcastss  0x358e(%rip),%ymm8        # 3f64 <_sk_callback_hsw+0x177>
670  DB  196,65,60,92,237                    ; vsubps        %ymm13,%ymm8,%ymm13
671  DB  197,132,92,195                      ; vsubps        %ymm3,%ymm15,%ymm0
672  DB  196,98,125,168,235                  ; vfmadd213ps   %ymm3,%ymm0,%ymm13
673  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
674  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
675  DB  197,20,89,236                       ; vmulps        %ymm4,%ymm13,%ymm13
676  DB  196,226,101,184,196                 ; vfmadd231ps   %ymm4,%ymm3,%ymm0
677  DB  197,4,194,243,2                     ; vcmpleps      %ymm3,%ymm15,%ymm14
678  DB  196,195,125,74,197,224              ; vblendvps     %ymm14,%ymm13,%ymm0,%ymm0
679  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
680  DB  197,212,94,199                      ; vdivps        %ymm7,%ymm5,%ymm0
681  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
682  DB  197,124,88,240                      ; vaddps        %ymm0,%ymm0,%ymm14
683  DB  196,65,12,88,246                    ; vaddps        %ymm14,%ymm14,%ymm14
684  DB  196,66,13,168,246                   ; vfmadd213ps   %ymm14,%ymm14,%ymm14
685  DB  196,65,124,88,251                   ; vaddps        %ymm11,%ymm0,%ymm15
686  DB  196,65,4,89,246                     ; vmulps        %ymm14,%ymm15,%ymm14
687  DB  196,66,125,184,244                  ; vfmadd231ps   %ymm12,%ymm0,%ymm14
688  DB  197,124,82,248                      ; vrsqrtps      %ymm0,%ymm15
689  DB  196,65,124,83,255                   ; vrcpps        %ymm15,%ymm15
690  DB  197,4,92,248                        ; vsubps        %ymm0,%ymm15,%ymm15
691  DB  197,84,88,237                       ; vaddps        %ymm5,%ymm5,%ymm13
692  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
693  DB  197,20,194,239,2                    ; vcmpleps      %ymm7,%ymm13,%ymm13
694  DB  196,67,5,74,238,208                 ; vblendvps     %ymm13,%ymm14,%ymm15,%ymm13
695  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
696  DB  197,108,88,242                      ; vaddps        %ymm2,%ymm2,%ymm14
697  DB  197,12,92,251                       ; vsubps        %ymm3,%ymm14,%ymm15
698  DB  196,226,5,168,195                   ; vfmadd213ps   %ymm3,%ymm15,%ymm0
699  DB  197,4,89,255                        ; vmulps        %ymm7,%ymm15,%ymm15
700  DB  196,65,4,89,237                     ; vmulps        %ymm13,%ymm15,%ymm13
701  DB  197,252,89,197                      ; vmulps        %ymm5,%ymm0,%ymm0
702  DB  196,98,101,184,237                  ; vfmadd231ps   %ymm5,%ymm3,%ymm13
703  DB  197,12,194,243,2                    ; vcmpleps      %ymm3,%ymm14,%ymm14
704  DB  196,99,21,74,240,224                ; vblendvps     %ymm14,%ymm0,%ymm13,%ymm14
705  DB  197,204,94,199                      ; vdivps        %ymm7,%ymm6,%ymm0
706  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
707  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
708  DB  196,65,52,88,201                    ; vaddps        %ymm9,%ymm9,%ymm9
709  DB  196,66,53,168,201                   ; vfmadd213ps   %ymm9,%ymm9,%ymm9
710  DB  196,65,124,88,211                   ; vaddps        %ymm11,%ymm0,%ymm10
711  DB  196,65,44,89,201                    ; vmulps        %ymm9,%ymm10,%ymm9
712  DB  196,66,125,184,204                  ; vfmadd231ps   %ymm12,%ymm0,%ymm9
713  DB  197,124,82,208                      ; vrsqrtps      %ymm0,%ymm10
714  DB  196,65,124,83,210                   ; vrcpps        %ymm10,%ymm10
715  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
716  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
717  DB  196,65,36,88,219                    ; vaddps        %ymm11,%ymm11,%ymm11
718  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
719  DB  196,67,45,74,201,176                ; vblendvps     %ymm11,%ymm9,%ymm10,%ymm9
720  DB  197,124,16,100,36,32                ; vmovups       0x20(%rsp),%ymm12
721  DB  196,65,28,88,212                    ; vaddps        %ymm12,%ymm12,%ymm10
722  DB  197,44,92,219                       ; vsubps        %ymm3,%ymm10,%ymm11
723  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
724  DB  196,226,37,168,195                  ; vfmadd213ps   %ymm3,%ymm11,%ymm0
725  DB  197,36,89,223                       ; vmulps        %ymm7,%ymm11,%ymm11
726  DB  196,65,36,89,201                    ; vmulps        %ymm9,%ymm11,%ymm9
727  DB  197,252,89,198                      ; vmulps        %ymm6,%ymm0,%ymm0
728  DB  196,98,101,184,206                  ; vfmadd231ps   %ymm6,%ymm3,%ymm9
729  DB  197,44,194,211,2                    ; vcmpleps      %ymm3,%ymm10,%ymm10
730  DB  196,99,53,74,200,160                ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm9
731  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
732  DB  197,172,89,193                      ; vmulps        %ymm1,%ymm10,%ymm0
733  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
734  DB  196,226,61,184,196                  ; vfmadd231ps   %ymm4,%ymm8,%ymm0
735  DB  197,252,88,4,36                     ; vaddps        (%rsp),%ymm0,%ymm0
736  DB  197,172,89,202                      ; vmulps        %ymm2,%ymm10,%ymm1
737  DB  196,226,61,184,205                  ; vfmadd231ps   %ymm5,%ymm8,%ymm1
738  DB  196,193,116,88,206                  ; vaddps        %ymm14,%ymm1,%ymm1
739  DB  196,193,44,89,212                   ; vmulps        %ymm12,%ymm10,%ymm2
740  DB  196,226,61,184,214                  ; vfmadd231ps   %ymm6,%ymm8,%ymm2
741  DB  196,193,108,88,209                  ; vaddps        %ymm9,%ymm2,%ymm2
742  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
743  DB  72,173                              ; lods          %ds:(%rsi),%rax
744  DB  72,131,196,88                       ; add           $0x58,%rsp
745  DB  255,224                             ; jmpq          *%rax
746
747PUBLIC _sk_clamp_0_hsw
748_sk_clamp_0_hsw LABEL PROC
749  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
750  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
751  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
752  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
753  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
754  DB  72,173                              ; lods          %ds:(%rsi),%rax
755  DB  255,224                             ; jmpq          *%rax
756
757PUBLIC _sk_clamp_1_hsw
758_sk_clamp_1_hsw LABEL PROC
759  DB  196,98,125,24,5,17,52,0,0           ; vbroadcastss  0x3411(%rip),%ymm8        # 3f70 <_sk_callback_hsw+0x183>
760  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
761  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
762  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
763  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
764  DB  72,173                              ; lods          %ds:(%rsi),%rax
765  DB  255,224                             ; jmpq          *%rax
766
767PUBLIC _sk_clamp_a_hsw
768_sk_clamp_a_hsw LABEL PROC
769  DB  196,98,125,24,5,244,51,0,0          ; vbroadcastss  0x33f4(%rip),%ymm8        # 3f74 <_sk_callback_hsw+0x187>
770  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
771  DB  197,252,93,195                      ; vminps        %ymm3,%ymm0,%ymm0
772  DB  197,244,93,203                      ; vminps        %ymm3,%ymm1,%ymm1
773  DB  197,236,93,211                      ; vminps        %ymm3,%ymm2,%ymm2
774  DB  72,173                              ; lods          %ds:(%rsi),%rax
775  DB  255,224                             ; jmpq          *%rax
776
777PUBLIC _sk_set_rgb_hsw
778_sk_set_rgb_hsw LABEL PROC
779  DB  72,173                              ; lods          %ds:(%rsi),%rax
780  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
781  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
782  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
783  DB  72,173                              ; lods          %ds:(%rsi),%rax
784  DB  255,224                             ; jmpq          *%rax
785
786PUBLIC _sk_swap_rb_hsw
787_sk_swap_rb_hsw LABEL PROC
788  DB  197,124,40,192                      ; vmovaps       %ymm0,%ymm8
789  DB  72,173                              ; lods          %ds:(%rsi),%rax
790  DB  197,252,40,194                      ; vmovaps       %ymm2,%ymm0
791  DB  197,124,41,194                      ; vmovaps       %ymm8,%ymm2
792  DB  255,224                             ; jmpq          *%rax
793
794PUBLIC _sk_swap_hsw
795_sk_swap_hsw LABEL PROC
796  DB  197,124,40,195                      ; vmovaps       %ymm3,%ymm8
797  DB  197,124,40,202                      ; vmovaps       %ymm2,%ymm9
798  DB  197,124,40,209                      ; vmovaps       %ymm1,%ymm10
799  DB  197,124,40,216                      ; vmovaps       %ymm0,%ymm11
800  DB  72,173                              ; lods          %ds:(%rsi),%rax
801  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
802  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
803  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
804  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
805  DB  197,124,41,220                      ; vmovaps       %ymm11,%ymm4
806  DB  197,124,41,213                      ; vmovaps       %ymm10,%ymm5
807  DB  197,124,41,206                      ; vmovaps       %ymm9,%ymm6
808  DB  197,124,41,199                      ; vmovaps       %ymm8,%ymm7
809  DB  255,224                             ; jmpq          *%rax
810
811PUBLIC _sk_move_src_dst_hsw
812_sk_move_src_dst_hsw LABEL PROC
813  DB  72,173                              ; lods          %ds:(%rsi),%rax
814  DB  197,252,40,224                      ; vmovaps       %ymm0,%ymm4
815  DB  197,252,40,233                      ; vmovaps       %ymm1,%ymm5
816  DB  197,252,40,242                      ; vmovaps       %ymm2,%ymm6
817  DB  197,252,40,251                      ; vmovaps       %ymm3,%ymm7
818  DB  255,224                             ; jmpq          *%rax
819
820PUBLIC _sk_move_dst_src_hsw
821_sk_move_dst_src_hsw LABEL PROC
822  DB  72,173                              ; lods          %ds:(%rsi),%rax
823  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
824  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
825  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
826  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
827  DB  255,224                             ; jmpq          *%rax
828
829PUBLIC _sk_premul_hsw
830_sk_premul_hsw LABEL PROC
831  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
832  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
833  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
834  DB  72,173                              ; lods          %ds:(%rsi),%rax
835  DB  255,224                             ; jmpq          *%rax
836
837PUBLIC _sk_unpremul_hsw
838_sk_unpremul_hsw LABEL PROC
839  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
840  DB  196,65,100,194,200,0                ; vcmpeqps      %ymm8,%ymm3,%ymm9
841  DB  196,98,125,24,21,60,51,0,0          ; vbroadcastss  0x333c(%rip),%ymm10        # 3f78 <_sk_callback_hsw+0x18b>
842  DB  197,44,94,211                       ; vdivps        %ymm3,%ymm10,%ymm10
843  DB  196,67,45,74,192,144                ; vblendvps     %ymm9,%ymm8,%ymm10,%ymm8
844  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
845  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
846  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
847  DB  72,173                              ; lods          %ds:(%rsi),%rax
848  DB  255,224                             ; jmpq          *%rax
849
850PUBLIC _sk_from_srgb_hsw
851_sk_from_srgb_hsw LABEL PROC
852  DB  196,98,125,24,5,29,51,0,0           ; vbroadcastss  0x331d(%rip),%ymm8        # 3f7c <_sk_callback_hsw+0x18f>
853  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
854  DB  197,124,89,208                      ; vmulps        %ymm0,%ymm0,%ymm10
855  DB  196,98,125,24,29,15,51,0,0          ; vbroadcastss  0x330f(%rip),%ymm11        # 3f80 <_sk_callback_hsw+0x193>
856  DB  196,98,125,24,37,10,51,0,0          ; vbroadcastss  0x330a(%rip),%ymm12        # 3f84 <_sk_callback_hsw+0x197>
857  DB  196,65,124,40,236                   ; vmovaps       %ymm12,%ymm13
858  DB  196,66,125,168,235                  ; vfmadd213ps   %ymm11,%ymm0,%ymm13
859  DB  196,98,125,24,53,251,50,0,0         ; vbroadcastss  0x32fb(%rip),%ymm14        # 3f88 <_sk_callback_hsw+0x19b>
860  DB  196,66,45,168,238                   ; vfmadd213ps   %ymm14,%ymm10,%ymm13
861  DB  196,98,125,24,21,241,50,0,0         ; vbroadcastss  0x32f1(%rip),%ymm10        # 3f8c <_sk_callback_hsw+0x19f>
862  DB  196,193,124,194,194,1               ; vcmpltps      %ymm10,%ymm0,%ymm0
863  DB  196,195,21,74,193,0                 ; vblendvps     %ymm0,%ymm9,%ymm13,%ymm0
864  DB  196,65,116,89,200                   ; vmulps        %ymm8,%ymm1,%ymm9
865  DB  197,116,89,233                      ; vmulps        %ymm1,%ymm1,%ymm13
866  DB  196,65,124,40,252                   ; vmovaps       %ymm12,%ymm15
867  DB  196,66,117,168,251                  ; vfmadd213ps   %ymm11,%ymm1,%ymm15
868  DB  196,66,21,168,254                   ; vfmadd213ps   %ymm14,%ymm13,%ymm15
869  DB  196,193,116,194,202,1               ; vcmpltps      %ymm10,%ymm1,%ymm1
870  DB  196,195,5,74,201,16                 ; vblendvps     %ymm1,%ymm9,%ymm15,%ymm1
871  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
872  DB  197,108,89,202                      ; vmulps        %ymm2,%ymm2,%ymm9
873  DB  196,66,109,168,227                  ; vfmadd213ps   %ymm11,%ymm2,%ymm12
874  DB  196,66,53,168,230                   ; vfmadd213ps   %ymm14,%ymm9,%ymm12
875  DB  196,193,108,194,210,1               ; vcmpltps      %ymm10,%ymm2,%ymm2
876  DB  196,195,29,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm12,%ymm2
877  DB  72,173                              ; lods          %ds:(%rsi),%rax
878  DB  255,224                             ; jmpq          *%rax
879
880PUBLIC _sk_to_srgb_hsw
881_sk_to_srgb_hsw LABEL PROC
882  DB  197,124,82,192                      ; vrsqrtps      %ymm0,%ymm8
883  DB  196,65,124,83,200                   ; vrcpps        %ymm8,%ymm9
884  DB  196,65,124,82,208                   ; vrsqrtps      %ymm8,%ymm10
885  DB  196,98,125,24,5,139,50,0,0          ; vbroadcastss  0x328b(%rip),%ymm8        # 3f90 <_sk_callback_hsw+0x1a3>
886  DB  196,65,124,89,216                   ; vmulps        %ymm8,%ymm0,%ymm11
887  DB  196,98,125,24,37,129,50,0,0         ; vbroadcastss  0x3281(%rip),%ymm12        # 3f94 <_sk_callback_hsw+0x1a7>
888  DB  196,98,125,24,45,124,50,0,0         ; vbroadcastss  0x327c(%rip),%ymm13        # 3f98 <_sk_callback_hsw+0x1ab>
889  DB  196,66,21,168,204                   ; vfmadd213ps   %ymm12,%ymm13,%ymm9
890  DB  196,98,125,24,53,114,50,0,0         ; vbroadcastss  0x3272(%rip),%ymm14        # 3f9c <_sk_callback_hsw+0x1af>
891  DB  196,66,13,184,202                   ; vfmadd231ps   %ymm10,%ymm14,%ymm9
892  DB  196,98,125,24,21,104,50,0,0         ; vbroadcastss  0x3268(%rip),%ymm10        # 3fa0 <_sk_callback_hsw+0x1b3>
893  DB  196,65,44,93,201                    ; vminps        %ymm9,%ymm10,%ymm9
894  DB  196,98,125,24,61,94,50,0,0          ; vbroadcastss  0x325e(%rip),%ymm15        # 3fa4 <_sk_callback_hsw+0x1b7>
895  DB  196,193,124,194,199,1               ; vcmpltps      %ymm15,%ymm0,%ymm0
896  DB  196,195,53,74,195,0                 ; vblendvps     %ymm0,%ymm11,%ymm9,%ymm0
897  DB  197,124,82,201                      ; vrsqrtps      %ymm1,%ymm9
898  DB  196,65,124,83,217                   ; vrcpps        %ymm9,%ymm11
899  DB  196,65,124,82,201                   ; vrsqrtps      %ymm9,%ymm9
900  DB  196,66,21,168,220                   ; vfmadd213ps   %ymm12,%ymm13,%ymm11
901  DB  196,66,13,184,217                   ; vfmadd231ps   %ymm9,%ymm14,%ymm11
902  DB  196,65,116,89,200                   ; vmulps        %ymm8,%ymm1,%ymm9
903  DB  196,65,44,93,219                    ; vminps        %ymm11,%ymm10,%ymm11
904  DB  196,193,116,194,207,1               ; vcmpltps      %ymm15,%ymm1,%ymm1
905  DB  196,195,37,74,201,16                ; vblendvps     %ymm1,%ymm9,%ymm11,%ymm1
906  DB  197,124,82,202                      ; vrsqrtps      %ymm2,%ymm9
907  DB  196,65,124,83,217                   ; vrcpps        %ymm9,%ymm11
908  DB  196,66,21,168,220                   ; vfmadd213ps   %ymm12,%ymm13,%ymm11
909  DB  196,65,124,82,201                   ; vrsqrtps      %ymm9,%ymm9
910  DB  196,66,13,184,217                   ; vfmadd231ps   %ymm9,%ymm14,%ymm11
911  DB  196,65,44,93,203                    ; vminps        %ymm11,%ymm10,%ymm9
912  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
913  DB  196,193,108,194,215,1               ; vcmpltps      %ymm15,%ymm2,%ymm2
914  DB  196,195,53,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm9,%ymm2
915  DB  72,173                              ; lods          %ds:(%rsi),%rax
916  DB  255,224                             ; jmpq          *%rax
917
918PUBLIC _sk_rgb_to_hsl_hsw
919_sk_rgb_to_hsl_hsw LABEL PROC
920  DB  197,124,95,193                      ; vmaxps        %ymm1,%ymm0,%ymm8
921  DB  197,60,95,194                       ; vmaxps        %ymm2,%ymm8,%ymm8
922  DB  197,124,93,201                      ; vminps        %ymm1,%ymm0,%ymm9
923  DB  197,52,93,202                       ; vminps        %ymm2,%ymm9,%ymm9
924  DB  196,65,60,92,209                    ; vsubps        %ymm9,%ymm8,%ymm10
925  DB  196,98,125,24,29,216,49,0,0         ; vbroadcastss  0x31d8(%rip),%ymm11        # 3fa8 <_sk_callback_hsw+0x1bb>
926  DB  196,65,36,94,218                    ; vdivps        %ymm10,%ymm11,%ymm11
927  DB  197,116,92,226                      ; vsubps        %ymm2,%ymm1,%ymm12
928  DB  197,116,194,234,1                   ; vcmpltps      %ymm2,%ymm1,%ymm13
929  DB  196,98,125,24,53,197,49,0,0         ; vbroadcastss  0x31c5(%rip),%ymm14        # 3fac <_sk_callback_hsw+0x1bf>
930  DB  196,65,4,87,255                     ; vxorps        %ymm15,%ymm15,%ymm15
931  DB  196,67,5,74,238,208                 ; vblendvps     %ymm13,%ymm14,%ymm15,%ymm13
932  DB  196,66,37,168,229                   ; vfmadd213ps   %ymm13,%ymm11,%ymm12
933  DB  197,236,92,208                      ; vsubps        %ymm0,%ymm2,%ymm2
934  DB  197,124,92,233                      ; vsubps        %ymm1,%ymm0,%ymm13
935  DB  196,98,125,24,53,172,49,0,0         ; vbroadcastss  0x31ac(%rip),%ymm14        # 3fb4 <_sk_callback_hsw+0x1c7>
936  DB  196,66,37,168,238                   ; vfmadd213ps   %ymm14,%ymm11,%ymm13
937  DB  196,98,125,24,53,154,49,0,0         ; vbroadcastss  0x319a(%rip),%ymm14        # 3fb0 <_sk_callback_hsw+0x1c3>
938  DB  196,194,37,168,214                  ; vfmadd213ps   %ymm14,%ymm11,%ymm2
939  DB  197,188,194,201,0                   ; vcmpeqps      %ymm1,%ymm8,%ymm1
940  DB  196,227,21,74,202,16                ; vblendvps     %ymm1,%ymm2,%ymm13,%ymm1
941  DB  197,188,194,192,0                   ; vcmpeqps      %ymm0,%ymm8,%ymm0
942  DB  196,195,117,74,196,0                ; vblendvps     %ymm0,%ymm12,%ymm1,%ymm0
943  DB  196,193,60,88,201                   ; vaddps        %ymm9,%ymm8,%ymm1
944  DB  196,98,125,24,29,125,49,0,0         ; vbroadcastss  0x317d(%rip),%ymm11        # 3fbc <_sk_callback_hsw+0x1cf>
945  DB  196,193,116,89,211                  ; vmulps        %ymm11,%ymm1,%ymm2
946  DB  197,36,194,218,1                    ; vcmpltps      %ymm2,%ymm11,%ymm11
947  DB  196,65,12,92,224                    ; vsubps        %ymm8,%ymm14,%ymm12
948  DB  196,65,28,92,225                    ; vsubps        %ymm9,%ymm12,%ymm12
949  DB  196,195,117,74,204,176              ; vblendvps     %ymm11,%ymm12,%ymm1,%ymm1
950  DB  196,65,60,194,193,0                 ; vcmpeqps      %ymm9,%ymm8,%ymm8
951  DB  197,172,94,201                      ; vdivps        %ymm1,%ymm10,%ymm1
952  DB  196,195,125,74,199,128              ; vblendvps     %ymm8,%ymm15,%ymm0,%ymm0
953  DB  196,195,117,74,207,128              ; vblendvps     %ymm8,%ymm15,%ymm1,%ymm1
954  DB  196,98,125,24,5,64,49,0,0           ; vbroadcastss  0x3140(%rip),%ymm8        # 3fb8 <_sk_callback_hsw+0x1cb>
955  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
956  DB  72,173                              ; lods          %ds:(%rsi),%rax
957  DB  255,224                             ; jmpq          *%rax
958
959PUBLIC _sk_hsl_to_rgb_hsw
960_sk_hsl_to_rgb_hsw LABEL PROC
961  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
962  DB  197,252,17,188,36,128,0,0,0         ; vmovups       %ymm7,0x80(%rsp)
963  DB  197,252,17,116,36,96                ; vmovups       %ymm6,0x60(%rsp)
964  DB  197,252,17,108,36,64                ; vmovups       %ymm5,0x40(%rsp)
965  DB  197,252,17,100,36,32                ; vmovups       %ymm4,0x20(%rsp)
966  DB  197,252,17,28,36                    ; vmovups       %ymm3,(%rsp)
967  DB  197,252,40,233                      ; vmovaps       %ymm1,%ymm5
968  DB  197,252,40,224                      ; vmovaps       %ymm0,%ymm4
969  DB  196,98,125,24,5,7,49,0,0            ; vbroadcastss  0x3107(%rip),%ymm8        # 3fc0 <_sk_callback_hsw+0x1d3>
970  DB  197,60,194,202,2                    ; vcmpleps      %ymm2,%ymm8,%ymm9
971  DB  197,84,89,210                       ; vmulps        %ymm2,%ymm5,%ymm10
972  DB  196,65,84,92,218                    ; vsubps        %ymm10,%ymm5,%ymm11
973  DB  196,67,45,74,203,144                ; vblendvps     %ymm9,%ymm11,%ymm10,%ymm9
974  DB  197,52,88,210                       ; vaddps        %ymm2,%ymm9,%ymm10
975  DB  196,98,125,24,13,234,48,0,0         ; vbroadcastss  0x30ea(%rip),%ymm9        # 3fc4 <_sk_callback_hsw+0x1d7>
976  DB  196,66,109,170,202                  ; vfmsub213ps   %ymm10,%ymm2,%ymm9
977  DB  196,98,125,24,29,224,48,0,0         ; vbroadcastss  0x30e0(%rip),%ymm11        # 3fc8 <_sk_callback_hsw+0x1db>
978  DB  196,65,92,88,219                    ; vaddps        %ymm11,%ymm4,%ymm11
979  DB  196,67,125,8,227,1                  ; vroundps      $0x1,%ymm11,%ymm12
980  DB  196,65,36,92,252                    ; vsubps        %ymm12,%ymm11,%ymm15
981  DB  196,65,44,92,217                    ; vsubps        %ymm9,%ymm10,%ymm11
982  DB  196,98,125,24,45,202,48,0,0         ; vbroadcastss  0x30ca(%rip),%ymm13        # 3fd0 <_sk_callback_hsw+0x1e3>
983  DB  196,193,4,89,197                    ; vmulps        %ymm13,%ymm15,%ymm0
984  DB  196,98,125,24,53,192,48,0,0         ; vbroadcastss  0x30c0(%rip),%ymm14        # 3fd4 <_sk_callback_hsw+0x1e7>
985  DB  197,12,92,224                       ; vsubps        %ymm0,%ymm14,%ymm12
986  DB  196,66,37,168,225                   ; vfmadd213ps   %ymm9,%ymm11,%ymm12
987  DB  196,226,125,24,29,166,48,0,0        ; vbroadcastss  0x30a6(%rip),%ymm3        # 3fcc <_sk_callback_hsw+0x1df>
988  DB  196,193,100,194,255,2               ; vcmpleps      %ymm15,%ymm3,%ymm7
989  DB  196,195,29,74,249,112               ; vblendvps     %ymm7,%ymm9,%ymm12,%ymm7
990  DB  196,65,60,194,231,2                 ; vcmpleps      %ymm15,%ymm8,%ymm12
991  DB  196,227,45,74,255,192               ; vblendvps     %ymm12,%ymm7,%ymm10,%ymm7
992  DB  196,98,125,24,37,145,48,0,0         ; vbroadcastss  0x3091(%rip),%ymm12        # 3fd8 <_sk_callback_hsw+0x1eb>
993  DB  196,65,28,194,255,2                 ; vcmpleps      %ymm15,%ymm12,%ymm15
994  DB  196,194,37,168,193                  ; vfmadd213ps   %ymm9,%ymm11,%ymm0
995  DB  196,99,125,74,255,240               ; vblendvps     %ymm15,%ymm7,%ymm0,%ymm15
996  DB  196,227,125,8,196,1                 ; vroundps      $0x1,%ymm4,%ymm0
997  DB  197,220,92,192                      ; vsubps        %ymm0,%ymm4,%ymm0
998  DB  196,193,124,89,253                  ; vmulps        %ymm13,%ymm0,%ymm7
999  DB  197,140,92,207                      ; vsubps        %ymm7,%ymm14,%ymm1
1000  DB  196,194,37,168,201                  ; vfmadd213ps   %ymm9,%ymm11,%ymm1
1001  DB  197,228,194,240,2                   ; vcmpleps      %ymm0,%ymm3,%ymm6
1002  DB  196,195,117,74,201,96               ; vblendvps     %ymm6,%ymm9,%ymm1,%ymm1
1003  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
1004  DB  196,227,45,74,201,96                ; vblendvps     %ymm6,%ymm1,%ymm10,%ymm1
1005  DB  197,156,194,192,2                   ; vcmpleps      %ymm0,%ymm12,%ymm0
1006  DB  196,194,37,168,249                  ; vfmadd213ps   %ymm9,%ymm11,%ymm7
1007  DB  196,227,69,74,201,0                 ; vblendvps     %ymm0,%ymm1,%ymm7,%ymm1
1008  DB  196,226,125,24,5,61,48,0,0          ; vbroadcastss  0x303d(%rip),%ymm0        # 3fdc <_sk_callback_hsw+0x1ef>
1009  DB  197,220,88,192                      ; vaddps        %ymm0,%ymm4,%ymm0
1010  DB  196,227,125,8,224,1                 ; vroundps      $0x1,%ymm0,%ymm4
1011  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1012  DB  197,228,194,216,2                   ; vcmpleps      %ymm0,%ymm3,%ymm3
1013  DB  196,193,124,89,229                  ; vmulps        %ymm13,%ymm0,%ymm4
1014  DB  197,140,92,244                      ; vsubps        %ymm4,%ymm14,%ymm6
1015  DB  196,194,37,168,241                  ; vfmadd213ps   %ymm9,%ymm11,%ymm6
1016  DB  196,195,77,74,217,48                ; vblendvps     %ymm3,%ymm9,%ymm6,%ymm3
1017  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
1018  DB  196,227,45,74,219,96                ; vblendvps     %ymm6,%ymm3,%ymm10,%ymm3
1019  DB  196,98,37,184,204                   ; vfmadd231ps   %ymm4,%ymm11,%ymm9
1020  DB  197,156,194,192,2                   ; vcmpleps      %ymm0,%ymm12,%ymm0
1021  DB  196,227,53,74,219,0                 ; vblendvps     %ymm0,%ymm3,%ymm9,%ymm3
1022  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
1023  DB  197,212,194,224,0                   ; vcmpeqps      %ymm0,%ymm5,%ymm4
1024  DB  196,227,5,74,194,64                 ; vblendvps     %ymm4,%ymm2,%ymm15,%ymm0
1025  DB  196,227,117,74,202,64               ; vblendvps     %ymm4,%ymm2,%ymm1,%ymm1
1026  DB  196,227,101,74,210,64               ; vblendvps     %ymm4,%ymm2,%ymm3,%ymm2
1027  DB  72,173                              ; lods          %ds:(%rsi),%rax
1028  DB  197,252,16,28,36                    ; vmovups       (%rsp),%ymm3
1029  DB  197,252,16,100,36,32                ; vmovups       0x20(%rsp),%ymm4
1030  DB  197,252,16,108,36,64                ; vmovups       0x40(%rsp),%ymm5
1031  DB  197,252,16,116,36,96                ; vmovups       0x60(%rsp),%ymm6
1032  DB  197,252,16,188,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm7
1033  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
1034  DB  255,224                             ; jmpq          *%rax
1035
1036PUBLIC _sk_scale_1_float_hsw
1037_sk_scale_1_float_hsw LABEL PROC
1038  DB  72,173                              ; lods          %ds:(%rsi),%rax
1039  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
1040  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1041  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1042  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1043  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
1044  DB  72,173                              ; lods          %ds:(%rsi),%rax
1045  DB  255,224                             ; jmpq          *%rax
1046
1047PUBLIC _sk_scale_u8_hsw
1048_sk_scale_u8_hsw LABEL PROC
1049  DB  73,137,200                          ; mov           %rcx,%r8
1050  DB  72,173                              ; lods          %ds:(%rsi),%rax
1051  DB  72,139,0                            ; mov           (%rax),%rax
1052  DB  72,1,248                            ; add           %rdi,%rax
1053  DB  77,133,192                          ; test          %r8,%r8
1054  DB  117,51                              ; jne           1085 <_sk_scale_u8_hsw+0x43>
1055  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
1056  DB  196,66,125,49,192                   ; vpmovzxbd     %xmm8,%ymm8
1057  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1058  DB  196,98,125,24,13,119,47,0,0         ; vbroadcastss  0x2f77(%rip),%ymm9        # 3fe0 <_sk_callback_hsw+0x1f3>
1059  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
1060  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1061  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1062  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1063  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
1064  DB  72,173                              ; lods          %ds:(%rsi),%rax
1065  DB  76,137,193                          ; mov           %r8,%rcx
1066  DB  255,224                             ; jmpq          *%rax
1067  DB  49,201                              ; xor           %ecx,%ecx
1068  DB  77,137,194                          ; mov           %r8,%r10
1069  DB  69,49,201                           ; xor           %r9d,%r9d
1070  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
1071  DB  72,255,192                          ; inc           %rax
1072  DB  73,211,227                          ; shl           %cl,%r11
1073  DB  77,9,217                            ; or            %r11,%r9
1074  DB  72,131,193,8                        ; add           $0x8,%rcx
1075  DB  73,255,202                          ; dec           %r10
1076  DB  117,234                             ; jne           108d <_sk_scale_u8_hsw+0x4b>
1077  DB  196,65,249,110,193                  ; vmovq         %r9,%xmm8
1078  DB  235,172                             ; jmp           1056 <_sk_scale_u8_hsw+0x14>
1079
1080PUBLIC _sk_lerp_1_float_hsw
1081_sk_lerp_1_float_hsw LABEL PROC
1082  DB  72,173                              ; lods          %ds:(%rsi),%rax
1083  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
1084  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1085  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
1086  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1087  DB  196,226,61,168,205                  ; vfmadd213ps   %ymm5,%ymm8,%ymm1
1088  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1089  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
1090  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
1091  DB  196,226,61,168,223                  ; vfmadd213ps   %ymm7,%ymm8,%ymm3
1092  DB  72,173                              ; lods          %ds:(%rsi),%rax
1093  DB  255,224                             ; jmpq          *%rax
1094
1095PUBLIC _sk_lerp_u8_hsw
1096_sk_lerp_u8_hsw LABEL PROC
1097  DB  73,137,200                          ; mov           %rcx,%r8
1098  DB  72,173                              ; lods          %ds:(%rsi),%rax
1099  DB  72,139,0                            ; mov           (%rax),%rax
1100  DB  72,1,248                            ; add           %rdi,%rax
1101  DB  77,133,192                          ; test          %r8,%r8
1102  DB  117,71                              ; jne           1130 <_sk_lerp_u8_hsw+0x57>
1103  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
1104  DB  196,66,125,49,192                   ; vpmovzxbd     %xmm8,%ymm8
1105  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1106  DB  196,98,125,24,13,228,46,0,0         ; vbroadcastss  0x2ee4(%rip),%ymm9        # 3fe4 <_sk_callback_hsw+0x1f7>
1107  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
1108  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1109  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
1110  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1111  DB  196,226,61,168,205                  ; vfmadd213ps   %ymm5,%ymm8,%ymm1
1112  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1113  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
1114  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
1115  DB  196,226,61,168,223                  ; vfmadd213ps   %ymm7,%ymm8,%ymm3
1116  DB  72,173                              ; lods          %ds:(%rsi),%rax
1117  DB  76,137,193                          ; mov           %r8,%rcx
1118  DB  255,224                             ; jmpq          *%rax
1119  DB  49,201                              ; xor           %ecx,%ecx
1120  DB  77,137,194                          ; mov           %r8,%r10
1121  DB  69,49,201                           ; xor           %r9d,%r9d
1122  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
1123  DB  72,255,192                          ; inc           %rax
1124  DB  73,211,227                          ; shl           %cl,%r11
1125  DB  77,9,217                            ; or            %r11,%r9
1126  DB  72,131,193,8                        ; add           $0x8,%rcx
1127  DB  73,255,202                          ; dec           %r10
1128  DB  117,234                             ; jne           1138 <_sk_lerp_u8_hsw+0x5f>
1129  DB  196,65,249,110,193                  ; vmovq         %r9,%xmm8
1130  DB  235,152                             ; jmp           10ed <_sk_lerp_u8_hsw+0x14>
1131
1132PUBLIC _sk_lerp_565_hsw
1133_sk_lerp_565_hsw LABEL PROC
1134  DB  72,173                              ; lods          %ds:(%rsi),%rax
1135  DB  76,139,16                           ; mov           (%rax),%r10
1136  DB  72,133,201                          ; test          %rcx,%rcx
1137  DB  15,133,149,0,0,0                    ; jne           11f8 <_sk_lerp_565_hsw+0xa3>
1138  DB  196,193,122,111,28,122              ; vmovdqu       (%r10,%rdi,2),%xmm3
1139  DB  196,226,125,51,219                  ; vpmovzxwd     %xmm3,%ymm3
1140  DB  196,98,125,88,5,113,46,0,0          ; vpbroadcastd  0x2e71(%rip),%ymm8        # 3fe8 <_sk_callback_hsw+0x1fb>
1141  DB  196,65,101,219,192                  ; vpand         %ymm8,%ymm3,%ymm8
1142  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1143  DB  196,98,125,24,13,98,46,0,0          ; vbroadcastss  0x2e62(%rip),%ymm9        # 3fec <_sk_callback_hsw+0x1ff>
1144  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
1145  DB  196,98,125,88,13,88,46,0,0          ; vpbroadcastd  0x2e58(%rip),%ymm9        # 3ff0 <_sk_callback_hsw+0x203>
1146  DB  196,65,101,219,201                  ; vpand         %ymm9,%ymm3,%ymm9
1147  DB  196,65,124,91,201                   ; vcvtdq2ps     %ymm9,%ymm9
1148  DB  196,98,125,24,21,73,46,0,0          ; vbroadcastss  0x2e49(%rip),%ymm10        # 3ff4 <_sk_callback_hsw+0x207>
1149  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
1150  DB  196,98,125,88,21,63,46,0,0          ; vpbroadcastd  0x2e3f(%rip),%ymm10        # 3ff8 <_sk_callback_hsw+0x20b>
1151  DB  196,193,101,219,218                 ; vpand         %ymm10,%ymm3,%ymm3
1152  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1153  DB  196,98,125,24,21,49,46,0,0          ; vbroadcastss  0x2e31(%rip),%ymm10        # 3ffc <_sk_callback_hsw+0x20f>
1154  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
1155  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1156  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
1157  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1158  DB  196,226,53,168,205                  ; vfmadd213ps   %ymm5,%ymm9,%ymm1
1159  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1160  DB  196,226,101,168,214                 ; vfmadd213ps   %ymm6,%ymm3,%ymm2
1161  DB  72,173                              ; lods          %ds:(%rsi),%rax
1162  DB  196,226,125,24,29,10,46,0,0         ; vbroadcastss  0x2e0a(%rip),%ymm3        # 4000 <_sk_callback_hsw+0x213>
1163  DB  255,224                             ; jmpq          *%rax
1164  DB  65,137,200                          ; mov           %ecx,%r8d
1165  DB  65,128,224,7                        ; and           $0x7,%r8b
1166  DB  197,225,239,219                     ; vpxor         %xmm3,%xmm3,%xmm3
1167  DB  65,254,200                          ; dec           %r8b
1168  DB  65,128,248,6                        ; cmp           $0x6,%r8b
1169  DB  15,135,89,255,255,255               ; ja            1169 <_sk_lerp_565_hsw+0x14>
1170  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
1171  DB  76,141,13,73,0,0,0                  ; lea           0x49(%rip),%r9        # 1264 <_sk_lerp_565_hsw+0x10f>
1172  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
1173  DB  76,1,200                            ; add           %r9,%rax
1174  DB  255,224                             ; jmpq          *%rax
1175  DB  197,225,239,219                     ; vpxor         %xmm3,%xmm3,%xmm3
1176  DB  196,193,97,196,92,122,12,6          ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm3,%xmm3
1177  DB  196,193,97,196,92,122,10,5          ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm3,%xmm3
1178  DB  196,193,97,196,92,122,8,4           ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm3,%xmm3
1179  DB  196,193,97,196,92,122,6,3           ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm3,%xmm3
1180  DB  196,193,97,196,92,122,4,2           ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm3,%xmm3
1181  DB  196,193,97,196,92,122,2,1           ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm3,%xmm3
1182  DB  196,193,97,196,28,122,0             ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm3,%xmm3
1183  DB  233,5,255,255,255                   ; jmpq          1169 <_sk_lerp_565_hsw+0x14>
1184  DB  244                                 ; hlt
1185  DB  255                                 ; (bad)
1186  DB  255                                 ; (bad)
1187  DB  255                                 ; (bad)
1188  DB  236                                 ; in            (%dx),%al
1189  DB  255                                 ; (bad)
1190  DB  255                                 ; (bad)
1191  DB  255,228                             ; jmpq          *%rsp
1192  DB  255                                 ; (bad)
1193  DB  255                                 ; (bad)
1194  DB  255                                 ; (bad)
1195  DB  220,255                             ; fdivr         %st,%st(7)
1196  DB  255                                 ; (bad)
1197  DB  255,212                             ; callq         *%rsp
1198  DB  255                                 ; (bad)
1199  DB  255                                 ; (bad)
1200  DB  255,204                             ; dec           %esp
1201  DB  255                                 ; (bad)
1202  DB  255                                 ; (bad)
1203  DB  255,192                             ; inc           %eax
1204  DB  255                                 ; (bad)
1205  DB  255                                 ; (bad)
1206  DB  255                                 ; .byte         0xff
1207
1208PUBLIC _sk_load_tables_hsw
1209_sk_load_tables_hsw LABEL PROC
1210  DB  73,137,200                          ; mov           %rcx,%r8
1211  DB  72,173                              ; lods          %ds:(%rsi),%rax
1212  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
1213  DB  76,3,8                              ; add           (%rax),%r9
1214  DB  77,133,192                          ; test          %r8,%r8
1215  DB  117,105                             ; jne           12fe <_sk_load_tables_hsw+0x7e>
1216  DB  196,193,126,111,25                  ; vmovdqu       (%r9),%ymm3
1217  DB  197,229,219,13,30,48,0,0            ; vpand         0x301e(%rip),%ymm3,%ymm1        # 42c0 <_sk_callback_hsw+0x4d3>
1218  DB  196,65,61,118,192                   ; vpcmpeqd      %ymm8,%ymm8,%ymm8
1219  DB  72,139,72,8                         ; mov           0x8(%rax),%rcx
1220  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
1221  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
1222  DB  196,226,109,146,4,137               ; vgatherdps    %ymm2,(%rcx,%ymm1,4),%ymm0
1223  DB  196,226,101,0,21,30,48,0,0          ; vpshufb       0x301e(%rip),%ymm3,%ymm2        # 42e0 <_sk_callback_hsw+0x4f3>
1224  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1225  DB  196,194,53,146,12,145               ; vgatherdps    %ymm9,(%r9,%ymm2,4),%ymm1
1226  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1227  DB  196,98,101,0,13,38,48,0,0           ; vpshufb       0x3026(%rip),%ymm3,%ymm9        # 4300 <_sk_callback_hsw+0x513>
1228  DB  196,162,61,146,20,136               ; vgatherdps    %ymm8,(%rax,%ymm9,4),%ymm2
1229  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
1230  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1231  DB  196,98,125,24,5,18,45,0,0           ; vbroadcastss  0x2d12(%rip),%ymm8        # 4004 <_sk_callback_hsw+0x217>
1232  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
1233  DB  72,173                              ; lods          %ds:(%rsi),%rax
1234  DB  76,137,193                          ; mov           %r8,%rcx
1235  DB  255,224                             ; jmpq          *%rax
1236  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
1237  DB  68,41,193                           ; sub           %r8d,%ecx
1238  DB  192,225,3                           ; shl           $0x3,%cl
1239  DB  73,199,194,255,255,255,255          ; mov           $0xffffffffffffffff,%r10
1240  DB  73,211,234                          ; shr           %cl,%r10
1241  DB  196,193,249,110,194                 ; vmovq         %r10,%xmm0
1242  DB  196,226,125,33,192                  ; vpmovsxbd     %xmm0,%ymm0
1243  DB  196,194,125,140,25                  ; vpmaskmovd    (%r9),%ymm0,%ymm3
1244  DB  233,115,255,255,255                 ; jmpq          129a <_sk_load_tables_hsw+0x1a>
1245
1246PUBLIC _sk_load_tables_u16_be_hsw
1247_sk_load_tables_u16_be_hsw LABEL PROC
1248  DB  72,173                              ; lods          %ds:(%rsi),%rax
1249  DB  76,139,0                            ; mov           (%rax),%r8
1250  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
1251  DB  72,133,201                          ; test          %rcx,%rcx
1252  DB  15,133,201,0,0,0                    ; jne           1406 <_sk_load_tables_u16_be_hsw+0xdf>
1253  DB  196,1,121,16,4,72                   ; vmovupd       (%r8,%r9,2),%xmm8
1254  DB  196,129,121,16,84,72,16             ; vmovupd       0x10(%r8,%r9,2),%xmm2
1255  DB  196,129,121,16,92,72,32             ; vmovupd       0x20(%r8,%r9,2),%xmm3
1256  DB  196,1,122,111,76,72,48              ; vmovdqu       0x30(%r8,%r9,2),%xmm9
1257  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
1258  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
1259  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
1260  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
1261  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
1262  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
1263  DB  197,241,97,195                      ; vpunpcklwd    %xmm3,%xmm1,%xmm0
1264  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
1265  DB  197,185,108,200                     ; vpunpcklqdq   %xmm0,%xmm8,%xmm1
1266  DB  197,185,109,208                     ; vpunpckhqdq   %xmm0,%xmm8,%xmm2
1267  DB  197,49,108,195                      ; vpunpcklqdq   %xmm3,%xmm9,%xmm8
1268  DB  197,121,111,21,178,48,0,0           ; vmovdqa       0x30b2(%rip),%xmm10        # 4440 <_sk_callback_hsw+0x653>
1269  DB  196,193,113,219,194                 ; vpand         %xmm10,%xmm1,%xmm0
1270  DB  196,226,125,51,200                  ; vpmovzxwd     %xmm0,%ymm1
1271  DB  196,65,37,118,219                   ; vpcmpeqd      %ymm11,%ymm11,%ymm11
1272  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
1273  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
1274  DB  196,65,29,118,228                   ; vpcmpeqd      %ymm12,%ymm12,%ymm12
1275  DB  196,194,29,146,4,136                ; vgatherdps    %ymm12,(%r8,%ymm1,4),%ymm0
1276  DB  196,193,105,219,202                 ; vpand         %xmm10,%xmm2,%xmm1
1277  DB  196,226,125,51,209                  ; vpmovzxwd     %xmm1,%ymm2
1278  DB  196,65,29,118,228                   ; vpcmpeqd      %ymm12,%ymm12,%ymm12
1279  DB  196,194,29,146,12,145               ; vgatherdps    %ymm12,(%r9,%ymm2,4),%ymm1
1280  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1281  DB  196,193,57,219,210                  ; vpand         %xmm10,%xmm8,%xmm2
1282  DB  196,98,125,51,194                   ; vpmovzxwd     %xmm2,%ymm8
1283  DB  196,162,37,146,20,128               ; vgatherdps    %ymm11,(%rax,%ymm8,4),%ymm2
1284  DB  197,177,109,219                     ; vpunpckhqdq   %xmm3,%xmm9,%xmm3
1285  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
1286  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
1287  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
1288  DB  196,226,125,51,219                  ; vpmovzxwd     %xmm3,%ymm3
1289  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1290  DB  196,98,125,24,5,11,44,0,0           ; vbroadcastss  0x2c0b(%rip),%ymm8        # 4008 <_sk_callback_hsw+0x21b>
1291  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
1292  DB  72,173                              ; lods          %ds:(%rsi),%rax
1293  DB  255,224                             ; jmpq          *%rax
1294  DB  196,1,123,16,4,72                   ; vmovsd        (%r8,%r9,2),%xmm8
1295  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
1296  DB  72,131,249,1                        ; cmp           $0x1,%rcx
1297  DB  116,85                              ; je            146c <_sk_load_tables_u16_be_hsw+0x145>
1298  DB  196,1,57,22,68,72,8                 ; vmovhpd       0x8(%r8,%r9,2),%xmm8,%xmm8
1299  DB  72,131,249,3                        ; cmp           $0x3,%rcx
1300  DB  114,72                              ; jb            146c <_sk_load_tables_u16_be_hsw+0x145>
1301  DB  196,129,123,16,84,72,16             ; vmovsd        0x10(%r8,%r9,2),%xmm2
1302  DB  72,131,249,3                        ; cmp           $0x3,%rcx
1303  DB  116,72                              ; je            1479 <_sk_load_tables_u16_be_hsw+0x152>
1304  DB  196,129,105,22,84,72,24             ; vmovhpd       0x18(%r8,%r9,2),%xmm2,%xmm2
1305  DB  72,131,249,5                        ; cmp           $0x5,%rcx
1306  DB  114,59                              ; jb            1479 <_sk_load_tables_u16_be_hsw+0x152>
1307  DB  196,129,123,16,92,72,32             ; vmovsd        0x20(%r8,%r9,2),%xmm3
1308  DB  72,131,249,5                        ; cmp           $0x5,%rcx
1309  DB  15,132,9,255,255,255                ; je            1358 <_sk_load_tables_u16_be_hsw+0x31>
1310  DB  196,129,97,22,92,72,40              ; vmovhpd       0x28(%r8,%r9,2),%xmm3,%xmm3
1311  DB  72,131,249,7                        ; cmp           $0x7,%rcx
1312  DB  15,130,248,254,255,255              ; jb            1358 <_sk_load_tables_u16_be_hsw+0x31>
1313  DB  196,1,122,126,76,72,48              ; vmovq         0x30(%r8,%r9,2),%xmm9
1314  DB  233,236,254,255,255                 ; jmpq          1358 <_sk_load_tables_u16_be_hsw+0x31>
1315  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
1316  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
1317  DB  233,223,254,255,255                 ; jmpq          1358 <_sk_load_tables_u16_be_hsw+0x31>
1318  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
1319  DB  233,214,254,255,255                 ; jmpq          1358 <_sk_load_tables_u16_be_hsw+0x31>
1320
1321PUBLIC _sk_load_tables_rgb_u16_be_hsw
1322_sk_load_tables_rgb_u16_be_hsw LABEL PROC
1323  DB  72,173                              ; lods          %ds:(%rsi),%rax
1324  DB  76,139,0                            ; mov           (%rax),%r8
1325  DB  76,141,12,127                       ; lea           (%rdi,%rdi,2),%r9
1326  DB  72,133,201                          ; test          %rcx,%rcx
1327  DB  15,133,193,0,0,0                    ; jne           1555 <_sk_load_tables_rgb_u16_be_hsw+0xd3>
1328  DB  196,129,122,111,4,72                ; vmovdqu       (%r8,%r9,2),%xmm0
1329  DB  196,129,122,111,84,72,12            ; vmovdqu       0xc(%r8,%r9,2),%xmm2
1330  DB  196,129,122,111,76,72,24            ; vmovdqu       0x18(%r8,%r9,2),%xmm1
1331  DB  196,129,122,111,92,72,32            ; vmovdqu       0x20(%r8,%r9,2),%xmm3
1332  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
1333  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
1334  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
1335  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
1336  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
1337  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
1338  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
1339  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
1340  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
1341  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
1342  DB  197,249,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm0
1343  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
1344  DB  197,241,105,203                     ; vpunpckhwd    %xmm3,%xmm1,%xmm1
1345  DB  197,185,108,218                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm3
1346  DB  197,185,109,210                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm2
1347  DB  197,121,108,193                     ; vpunpcklqdq   %xmm1,%xmm0,%xmm8
1348  DB  197,121,111,13,82,47,0,0            ; vmovdqa       0x2f52(%rip),%xmm9        # 4450 <_sk_callback_hsw+0x663>
1349  DB  196,193,97,219,193                  ; vpand         %xmm9,%xmm3,%xmm0
1350  DB  196,226,125,51,200                  ; vpmovzxwd     %xmm0,%ymm1
1351  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
1352  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
1353  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
1354  DB  196,65,45,118,210                   ; vpcmpeqd      %ymm10,%ymm10,%ymm10
1355  DB  196,194,45,146,4,136                ; vgatherdps    %ymm10,(%r8,%ymm1,4),%ymm0
1356  DB  196,193,105,219,201                 ; vpand         %xmm9,%xmm2,%xmm1
1357  DB  196,226,125,51,209                  ; vpmovzxwd     %xmm1,%ymm2
1358  DB  196,65,45,118,210                   ; vpcmpeqd      %ymm10,%ymm10,%ymm10
1359  DB  196,194,45,146,12,145               ; vgatherdps    %ymm10,(%r9,%ymm2,4),%ymm1
1360  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1361  DB  196,193,57,219,209                  ; vpand         %xmm9,%xmm8,%xmm2
1362  DB  196,98,125,51,194                   ; vpmovzxwd     %xmm2,%ymm8
1363  DB  196,162,101,146,20,128              ; vgatherdps    %ymm3,(%rax,%ymm8,4),%ymm2
1364  DB  72,173                              ; lods          %ds:(%rsi),%rax
1365  DB  196,226,125,24,29,185,42,0,0        ; vbroadcastss  0x2ab9(%rip),%ymm3        # 400c <_sk_callback_hsw+0x21f>
1366  DB  255,224                             ; jmpq          *%rax
1367  DB  196,129,121,110,4,72                ; vmovd         (%r8,%r9,2),%xmm0
1368  DB  196,129,121,196,68,72,4,2           ; vpinsrw       $0x2,0x4(%r8,%r9,2),%xmm0,%xmm0
1369  DB  72,131,249,1                        ; cmp           $0x1,%rcx
1370  DB  117,5                               ; jne           156e <_sk_load_tables_rgb_u16_be_hsw+0xec>
1371  DB  233,90,255,255,255                  ; jmpq          14c8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1372  DB  196,129,121,110,76,72,6             ; vmovd         0x6(%r8,%r9,2),%xmm1
1373  DB  196,1,113,196,68,72,10,2            ; vpinsrw       $0x2,0xa(%r8,%r9,2),%xmm1,%xmm8
1374  DB  72,131,249,3                        ; cmp           $0x3,%rcx
1375  DB  114,26                              ; jb            159d <_sk_load_tables_rgb_u16_be_hsw+0x11b>
1376  DB  196,129,121,110,76,72,12            ; vmovd         0xc(%r8,%r9,2),%xmm1
1377  DB  196,129,113,196,84,72,16,2          ; vpinsrw       $0x2,0x10(%r8,%r9,2),%xmm1,%xmm2
1378  DB  72,131,249,3                        ; cmp           $0x3,%rcx
1379  DB  117,10                              ; jne           15a2 <_sk_load_tables_rgb_u16_be_hsw+0x120>
1380  DB  233,43,255,255,255                  ; jmpq          14c8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1381  DB  233,38,255,255,255                  ; jmpq          14c8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1382  DB  196,129,121,110,76,72,18            ; vmovd         0x12(%r8,%r9,2),%xmm1
1383  DB  196,1,113,196,76,72,22,2            ; vpinsrw       $0x2,0x16(%r8,%r9,2),%xmm1,%xmm9
1384  DB  72,131,249,5                        ; cmp           $0x5,%rcx
1385  DB  114,26                              ; jb            15d1 <_sk_load_tables_rgb_u16_be_hsw+0x14f>
1386  DB  196,129,121,110,76,72,24            ; vmovd         0x18(%r8,%r9,2),%xmm1
1387  DB  196,129,113,196,76,72,28,2          ; vpinsrw       $0x2,0x1c(%r8,%r9,2),%xmm1,%xmm1
1388  DB  72,131,249,5                        ; cmp           $0x5,%rcx
1389  DB  117,10                              ; jne           15d6 <_sk_load_tables_rgb_u16_be_hsw+0x154>
1390  DB  233,247,254,255,255                 ; jmpq          14c8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1391  DB  233,242,254,255,255                 ; jmpq          14c8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1392  DB  196,129,121,110,92,72,30            ; vmovd         0x1e(%r8,%r9,2),%xmm3
1393  DB  196,1,97,196,92,72,34,2             ; vpinsrw       $0x2,0x22(%r8,%r9,2),%xmm3,%xmm11
1394  DB  72,131,249,7                        ; cmp           $0x7,%rcx
1395  DB  114,20                              ; jb            15ff <_sk_load_tables_rgb_u16_be_hsw+0x17d>
1396  DB  196,129,121,110,92,72,36            ; vmovd         0x24(%r8,%r9,2),%xmm3
1397  DB  196,129,97,196,92,72,40,2           ; vpinsrw       $0x2,0x28(%r8,%r9,2),%xmm3,%xmm3
1398  DB  233,201,254,255,255                 ; jmpq          14c8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1399  DB  233,196,254,255,255                 ; jmpq          14c8 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1400
1401PUBLIC _sk_byte_tables_hsw
1402_sk_byte_tables_hsw LABEL PROC
1403  DB  85                                  ; push          %rbp
1404  DB  65,87                               ; push          %r15
1405  DB  65,86                               ; push          %r14
1406  DB  65,85                               ; push          %r13
1407  DB  65,84                               ; push          %r12
1408  DB  83                                  ; push          %rbx
1409  DB  72,173                              ; lods          %ds:(%rsi),%rax
1410  DB  196,98,125,24,5,247,41,0,0          ; vbroadcastss  0x29f7(%rip),%ymm8        # 4010 <_sk_callback_hsw+0x223>
1411  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
1412  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
1413  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
1414  DB  68,137,197                          ; mov           %r8d,%ebp
1415  DB  77,137,194                          ; mov           %r8,%r10
1416  DB  73,193,234,32                       ; shr           $0x20,%r10
1417  DB  196,193,249,126,192                 ; vmovq         %xmm0,%r8
1418  DB  69,137,195                          ; mov           %r8d,%r11d
1419  DB  77,137,199                          ; mov           %r8,%r15
1420  DB  73,193,239,32                       ; shr           $0x20,%r15
1421  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
1422  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
1423  DB  69,137,198                          ; mov           %r8d,%r14d
1424  DB  77,137,196                          ; mov           %r8,%r12
1425  DB  73,193,236,32                       ; shr           $0x20,%r12
1426  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
1427  DB  65,137,221                          ; mov           %ebx,%r13d
1428  DB  72,193,235,32                       ; shr           $0x20,%rbx
1429  DB  76,139,8                            ; mov           (%rax),%r9
1430  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
1431  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
1432  DB  196,131,121,32,4,57,1               ; vpinsrb       $0x1,(%r9,%r15,1),%xmm0,%xmm0
1433  DB  65,15,182,44,41                     ; movzbl        (%r9,%rbp,1),%ebp
1434  DB  196,227,121,32,197,2                ; vpinsrb       $0x2,%ebp,%xmm0,%xmm0
1435  DB  67,15,182,44,17                     ; movzbl        (%r9,%r10,1),%ebp
1436  DB  196,227,121,32,197,3                ; vpinsrb       $0x3,%ebp,%xmm0,%xmm0
1437  DB  67,15,182,44,41                     ; movzbl        (%r9,%r13,1),%ebp
1438  DB  196,227,121,32,197,4                ; vpinsrb       $0x4,%ebp,%xmm0,%xmm0
1439  DB  65,15,182,44,25                     ; movzbl        (%r9,%rbx,1),%ebp
1440  DB  196,227,121,32,197,5                ; vpinsrb       $0x5,%ebp,%xmm0,%xmm0
1441  DB  67,15,182,44,49                     ; movzbl        (%r9,%r14,1),%ebp
1442  DB  196,227,121,32,197,6                ; vpinsrb       $0x6,%ebp,%xmm0,%xmm0
1443  DB  67,15,182,44,33                     ; movzbl        (%r9,%r12,1),%ebp
1444  DB  196,227,121,32,197,7                ; vpinsrb       $0x7,%ebp,%xmm0,%xmm0
1445  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
1446  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
1447  DB  196,98,125,24,13,72,41,0,0          ; vbroadcastss  0x2948(%rip),%ymm9        # 4014 <_sk_callback_hsw+0x227>
1448  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
1449  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
1450  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
1451  DB  196,227,249,22,205,1                ; vpextrq       $0x1,%xmm1,%rbp
1452  DB  65,137,233                          ; mov           %ebp,%r9d
1453  DB  72,193,237,32                       ; shr           $0x20,%rbp
1454  DB  196,225,249,126,203                 ; vmovq         %xmm1,%rbx
1455  DB  65,137,218                          ; mov           %ebx,%r10d
1456  DB  72,193,235,32                       ; shr           $0x20,%rbx
1457  DB  196,227,125,57,201,1                ; vextracti128  $0x1,%ymm1,%xmm1
1458  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
1459  DB  69,137,222                          ; mov           %r11d,%r14d
1460  DB  73,193,235,32                       ; shr           $0x20,%r11
1461  DB  196,193,249,126,207                 ; vmovq         %xmm1,%r15
1462  DB  69,137,252                          ; mov           %r15d,%r12d
1463  DB  73,193,239,32                       ; shr           $0x20,%r15
1464  DB  196,131,121,32,12,16,0              ; vpinsrb       $0x0,(%r8,%r10,1),%xmm0,%xmm1
1465  DB  196,195,113,32,12,24,1              ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm1,%xmm1
1466  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
1467  DB  196,227,113,32,203,2                ; vpinsrb       $0x2,%ebx,%xmm1,%xmm1
1468  DB  65,15,182,44,40                     ; movzbl        (%r8,%rbp,1),%ebp
1469  DB  196,227,113,32,205,3                ; vpinsrb       $0x3,%ebp,%xmm1,%xmm1
1470  DB  67,15,182,44,32                     ; movzbl        (%r8,%r12,1),%ebp
1471  DB  196,227,113,32,205,4                ; vpinsrb       $0x4,%ebp,%xmm1,%xmm1
1472  DB  67,15,182,44,56                     ; movzbl        (%r8,%r15,1),%ebp
1473  DB  196,227,113,32,205,5                ; vpinsrb       $0x5,%ebp,%xmm1,%xmm1
1474  DB  67,15,182,44,48                     ; movzbl        (%r8,%r14,1),%ebp
1475  DB  196,227,113,32,205,6                ; vpinsrb       $0x6,%ebp,%xmm1,%xmm1
1476  DB  67,15,182,44,24                     ; movzbl        (%r8,%r11,1),%ebp
1477  DB  196,227,113,32,205,7                ; vpinsrb       $0x7,%ebp,%xmm1,%xmm1
1478  DB  196,226,125,49,201                  ; vpmovzxbd     %xmm1,%ymm1
1479  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
1480  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
1481  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
1482  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
1483  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
1484  DB  196,227,249,22,213,1                ; vpextrq       $0x1,%xmm2,%rbp
1485  DB  65,137,233                          ; mov           %ebp,%r9d
1486  DB  72,193,237,32                       ; shr           $0x20,%rbp
1487  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
1488  DB  65,137,218                          ; mov           %ebx,%r10d
1489  DB  72,193,235,32                       ; shr           $0x20,%rbx
1490  DB  196,227,125,57,210,1                ; vextracti128  $0x1,%ymm2,%xmm2
1491  DB  196,195,249,22,211,1                ; vpextrq       $0x1,%xmm2,%r11
1492  DB  69,137,222                          ; mov           %r11d,%r14d
1493  DB  73,193,235,32                       ; shr           $0x20,%r11
1494  DB  196,193,249,126,215                 ; vmovq         %xmm2,%r15
1495  DB  69,137,252                          ; mov           %r15d,%r12d
1496  DB  73,193,239,32                       ; shr           $0x20,%r15
1497  DB  196,131,121,32,20,16,0              ; vpinsrb       $0x0,(%r8,%r10,1),%xmm0,%xmm2
1498  DB  196,195,105,32,20,24,1              ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm2,%xmm2
1499  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
1500  DB  196,227,105,32,211,2                ; vpinsrb       $0x2,%ebx,%xmm2,%xmm2
1501  DB  65,15,182,44,40                     ; movzbl        (%r8,%rbp,1),%ebp
1502  DB  196,227,105,32,213,3                ; vpinsrb       $0x3,%ebp,%xmm2,%xmm2
1503  DB  67,15,182,44,32                     ; movzbl        (%r8,%r12,1),%ebp
1504  DB  196,227,105,32,213,4                ; vpinsrb       $0x4,%ebp,%xmm2,%xmm2
1505  DB  67,15,182,44,56                     ; movzbl        (%r8,%r15,1),%ebp
1506  DB  196,227,105,32,213,5                ; vpinsrb       $0x5,%ebp,%xmm2,%xmm2
1507  DB  67,15,182,44,48                     ; movzbl        (%r8,%r14,1),%ebp
1508  DB  196,227,105,32,213,6                ; vpinsrb       $0x6,%ebp,%xmm2,%xmm2
1509  DB  67,15,182,44,24                     ; movzbl        (%r8,%r11,1),%ebp
1510  DB  196,227,105,32,213,7                ; vpinsrb       $0x7,%ebp,%xmm2,%xmm2
1511  DB  196,226,125,49,210                  ; vpmovzxbd     %xmm2,%ymm2
1512  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
1513  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
1514  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1515  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
1516  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
1517  DB  196,227,249,22,221,1                ; vpextrq       $0x1,%xmm3,%rbp
1518  DB  65,137,232                          ; mov           %ebp,%r8d
1519  DB  72,193,237,32                       ; shr           $0x20,%rbp
1520  DB  196,225,249,126,219                 ; vmovq         %xmm3,%rbx
1521  DB  65,137,217                          ; mov           %ebx,%r9d
1522  DB  72,193,235,32                       ; shr           $0x20,%rbx
1523  DB  196,227,125,57,219,1                ; vextracti128  $0x1,%ymm3,%xmm3
1524  DB  196,195,249,22,218,1                ; vpextrq       $0x1,%xmm3,%r10
1525  DB  69,137,211                          ; mov           %r10d,%r11d
1526  DB  73,193,234,32                       ; shr           $0x20,%r10
1527  DB  196,193,249,126,222                 ; vmovq         %xmm3,%r14
1528  DB  69,137,247                          ; mov           %r14d,%r15d
1529  DB  73,193,238,32                       ; shr           $0x20,%r14
1530  DB  196,163,121,32,28,8,0               ; vpinsrb       $0x0,(%rax,%r9,1),%xmm0,%xmm3
1531  DB  196,227,97,32,28,24,1               ; vpinsrb       $0x1,(%rax,%rbx,1),%xmm3,%xmm3
1532  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
1533  DB  196,227,97,32,219,2                 ; vpinsrb       $0x2,%ebx,%xmm3,%xmm3
1534  DB  15,182,44,40                        ; movzbl        (%rax,%rbp,1),%ebp
1535  DB  196,227,97,32,221,3                 ; vpinsrb       $0x3,%ebp,%xmm3,%xmm3
1536  DB  66,15,182,44,56                     ; movzbl        (%rax,%r15,1),%ebp
1537  DB  196,227,97,32,221,4                 ; vpinsrb       $0x4,%ebp,%xmm3,%xmm3
1538  DB  66,15,182,44,48                     ; movzbl        (%rax,%r14,1),%ebp
1539  DB  196,227,97,32,221,5                 ; vpinsrb       $0x5,%ebp,%xmm3,%xmm3
1540  DB  66,15,182,44,24                     ; movzbl        (%rax,%r11,1),%ebp
1541  DB  196,227,97,32,221,6                 ; vpinsrb       $0x6,%ebp,%xmm3,%xmm3
1542  DB  66,15,182,4,16                      ; movzbl        (%rax,%r10,1),%eax
1543  DB  196,227,97,32,216,7                 ; vpinsrb       $0x7,%eax,%xmm3,%xmm3
1544  DB  196,226,125,49,219                  ; vpmovzxbd     %xmm3,%ymm3
1545  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1546  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
1547  DB  72,173                              ; lods          %ds:(%rsi),%rax
1548  DB  91                                  ; pop           %rbx
1549  DB  65,92                               ; pop           %r12
1550  DB  65,93                               ; pop           %r13
1551  DB  65,94                               ; pop           %r14
1552  DB  65,95                               ; pop           %r15
1553  DB  93                                  ; pop           %rbp
1554  DB  255,224                             ; jmpq          *%rax
1555
1556PUBLIC _sk_byte_tables_rgb_hsw
1557_sk_byte_tables_rgb_hsw LABEL PROC
1558  DB  85                                  ; push          %rbp
1559  DB  65,87                               ; push          %r15
1560  DB  65,86                               ; push          %r14
1561  DB  65,85                               ; push          %r13
1562  DB  65,84                               ; push          %r12
1563  DB  83                                  ; push          %rbx
1564  DB  72,173                              ; lods          %ds:(%rsi),%rax
1565  DB  68,139,64,24                        ; mov           0x18(%rax),%r8d
1566  DB  65,255,200                          ; dec           %r8d
1567  DB  196,65,121,110,192                  ; vmovd         %r8d,%xmm8
1568  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
1569  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1570  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1571  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
1572  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
1573  DB  68,137,197                          ; mov           %r8d,%ebp
1574  DB  77,137,194                          ; mov           %r8,%r10
1575  DB  73,193,234,32                       ; shr           $0x20,%r10
1576  DB  196,193,249,126,192                 ; vmovq         %xmm0,%r8
1577  DB  69,137,195                          ; mov           %r8d,%r11d
1578  DB  77,137,199                          ; mov           %r8,%r15
1579  DB  73,193,239,32                       ; shr           $0x20,%r15
1580  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
1581  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
1582  DB  69,137,198                          ; mov           %r8d,%r14d
1583  DB  77,137,196                          ; mov           %r8,%r12
1584  DB  73,193,236,32                       ; shr           $0x20,%r12
1585  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
1586  DB  65,137,221                          ; mov           %ebx,%r13d
1587  DB  72,193,235,32                       ; shr           $0x20,%rbx
1588  DB  76,139,8                            ; mov           (%rax),%r9
1589  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
1590  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
1591  DB  196,131,121,32,4,57,1               ; vpinsrb       $0x1,(%r9,%r15,1),%xmm0,%xmm0
1592  DB  65,15,182,44,41                     ; movzbl        (%r9,%rbp,1),%ebp
1593  DB  196,227,121,32,197,2                ; vpinsrb       $0x2,%ebp,%xmm0,%xmm0
1594  DB  67,15,182,44,17                     ; movzbl        (%r9,%r10,1),%ebp
1595  DB  196,227,121,32,197,3                ; vpinsrb       $0x3,%ebp,%xmm0,%xmm0
1596  DB  67,15,182,44,41                     ; movzbl        (%r9,%r13,1),%ebp
1597  DB  196,227,121,32,197,4                ; vpinsrb       $0x4,%ebp,%xmm0,%xmm0
1598  DB  65,15,182,44,25                     ; movzbl        (%r9,%rbx,1),%ebp
1599  DB  196,227,121,32,197,5                ; vpinsrb       $0x5,%ebp,%xmm0,%xmm0
1600  DB  67,15,182,44,49                     ; movzbl        (%r9,%r14,1),%ebp
1601  DB  196,227,121,32,197,6                ; vpinsrb       $0x6,%ebp,%xmm0,%xmm0
1602  DB  67,15,182,44,33                     ; movzbl        (%r9,%r12,1),%ebp
1603  DB  196,227,121,32,197,7                ; vpinsrb       $0x7,%ebp,%xmm0,%xmm0
1604  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
1605  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
1606  DB  196,98,125,24,13,129,38,0,0         ; vbroadcastss  0x2681(%rip),%ymm9        # 4018 <_sk_callback_hsw+0x22b>
1607  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
1608  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1609  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
1610  DB  196,227,249,22,205,1                ; vpextrq       $0x1,%xmm1,%rbp
1611  DB  65,137,233                          ; mov           %ebp,%r9d
1612  DB  72,193,237,32                       ; shr           $0x20,%rbp
1613  DB  196,225,249,126,203                 ; vmovq         %xmm1,%rbx
1614  DB  65,137,218                          ; mov           %ebx,%r10d
1615  DB  72,193,235,32                       ; shr           $0x20,%rbx
1616  DB  196,227,125,57,201,1                ; vextracti128  $0x1,%ymm1,%xmm1
1617  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
1618  DB  69,137,222                          ; mov           %r11d,%r14d
1619  DB  73,193,235,32                       ; shr           $0x20,%r11
1620  DB  196,193,249,126,207                 ; vmovq         %xmm1,%r15
1621  DB  69,137,252                          ; mov           %r15d,%r12d
1622  DB  73,193,239,32                       ; shr           $0x20,%r15
1623  DB  196,131,121,32,12,16,0              ; vpinsrb       $0x0,(%r8,%r10,1),%xmm0,%xmm1
1624  DB  196,195,113,32,12,24,1              ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm1,%xmm1
1625  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
1626  DB  196,227,113,32,203,2                ; vpinsrb       $0x2,%ebx,%xmm1,%xmm1
1627  DB  65,15,182,44,40                     ; movzbl        (%r8,%rbp,1),%ebp
1628  DB  196,227,113,32,205,3                ; vpinsrb       $0x3,%ebp,%xmm1,%xmm1
1629  DB  67,15,182,44,32                     ; movzbl        (%r8,%r12,1),%ebp
1630  DB  196,227,113,32,205,4                ; vpinsrb       $0x4,%ebp,%xmm1,%xmm1
1631  DB  67,15,182,44,56                     ; movzbl        (%r8,%r15,1),%ebp
1632  DB  196,227,113,32,205,5                ; vpinsrb       $0x5,%ebp,%xmm1,%xmm1
1633  DB  67,15,182,44,48                     ; movzbl        (%r8,%r14,1),%ebp
1634  DB  196,227,113,32,205,6                ; vpinsrb       $0x6,%ebp,%xmm1,%xmm1
1635  DB  67,15,182,44,24                     ; movzbl        (%r8,%r11,1),%ebp
1636  DB  196,227,113,32,205,7                ; vpinsrb       $0x7,%ebp,%xmm1,%xmm1
1637  DB  196,226,125,49,201                  ; vpmovzxbd     %xmm1,%ymm1
1638  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
1639  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
1640  DB  72,139,64,16                        ; mov           0x10(%rax),%rax
1641  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1642  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
1643  DB  196,227,249,22,213,1                ; vpextrq       $0x1,%xmm2,%rbp
1644  DB  65,137,232                          ; mov           %ebp,%r8d
1645  DB  72,193,237,32                       ; shr           $0x20,%rbp
1646  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
1647  DB  65,137,217                          ; mov           %ebx,%r9d
1648  DB  72,193,235,32                       ; shr           $0x20,%rbx
1649  DB  196,227,125,57,210,1                ; vextracti128  $0x1,%ymm2,%xmm2
1650  DB  196,195,249,22,210,1                ; vpextrq       $0x1,%xmm2,%r10
1651  DB  69,137,211                          ; mov           %r10d,%r11d
1652  DB  73,193,234,32                       ; shr           $0x20,%r10
1653  DB  196,193,249,126,214                 ; vmovq         %xmm2,%r14
1654  DB  69,137,247                          ; mov           %r14d,%r15d
1655  DB  73,193,238,32                       ; shr           $0x20,%r14
1656  DB  196,163,121,32,20,8,0               ; vpinsrb       $0x0,(%rax,%r9,1),%xmm0,%xmm2
1657  DB  196,227,105,32,20,24,1              ; vpinsrb       $0x1,(%rax,%rbx,1),%xmm2,%xmm2
1658  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
1659  DB  196,227,105,32,211,2                ; vpinsrb       $0x2,%ebx,%xmm2,%xmm2
1660  DB  15,182,44,40                        ; movzbl        (%rax,%rbp,1),%ebp
1661  DB  196,227,105,32,213,3                ; vpinsrb       $0x3,%ebp,%xmm2,%xmm2
1662  DB  66,15,182,44,56                     ; movzbl        (%rax,%r15,1),%ebp
1663  DB  196,227,105,32,213,4                ; vpinsrb       $0x4,%ebp,%xmm2,%xmm2
1664  DB  66,15,182,44,48                     ; movzbl        (%rax,%r14,1),%ebp
1665  DB  196,227,105,32,213,5                ; vpinsrb       $0x5,%ebp,%xmm2,%xmm2
1666  DB  66,15,182,44,24                     ; movzbl        (%rax,%r11,1),%ebp
1667  DB  196,227,105,32,213,6                ; vpinsrb       $0x6,%ebp,%xmm2,%xmm2
1668  DB  66,15,182,4,16                      ; movzbl        (%rax,%r10,1),%eax
1669  DB  196,227,105,32,208,7                ; vpinsrb       $0x7,%eax,%xmm2,%xmm2
1670  DB  196,226,125,49,210                  ; vpmovzxbd     %xmm2,%ymm2
1671  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
1672  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
1673  DB  72,173                              ; lods          %ds:(%rsi),%rax
1674  DB  91                                  ; pop           %rbx
1675  DB  65,92                               ; pop           %r12
1676  DB  65,93                               ; pop           %r13
1677  DB  65,94                               ; pop           %r14
1678  DB  65,95                               ; pop           %r15
1679  DB  93                                  ; pop           %rbp
1680  DB  255,224                             ; jmpq          *%rax
1681
1682PUBLIC _sk_table_r_hsw
1683_sk_table_r_hsw LABEL PROC
1684  DB  72,173                              ; lods          %ds:(%rsi),%rax
1685  DB  76,139,0                            ; mov           (%rax),%r8
1686  DB  139,64,8                            ; mov           0x8(%rax),%eax
1687  DB  255,200                             ; dec           %eax
1688  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
1689  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
1690  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1691  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1692  DB  197,125,91,192                      ; vcvtps2dq     %ymm0,%ymm8
1693  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1694  DB  196,130,53,146,4,128                ; vgatherdps    %ymm9,(%r8,%ymm8,4),%ymm0
1695  DB  72,173                              ; lods          %ds:(%rsi),%rax
1696  DB  255,224                             ; jmpq          *%rax
1697
1698PUBLIC _sk_table_g_hsw
1699_sk_table_g_hsw LABEL PROC
1700  DB  72,173                              ; lods          %ds:(%rsi),%rax
1701  DB  76,139,0                            ; mov           (%rax),%r8
1702  DB  139,64,8                            ; mov           0x8(%rax),%eax
1703  DB  255,200                             ; dec           %eax
1704  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
1705  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
1706  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1707  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1708  DB  197,125,91,193                      ; vcvtps2dq     %ymm1,%ymm8
1709  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1710  DB  196,130,53,146,12,128               ; vgatherdps    %ymm9,(%r8,%ymm8,4),%ymm1
1711  DB  72,173                              ; lods          %ds:(%rsi),%rax
1712  DB  255,224                             ; jmpq          *%rax
1713
1714PUBLIC _sk_table_b_hsw
1715_sk_table_b_hsw LABEL PROC
1716  DB  72,173                              ; lods          %ds:(%rsi),%rax
1717  DB  76,139,0                            ; mov           (%rax),%r8
1718  DB  139,64,8                            ; mov           0x8(%rax),%eax
1719  DB  255,200                             ; dec           %eax
1720  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
1721  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
1722  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1723  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1724  DB  197,125,91,194                      ; vcvtps2dq     %ymm2,%ymm8
1725  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1726  DB  196,130,53,146,20,128               ; vgatherdps    %ymm9,(%r8,%ymm8,4),%ymm2
1727  DB  72,173                              ; lods          %ds:(%rsi),%rax
1728  DB  255,224                             ; jmpq          *%rax
1729
1730PUBLIC _sk_table_a_hsw
1731_sk_table_a_hsw LABEL PROC
1732  DB  72,173                              ; lods          %ds:(%rsi),%rax
1733  DB  76,139,0                            ; mov           (%rax),%r8
1734  DB  139,64,8                            ; mov           0x8(%rax),%eax
1735  DB  255,200                             ; dec           %eax
1736  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
1737  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
1738  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1739  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
1740  DB  197,125,91,195                      ; vcvtps2dq     %ymm3,%ymm8
1741  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1742  DB  196,130,53,146,28,128               ; vgatherdps    %ymm9,(%r8,%ymm8,4),%ymm3
1743  DB  72,173                              ; lods          %ds:(%rsi),%rax
1744  DB  255,224                             ; jmpq          *%rax
1745
1746PUBLIC _sk_parametric_r_hsw
1747_sk_parametric_r_hsw LABEL PROC
1748  DB  72,173                              ; lods          %ds:(%rsi),%rax
1749  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
1750  DB  196,65,124,194,192,2                ; vcmpleps      %ymm8,%ymm0,%ymm8
1751  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
1752  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
1753  DB  196,66,125,168,202                  ; vfmadd213ps   %ymm10,%ymm0,%ymm9
1754  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
1755  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
1756  DB  196,66,125,168,211                  ; vfmadd213ps   %ymm11,%ymm0,%ymm10
1757  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
1758  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
1759  DB  196,98,125,24,37,52,36,0,0          ; vbroadcastss  0x2434(%rip),%ymm12        # 401c <_sk_callback_hsw+0x22f>
1760  DB  196,98,125,24,45,47,36,0,0          ; vbroadcastss  0x242f(%rip),%ymm13        # 4020 <_sk_callback_hsw+0x233>
1761  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
1762  DB  196,98,125,24,45,37,36,0,0          ; vbroadcastss  0x2425(%rip),%ymm13        # 4024 <_sk_callback_hsw+0x237>
1763  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
1764  DB  196,98,125,24,45,27,36,0,0          ; vbroadcastss  0x241b(%rip),%ymm13        # 4028 <_sk_callback_hsw+0x23b>
1765  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
1766  DB  196,98,125,24,29,17,36,0,0          ; vbroadcastss  0x2411(%rip),%ymm11        # 402c <_sk_callback_hsw+0x23f>
1767  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
1768  DB  196,98,125,24,37,7,36,0,0           ; vbroadcastss  0x2407(%rip),%ymm12        # 4030 <_sk_callback_hsw+0x243>
1769  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
1770  DB  196,98,125,24,37,253,35,0,0         ; vbroadcastss  0x23fd(%rip),%ymm12        # 4034 <_sk_callback_hsw+0x247>
1771  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
1772  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
1773  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
1774  DB  196,99,125,8,208,1                  ; vroundps      $0x1,%ymm0,%ymm10
1775  DB  196,65,124,92,210                   ; vsubps        %ymm10,%ymm0,%ymm10
1776  DB  196,98,125,24,29,222,35,0,0         ; vbroadcastss  0x23de(%rip),%ymm11        # 4038 <_sk_callback_hsw+0x24b>
1777  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
1778  DB  196,98,125,24,29,212,35,0,0         ; vbroadcastss  0x23d4(%rip),%ymm11        # 403c <_sk_callback_hsw+0x24f>
1779  DB  196,98,45,172,216                   ; vfnmadd213ps  %ymm0,%ymm10,%ymm11
1780  DB  196,226,125,24,5,202,35,0,0         ; vbroadcastss  0x23ca(%rip),%ymm0        # 4040 <_sk_callback_hsw+0x253>
1781  DB  196,193,124,92,194                  ; vsubps        %ymm10,%ymm0,%ymm0
1782  DB  196,98,125,24,21,192,35,0,0         ; vbroadcastss  0x23c0(%rip),%ymm10        # 4044 <_sk_callback_hsw+0x257>
1783  DB  197,172,94,192                      ; vdivps        %ymm0,%ymm10,%ymm0
1784  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
1785  DB  196,98,125,24,21,179,35,0,0         ; vbroadcastss  0x23b3(%rip),%ymm10        # 4048 <_sk_callback_hsw+0x25b>
1786  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
1787  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
1788  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
1789  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
1790  DB  196,195,125,74,193,128              ; vblendvps     %ymm8,%ymm9,%ymm0,%ymm0
1791  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
1792  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
1793  DB  196,98,125,24,5,138,35,0,0          ; vbroadcastss  0x238a(%rip),%ymm8        # 404c <_sk_callback_hsw+0x25f>
1794  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
1795  DB  72,173                              ; lods          %ds:(%rsi),%rax
1796  DB  255,224                             ; jmpq          *%rax
1797
1798PUBLIC _sk_parametric_g_hsw
1799_sk_parametric_g_hsw LABEL PROC
1800  DB  72,173                              ; lods          %ds:(%rsi),%rax
1801  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
1802  DB  196,65,116,194,192,2                ; vcmpleps      %ymm8,%ymm1,%ymm8
1803  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
1804  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
1805  DB  196,66,117,168,202                  ; vfmadd213ps   %ymm10,%ymm1,%ymm9
1806  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
1807  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
1808  DB  196,66,117,168,211                  ; vfmadd213ps   %ymm11,%ymm1,%ymm10
1809  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
1810  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
1811  DB  196,98,125,24,37,66,35,0,0          ; vbroadcastss  0x2342(%rip),%ymm12        # 4050 <_sk_callback_hsw+0x263>
1812  DB  196,98,125,24,45,61,35,0,0          ; vbroadcastss  0x233d(%rip),%ymm13        # 4054 <_sk_callback_hsw+0x267>
1813  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
1814  DB  196,98,125,24,45,51,35,0,0          ; vbroadcastss  0x2333(%rip),%ymm13        # 4058 <_sk_callback_hsw+0x26b>
1815  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
1816  DB  196,98,125,24,45,41,35,0,0          ; vbroadcastss  0x2329(%rip),%ymm13        # 405c <_sk_callback_hsw+0x26f>
1817  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
1818  DB  196,98,125,24,29,31,35,0,0          ; vbroadcastss  0x231f(%rip),%ymm11        # 4060 <_sk_callback_hsw+0x273>
1819  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
1820  DB  196,98,125,24,37,21,35,0,0          ; vbroadcastss  0x2315(%rip),%ymm12        # 4064 <_sk_callback_hsw+0x277>
1821  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
1822  DB  196,98,125,24,37,11,35,0,0          ; vbroadcastss  0x230b(%rip),%ymm12        # 4068 <_sk_callback_hsw+0x27b>
1823  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
1824  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
1825  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
1826  DB  196,99,125,8,209,1                  ; vroundps      $0x1,%ymm1,%ymm10
1827  DB  196,65,116,92,210                   ; vsubps        %ymm10,%ymm1,%ymm10
1828  DB  196,98,125,24,29,236,34,0,0         ; vbroadcastss  0x22ec(%rip),%ymm11        # 406c <_sk_callback_hsw+0x27f>
1829  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
1830  DB  196,98,125,24,29,226,34,0,0         ; vbroadcastss  0x22e2(%rip),%ymm11        # 4070 <_sk_callback_hsw+0x283>
1831  DB  196,98,45,172,217                   ; vfnmadd213ps  %ymm1,%ymm10,%ymm11
1832  DB  196,226,125,24,13,216,34,0,0        ; vbroadcastss  0x22d8(%rip),%ymm1        # 4074 <_sk_callback_hsw+0x287>
1833  DB  196,193,116,92,202                  ; vsubps        %ymm10,%ymm1,%ymm1
1834  DB  196,98,125,24,21,206,34,0,0         ; vbroadcastss  0x22ce(%rip),%ymm10        # 4078 <_sk_callback_hsw+0x28b>
1835  DB  197,172,94,201                      ; vdivps        %ymm1,%ymm10,%ymm1
1836  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
1837  DB  196,98,125,24,21,193,34,0,0         ; vbroadcastss  0x22c1(%rip),%ymm10        # 407c <_sk_callback_hsw+0x28f>
1838  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
1839  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
1840  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
1841  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
1842  DB  196,195,117,74,201,128              ; vblendvps     %ymm8,%ymm9,%ymm1,%ymm1
1843  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
1844  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
1845  DB  196,98,125,24,5,152,34,0,0          ; vbroadcastss  0x2298(%rip),%ymm8        # 4080 <_sk_callback_hsw+0x293>
1846  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
1847  DB  72,173                              ; lods          %ds:(%rsi),%rax
1848  DB  255,224                             ; jmpq          *%rax
1849
1850PUBLIC _sk_parametric_b_hsw
1851_sk_parametric_b_hsw LABEL PROC
1852  DB  72,173                              ; lods          %ds:(%rsi),%rax
1853  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
1854  DB  196,65,108,194,192,2                ; vcmpleps      %ymm8,%ymm2,%ymm8
1855  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
1856  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
1857  DB  196,66,109,168,202                  ; vfmadd213ps   %ymm10,%ymm2,%ymm9
1858  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
1859  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
1860  DB  196,66,109,168,211                  ; vfmadd213ps   %ymm11,%ymm2,%ymm10
1861  DB  196,226,125,24,16                   ; vbroadcastss  (%rax),%ymm2
1862  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
1863  DB  196,98,125,24,37,80,34,0,0          ; vbroadcastss  0x2250(%rip),%ymm12        # 4084 <_sk_callback_hsw+0x297>
1864  DB  196,98,125,24,45,75,34,0,0          ; vbroadcastss  0x224b(%rip),%ymm13        # 4088 <_sk_callback_hsw+0x29b>
1865  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
1866  DB  196,98,125,24,45,65,34,0,0          ; vbroadcastss  0x2241(%rip),%ymm13        # 408c <_sk_callback_hsw+0x29f>
1867  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
1868  DB  196,98,125,24,45,55,34,0,0          ; vbroadcastss  0x2237(%rip),%ymm13        # 4090 <_sk_callback_hsw+0x2a3>
1869  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
1870  DB  196,98,125,24,29,45,34,0,0          ; vbroadcastss  0x222d(%rip),%ymm11        # 4094 <_sk_callback_hsw+0x2a7>
1871  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
1872  DB  196,98,125,24,37,35,34,0,0          ; vbroadcastss  0x2223(%rip),%ymm12        # 4098 <_sk_callback_hsw+0x2ab>
1873  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
1874  DB  196,98,125,24,37,25,34,0,0          ; vbroadcastss  0x2219(%rip),%ymm12        # 409c <_sk_callback_hsw+0x2af>
1875  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
1876  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
1877  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
1878  DB  196,99,125,8,210,1                  ; vroundps      $0x1,%ymm2,%ymm10
1879  DB  196,65,108,92,210                   ; vsubps        %ymm10,%ymm2,%ymm10
1880  DB  196,98,125,24,29,250,33,0,0         ; vbroadcastss  0x21fa(%rip),%ymm11        # 40a0 <_sk_callback_hsw+0x2b3>
1881  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
1882  DB  196,98,125,24,29,240,33,0,0         ; vbroadcastss  0x21f0(%rip),%ymm11        # 40a4 <_sk_callback_hsw+0x2b7>
1883  DB  196,98,45,172,218                   ; vfnmadd213ps  %ymm2,%ymm10,%ymm11
1884  DB  196,226,125,24,21,230,33,0,0        ; vbroadcastss  0x21e6(%rip),%ymm2        # 40a8 <_sk_callback_hsw+0x2bb>
1885  DB  196,193,108,92,210                  ; vsubps        %ymm10,%ymm2,%ymm2
1886  DB  196,98,125,24,21,220,33,0,0         ; vbroadcastss  0x21dc(%rip),%ymm10        # 40ac <_sk_callback_hsw+0x2bf>
1887  DB  197,172,94,210                      ; vdivps        %ymm2,%ymm10,%ymm2
1888  DB  197,164,88,210                      ; vaddps        %ymm2,%ymm11,%ymm2
1889  DB  196,98,125,24,21,207,33,0,0         ; vbroadcastss  0x21cf(%rip),%ymm10        # 40b0 <_sk_callback_hsw+0x2c3>
1890  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
1891  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
1892  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
1893  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
1894  DB  196,195,109,74,209,128              ; vblendvps     %ymm8,%ymm9,%ymm2,%ymm2
1895  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
1896  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
1897  DB  196,98,125,24,5,166,33,0,0          ; vbroadcastss  0x21a6(%rip),%ymm8        # 40b4 <_sk_callback_hsw+0x2c7>
1898  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
1899  DB  72,173                              ; lods          %ds:(%rsi),%rax
1900  DB  255,224                             ; jmpq          *%rax
1901
1902PUBLIC _sk_parametric_a_hsw
1903_sk_parametric_a_hsw LABEL PROC
1904  DB  72,173                              ; lods          %ds:(%rsi),%rax
1905  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
1906  DB  196,65,100,194,192,2                ; vcmpleps      %ymm8,%ymm3,%ymm8
1907  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
1908  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
1909  DB  196,66,101,168,202                  ; vfmadd213ps   %ymm10,%ymm3,%ymm9
1910  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
1911  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
1912  DB  196,66,101,168,211                  ; vfmadd213ps   %ymm11,%ymm3,%ymm10
1913  DB  196,226,125,24,24                   ; vbroadcastss  (%rax),%ymm3
1914  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
1915  DB  196,98,125,24,37,94,33,0,0          ; vbroadcastss  0x215e(%rip),%ymm12        # 40b8 <_sk_callback_hsw+0x2cb>
1916  DB  196,98,125,24,45,89,33,0,0          ; vbroadcastss  0x2159(%rip),%ymm13        # 40bc <_sk_callback_hsw+0x2cf>
1917  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
1918  DB  196,98,125,24,45,79,33,0,0          ; vbroadcastss  0x214f(%rip),%ymm13        # 40c0 <_sk_callback_hsw+0x2d3>
1919  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
1920  DB  196,98,125,24,45,69,33,0,0          ; vbroadcastss  0x2145(%rip),%ymm13        # 40c4 <_sk_callback_hsw+0x2d7>
1921  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
1922  DB  196,98,125,24,29,59,33,0,0          ; vbroadcastss  0x213b(%rip),%ymm11        # 40c8 <_sk_callback_hsw+0x2db>
1923  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
1924  DB  196,98,125,24,37,49,33,0,0          ; vbroadcastss  0x2131(%rip),%ymm12        # 40cc <_sk_callback_hsw+0x2df>
1925  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
1926  DB  196,98,125,24,37,39,33,0,0          ; vbroadcastss  0x2127(%rip),%ymm12        # 40d0 <_sk_callback_hsw+0x2e3>
1927  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
1928  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
1929  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
1930  DB  196,99,125,8,211,1                  ; vroundps      $0x1,%ymm3,%ymm10
1931  DB  196,65,100,92,210                   ; vsubps        %ymm10,%ymm3,%ymm10
1932  DB  196,98,125,24,29,8,33,0,0           ; vbroadcastss  0x2108(%rip),%ymm11        # 40d4 <_sk_callback_hsw+0x2e7>
1933  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
1934  DB  196,98,125,24,29,254,32,0,0         ; vbroadcastss  0x20fe(%rip),%ymm11        # 40d8 <_sk_callback_hsw+0x2eb>
1935  DB  196,98,45,172,219                   ; vfnmadd213ps  %ymm3,%ymm10,%ymm11
1936  DB  196,226,125,24,29,244,32,0,0        ; vbroadcastss  0x20f4(%rip),%ymm3        # 40dc <_sk_callback_hsw+0x2ef>
1937  DB  196,193,100,92,218                  ; vsubps        %ymm10,%ymm3,%ymm3
1938  DB  196,98,125,24,21,234,32,0,0         ; vbroadcastss  0x20ea(%rip),%ymm10        # 40e0 <_sk_callback_hsw+0x2f3>
1939  DB  197,172,94,219                      ; vdivps        %ymm3,%ymm10,%ymm3
1940  DB  197,164,88,219                      ; vaddps        %ymm3,%ymm11,%ymm3
1941  DB  196,98,125,24,21,221,32,0,0         ; vbroadcastss  0x20dd(%rip),%ymm10        # 40e4 <_sk_callback_hsw+0x2f7>
1942  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
1943  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
1944  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
1945  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
1946  DB  196,195,101,74,217,128              ; vblendvps     %ymm8,%ymm9,%ymm3,%ymm3
1947  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
1948  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
1949  DB  196,98,125,24,5,180,32,0,0          ; vbroadcastss  0x20b4(%rip),%ymm8        # 40e8 <_sk_callback_hsw+0x2fb>
1950  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
1951  DB  72,173                              ; lods          %ds:(%rsi),%rax
1952  DB  255,224                             ; jmpq          *%rax
1953
1954PUBLIC _sk_lab_to_xyz_hsw
1955_sk_lab_to_xyz_hsw LABEL PROC
1956  DB  196,98,125,24,5,166,32,0,0          ; vbroadcastss  0x20a6(%rip),%ymm8        # 40ec <_sk_callback_hsw+0x2ff>
1957  DB  196,98,125,24,13,161,32,0,0         ; vbroadcastss  0x20a1(%rip),%ymm9        # 40f0 <_sk_callback_hsw+0x303>
1958  DB  196,98,125,24,21,156,32,0,0         ; vbroadcastss  0x209c(%rip),%ymm10        # 40f4 <_sk_callback_hsw+0x307>
1959  DB  196,194,53,168,202                  ; vfmadd213ps   %ymm10,%ymm9,%ymm1
1960  DB  196,194,53,168,210                  ; vfmadd213ps   %ymm10,%ymm9,%ymm2
1961  DB  196,98,125,24,13,141,32,0,0         ; vbroadcastss  0x208d(%rip),%ymm9        # 40f8 <_sk_callback_hsw+0x30b>
1962  DB  196,66,125,184,200                  ; vfmadd231ps   %ymm8,%ymm0,%ymm9
1963  DB  196,226,125,24,5,131,32,0,0         ; vbroadcastss  0x2083(%rip),%ymm0        # 40fc <_sk_callback_hsw+0x30f>
1964  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
1965  DB  196,98,125,24,5,122,32,0,0          ; vbroadcastss  0x207a(%rip),%ymm8        # 4100 <_sk_callback_hsw+0x313>
1966  DB  196,98,117,168,192                  ; vfmadd213ps   %ymm0,%ymm1,%ymm8
1967  DB  196,98,125,24,13,112,32,0,0         ; vbroadcastss  0x2070(%rip),%ymm9        # 4104 <_sk_callback_hsw+0x317>
1968  DB  196,98,109,172,200                  ; vfnmadd213ps  %ymm0,%ymm2,%ymm9
1969  DB  196,193,60,89,200                   ; vmulps        %ymm8,%ymm8,%ymm1
1970  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1971  DB  196,226,125,24,21,93,32,0,0         ; vbroadcastss  0x205d(%rip),%ymm2        # 4108 <_sk_callback_hsw+0x31b>
1972  DB  197,108,194,209,1                   ; vcmpltps      %ymm1,%ymm2,%ymm10
1973  DB  196,98,125,24,29,83,32,0,0          ; vbroadcastss  0x2053(%rip),%ymm11        # 410c <_sk_callback_hsw+0x31f>
1974  DB  196,65,60,88,195                    ; vaddps        %ymm11,%ymm8,%ymm8
1975  DB  196,98,125,24,37,73,32,0,0          ; vbroadcastss  0x2049(%rip),%ymm12        # 4110 <_sk_callback_hsw+0x323>
1976  DB  196,65,60,89,196                    ; vmulps        %ymm12,%ymm8,%ymm8
1977  DB  196,99,61,74,193,160                ; vblendvps     %ymm10,%ymm1,%ymm8,%ymm8
1978  DB  197,252,89,200                      ; vmulps        %ymm0,%ymm0,%ymm1
1979  DB  197,252,89,201                      ; vmulps        %ymm1,%ymm0,%ymm1
1980  DB  197,108,194,209,1                   ; vcmpltps      %ymm1,%ymm2,%ymm10
1981  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
1982  DB  196,193,124,89,196                  ; vmulps        %ymm12,%ymm0,%ymm0
1983  DB  196,227,125,74,201,160              ; vblendvps     %ymm10,%ymm1,%ymm0,%ymm1
1984  DB  196,193,52,89,193                   ; vmulps        %ymm9,%ymm9,%ymm0
1985  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
1986  DB  197,236,194,208,1                   ; vcmpltps      %ymm0,%ymm2,%ymm2
1987  DB  196,65,52,88,203                    ; vaddps        %ymm11,%ymm9,%ymm9
1988  DB  196,65,52,89,204                    ; vmulps        %ymm12,%ymm9,%ymm9
1989  DB  196,227,53,74,208,32                ; vblendvps     %ymm2,%ymm0,%ymm9,%ymm2
1990  DB  196,226,125,24,5,254,31,0,0         ; vbroadcastss  0x1ffe(%rip),%ymm0        # 4114 <_sk_callback_hsw+0x327>
1991  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1992  DB  196,98,125,24,5,245,31,0,0          ; vbroadcastss  0x1ff5(%rip),%ymm8        # 4118 <_sk_callback_hsw+0x32b>
1993  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
1994  DB  72,173                              ; lods          %ds:(%rsi),%rax
1995  DB  255,224                             ; jmpq          *%rax
1996
1997PUBLIC _sk_load_a8_hsw
1998_sk_load_a8_hsw LABEL PROC
1999  DB  73,137,200                          ; mov           %rcx,%r8
2000  DB  72,173                              ; lods          %ds:(%rsi),%rax
2001  DB  72,139,0                            ; mov           (%rax),%rax
2002  DB  72,1,248                            ; add           %rdi,%rax
2003  DB  77,133,192                          ; test          %r8,%r8
2004  DB  117,45                              ; jne           2169 <_sk_load_a8_hsw+0x3d>
2005  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
2006  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2007  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2008  DB  196,226,125,24,13,202,31,0,0        ; vbroadcastss  0x1fca(%rip),%ymm1        # 411c <_sk_callback_hsw+0x32f>
2009  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
2010  DB  72,173                              ; lods          %ds:(%rsi),%rax
2011  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
2012  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
2013  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
2014  DB  76,137,193                          ; mov           %r8,%rcx
2015  DB  255,224                             ; jmpq          *%rax
2016  DB  49,201                              ; xor           %ecx,%ecx
2017  DB  77,137,194                          ; mov           %r8,%r10
2018  DB  69,49,201                           ; xor           %r9d,%r9d
2019  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
2020  DB  72,255,192                          ; inc           %rax
2021  DB  73,211,227                          ; shl           %cl,%r11
2022  DB  77,9,217                            ; or            %r11,%r9
2023  DB  72,131,193,8                        ; add           $0x8,%rcx
2024  DB  73,255,202                          ; dec           %r10
2025  DB  117,234                             ; jne           2171 <_sk_load_a8_hsw+0x45>
2026  DB  196,193,249,110,193                 ; vmovq         %r9,%xmm0
2027  DB  235,178                             ; jmp           2140 <_sk_load_a8_hsw+0x14>
2028
2029PUBLIC _sk_gather_a8_hsw
2030_sk_gather_a8_hsw LABEL PROC
2031  DB  65,87                               ; push          %r15
2032  DB  65,86                               ; push          %r14
2033  DB  65,84                               ; push          %r12
2034  DB  83                                  ; push          %rbx
2035  DB  72,173                              ; lods          %ds:(%rsi),%rax
2036  DB  76,139,0                            ; mov           (%rax),%r8
2037  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2038  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2039  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2040  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2041  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2042  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2043  DB  65,137,193                          ; mov           %eax,%r9d
2044  DB  72,193,232,32                       ; shr           $0x20,%rax
2045  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2046  DB  69,137,211                          ; mov           %r10d,%r11d
2047  DB  73,193,234,32                       ; shr           $0x20,%r10
2048  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2049  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2050  DB  65,137,222                          ; mov           %ebx,%r14d
2051  DB  72,193,235,32                       ; shr           $0x20,%rbx
2052  DB  196,193,249,126,199                 ; vmovq         %xmm0,%r15
2053  DB  69,137,252                          ; mov           %r15d,%r12d
2054  DB  73,193,239,32                       ; shr           $0x20,%r15
2055  DB  196,131,121,32,4,24,0               ; vpinsrb       $0x0,(%r8,%r11,1),%xmm0,%xmm0
2056  DB  196,131,121,32,4,16,1               ; vpinsrb       $0x1,(%r8,%r10,1),%xmm0,%xmm0
2057  DB  71,15,182,12,8                      ; movzbl        (%r8,%r9,1),%r9d
2058  DB  196,195,121,32,193,2                ; vpinsrb       $0x2,%r9d,%xmm0,%xmm0
2059  DB  65,15,182,4,0                       ; movzbl        (%r8,%rax,1),%eax
2060  DB  196,227,121,32,192,3                ; vpinsrb       $0x3,%eax,%xmm0,%xmm0
2061  DB  67,15,182,4,32                      ; movzbl        (%r8,%r12,1),%eax
2062  DB  196,227,121,32,192,4                ; vpinsrb       $0x4,%eax,%xmm0,%xmm0
2063  DB  67,15,182,4,56                      ; movzbl        (%r8,%r15,1),%eax
2064  DB  196,227,121,32,192,5                ; vpinsrb       $0x5,%eax,%xmm0,%xmm0
2065  DB  67,15,182,4,48                      ; movzbl        (%r8,%r14,1),%eax
2066  DB  196,227,121,32,192,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm0
2067  DB  65,15,182,4,24                      ; movzbl        (%r8,%rbx,1),%eax
2068  DB  196,227,121,32,192,7                ; vpinsrb       $0x7,%eax,%xmm0,%xmm0
2069  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2070  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2071  DB  196,226,125,24,13,213,30,0,0        ; vbroadcastss  0x1ed5(%rip),%ymm1        # 4120 <_sk_callback_hsw+0x333>
2072  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
2073  DB  72,173                              ; lods          %ds:(%rsi),%rax
2074  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
2075  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
2076  DB  197,237,239,210                     ; vpxor         %ymm2,%ymm2,%ymm2
2077  DB  91                                  ; pop           %rbx
2078  DB  65,92                               ; pop           %r12
2079  DB  65,94                               ; pop           %r14
2080  DB  65,95                               ; pop           %r15
2081  DB  255,224                             ; jmpq          *%rax
2082
2083PUBLIC _sk_store_a8_hsw
2084_sk_store_a8_hsw LABEL PROC
2085  DB  72,173                              ; lods          %ds:(%rsi),%rax
2086  DB  76,139,16                           ; mov           (%rax),%r10
2087  DB  196,98,125,24,5,176,30,0,0          ; vbroadcastss  0x1eb0(%rip),%ymm8        # 4124 <_sk_callback_hsw+0x337>
2088  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
2089  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
2090  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
2091  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
2092  DB  196,65,57,103,192                   ; vpackuswb     %xmm8,%xmm8,%xmm8
2093  DB  72,133,201                          ; test          %rcx,%rcx
2094  DB  117,10                              ; jne           229d <_sk_store_a8_hsw+0x37>
2095  DB  196,65,123,17,4,58                  ; vmovsd        %xmm8,(%r10,%rdi,1)
2096  DB  72,173                              ; lods          %ds:(%rsi),%rax
2097  DB  255,224                             ; jmpq          *%rax
2098  DB  65,137,200                          ; mov           %ecx,%r8d
2099  DB  65,128,224,7                        ; and           $0x7,%r8b
2100  DB  65,254,200                          ; dec           %r8b
2101  DB  65,128,248,6                        ; cmp           $0x6,%r8b
2102  DB  119,236                             ; ja            2299 <_sk_store_a8_hsw+0x33>
2103  DB  196,66,121,48,192                   ; vpmovzxbw     %xmm8,%xmm8
2104  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
2105  DB  76,141,13,67,0,0,0                  ; lea           0x43(%rip),%r9        # 2300 <_sk_store_a8_hsw+0x9a>
2106  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
2107  DB  76,1,200                            ; add           %r9,%rax
2108  DB  255,224                             ; jmpq          *%rax
2109  DB  196,67,121,20,68,58,6,12            ; vpextrb       $0xc,%xmm8,0x6(%r10,%rdi,1)
2110  DB  196,67,121,20,68,58,5,10            ; vpextrb       $0xa,%xmm8,0x5(%r10,%rdi,1)
2111  DB  196,67,121,20,68,58,4,8             ; vpextrb       $0x8,%xmm8,0x4(%r10,%rdi,1)
2112  DB  196,67,121,20,68,58,3,6             ; vpextrb       $0x6,%xmm8,0x3(%r10,%rdi,1)
2113  DB  196,67,121,20,68,58,2,4             ; vpextrb       $0x4,%xmm8,0x2(%r10,%rdi,1)
2114  DB  196,67,121,20,68,58,1,2             ; vpextrb       $0x2,%xmm8,0x1(%r10,%rdi,1)
2115  DB  196,67,121,20,4,58,0                ; vpextrb       $0x0,%xmm8,(%r10,%rdi,1)
2116  DB  235,154                             ; jmp           2299 <_sk_store_a8_hsw+0x33>
2117  DB  144                                 ; nop
2118  DB  246,255                             ; idiv          %bh
2119  DB  255                                 ; (bad)
2120  DB  255                                 ; (bad)
2121  DB  238                                 ; out           %al,(%dx)
2122  DB  255                                 ; (bad)
2123  DB  255                                 ; (bad)
2124  DB  255,230                             ; jmpq          *%rsi
2125  DB  255                                 ; (bad)
2126  DB  255                                 ; (bad)
2127  DB  255                                 ; (bad)
2128  DB  222,255                             ; fdivrp        %st,%st(7)
2129  DB  255                                 ; (bad)
2130  DB  255,214                             ; callq         *%rsi
2131  DB  255                                 ; (bad)
2132  DB  255                                 ; (bad)
2133  DB  255,206                             ; dec           %esi
2134  DB  255                                 ; (bad)
2135  DB  255                                 ; (bad)
2136  DB  255,198                             ; inc           %esi
2137  DB  255                                 ; (bad)
2138  DB  255                                 ; (bad)
2139  DB  255                                 ; .byte         0xff
2140
2141PUBLIC _sk_load_g8_hsw
2142_sk_load_g8_hsw LABEL PROC
2143  DB  73,137,200                          ; mov           %rcx,%r8
2144  DB  72,173                              ; lods          %ds:(%rsi),%rax
2145  DB  72,139,0                            ; mov           (%rax),%rax
2146  DB  72,1,248                            ; add           %rdi,%rax
2147  DB  77,133,192                          ; test          %r8,%r8
2148  DB  117,50                              ; jne           235e <_sk_load_g8_hsw+0x42>
2149  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
2150  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2151  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2152  DB  196,226,125,24,13,230,29,0,0        ; vbroadcastss  0x1de6(%rip),%ymm1        # 4128 <_sk_callback_hsw+0x33b>
2153  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2154  DB  72,173                              ; lods          %ds:(%rsi),%rax
2155  DB  196,226,125,24,29,219,29,0,0        ; vbroadcastss  0x1ddb(%rip),%ymm3        # 412c <_sk_callback_hsw+0x33f>
2156  DB  76,137,193                          ; mov           %r8,%rcx
2157  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
2158  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
2159  DB  255,224                             ; jmpq          *%rax
2160  DB  49,201                              ; xor           %ecx,%ecx
2161  DB  77,137,194                          ; mov           %r8,%r10
2162  DB  69,49,201                           ; xor           %r9d,%r9d
2163  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
2164  DB  72,255,192                          ; inc           %rax
2165  DB  73,211,227                          ; shl           %cl,%r11
2166  DB  77,9,217                            ; or            %r11,%r9
2167  DB  72,131,193,8                        ; add           $0x8,%rcx
2168  DB  73,255,202                          ; dec           %r10
2169  DB  117,234                             ; jne           2366 <_sk_load_g8_hsw+0x4a>
2170  DB  196,193,249,110,193                 ; vmovq         %r9,%xmm0
2171  DB  235,173                             ; jmp           2330 <_sk_load_g8_hsw+0x14>
2172
2173PUBLIC _sk_gather_g8_hsw
2174_sk_gather_g8_hsw LABEL PROC
2175  DB  65,87                               ; push          %r15
2176  DB  65,86                               ; push          %r14
2177  DB  65,84                               ; push          %r12
2178  DB  83                                  ; push          %rbx
2179  DB  72,173                              ; lods          %ds:(%rsi),%rax
2180  DB  76,139,0                            ; mov           (%rax),%r8
2181  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2182  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2183  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2184  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2185  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2186  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2187  DB  65,137,193                          ; mov           %eax,%r9d
2188  DB  72,193,232,32                       ; shr           $0x20,%rax
2189  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2190  DB  69,137,211                          ; mov           %r10d,%r11d
2191  DB  73,193,234,32                       ; shr           $0x20,%r10
2192  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2193  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2194  DB  65,137,222                          ; mov           %ebx,%r14d
2195  DB  72,193,235,32                       ; shr           $0x20,%rbx
2196  DB  196,193,249,126,199                 ; vmovq         %xmm0,%r15
2197  DB  69,137,252                          ; mov           %r15d,%r12d
2198  DB  73,193,239,32                       ; shr           $0x20,%r15
2199  DB  196,131,121,32,4,24,0               ; vpinsrb       $0x0,(%r8,%r11,1),%xmm0,%xmm0
2200  DB  196,131,121,32,4,16,1               ; vpinsrb       $0x1,(%r8,%r10,1),%xmm0,%xmm0
2201  DB  71,15,182,12,8                      ; movzbl        (%r8,%r9,1),%r9d
2202  DB  196,195,121,32,193,2                ; vpinsrb       $0x2,%r9d,%xmm0,%xmm0
2203  DB  65,15,182,4,0                       ; movzbl        (%r8,%rax,1),%eax
2204  DB  196,227,121,32,192,3                ; vpinsrb       $0x3,%eax,%xmm0,%xmm0
2205  DB  67,15,182,4,32                      ; movzbl        (%r8,%r12,1),%eax
2206  DB  196,227,121,32,192,4                ; vpinsrb       $0x4,%eax,%xmm0,%xmm0
2207  DB  67,15,182,4,56                      ; movzbl        (%r8,%r15,1),%eax
2208  DB  196,227,121,32,192,5                ; vpinsrb       $0x5,%eax,%xmm0,%xmm0
2209  DB  67,15,182,4,48                      ; movzbl        (%r8,%r14,1),%eax
2210  DB  196,227,121,32,192,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm0
2211  DB  65,15,182,4,24                      ; movzbl        (%r8,%rbx,1),%eax
2212  DB  196,227,121,32,192,7                ; vpinsrb       $0x7,%eax,%xmm0,%xmm0
2213  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2214  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2215  DB  196,226,125,24,13,240,28,0,0        ; vbroadcastss  0x1cf0(%rip),%ymm1        # 4130 <_sk_callback_hsw+0x343>
2216  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2217  DB  72,173                              ; lods          %ds:(%rsi),%rax
2218  DB  196,226,125,24,29,229,28,0,0        ; vbroadcastss  0x1ce5(%rip),%ymm3        # 4134 <_sk_callback_hsw+0x347>
2219  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
2220  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
2221  DB  91                                  ; pop           %rbx
2222  DB  65,92                               ; pop           %r12
2223  DB  65,94                               ; pop           %r14
2224  DB  65,95                               ; pop           %r15
2225  DB  255,224                             ; jmpq          *%rax
2226
2227PUBLIC _sk_gather_i8_hsw
2228_sk_gather_i8_hsw LABEL PROC
2229  DB  72,173                              ; lods          %ds:(%rsi),%rax
2230  DB  73,137,192                          ; mov           %rax,%r8
2231  DB  77,133,192                          ; test          %r8,%r8
2232  DB  116,5                               ; je            246f <_sk_gather_i8_hsw+0xf>
2233  DB  76,137,192                          ; mov           %r8,%rax
2234  DB  235,2                               ; jmp           2471 <_sk_gather_i8_hsw+0x11>
2235  DB  72,173                              ; lods          %ds:(%rsi),%rax
2236  DB  65,87                               ; push          %r15
2237  DB  65,86                               ; push          %r14
2238  DB  65,85                               ; push          %r13
2239  DB  65,84                               ; push          %r12
2240  DB  83                                  ; push          %rbx
2241  DB  76,139,8                            ; mov           (%rax),%r9
2242  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2243  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2244  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2245  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2246  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2247  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2248  DB  65,137,194                          ; mov           %eax,%r10d
2249  DB  72,193,232,32                       ; shr           $0x20,%rax
2250  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
2251  DB  69,137,222                          ; mov           %r11d,%r14d
2252  DB  73,193,235,32                       ; shr           $0x20,%r11
2253  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2254  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2255  DB  65,137,223                          ; mov           %ebx,%r15d
2256  DB  72,193,235,32                       ; shr           $0x20,%rbx
2257  DB  196,193,249,126,196                 ; vmovq         %xmm0,%r12
2258  DB  69,137,229                          ; mov           %r12d,%r13d
2259  DB  73,193,236,32                       ; shr           $0x20,%r12
2260  DB  196,131,121,32,4,49,0               ; vpinsrb       $0x0,(%r9,%r14,1),%xmm0,%xmm0
2261  DB  196,131,121,32,4,25,1               ; vpinsrb       $0x1,(%r9,%r11,1),%xmm0,%xmm0
2262  DB  196,131,121,32,4,17,2               ; vpinsrb       $0x2,(%r9,%r10,1),%xmm0,%xmm0
2263  DB  196,195,121,32,4,1,3                ; vpinsrb       $0x3,(%r9,%rax,1),%xmm0,%xmm0
2264  DB  196,131,121,32,4,41,4               ; vpinsrb       $0x4,(%r9,%r13,1),%xmm0,%xmm0
2265  DB  196,131,121,32,4,33,5               ; vpinsrb       $0x5,(%r9,%r12,1),%xmm0,%xmm0
2266  DB  196,131,121,32,4,57,6               ; vpinsrb       $0x6,(%r9,%r15,1),%xmm0,%xmm0
2267  DB  196,195,121,32,4,25,7               ; vpinsrb       $0x7,(%r9,%rbx,1),%xmm0,%xmm0
2268  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2269  DB  73,139,64,8                         ; mov           0x8(%r8),%rax
2270  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
2271  DB  196,226,117,144,28,128              ; vpgatherdd    %ymm1,(%rax,%ymm0,4),%ymm3
2272  DB  197,229,219,5,1,30,0,0              ; vpand         0x1e01(%rip),%ymm3,%ymm0        # 4320 <_sk_callback_hsw+0x533>
2273  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2274  DB  196,98,125,24,5,12,28,0,0           ; vbroadcastss  0x1c0c(%rip),%ymm8        # 4138 <_sk_callback_hsw+0x34b>
2275  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2276  DB  196,226,101,0,13,6,30,0,0           ; vpshufb       0x1e06(%rip),%ymm3,%ymm1        # 4340 <_sk_callback_hsw+0x553>
2277  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2278  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2279  DB  196,226,101,0,21,20,30,0,0          ; vpshufb       0x1e14(%rip),%ymm3,%ymm2        # 4360 <_sk_callback_hsw+0x573>
2280  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2281  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2282  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
2283  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2284  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2285  DB  72,173                              ; lods          %ds:(%rsi),%rax
2286  DB  91                                  ; pop           %rbx
2287  DB  65,92                               ; pop           %r12
2288  DB  65,93                               ; pop           %r13
2289  DB  65,94                               ; pop           %r14
2290  DB  65,95                               ; pop           %r15
2291  DB  255,224                             ; jmpq          *%rax
2292
2293PUBLIC _sk_load_565_hsw
2294_sk_load_565_hsw LABEL PROC
2295  DB  72,173                              ; lods          %ds:(%rsi),%rax
2296  DB  76,139,16                           ; mov           (%rax),%r10
2297  DB  72,133,201                          ; test          %rcx,%rcx
2298  DB  117,114                             ; jne           25ec <_sk_load_565_hsw+0x7c>
2299  DB  196,193,122,111,4,122               ; vmovdqu       (%r10,%rdi,2),%xmm0
2300  DB  196,226,125,51,208                  ; vpmovzxwd     %xmm0,%ymm2
2301  DB  196,226,125,88,5,174,27,0,0         ; vpbroadcastd  0x1bae(%rip),%ymm0        # 413c <_sk_callback_hsw+0x34f>
2302  DB  197,237,219,192                     ; vpand         %ymm0,%ymm2,%ymm0
2303  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2304  DB  196,226,125,24,13,161,27,0,0        ; vbroadcastss  0x1ba1(%rip),%ymm1        # 4140 <_sk_callback_hsw+0x353>
2305  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2306  DB  196,226,125,88,13,152,27,0,0        ; vpbroadcastd  0x1b98(%rip),%ymm1        # 4144 <_sk_callback_hsw+0x357>
2307  DB  197,237,219,201                     ; vpand         %ymm1,%ymm2,%ymm1
2308  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2309  DB  196,226,125,24,29,139,27,0,0        ; vbroadcastss  0x1b8b(%rip),%ymm3        # 4148 <_sk_callback_hsw+0x35b>
2310  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
2311  DB  196,226,125,88,29,130,27,0,0        ; vpbroadcastd  0x1b82(%rip),%ymm3        # 414c <_sk_callback_hsw+0x35f>
2312  DB  197,237,219,211                     ; vpand         %ymm3,%ymm2,%ymm2
2313  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2314  DB  196,226,125,24,29,117,27,0,0        ; vbroadcastss  0x1b75(%rip),%ymm3        # 4150 <_sk_callback_hsw+0x363>
2315  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
2316  DB  72,173                              ; lods          %ds:(%rsi),%rax
2317  DB  196,226,125,24,29,106,27,0,0        ; vbroadcastss  0x1b6a(%rip),%ymm3        # 4154 <_sk_callback_hsw+0x367>
2318  DB  255,224                             ; jmpq          *%rax
2319  DB  65,137,200                          ; mov           %ecx,%r8d
2320  DB  65,128,224,7                        ; and           $0x7,%r8b
2321  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2322  DB  65,254,200                          ; dec           %r8b
2323  DB  65,128,248,6                        ; cmp           $0x6,%r8b
2324  DB  119,128                             ; ja            2580 <_sk_load_565_hsw+0x10>
2325  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
2326  DB  76,141,13,73,0,0,0                  ; lea           0x49(%rip),%r9        # 2654 <_sk_load_565_hsw+0xe4>
2327  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
2328  DB  76,1,200                            ; add           %r9,%rax
2329  DB  255,224                             ; jmpq          *%rax
2330  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2331  DB  196,193,121,196,68,122,12,6         ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
2332  DB  196,193,121,196,68,122,10,5         ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
2333  DB  196,193,121,196,68,122,8,4          ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
2334  DB  196,193,121,196,68,122,6,3          ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
2335  DB  196,193,121,196,68,122,4,2          ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
2336  DB  196,193,121,196,68,122,2,1          ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
2337  DB  196,193,121,196,4,122,0             ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm0,%xmm0
2338  DB  233,44,255,255,255                  ; jmpq          2580 <_sk_load_565_hsw+0x10>
2339  DB  244                                 ; hlt
2340  DB  255                                 ; (bad)
2341  DB  255                                 ; (bad)
2342  DB  255                                 ; (bad)
2343  DB  236                                 ; in            (%dx),%al
2344  DB  255                                 ; (bad)
2345  DB  255                                 ; (bad)
2346  DB  255,228                             ; jmpq          *%rsp
2347  DB  255                                 ; (bad)
2348  DB  255                                 ; (bad)
2349  DB  255                                 ; (bad)
2350  DB  220,255                             ; fdivr         %st,%st(7)
2351  DB  255                                 ; (bad)
2352  DB  255,212                             ; callq         *%rsp
2353  DB  255                                 ; (bad)
2354  DB  255                                 ; (bad)
2355  DB  255,204                             ; dec           %esp
2356  DB  255                                 ; (bad)
2357  DB  255                                 ; (bad)
2358  DB  255,192                             ; inc           %eax
2359  DB  255                                 ; (bad)
2360  DB  255                                 ; (bad)
2361  DB  255                                 ; .byte         0xff
2362
2363PUBLIC _sk_gather_565_hsw
2364_sk_gather_565_hsw LABEL PROC
2365  DB  65,87                               ; push          %r15
2366  DB  65,86                               ; push          %r14
2367  DB  65,84                               ; push          %r12
2368  DB  83                                  ; push          %rbx
2369  DB  72,173                              ; lods          %ds:(%rsi),%rax
2370  DB  76,139,0                            ; mov           (%rax),%r8
2371  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2372  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2373  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2374  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2375  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2376  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2377  DB  65,137,193                          ; mov           %eax,%r9d
2378  DB  72,193,232,32                       ; shr           $0x20,%rax
2379  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2380  DB  69,137,211                          ; mov           %r10d,%r11d
2381  DB  73,193,234,32                       ; shr           $0x20,%r10
2382  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2383  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2384  DB  65,137,222                          ; mov           %ebx,%r14d
2385  DB  72,193,235,32                       ; shr           $0x20,%rbx
2386  DB  196,193,249,126,199                 ; vmovq         %xmm0,%r15
2387  DB  69,137,252                          ; mov           %r15d,%r12d
2388  DB  73,193,239,32                       ; shr           $0x20,%r15
2389  DB  71,15,183,20,80                     ; movzwl        (%r8,%r10,2),%r10d
2390  DB  71,15,183,28,88                     ; movzwl        (%r8,%r11,2),%r11d
2391  DB  196,193,121,110,195                 ; vmovd         %r11d,%xmm0
2392  DB  196,193,121,196,194,1               ; vpinsrw       $0x1,%r10d,%xmm0,%xmm0
2393  DB  71,15,183,12,72                     ; movzwl        (%r8,%r9,2),%r9d
2394  DB  196,193,121,196,193,2               ; vpinsrw       $0x2,%r9d,%xmm0,%xmm0
2395  DB  65,15,183,4,64                      ; movzwl        (%r8,%rax,2),%eax
2396  DB  197,249,196,192,3                   ; vpinsrw       $0x3,%eax,%xmm0,%xmm0
2397  DB  67,15,183,4,96                      ; movzwl        (%r8,%r12,2),%eax
2398  DB  197,249,196,192,4                   ; vpinsrw       $0x4,%eax,%xmm0,%xmm0
2399  DB  67,15,183,4,120                     ; movzwl        (%r8,%r15,2),%eax
2400  DB  197,249,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm0,%xmm0
2401  DB  67,15,183,4,112                     ; movzwl        (%r8,%r14,2),%eax
2402  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
2403  DB  65,15,183,4,88                      ; movzwl        (%r8,%rbx,2),%eax
2404  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
2405  DB  196,226,125,51,208                  ; vpmovzxwd     %xmm0,%ymm2
2406  DB  196,226,125,88,5,45,26,0,0          ; vpbroadcastd  0x1a2d(%rip),%ymm0        # 4158 <_sk_callback_hsw+0x36b>
2407  DB  197,237,219,192                     ; vpand         %ymm0,%ymm2,%ymm0
2408  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2409  DB  196,226,125,24,13,32,26,0,0         ; vbroadcastss  0x1a20(%rip),%ymm1        # 415c <_sk_callback_hsw+0x36f>
2410  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2411  DB  196,226,125,88,13,23,26,0,0         ; vpbroadcastd  0x1a17(%rip),%ymm1        # 4160 <_sk_callback_hsw+0x373>
2412  DB  197,237,219,201                     ; vpand         %ymm1,%ymm2,%ymm1
2413  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2414  DB  196,226,125,24,29,10,26,0,0         ; vbroadcastss  0x1a0a(%rip),%ymm3        # 4164 <_sk_callback_hsw+0x377>
2415  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
2416  DB  196,226,125,88,29,1,26,0,0          ; vpbroadcastd  0x1a01(%rip),%ymm3        # 4168 <_sk_callback_hsw+0x37b>
2417  DB  197,237,219,211                     ; vpand         %ymm3,%ymm2,%ymm2
2418  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2419  DB  196,226,125,24,29,244,25,0,0        ; vbroadcastss  0x19f4(%rip),%ymm3        # 416c <_sk_callback_hsw+0x37f>
2420  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
2421  DB  72,173                              ; lods          %ds:(%rsi),%rax
2422  DB  196,226,125,24,29,233,25,0,0        ; vbroadcastss  0x19e9(%rip),%ymm3        # 4170 <_sk_callback_hsw+0x383>
2423  DB  91                                  ; pop           %rbx
2424  DB  65,92                               ; pop           %r12
2425  DB  65,94                               ; pop           %r14
2426  DB  65,95                               ; pop           %r15
2427  DB  255,224                             ; jmpq          *%rax
2428
2429PUBLIC _sk_store_565_hsw
2430_sk_store_565_hsw LABEL PROC
2431  DB  72,173                              ; lods          %ds:(%rsi),%rax
2432  DB  76,139,16                           ; mov           (%rax),%r10
2433  DB  196,98,125,24,5,214,25,0,0          ; vbroadcastss  0x19d6(%rip),%ymm8        # 4174 <_sk_callback_hsw+0x387>
2434  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
2435  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
2436  DB  196,193,53,114,241,11               ; vpslld        $0xb,%ymm9,%ymm9
2437  DB  196,98,125,24,21,193,25,0,0         ; vbroadcastss  0x19c1(%rip),%ymm10        # 4178 <_sk_callback_hsw+0x38b>
2438  DB  196,65,116,89,210                   ; vmulps        %ymm10,%ymm1,%ymm10
2439  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
2440  DB  196,193,45,114,242,5                ; vpslld        $0x5,%ymm10,%ymm10
2441  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
2442  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
2443  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
2444  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
2445  DB  196,67,125,57,193,1                 ; vextracti128  $0x1,%ymm8,%xmm9
2446  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
2447  DB  72,133,201                          ; test          %rcx,%rcx
2448  DB  117,10                              ; jne           27f5 <_sk_store_565_hsw+0x65>
2449  DB  196,65,122,127,4,122                ; vmovdqu       %xmm8,(%r10,%rdi,2)
2450  DB  72,173                              ; lods          %ds:(%rsi),%rax
2451  DB  255,224                             ; jmpq          *%rax
2452  DB  65,137,200                          ; mov           %ecx,%r8d
2453  DB  65,128,224,7                        ; and           $0x7,%r8b
2454  DB  65,254,200                          ; dec           %r8b
2455  DB  65,128,248,6                        ; cmp           $0x6,%r8b
2456  DB  119,236                             ; ja            27f1 <_sk_store_565_hsw+0x61>
2457  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
2458  DB  76,141,13,68,0,0,0                  ; lea           0x44(%rip),%r9        # 2854 <_sk_store_565_hsw+0xc4>
2459  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
2460  DB  76,1,200                            ; add           %r9,%rax
2461  DB  255,224                             ; jmpq          *%rax
2462  DB  196,67,121,21,68,122,12,6           ; vpextrw       $0x6,%xmm8,0xc(%r10,%rdi,2)
2463  DB  196,67,121,21,68,122,10,5           ; vpextrw       $0x5,%xmm8,0xa(%r10,%rdi,2)
2464  DB  196,67,121,21,68,122,8,4            ; vpextrw       $0x4,%xmm8,0x8(%r10,%rdi,2)
2465  DB  196,67,121,21,68,122,6,3            ; vpextrw       $0x3,%xmm8,0x6(%r10,%rdi,2)
2466  DB  196,67,121,21,68,122,4,2            ; vpextrw       $0x2,%xmm8,0x4(%r10,%rdi,2)
2467  DB  196,67,121,21,68,122,2,1            ; vpextrw       $0x1,%xmm8,0x2(%r10,%rdi,2)
2468  DB  196,67,121,21,4,122,0               ; vpextrw       $0x0,%xmm8,(%r10,%rdi,2)
2469  DB  235,159                             ; jmp           27f1 <_sk_store_565_hsw+0x61>
2470  DB  102,144                             ; xchg          %ax,%ax
2471  DB  245                                 ; cmc
2472  DB  255                                 ; (bad)
2473  DB  255                                 ; (bad)
2474  DB  255                                 ; (bad)
2475  DB  237                                 ; in            (%dx),%eax
2476  DB  255                                 ; (bad)
2477  DB  255                                 ; (bad)
2478  DB  255,229                             ; jmpq          *%rbp
2479  DB  255                                 ; (bad)
2480  DB  255                                 ; (bad)
2481  DB  255                                 ; (bad)
2482  DB  221,255                             ; (bad)
2483  DB  255                                 ; (bad)
2484  DB  255,213                             ; callq         *%rbp
2485  DB  255                                 ; (bad)
2486  DB  255                                 ; (bad)
2487  DB  255,205                             ; dec           %ebp
2488  DB  255                                 ; (bad)
2489  DB  255                                 ; (bad)
2490  DB  255,197                             ; inc           %ebp
2491  DB  255                                 ; (bad)
2492  DB  255                                 ; (bad)
2493  DB  255                                 ; .byte         0xff
2494
2495PUBLIC _sk_load_4444_hsw
2496_sk_load_4444_hsw LABEL PROC
2497  DB  72,173                              ; lods          %ds:(%rsi),%rax
2498  DB  76,139,16                           ; mov           (%rax),%r10
2499  DB  72,133,201                          ; test          %rcx,%rcx
2500  DB  15,133,138,0,0,0                    ; jne           2908 <_sk_load_4444_hsw+0x98>
2501  DB  196,193,122,111,4,122               ; vmovdqu       (%r10,%rdi,2),%xmm0
2502  DB  196,226,125,51,216                  ; vpmovzxwd     %xmm0,%ymm3
2503  DB  196,226,125,88,5,234,24,0,0         ; vpbroadcastd  0x18ea(%rip),%ymm0        # 417c <_sk_callback_hsw+0x38f>
2504  DB  197,229,219,192                     ; vpand         %ymm0,%ymm3,%ymm0
2505  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2506  DB  196,226,125,24,13,221,24,0,0        ; vbroadcastss  0x18dd(%rip),%ymm1        # 4180 <_sk_callback_hsw+0x393>
2507  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2508  DB  196,226,125,88,13,212,24,0,0        ; vpbroadcastd  0x18d4(%rip),%ymm1        # 4184 <_sk_callback_hsw+0x397>
2509  DB  197,229,219,201                     ; vpand         %ymm1,%ymm3,%ymm1
2510  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2511  DB  196,226,125,24,21,199,24,0,0        ; vbroadcastss  0x18c7(%rip),%ymm2        # 4188 <_sk_callback_hsw+0x39b>
2512  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
2513  DB  196,226,125,88,21,190,24,0,0        ; vpbroadcastd  0x18be(%rip),%ymm2        # 418c <_sk_callback_hsw+0x39f>
2514  DB  197,229,219,210                     ; vpand         %ymm2,%ymm3,%ymm2
2515  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2516  DB  196,98,125,24,5,177,24,0,0          ; vbroadcastss  0x18b1(%rip),%ymm8        # 4190 <_sk_callback_hsw+0x3a3>
2517  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2518  DB  196,98,125,88,5,167,24,0,0          ; vpbroadcastd  0x18a7(%rip),%ymm8        # 4194 <_sk_callback_hsw+0x3a7>
2519  DB  196,193,101,219,216                 ; vpand         %ymm8,%ymm3,%ymm3
2520  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2521  DB  196,98,125,24,5,153,24,0,0          ; vbroadcastss  0x1899(%rip),%ymm8        # 4198 <_sk_callback_hsw+0x3ab>
2522  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2523  DB  72,173                              ; lods          %ds:(%rsi),%rax
2524  DB  255,224                             ; jmpq          *%rax
2525  DB  65,137,200                          ; mov           %ecx,%r8d
2526  DB  65,128,224,7                        ; and           $0x7,%r8b
2527  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2528  DB  65,254,200                          ; dec           %r8b
2529  DB  65,128,248,6                        ; cmp           $0x6,%r8b
2530  DB  15,135,100,255,255,255              ; ja            2884 <_sk_load_4444_hsw+0x14>
2531  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
2532  DB  76,141,13,73,0,0,0                  ; lea           0x49(%rip),%r9        # 2974 <_sk_load_4444_hsw+0x104>
2533  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
2534  DB  76,1,200                            ; add           %r9,%rax
2535  DB  255,224                             ; jmpq          *%rax
2536  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2537  DB  196,193,121,196,68,122,12,6         ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
2538  DB  196,193,121,196,68,122,10,5         ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
2539  DB  196,193,121,196,68,122,8,4          ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
2540  DB  196,193,121,196,68,122,6,3          ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
2541  DB  196,193,121,196,68,122,4,2          ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
2542  DB  196,193,121,196,68,122,2,1          ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
2543  DB  196,193,121,196,4,122,0             ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm0,%xmm0
2544  DB  233,16,255,255,255                  ; jmpq          2884 <_sk_load_4444_hsw+0x14>
2545  DB  244                                 ; hlt
2546  DB  255                                 ; (bad)
2547  DB  255                                 ; (bad)
2548  DB  255                                 ; (bad)
2549  DB  236                                 ; in            (%dx),%al
2550  DB  255                                 ; (bad)
2551  DB  255                                 ; (bad)
2552  DB  255,228                             ; jmpq          *%rsp
2553  DB  255                                 ; (bad)
2554  DB  255                                 ; (bad)
2555  DB  255                                 ; (bad)
2556  DB  220,255                             ; fdivr         %st,%st(7)
2557  DB  255                                 ; (bad)
2558  DB  255,212                             ; callq         *%rsp
2559  DB  255                                 ; (bad)
2560  DB  255                                 ; (bad)
2561  DB  255,204                             ; dec           %esp
2562  DB  255                                 ; (bad)
2563  DB  255                                 ; (bad)
2564  DB  255,192                             ; inc           %eax
2565  DB  255                                 ; (bad)
2566  DB  255                                 ; (bad)
2567  DB  255                                 ; .byte         0xff
2568
2569PUBLIC _sk_gather_4444_hsw
2570_sk_gather_4444_hsw LABEL PROC
2571  DB  65,87                               ; push          %r15
2572  DB  65,86                               ; push          %r14
2573  DB  65,84                               ; push          %r12
2574  DB  83                                  ; push          %rbx
2575  DB  72,173                              ; lods          %ds:(%rsi),%rax
2576  DB  76,139,0                            ; mov           (%rax),%r8
2577  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2578  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2579  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2580  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2581  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2582  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2583  DB  65,137,193                          ; mov           %eax,%r9d
2584  DB  72,193,232,32                       ; shr           $0x20,%rax
2585  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2586  DB  69,137,211                          ; mov           %r10d,%r11d
2587  DB  73,193,234,32                       ; shr           $0x20,%r10
2588  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2589  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2590  DB  65,137,222                          ; mov           %ebx,%r14d
2591  DB  72,193,235,32                       ; shr           $0x20,%rbx
2592  DB  196,193,249,126,199                 ; vmovq         %xmm0,%r15
2593  DB  69,137,252                          ; mov           %r15d,%r12d
2594  DB  73,193,239,32                       ; shr           $0x20,%r15
2595  DB  71,15,183,20,80                     ; movzwl        (%r8,%r10,2),%r10d
2596  DB  71,15,183,28,88                     ; movzwl        (%r8,%r11,2),%r11d
2597  DB  196,193,121,110,195                 ; vmovd         %r11d,%xmm0
2598  DB  196,193,121,196,194,1               ; vpinsrw       $0x1,%r10d,%xmm0,%xmm0
2599  DB  71,15,183,12,72                     ; movzwl        (%r8,%r9,2),%r9d
2600  DB  196,193,121,196,193,2               ; vpinsrw       $0x2,%r9d,%xmm0,%xmm0
2601  DB  65,15,183,4,64                      ; movzwl        (%r8,%rax,2),%eax
2602  DB  197,249,196,192,3                   ; vpinsrw       $0x3,%eax,%xmm0,%xmm0
2603  DB  67,15,183,4,96                      ; movzwl        (%r8,%r12,2),%eax
2604  DB  197,249,196,192,4                   ; vpinsrw       $0x4,%eax,%xmm0,%xmm0
2605  DB  67,15,183,4,120                     ; movzwl        (%r8,%r15,2),%eax
2606  DB  197,249,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm0,%xmm0
2607  DB  67,15,183,4,112                     ; movzwl        (%r8,%r14,2),%eax
2608  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
2609  DB  65,15,183,4,88                      ; movzwl        (%r8,%rbx,2),%eax
2610  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
2611  DB  196,226,125,51,216                  ; vpmovzxwd     %xmm0,%ymm3
2612  DB  196,226,125,88,5,81,23,0,0          ; vpbroadcastd  0x1751(%rip),%ymm0        # 419c <_sk_callback_hsw+0x3af>
2613  DB  197,229,219,192                     ; vpand         %ymm0,%ymm3,%ymm0
2614  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2615  DB  196,226,125,24,13,68,23,0,0         ; vbroadcastss  0x1744(%rip),%ymm1        # 41a0 <_sk_callback_hsw+0x3b3>
2616  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2617  DB  196,226,125,88,13,59,23,0,0         ; vpbroadcastd  0x173b(%rip),%ymm1        # 41a4 <_sk_callback_hsw+0x3b7>
2618  DB  197,229,219,201                     ; vpand         %ymm1,%ymm3,%ymm1
2619  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2620  DB  196,226,125,24,21,46,23,0,0         ; vbroadcastss  0x172e(%rip),%ymm2        # 41a8 <_sk_callback_hsw+0x3bb>
2621  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
2622  DB  196,226,125,88,21,37,23,0,0         ; vpbroadcastd  0x1725(%rip),%ymm2        # 41ac <_sk_callback_hsw+0x3bf>
2623  DB  197,229,219,210                     ; vpand         %ymm2,%ymm3,%ymm2
2624  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2625  DB  196,98,125,24,5,24,23,0,0           ; vbroadcastss  0x1718(%rip),%ymm8        # 41b0 <_sk_callback_hsw+0x3c3>
2626  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2627  DB  196,98,125,88,5,14,23,0,0           ; vpbroadcastd  0x170e(%rip),%ymm8        # 41b4 <_sk_callback_hsw+0x3c7>
2628  DB  196,193,101,219,216                 ; vpand         %ymm8,%ymm3,%ymm3
2629  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2630  DB  196,98,125,24,5,0,23,0,0            ; vbroadcastss  0x1700(%rip),%ymm8        # 41b8 <_sk_callback_hsw+0x3cb>
2631  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2632  DB  72,173                              ; lods          %ds:(%rsi),%rax
2633  DB  91                                  ; pop           %rbx
2634  DB  65,92                               ; pop           %r12
2635  DB  65,94                               ; pop           %r14
2636  DB  65,95                               ; pop           %r15
2637  DB  255,224                             ; jmpq          *%rax
2638
2639PUBLIC _sk_store_4444_hsw
2640_sk_store_4444_hsw LABEL PROC
2641  DB  72,173                              ; lods          %ds:(%rsi),%rax
2642  DB  76,139,16                           ; mov           (%rax),%r10
2643  DB  196,98,125,24,5,230,22,0,0          ; vbroadcastss  0x16e6(%rip),%ymm8        # 41bc <_sk_callback_hsw+0x3cf>
2644  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
2645  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
2646  DB  196,193,53,114,241,12               ; vpslld        $0xc,%ymm9,%ymm9
2647  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
2648  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
2649  DB  196,193,45,114,242,8                ; vpslld        $0x8,%ymm10,%ymm10
2650  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
2651  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
2652  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
2653  DB  196,193,45,114,242,4                ; vpslld        $0x4,%ymm10,%ymm10
2654  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
2655  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
2656  DB  196,65,45,235,192                   ; vpor          %ymm8,%ymm10,%ymm8
2657  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
2658  DB  196,67,125,57,193,1                 ; vextracti128  $0x1,%ymm8,%xmm9
2659  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
2660  DB  72,133,201                          ; test          %rcx,%rcx
2661  DB  117,10                              ; jne           2b39 <_sk_store_4444_hsw+0x71>
2662  DB  196,65,122,127,4,122                ; vmovdqu       %xmm8,(%r10,%rdi,2)
2663  DB  72,173                              ; lods          %ds:(%rsi),%rax
2664  DB  255,224                             ; jmpq          *%rax
2665  DB  65,137,200                          ; mov           %ecx,%r8d
2666  DB  65,128,224,7                        ; and           $0x7,%r8b
2667  DB  65,254,200                          ; dec           %r8b
2668  DB  65,128,248,6                        ; cmp           $0x6,%r8b
2669  DB  119,236                             ; ja            2b35 <_sk_store_4444_hsw+0x6d>
2670  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
2671  DB  76,141,13,68,0,0,0                  ; lea           0x44(%rip),%r9        # 2b98 <_sk_store_4444_hsw+0xd0>
2672  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
2673  DB  76,1,200                            ; add           %r9,%rax
2674  DB  255,224                             ; jmpq          *%rax
2675  DB  196,67,121,21,68,122,12,6           ; vpextrw       $0x6,%xmm8,0xc(%r10,%rdi,2)
2676  DB  196,67,121,21,68,122,10,5           ; vpextrw       $0x5,%xmm8,0xa(%r10,%rdi,2)
2677  DB  196,67,121,21,68,122,8,4            ; vpextrw       $0x4,%xmm8,0x8(%r10,%rdi,2)
2678  DB  196,67,121,21,68,122,6,3            ; vpextrw       $0x3,%xmm8,0x6(%r10,%rdi,2)
2679  DB  196,67,121,21,68,122,4,2            ; vpextrw       $0x2,%xmm8,0x4(%r10,%rdi,2)
2680  DB  196,67,121,21,68,122,2,1            ; vpextrw       $0x1,%xmm8,0x2(%r10,%rdi,2)
2681  DB  196,67,121,21,4,122,0               ; vpextrw       $0x0,%xmm8,(%r10,%rdi,2)
2682  DB  235,159                             ; jmp           2b35 <_sk_store_4444_hsw+0x6d>
2683  DB  102,144                             ; xchg          %ax,%ax
2684  DB  245                                 ; cmc
2685  DB  255                                 ; (bad)
2686  DB  255                                 ; (bad)
2687  DB  255                                 ; (bad)
2688  DB  237                                 ; in            (%dx),%eax
2689  DB  255                                 ; (bad)
2690  DB  255                                 ; (bad)
2691  DB  255,229                             ; jmpq          *%rbp
2692  DB  255                                 ; (bad)
2693  DB  255                                 ; (bad)
2694  DB  255                                 ; (bad)
2695  DB  221,255                             ; (bad)
2696  DB  255                                 ; (bad)
2697  DB  255,213                             ; callq         *%rbp
2698  DB  255                                 ; (bad)
2699  DB  255                                 ; (bad)
2700  DB  255,205                             ; dec           %ebp
2701  DB  255                                 ; (bad)
2702  DB  255                                 ; (bad)
2703  DB  255,197                             ; inc           %ebp
2704  DB  255                                 ; (bad)
2705  DB  255                                 ; (bad)
2706  DB  255                                 ; .byte         0xff
2707
2708PUBLIC _sk_load_8888_hsw
2709_sk_load_8888_hsw LABEL PROC
2710  DB  73,137,200                          ; mov           %rcx,%r8
2711  DB  72,173                              ; lods          %ds:(%rsi),%rax
2712  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
2713  DB  76,3,8                              ; add           (%rax),%r9
2714  DB  77,133,192                          ; test          %r8,%r8
2715  DB  117,88                              ; jne           2c21 <_sk_load_8888_hsw+0x6d>
2716  DB  196,193,126,111,25                  ; vmovdqu       (%r9),%ymm3
2717  DB  197,229,219,5,170,23,0,0            ; vpand         0x17aa(%rip),%ymm3,%ymm0        # 4380 <_sk_callback_hsw+0x593>
2718  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2719  DB  196,98,125,24,5,221,21,0,0          ; vbroadcastss  0x15dd(%rip),%ymm8        # 41c0 <_sk_callback_hsw+0x3d3>
2720  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2721  DB  196,226,101,0,13,175,23,0,0         ; vpshufb       0x17af(%rip),%ymm3,%ymm1        # 43a0 <_sk_callback_hsw+0x5b3>
2722  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2723  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2724  DB  196,226,101,0,21,189,23,0,0         ; vpshufb       0x17bd(%rip),%ymm3,%ymm2        # 43c0 <_sk_callback_hsw+0x5d3>
2725  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2726  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2727  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
2728  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2729  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2730  DB  72,173                              ; lods          %ds:(%rsi),%rax
2731  DB  76,137,193                          ; mov           %r8,%rcx
2732  DB  255,224                             ; jmpq          *%rax
2733  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
2734  DB  68,41,193                           ; sub           %r8d,%ecx
2735  DB  192,225,3                           ; shl           $0x3,%cl
2736  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
2737  DB  72,211,232                          ; shr           %cl,%rax
2738  DB  196,225,249,110,192                 ; vmovq         %rax,%xmm0
2739  DB  196,226,125,33,192                  ; vpmovsxbd     %xmm0,%ymm0
2740  DB  196,194,125,140,25                  ; vpmaskmovd    (%r9),%ymm0,%ymm3
2741  DB  235,135                             ; jmp           2bce <_sk_load_8888_hsw+0x1a>
2742
2743PUBLIC _sk_gather_8888_hsw
2744_sk_gather_8888_hsw LABEL PROC
2745  DB  72,173                              ; lods          %ds:(%rsi),%rax
2746  DB  76,139,0                            ; mov           (%rax),%r8
2747  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2748  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2749  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2750  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2751  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2752  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
2753  DB  196,194,117,144,28,128              ; vpgatherdd    %ymm1,(%r8,%ymm0,4),%ymm3
2754  DB  197,229,219,5,107,23,0,0            ; vpand         0x176b(%rip),%ymm3,%ymm0        # 43e0 <_sk_callback_hsw+0x5f3>
2755  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2756  DB  196,98,125,24,5,66,21,0,0           ; vbroadcastss  0x1542(%rip),%ymm8        # 41c4 <_sk_callback_hsw+0x3d7>
2757  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2758  DB  196,226,101,0,13,112,23,0,0         ; vpshufb       0x1770(%rip),%ymm3,%ymm1        # 4400 <_sk_callback_hsw+0x613>
2759  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2760  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2761  DB  196,226,101,0,21,126,23,0,0         ; vpshufb       0x177e(%rip),%ymm3,%ymm2        # 4420 <_sk_callback_hsw+0x633>
2762  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2763  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2764  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
2765  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2766  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2767  DB  72,173                              ; lods          %ds:(%rsi),%rax
2768  DB  255,224                             ; jmpq          *%rax
2769
2770PUBLIC _sk_store_8888_hsw
2771_sk_store_8888_hsw LABEL PROC
2772  DB  73,137,200                          ; mov           %rcx,%r8
2773  DB  72,173                              ; lods          %ds:(%rsi),%rax
2774  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
2775  DB  76,3,8                              ; add           (%rax),%r9
2776  DB  196,98,125,24,5,242,20,0,0          ; vbroadcastss  0x14f2(%rip),%ymm8        # 41c8 <_sk_callback_hsw+0x3db>
2777  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
2778  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
2779  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
2780  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
2781  DB  196,193,45,114,242,8                ; vpslld        $0x8,%ymm10,%ymm10
2782  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
2783  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
2784  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
2785  DB  196,193,45,114,242,16               ; vpslld        $0x10,%ymm10,%ymm10
2786  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
2787  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
2788  DB  196,193,61,114,240,24               ; vpslld        $0x18,%ymm8,%ymm8
2789  DB  196,65,45,235,192                   ; vpor          %ymm8,%ymm10,%ymm8
2790  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
2791  DB  77,133,192                          ; test          %r8,%r8
2792  DB  117,12                              ; jne           2d30 <_sk_store_8888_hsw+0x73>
2793  DB  196,65,126,127,1                    ; vmovdqu       %ymm8,(%r9)
2794  DB  72,173                              ; lods          %ds:(%rsi),%rax
2795  DB  76,137,193                          ; mov           %r8,%rcx
2796  DB  255,224                             ; jmpq          *%rax
2797  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
2798  DB  68,41,193                           ; sub           %r8d,%ecx
2799  DB  192,225,3                           ; shl           $0x3,%cl
2800  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
2801  DB  72,211,232                          ; shr           %cl,%rax
2802  DB  196,97,249,110,200                  ; vmovq         %rax,%xmm9
2803  DB  196,66,125,33,201                   ; vpmovsxbd     %xmm9,%ymm9
2804  DB  196,66,53,142,1                     ; vpmaskmovd    %ymm8,%ymm9,(%r9)
2805  DB  235,211                             ; jmp           2d29 <_sk_store_8888_hsw+0x6c>
2806
2807PUBLIC _sk_load_f16_hsw
2808_sk_load_f16_hsw LABEL PROC
2809  DB  72,173                              ; lods          %ds:(%rsi),%rax
2810  DB  72,139,0                            ; mov           (%rax),%rax
2811  DB  72,133,201                          ; test          %rcx,%rcx
2812  DB  117,97                              ; jne           2dc1 <_sk_load_f16_hsw+0x6b>
2813  DB  197,121,16,4,248                    ; vmovupd       (%rax,%rdi,8),%xmm8
2814  DB  197,249,16,84,248,16                ; vmovupd       0x10(%rax,%rdi,8),%xmm2
2815  DB  197,249,16,92,248,32                ; vmovupd       0x20(%rax,%rdi,8),%xmm3
2816  DB  197,122,111,76,248,48               ; vmovdqu       0x30(%rax,%rdi,8),%xmm9
2817  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
2818  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
2819  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
2820  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
2821  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
2822  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
2823  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
2824  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
2825  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
2826  DB  196,226,125,19,192                  ; vcvtph2ps     %xmm0,%ymm0
2827  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
2828  DB  196,226,125,19,201                  ; vcvtph2ps     %xmm1,%ymm1
2829  DB  197,177,108,211                     ; vpunpcklqdq   %xmm3,%xmm9,%xmm2
2830  DB  196,226,125,19,210                  ; vcvtph2ps     %xmm2,%ymm2
2831  DB  197,177,109,219                     ; vpunpckhqdq   %xmm3,%xmm9,%xmm3
2832  DB  196,226,125,19,219                  ; vcvtph2ps     %xmm3,%ymm3
2833  DB  72,173                              ; lods          %ds:(%rsi),%rax
2834  DB  255,224                             ; jmpq          *%rax
2835  DB  197,123,16,4,248                    ; vmovsd        (%rax,%rdi,8),%xmm8
2836  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
2837  DB  72,131,249,1                        ; cmp           $0x1,%rcx
2838  DB  116,79                              ; je            2e20 <_sk_load_f16_hsw+0xca>
2839  DB  197,57,22,68,248,8                  ; vmovhpd       0x8(%rax,%rdi,8),%xmm8,%xmm8
2840  DB  72,131,249,3                        ; cmp           $0x3,%rcx
2841  DB  114,67                              ; jb            2e20 <_sk_load_f16_hsw+0xca>
2842  DB  197,251,16,84,248,16                ; vmovsd        0x10(%rax,%rdi,8),%xmm2
2843  DB  72,131,249,3                        ; cmp           $0x3,%rcx
2844  DB  116,68                              ; je            2e2d <_sk_load_f16_hsw+0xd7>
2845  DB  197,233,22,84,248,24                ; vmovhpd       0x18(%rax,%rdi,8),%xmm2,%xmm2
2846  DB  72,131,249,5                        ; cmp           $0x5,%rcx
2847  DB  114,56                              ; jb            2e2d <_sk_load_f16_hsw+0xd7>
2848  DB  197,251,16,92,248,32                ; vmovsd        0x20(%rax,%rdi,8),%xmm3
2849  DB  72,131,249,5                        ; cmp           $0x5,%rcx
2850  DB  15,132,114,255,255,255              ; je            2d77 <_sk_load_f16_hsw+0x21>
2851  DB  197,225,22,92,248,40                ; vmovhpd       0x28(%rax,%rdi,8),%xmm3,%xmm3
2852  DB  72,131,249,7                        ; cmp           $0x7,%rcx
2853  DB  15,130,98,255,255,255               ; jb            2d77 <_sk_load_f16_hsw+0x21>
2854  DB  197,122,126,76,248,48               ; vmovq         0x30(%rax,%rdi,8),%xmm9
2855  DB  233,87,255,255,255                  ; jmpq          2d77 <_sk_load_f16_hsw+0x21>
2856  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
2857  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
2858  DB  233,74,255,255,255                  ; jmpq          2d77 <_sk_load_f16_hsw+0x21>
2859  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
2860  DB  233,65,255,255,255                  ; jmpq          2d77 <_sk_load_f16_hsw+0x21>
2861
2862PUBLIC _sk_gather_f16_hsw
2863_sk_gather_f16_hsw LABEL PROC
2864  DB  72,173                              ; lods          %ds:(%rsi),%rax
2865  DB  76,139,0                            ; mov           (%rax),%r8
2866  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2867  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2868  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2869  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2870  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2871  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
2872  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
2873  DB  196,194,237,144,28,192              ; vpgatherdq    %ymm2,(%r8,%xmm0,8),%ymm3
2874  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2875  DB  196,194,245,144,20,192              ; vpgatherdq    %ymm1,(%r8,%xmm0,8),%ymm2
2876  DB  196,227,125,57,216,1                ; vextracti128  $0x1,%ymm3,%xmm0
2877  DB  196,227,125,57,209,1                ; vextracti128  $0x1,%ymm2,%xmm1
2878  DB  197,97,97,192                       ; vpunpcklwd    %xmm0,%xmm3,%xmm8
2879  DB  197,225,105,192                     ; vpunpckhwd    %xmm0,%xmm3,%xmm0
2880  DB  197,233,97,217                      ; vpunpcklwd    %xmm1,%xmm2,%xmm3
2881  DB  197,233,105,201                     ; vpunpckhwd    %xmm1,%xmm2,%xmm1
2882  DB  197,57,97,200                       ; vpunpcklwd    %xmm0,%xmm8,%xmm9
2883  DB  197,57,105,192                      ; vpunpckhwd    %xmm0,%xmm8,%xmm8
2884  DB  197,225,97,209                      ; vpunpcklwd    %xmm1,%xmm3,%xmm2
2885  DB  197,225,105,217                     ; vpunpckhwd    %xmm1,%xmm3,%xmm3
2886  DB  197,177,108,194                     ; vpunpcklqdq   %xmm2,%xmm9,%xmm0
2887  DB  196,226,125,19,192                  ; vcvtph2ps     %xmm0,%ymm0
2888  DB  197,177,109,202                     ; vpunpckhqdq   %xmm2,%xmm9,%xmm1
2889  DB  196,226,125,19,201                  ; vcvtph2ps     %xmm1,%ymm1
2890  DB  197,185,108,211                     ; vpunpcklqdq   %xmm3,%xmm8,%xmm2
2891  DB  196,226,125,19,210                  ; vcvtph2ps     %xmm2,%ymm2
2892  DB  197,185,109,219                     ; vpunpckhqdq   %xmm3,%xmm8,%xmm3
2893  DB  196,226,125,19,219                  ; vcvtph2ps     %xmm3,%ymm3
2894  DB  72,173                              ; lods          %ds:(%rsi),%rax
2895  DB  255,224                             ; jmpq          *%rax
2896
2897PUBLIC _sk_store_f16_hsw
2898_sk_store_f16_hsw LABEL PROC
2899  DB  72,173                              ; lods          %ds:(%rsi),%rax
2900  DB  72,139,0                            ; mov           (%rax),%rax
2901  DB  196,195,125,29,192,4                ; vcvtps2ph     $0x4,%ymm0,%xmm8
2902  DB  196,195,125,29,201,4                ; vcvtps2ph     $0x4,%ymm1,%xmm9
2903  DB  196,195,125,29,210,4                ; vcvtps2ph     $0x4,%ymm2,%xmm10
2904  DB  196,195,125,29,219,4                ; vcvtps2ph     $0x4,%ymm3,%xmm11
2905  DB  196,65,57,97,225                    ; vpunpcklwd    %xmm9,%xmm8,%xmm12
2906  DB  196,65,57,105,193                   ; vpunpckhwd    %xmm9,%xmm8,%xmm8
2907  DB  196,65,41,97,203                    ; vpunpcklwd    %xmm11,%xmm10,%xmm9
2908  DB  196,65,41,105,235                   ; vpunpckhwd    %xmm11,%xmm10,%xmm13
2909  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
2910  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
2911  DB  196,65,57,98,205                    ; vpunpckldq    %xmm13,%xmm8,%xmm9
2912  DB  196,65,57,106,197                   ; vpunpckhdq    %xmm13,%xmm8,%xmm8
2913  DB  72,133,201                          ; test          %rcx,%rcx
2914  DB  117,27                              ; jne           2f25 <_sk_store_f16_hsw+0x65>
2915  DB  197,120,17,28,248                   ; vmovups       %xmm11,(%rax,%rdi,8)
2916  DB  197,120,17,84,248,16                ; vmovups       %xmm10,0x10(%rax,%rdi,8)
2917  DB  197,120,17,76,248,32                ; vmovups       %xmm9,0x20(%rax,%rdi,8)
2918  DB  197,122,127,68,248,48               ; vmovdqu       %xmm8,0x30(%rax,%rdi,8)
2919  DB  72,173                              ; lods          %ds:(%rsi),%rax
2920  DB  255,224                             ; jmpq          *%rax
2921  DB  197,121,214,28,248                  ; vmovq         %xmm11,(%rax,%rdi,8)
2922  DB  72,131,249,1                        ; cmp           $0x1,%rcx
2923  DB  116,241                             ; je            2f21 <_sk_store_f16_hsw+0x61>
2924  DB  197,121,23,92,248,8                 ; vmovhpd       %xmm11,0x8(%rax,%rdi,8)
2925  DB  72,131,249,3                        ; cmp           $0x3,%rcx
2926  DB  114,229                             ; jb            2f21 <_sk_store_f16_hsw+0x61>
2927  DB  197,121,214,84,248,16               ; vmovq         %xmm10,0x10(%rax,%rdi,8)
2928  DB  116,221                             ; je            2f21 <_sk_store_f16_hsw+0x61>
2929  DB  197,121,23,84,248,24                ; vmovhpd       %xmm10,0x18(%rax,%rdi,8)
2930  DB  72,131,249,5                        ; cmp           $0x5,%rcx
2931  DB  114,209                             ; jb            2f21 <_sk_store_f16_hsw+0x61>
2932  DB  197,121,214,76,248,32               ; vmovq         %xmm9,0x20(%rax,%rdi,8)
2933  DB  116,201                             ; je            2f21 <_sk_store_f16_hsw+0x61>
2934  DB  197,121,23,76,248,40                ; vmovhpd       %xmm9,0x28(%rax,%rdi,8)
2935  DB  72,131,249,7                        ; cmp           $0x7,%rcx
2936  DB  114,189                             ; jb            2f21 <_sk_store_f16_hsw+0x61>
2937  DB  197,121,214,68,248,48               ; vmovq         %xmm8,0x30(%rax,%rdi,8)
2938  DB  235,181                             ; jmp           2f21 <_sk_store_f16_hsw+0x61>
2939
2940PUBLIC _sk_load_u16_be_hsw
2941_sk_load_u16_be_hsw LABEL PROC
2942  DB  72,173                              ; lods          %ds:(%rsi),%rax
2943  DB  76,139,0                            ; mov           (%rax),%r8
2944  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
2945  DB  72,133,201                          ; test          %rcx,%rcx
2946  DB  15,133,204,0,0,0                    ; jne           304e <_sk_load_u16_be_hsw+0xe2>
2947  DB  196,65,121,16,4,64                  ; vmovupd       (%r8,%rax,2),%xmm8
2948  DB  196,193,121,16,84,64,16             ; vmovupd       0x10(%r8,%rax,2),%xmm2
2949  DB  196,193,121,16,92,64,32             ; vmovupd       0x20(%r8,%rax,2),%xmm3
2950  DB  196,65,122,111,76,64,48             ; vmovdqu       0x30(%r8,%rax,2),%xmm9
2951  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
2952  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
2953  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
2954  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
2955  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
2956  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
2957  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
2958  DB  197,113,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm11
2959  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
2960  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
2961  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
2962  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
2963  DB  196,226,125,51,192                  ; vpmovzxwd     %xmm0,%ymm0
2964  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2965  DB  196,98,125,24,21,233,17,0,0         ; vbroadcastss  0x11e9(%rip),%ymm10        # 41cc <_sk_callback_hsw+0x3df>
2966  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
2967  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
2968  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
2969  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
2970  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
2971  DB  196,226,125,51,201                  ; vpmovzxwd     %xmm1,%ymm1
2972  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2973  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
2974  DB  196,193,49,108,211                  ; vpunpcklqdq   %xmm11,%xmm9,%xmm2
2975  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
2976  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
2977  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
2978  DB  196,226,125,51,210                  ; vpmovzxwd     %xmm2,%ymm2
2979  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2980  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
2981  DB  196,193,49,109,219                  ; vpunpckhqdq   %xmm11,%xmm9,%xmm3
2982  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
2983  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
2984  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
2985  DB  196,226,125,51,219                  ; vpmovzxwd     %xmm3,%ymm3
2986  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2987  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
2988  DB  72,173                              ; lods          %ds:(%rsi),%rax
2989  DB  255,224                             ; jmpq          *%rax
2990  DB  196,65,123,16,4,64                  ; vmovsd        (%r8,%rax,2),%xmm8
2991  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
2992  DB  72,131,249,1                        ; cmp           $0x1,%rcx
2993  DB  116,85                              ; je            30b4 <_sk_load_u16_be_hsw+0x148>
2994  DB  196,65,57,22,68,64,8                ; vmovhpd       0x8(%r8,%rax,2),%xmm8,%xmm8
2995  DB  72,131,249,3                        ; cmp           $0x3,%rcx
2996  DB  114,72                              ; jb            30b4 <_sk_load_u16_be_hsw+0x148>
2997  DB  196,193,123,16,84,64,16             ; vmovsd        0x10(%r8,%rax,2),%xmm2
2998  DB  72,131,249,3                        ; cmp           $0x3,%rcx
2999  DB  116,72                              ; je            30c1 <_sk_load_u16_be_hsw+0x155>
3000  DB  196,193,105,22,84,64,24             ; vmovhpd       0x18(%r8,%rax,2),%xmm2,%xmm2
3001  DB  72,131,249,5                        ; cmp           $0x5,%rcx
3002  DB  114,59                              ; jb            30c1 <_sk_load_u16_be_hsw+0x155>
3003  DB  196,193,123,16,92,64,32             ; vmovsd        0x20(%r8,%rax,2),%xmm3
3004  DB  72,131,249,5                        ; cmp           $0x5,%rcx
3005  DB  15,132,6,255,255,255                ; je            2f9d <_sk_load_u16_be_hsw+0x31>
3006  DB  196,193,97,22,92,64,40              ; vmovhpd       0x28(%r8,%rax,2),%xmm3,%xmm3
3007  DB  72,131,249,7                        ; cmp           $0x7,%rcx
3008  DB  15,130,245,254,255,255              ; jb            2f9d <_sk_load_u16_be_hsw+0x31>
3009  DB  196,65,122,126,76,64,48             ; vmovq         0x30(%r8,%rax,2),%xmm9
3010  DB  233,233,254,255,255                 ; jmpq          2f9d <_sk_load_u16_be_hsw+0x31>
3011  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
3012  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
3013  DB  233,220,254,255,255                 ; jmpq          2f9d <_sk_load_u16_be_hsw+0x31>
3014  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
3015  DB  233,211,254,255,255                 ; jmpq          2f9d <_sk_load_u16_be_hsw+0x31>
3016
3017PUBLIC _sk_load_rgb_u16_be_hsw
3018_sk_load_rgb_u16_be_hsw LABEL PROC
3019  DB  72,173                              ; lods          %ds:(%rsi),%rax
3020  DB  76,139,0                            ; mov           (%rax),%r8
3021  DB  72,141,4,127                        ; lea           (%rdi,%rdi,2),%rax
3022  DB  72,133,201                          ; test          %rcx,%rcx
3023  DB  15,133,204,0,0,0                    ; jne           31a8 <_sk_load_rgb_u16_be_hsw+0xde>
3024  DB  196,193,122,111,4,64                ; vmovdqu       (%r8,%rax,2),%xmm0
3025  DB  196,193,122,111,84,64,12            ; vmovdqu       0xc(%r8,%rax,2),%xmm2
3026  DB  196,193,122,111,76,64,24            ; vmovdqu       0x18(%r8,%rax,2),%xmm1
3027  DB  196,193,122,111,92,64,32            ; vmovdqu       0x20(%r8,%rax,2),%xmm3
3028  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
3029  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
3030  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
3031  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
3032  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
3033  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
3034  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
3035  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
3036  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
3037  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
3038  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
3039  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
3040  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
3041  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
3042  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
3043  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
3044  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
3045  DB  196,226,125,51,192                  ; vpmovzxwd     %xmm0,%ymm0
3046  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3047  DB  196,98,125,24,21,122,16,0,0         ; vbroadcastss  0x107a(%rip),%ymm10        # 41d0 <_sk_callback_hsw+0x3e3>
3048  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
3049  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
3050  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
3051  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
3052  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
3053  DB  196,226,125,51,201                  ; vpmovzxwd     %xmm1,%ymm1
3054  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3055  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
3056  DB  197,177,108,211                     ; vpunpcklqdq   %xmm3,%xmm9,%xmm2
3057  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
3058  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
3059  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
3060  DB  196,226,125,51,210                  ; vpmovzxwd     %xmm2,%ymm2
3061  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3062  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
3063  DB  72,173                              ; lods          %ds:(%rsi),%rax
3064  DB  196,226,125,24,29,46,16,0,0         ; vbroadcastss  0x102e(%rip),%ymm3        # 41d4 <_sk_callback_hsw+0x3e7>
3065  DB  255,224                             ; jmpq          *%rax
3066  DB  196,193,121,110,4,64                ; vmovd         (%r8,%rax,2),%xmm0
3067  DB  196,193,121,196,68,64,4,2           ; vpinsrw       $0x2,0x4(%r8,%rax,2),%xmm0,%xmm0
3068  DB  72,131,249,1                        ; cmp           $0x1,%rcx
3069  DB  117,5                               ; jne           31c1 <_sk_load_rgb_u16_be_hsw+0xf7>
3070  DB  233,79,255,255,255                  ; jmpq          3110 <_sk_load_rgb_u16_be_hsw+0x46>
3071  DB  196,193,121,110,76,64,6             ; vmovd         0x6(%r8,%rax,2),%xmm1
3072  DB  196,65,113,196,68,64,10,2           ; vpinsrw       $0x2,0xa(%r8,%rax,2),%xmm1,%xmm8
3073  DB  72,131,249,3                        ; cmp           $0x3,%rcx
3074  DB  114,26                              ; jb            31f0 <_sk_load_rgb_u16_be_hsw+0x126>
3075  DB  196,193,121,110,76,64,12            ; vmovd         0xc(%r8,%rax,2),%xmm1
3076  DB  196,193,113,196,84,64,16,2          ; vpinsrw       $0x2,0x10(%r8,%rax,2),%xmm1,%xmm2
3077  DB  72,131,249,3                        ; cmp           $0x3,%rcx
3078  DB  117,10                              ; jne           31f5 <_sk_load_rgb_u16_be_hsw+0x12b>
3079  DB  233,32,255,255,255                  ; jmpq          3110 <_sk_load_rgb_u16_be_hsw+0x46>
3080  DB  233,27,255,255,255                  ; jmpq          3110 <_sk_load_rgb_u16_be_hsw+0x46>
3081  DB  196,193,121,110,76,64,18            ; vmovd         0x12(%r8,%rax,2),%xmm1
3082  DB  196,65,113,196,76,64,22,2           ; vpinsrw       $0x2,0x16(%r8,%rax,2),%xmm1,%xmm9
3083  DB  72,131,249,5                        ; cmp           $0x5,%rcx
3084  DB  114,26                              ; jb            3224 <_sk_load_rgb_u16_be_hsw+0x15a>
3085  DB  196,193,121,110,76,64,24            ; vmovd         0x18(%r8,%rax,2),%xmm1
3086  DB  196,193,113,196,76,64,28,2          ; vpinsrw       $0x2,0x1c(%r8,%rax,2),%xmm1,%xmm1
3087  DB  72,131,249,5                        ; cmp           $0x5,%rcx
3088  DB  117,10                              ; jne           3229 <_sk_load_rgb_u16_be_hsw+0x15f>
3089  DB  233,236,254,255,255                 ; jmpq          3110 <_sk_load_rgb_u16_be_hsw+0x46>
3090  DB  233,231,254,255,255                 ; jmpq          3110 <_sk_load_rgb_u16_be_hsw+0x46>
3091  DB  196,193,121,110,92,64,30            ; vmovd         0x1e(%r8,%rax,2),%xmm3
3092  DB  196,65,97,196,92,64,34,2            ; vpinsrw       $0x2,0x22(%r8,%rax,2),%xmm3,%xmm11
3093  DB  72,131,249,7                        ; cmp           $0x7,%rcx
3094  DB  114,20                              ; jb            3252 <_sk_load_rgb_u16_be_hsw+0x188>
3095  DB  196,193,121,110,92,64,36            ; vmovd         0x24(%r8,%rax,2),%xmm3
3096  DB  196,193,97,196,92,64,40,2           ; vpinsrw       $0x2,0x28(%r8,%rax,2),%xmm3,%xmm3
3097  DB  233,190,254,255,255                 ; jmpq          3110 <_sk_load_rgb_u16_be_hsw+0x46>
3098  DB  233,185,254,255,255                 ; jmpq          3110 <_sk_load_rgb_u16_be_hsw+0x46>
3099
3100PUBLIC _sk_store_u16_be_hsw
3101_sk_store_u16_be_hsw LABEL PROC
3102  DB  72,173                              ; lods          %ds:(%rsi),%rax
3103  DB  76,139,0                            ; mov           (%rax),%r8
3104  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
3105  DB  196,98,125,24,5,107,15,0,0          ; vbroadcastss  0xf6b(%rip),%ymm8        # 41d8 <_sk_callback_hsw+0x3eb>
3106  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
3107  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
3108  DB  196,67,125,25,202,1                 ; vextractf128  $0x1,%ymm9,%xmm10
3109  DB  196,66,49,43,202                    ; vpackusdw     %xmm10,%xmm9,%xmm9
3110  DB  196,193,41,113,241,8                ; vpsllw        $0x8,%xmm9,%xmm10
3111  DB  196,193,49,113,209,8                ; vpsrlw        $0x8,%xmm9,%xmm9
3112  DB  196,65,41,235,201                   ; vpor          %xmm9,%xmm10,%xmm9
3113  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
3114  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3115  DB  196,67,125,25,211,1                 ; vextractf128  $0x1,%ymm10,%xmm11
3116  DB  196,66,41,43,211                    ; vpackusdw     %xmm11,%xmm10,%xmm10
3117  DB  196,193,33,113,242,8                ; vpsllw        $0x8,%xmm10,%xmm11
3118  DB  196,193,41,113,210,8                ; vpsrlw        $0x8,%xmm10,%xmm10
3119  DB  196,65,33,235,210                   ; vpor          %xmm10,%xmm11,%xmm10
3120  DB  196,65,108,89,216                   ; vmulps        %ymm8,%ymm2,%ymm11
3121  DB  196,65,125,91,219                   ; vcvtps2dq     %ymm11,%ymm11
3122  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
3123  DB  196,66,33,43,220                    ; vpackusdw     %xmm12,%xmm11,%xmm11
3124  DB  196,193,25,113,243,8                ; vpsllw        $0x8,%xmm11,%xmm12
3125  DB  196,193,33,113,211,8                ; vpsrlw        $0x8,%xmm11,%xmm11
3126  DB  196,65,25,235,219                   ; vpor          %xmm11,%xmm12,%xmm11
3127  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
3128  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
3129  DB  196,67,125,25,196,1                 ; vextractf128  $0x1,%ymm8,%xmm12
3130  DB  196,66,57,43,196                    ; vpackusdw     %xmm12,%xmm8,%xmm8
3131  DB  196,193,25,113,240,8                ; vpsllw        $0x8,%xmm8,%xmm12
3132  DB  196,193,57,113,208,8                ; vpsrlw        $0x8,%xmm8,%xmm8
3133  DB  196,65,25,235,192                   ; vpor          %xmm8,%xmm12,%xmm8
3134  DB  196,65,49,97,226                    ; vpunpcklwd    %xmm10,%xmm9,%xmm12
3135  DB  196,65,49,105,234                   ; vpunpckhwd    %xmm10,%xmm9,%xmm13
3136  DB  196,65,33,97,200                    ; vpunpcklwd    %xmm8,%xmm11,%xmm9
3137  DB  196,65,33,105,192                   ; vpunpckhwd    %xmm8,%xmm11,%xmm8
3138  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
3139  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
3140  DB  196,65,17,98,200                    ; vpunpckldq    %xmm8,%xmm13,%xmm9
3141  DB  196,65,17,106,192                   ; vpunpckhdq    %xmm8,%xmm13,%xmm8
3142  DB  72,133,201                          ; test          %rcx,%rcx
3143  DB  117,31                              ; jne           3351 <_sk_store_u16_be_hsw+0xfa>
3144  DB  196,65,120,17,28,64                 ; vmovups       %xmm11,(%r8,%rax,2)
3145  DB  196,65,120,17,84,64,16              ; vmovups       %xmm10,0x10(%r8,%rax,2)
3146  DB  196,65,120,17,76,64,32              ; vmovups       %xmm9,0x20(%r8,%rax,2)
3147  DB  196,65,122,127,68,64,48             ; vmovdqu       %xmm8,0x30(%r8,%rax,2)
3148  DB  72,173                              ; lods          %ds:(%rsi),%rax
3149  DB  255,224                             ; jmpq          *%rax
3150  DB  196,65,121,214,28,64                ; vmovq         %xmm11,(%r8,%rax,2)
3151  DB  72,131,249,1                        ; cmp           $0x1,%rcx
3152  DB  116,240                             ; je            334d <_sk_store_u16_be_hsw+0xf6>
3153  DB  196,65,121,23,92,64,8               ; vmovhpd       %xmm11,0x8(%r8,%rax,2)
3154  DB  72,131,249,3                        ; cmp           $0x3,%rcx
3155  DB  114,227                             ; jb            334d <_sk_store_u16_be_hsw+0xf6>
3156  DB  196,65,121,214,84,64,16             ; vmovq         %xmm10,0x10(%r8,%rax,2)
3157  DB  116,218                             ; je            334d <_sk_store_u16_be_hsw+0xf6>
3158  DB  196,65,121,23,84,64,24              ; vmovhpd       %xmm10,0x18(%r8,%rax,2)
3159  DB  72,131,249,5                        ; cmp           $0x5,%rcx
3160  DB  114,205                             ; jb            334d <_sk_store_u16_be_hsw+0xf6>
3161  DB  196,65,121,214,76,64,32             ; vmovq         %xmm9,0x20(%r8,%rax,2)
3162  DB  116,196                             ; je            334d <_sk_store_u16_be_hsw+0xf6>
3163  DB  196,65,121,23,76,64,40              ; vmovhpd       %xmm9,0x28(%r8,%rax,2)
3164  DB  72,131,249,7                        ; cmp           $0x7,%rcx
3165  DB  114,183                             ; jb            334d <_sk_store_u16_be_hsw+0xf6>
3166  DB  196,65,121,214,68,64,48             ; vmovq         %xmm8,0x30(%r8,%rax,2)
3167  DB  235,174                             ; jmp           334d <_sk_store_u16_be_hsw+0xf6>
3168
3169PUBLIC _sk_load_f32_hsw
3170_sk_load_f32_hsw LABEL PROC
3171  DB  72,173                              ; lods          %ds:(%rsi),%rax
3172  DB  72,131,249,7                        ; cmp           $0x7,%rcx
3173  DB  119,110                             ; ja            3415 <_sk_load_f32_hsw+0x76>
3174  DB  76,139,0                            ; mov           (%rax),%r8
3175  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
3176  DB  76,141,21,135,0,0,0                 ; lea           0x87(%rip),%r10        # 3440 <_sk_load_f32_hsw+0xa1>
3177  DB  73,99,4,138                         ; movslq        (%r10,%rcx,4),%rax
3178  DB  76,1,208                            ; add           %r10,%rax
3179  DB  255,224                             ; jmpq          *%rax
3180  DB  196,3,125,24,68,136,112,1           ; vinsertf128   $0x1,0x70(%r8,%r9,4),%ymm0,%ymm8
3181  DB  196,131,125,24,92,136,96,1          ; vinsertf128   $0x1,0x60(%r8,%r9,4),%ymm0,%ymm3
3182  DB  196,131,125,24,76,136,80,1          ; vinsertf128   $0x1,0x50(%r8,%r9,4),%ymm0,%ymm1
3183  DB  196,131,125,24,84,136,64,1          ; vinsertf128   $0x1,0x40(%r8,%r9,4),%ymm0,%ymm2
3184  DB  196,129,121,16,68,136,48            ; vmovupd       0x30(%r8,%r9,4),%xmm0
3185  DB  196,195,125,13,192,12               ; vblendpd      $0xc,%ymm8,%ymm0,%ymm0
3186  DB  196,1,121,16,68,136,32              ; vmovupd       0x20(%r8,%r9,4),%xmm8
3187  DB  196,99,61,13,203,12                 ; vblendpd      $0xc,%ymm3,%ymm8,%ymm9
3188  DB  196,129,121,16,92,136,16            ; vmovupd       0x10(%r8,%r9,4),%xmm3
3189  DB  196,99,101,13,209,12                ; vblendpd      $0xc,%ymm1,%ymm3,%ymm10
3190  DB  196,129,121,16,12,136               ; vmovupd       (%r8,%r9,4),%xmm1
3191  DB  196,227,117,13,202,12               ; vblendpd      $0xc,%ymm2,%ymm1,%ymm1
3192  DB  196,193,116,20,210                  ; vunpcklps     %ymm10,%ymm1,%ymm2
3193  DB  196,193,116,21,218                  ; vunpckhps     %ymm10,%ymm1,%ymm3
3194  DB  197,180,20,200                      ; vunpcklps     %ymm0,%ymm9,%ymm1
3195  DB  197,52,21,192                       ; vunpckhps     %ymm0,%ymm9,%ymm8
3196  DB  197,237,20,193                      ; vunpcklpd     %ymm1,%ymm2,%ymm0
3197  DB  197,237,21,201                      ; vunpckhpd     %ymm1,%ymm2,%ymm1
3198  DB  196,193,101,20,208                  ; vunpcklpd     %ymm8,%ymm3,%ymm2
3199  DB  196,193,101,21,216                  ; vunpckhpd     %ymm8,%ymm3,%ymm3
3200  DB  72,173                              ; lods          %ds:(%rsi),%rax
3201  DB  255,224                             ; jmpq          *%rax
3202  DB  15,31,0                             ; nopl          (%rax)
3203  DB  130                                 ; (bad)
3204  DB  255                                 ; (bad)
3205  DB  255                                 ; (bad)
3206  DB  255,201                             ; dec           %ecx
3207  DB  255                                 ; (bad)
3208  DB  255                                 ; (bad)
3209  DB  255                                 ; (bad)
3210  DB  188,255,255,255,175                 ; mov           $0xafffffff,%esp
3211  DB  255                                 ; (bad)
3212  DB  255                                 ; (bad)
3213  DB  255,162,255,255,255,154             ; jmpq          *-0x65000001(%rdx)
3214  DB  255                                 ; (bad)
3215  DB  255                                 ; (bad)
3216  DB  255,146,255,255,255,138             ; callq         *-0x75000001(%rdx)
3217  DB  255                                 ; (bad)
3218  DB  255                                 ; (bad)
3219  DB  255                                 ; .byte         0xff
3220
3221PUBLIC _sk_store_f32_hsw
3222_sk_store_f32_hsw LABEL PROC
3223  DB  72,173                              ; lods          %ds:(%rsi),%rax
3224  DB  76,139,0                            ; mov           (%rax),%r8
3225  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
3226  DB  197,124,20,193                      ; vunpcklps     %ymm1,%ymm0,%ymm8
3227  DB  197,124,21,217                      ; vunpckhps     %ymm1,%ymm0,%ymm11
3228  DB  197,108,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm9
3229  DB  197,108,21,227                      ; vunpckhps     %ymm3,%ymm2,%ymm12
3230  DB  196,65,61,20,209                    ; vunpcklpd     %ymm9,%ymm8,%ymm10
3231  DB  196,65,61,21,201                    ; vunpckhpd     %ymm9,%ymm8,%ymm9
3232  DB  196,65,37,20,196                    ; vunpcklpd     %ymm12,%ymm11,%ymm8
3233  DB  196,65,37,21,220                    ; vunpckhpd     %ymm12,%ymm11,%ymm11
3234  DB  72,133,201                          ; test          %rcx,%rcx
3235  DB  117,55                              ; jne           34cd <_sk_store_f32_hsw+0x6d>
3236  DB  196,67,45,24,225,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm12
3237  DB  196,67,61,24,235,1                  ; vinsertf128   $0x1,%xmm11,%ymm8,%ymm13
3238  DB  196,67,45,6,201,49                  ; vperm2f128    $0x31,%ymm9,%ymm10,%ymm9
3239  DB  196,67,61,6,195,49                  ; vperm2f128    $0x31,%ymm11,%ymm8,%ymm8
3240  DB  196,65,125,17,36,128                ; vmovupd       %ymm12,(%r8,%rax,4)
3241  DB  196,65,125,17,108,128,32            ; vmovupd       %ymm13,0x20(%r8,%rax,4)
3242  DB  196,65,125,17,76,128,64             ; vmovupd       %ymm9,0x40(%r8,%rax,4)
3243  DB  196,65,125,17,68,128,96             ; vmovupd       %ymm8,0x60(%r8,%rax,4)
3244  DB  72,173                              ; lods          %ds:(%rsi),%rax
3245  DB  255,224                             ; jmpq          *%rax
3246  DB  196,65,121,17,20,128                ; vmovupd       %xmm10,(%r8,%rax,4)
3247  DB  72,131,249,1                        ; cmp           $0x1,%rcx
3248  DB  116,240                             ; je            34c9 <_sk_store_f32_hsw+0x69>
3249  DB  196,65,121,17,76,128,16             ; vmovupd       %xmm9,0x10(%r8,%rax,4)
3250  DB  72,131,249,3                        ; cmp           $0x3,%rcx
3251  DB  114,227                             ; jb            34c9 <_sk_store_f32_hsw+0x69>
3252  DB  196,65,121,17,68,128,32             ; vmovupd       %xmm8,0x20(%r8,%rax,4)
3253  DB  116,218                             ; je            34c9 <_sk_store_f32_hsw+0x69>
3254  DB  196,65,121,17,92,128,48             ; vmovupd       %xmm11,0x30(%r8,%rax,4)
3255  DB  72,131,249,5                        ; cmp           $0x5,%rcx
3256  DB  114,205                             ; jb            34c9 <_sk_store_f32_hsw+0x69>
3257  DB  196,67,125,25,84,128,64,1           ; vextractf128  $0x1,%ymm10,0x40(%r8,%rax,4)
3258  DB  116,195                             ; je            34c9 <_sk_store_f32_hsw+0x69>
3259  DB  196,67,125,25,76,128,80,1           ; vextractf128  $0x1,%ymm9,0x50(%r8,%rax,4)
3260  DB  72,131,249,7                        ; cmp           $0x7,%rcx
3261  DB  114,181                             ; jb            34c9 <_sk_store_f32_hsw+0x69>
3262  DB  196,67,125,25,68,128,96,1           ; vextractf128  $0x1,%ymm8,0x60(%r8,%rax,4)
3263  DB  235,171                             ; jmp           34c9 <_sk_store_f32_hsw+0x69>
3264
3265PUBLIC _sk_clamp_x_hsw
3266_sk_clamp_x_hsw LABEL PROC
3267  DB  72,173                              ; lods          %ds:(%rsi),%rax
3268  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3269  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
3270  DB  196,98,125,88,0                     ; vpbroadcastd  (%rax),%ymm8
3271  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
3272  DB  196,65,61,254,193                   ; vpaddd        %ymm9,%ymm8,%ymm8
3273  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
3274  DB  72,173                              ; lods          %ds:(%rsi),%rax
3275  DB  255,224                             ; jmpq          *%rax
3276
3277PUBLIC _sk_clamp_y_hsw
3278_sk_clamp_y_hsw LABEL PROC
3279  DB  72,173                              ; lods          %ds:(%rsi),%rax
3280  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3281  DB  197,188,95,201                      ; vmaxps        %ymm1,%ymm8,%ymm1
3282  DB  196,98,125,88,0                     ; vpbroadcastd  (%rax),%ymm8
3283  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
3284  DB  196,65,61,254,193                   ; vpaddd        %ymm9,%ymm8,%ymm8
3285  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
3286  DB  72,173                              ; lods          %ds:(%rsi),%rax
3287  DB  255,224                             ; jmpq          *%rax
3288
3289PUBLIC _sk_repeat_x_hsw
3290_sk_repeat_x_hsw LABEL PROC
3291  DB  72,173                              ; lods          %ds:(%rsi),%rax
3292  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
3293  DB  196,65,124,94,200                   ; vdivps        %ymm8,%ymm0,%ymm9
3294  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
3295  DB  196,98,61,172,200                   ; vfnmadd213ps  %ymm0,%ymm8,%ymm9
3296  DB  197,253,118,192                     ; vpcmpeqd      %ymm0,%ymm0,%ymm0
3297  DB  197,189,254,192                     ; vpaddd        %ymm0,%ymm8,%ymm0
3298  DB  197,180,93,192                      ; vminps        %ymm0,%ymm9,%ymm0
3299  DB  72,173                              ; lods          %ds:(%rsi),%rax
3300  DB  255,224                             ; jmpq          *%rax
3301
3302PUBLIC _sk_repeat_y_hsw
3303_sk_repeat_y_hsw LABEL PROC
3304  DB  72,173                              ; lods          %ds:(%rsi),%rax
3305  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
3306  DB  196,65,116,94,200                   ; vdivps        %ymm8,%ymm1,%ymm9
3307  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
3308  DB  196,98,61,172,201                   ; vfnmadd213ps  %ymm1,%ymm8,%ymm9
3309  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
3310  DB  197,189,254,201                     ; vpaddd        %ymm1,%ymm8,%ymm1
3311  DB  197,180,93,201                      ; vminps        %ymm1,%ymm9,%ymm1
3312  DB  72,173                              ; lods          %ds:(%rsi),%rax
3313  DB  255,224                             ; jmpq          *%rax
3314
3315PUBLIC _sk_mirror_x_hsw
3316_sk_mirror_x_hsw LABEL PROC
3317  DB  72,173                              ; lods          %ds:(%rsi),%rax
3318  DB  197,122,16,0                        ; vmovss        (%rax),%xmm8
3319  DB  196,66,125,24,200                   ; vbroadcastss  %xmm8,%ymm9
3320  DB  196,65,124,92,209                   ; vsubps        %ymm9,%ymm0,%ymm10
3321  DB  196,193,58,88,192                   ; vaddss        %xmm8,%xmm8,%xmm0
3322  DB  196,226,125,24,192                  ; vbroadcastss  %xmm0,%ymm0
3323  DB  197,44,94,192                       ; vdivps        %ymm0,%ymm10,%ymm8
3324  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
3325  DB  196,66,125,172,194                  ; vfnmadd213ps  %ymm10,%ymm0,%ymm8
3326  DB  196,193,60,92,193                   ; vsubps        %ymm9,%ymm8,%ymm0
3327  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3328  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
3329  DB  197,188,84,192                      ; vandps        %ymm0,%ymm8,%ymm0
3330  DB  196,65,61,118,192                   ; vpcmpeqd      %ymm8,%ymm8,%ymm8
3331  DB  196,65,53,254,192                   ; vpaddd        %ymm8,%ymm9,%ymm8
3332  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
3333  DB  72,173                              ; lods          %ds:(%rsi),%rax
3334  DB  255,224                             ; jmpq          *%rax
3335
3336PUBLIC _sk_mirror_y_hsw
3337_sk_mirror_y_hsw LABEL PROC
3338  DB  72,173                              ; lods          %ds:(%rsi),%rax
3339  DB  197,122,16,0                        ; vmovss        (%rax),%xmm8
3340  DB  196,66,125,24,200                   ; vbroadcastss  %xmm8,%ymm9
3341  DB  196,65,116,92,209                   ; vsubps        %ymm9,%ymm1,%ymm10
3342  DB  196,193,58,88,200                   ; vaddss        %xmm8,%xmm8,%xmm1
3343  DB  196,226,125,24,201                  ; vbroadcastss  %xmm1,%ymm1
3344  DB  197,44,94,193                       ; vdivps        %ymm1,%ymm10,%ymm8
3345  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
3346  DB  196,66,117,172,194                  ; vfnmadd213ps  %ymm10,%ymm1,%ymm8
3347  DB  196,193,60,92,201                   ; vsubps        %ymm9,%ymm8,%ymm1
3348  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3349  DB  197,60,92,193                       ; vsubps        %ymm1,%ymm8,%ymm8
3350  DB  197,188,84,201                      ; vandps        %ymm1,%ymm8,%ymm1
3351  DB  196,65,61,118,192                   ; vpcmpeqd      %ymm8,%ymm8,%ymm8
3352  DB  196,65,53,254,192                   ; vpaddd        %ymm8,%ymm9,%ymm8
3353  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
3354  DB  72,173                              ; lods          %ds:(%rsi),%rax
3355  DB  255,224                             ; jmpq          *%rax
3356
3357PUBLIC _sk_luminance_to_alpha_hsw
3358_sk_luminance_to_alpha_hsw LABEL PROC
3359  DB  196,226,125,24,29,133,11,0,0        ; vbroadcastss  0xb85(%rip),%ymm3        # 41dc <_sk_callback_hsw+0x3ef>
3360  DB  196,98,125,24,5,128,11,0,0          ; vbroadcastss  0xb80(%rip),%ymm8        # 41e0 <_sk_callback_hsw+0x3f3>
3361  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
3362  DB  196,226,125,184,203                 ; vfmadd231ps   %ymm3,%ymm0,%ymm1
3363  DB  196,226,125,24,29,113,11,0,0        ; vbroadcastss  0xb71(%rip),%ymm3        # 41e4 <_sk_callback_hsw+0x3f7>
3364  DB  196,226,109,168,217                 ; vfmadd213ps   %ymm1,%ymm2,%ymm3
3365  DB  72,173                              ; lods          %ds:(%rsi),%rax
3366  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
3367  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
3368  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
3369  DB  255,224                             ; jmpq          *%rax
3370
3371PUBLIC _sk_matrix_2x3_hsw
3372_sk_matrix_2x3_hsw LABEL PROC
3373  DB  72,173                              ; lods          %ds:(%rsi),%rax
3374  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3375  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
3376  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
3377  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
3378  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
3379  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
3380  DB  196,98,125,24,88,12                 ; vbroadcastss  0xc(%rax),%ymm11
3381  DB  196,98,125,24,72,20                 ; vbroadcastss  0x14(%rax),%ymm9
3382  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
3383  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
3384  DB  72,173                              ; lods          %ds:(%rsi),%rax
3385  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3386  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
3387  DB  255,224                             ; jmpq          *%rax
3388
3389PUBLIC _sk_matrix_3x4_hsw
3390_sk_matrix_3x4_hsw LABEL PROC
3391  DB  72,173                              ; lods          %ds:(%rsi),%rax
3392  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3393  DB  196,98,125,24,80,12                 ; vbroadcastss  0xc(%rax),%ymm10
3394  DB  196,98,125,24,88,24                 ; vbroadcastss  0x18(%rax),%ymm11
3395  DB  196,98,125,24,64,36                 ; vbroadcastss  0x24(%rax),%ymm8
3396  DB  196,66,109,184,195                  ; vfmadd231ps   %ymm11,%ymm2,%ymm8
3397  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
3398  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
3399  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
3400  DB  196,98,125,24,88,16                 ; vbroadcastss  0x10(%rax),%ymm11
3401  DB  196,98,125,24,96,28                 ; vbroadcastss  0x1c(%rax),%ymm12
3402  DB  196,98,125,24,72,40                 ; vbroadcastss  0x28(%rax),%ymm9
3403  DB  196,66,109,184,204                  ; vfmadd231ps   %ymm12,%ymm2,%ymm9
3404  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
3405  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
3406  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
3407  DB  196,98,125,24,96,20                 ; vbroadcastss  0x14(%rax),%ymm12
3408  DB  196,98,125,24,104,32                ; vbroadcastss  0x20(%rax),%ymm13
3409  DB  196,98,125,24,80,44                 ; vbroadcastss  0x2c(%rax),%ymm10
3410  DB  196,66,109,184,213                  ; vfmadd231ps   %ymm13,%ymm2,%ymm10
3411  DB  196,66,117,184,212                  ; vfmadd231ps   %ymm12,%ymm1,%ymm10
3412  DB  196,66,125,184,211                  ; vfmadd231ps   %ymm11,%ymm0,%ymm10
3413  DB  72,173                              ; lods          %ds:(%rsi),%rax
3414  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3415  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
3416  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
3417  DB  255,224                             ; jmpq          *%rax
3418
3419PUBLIC _sk_matrix_4x5_hsw
3420_sk_matrix_4x5_hsw LABEL PROC
3421  DB  72,173                              ; lods          %ds:(%rsi),%rax
3422  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3423  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
3424  DB  196,98,125,24,88,32                 ; vbroadcastss  0x20(%rax),%ymm11
3425  DB  196,98,125,24,96,48                 ; vbroadcastss  0x30(%rax),%ymm12
3426  DB  196,98,125,24,64,64                 ; vbroadcastss  0x40(%rax),%ymm8
3427  DB  196,66,101,184,196                  ; vfmadd231ps   %ymm12,%ymm3,%ymm8
3428  DB  196,66,109,184,195                  ; vfmadd231ps   %ymm11,%ymm2,%ymm8
3429  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
3430  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
3431  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
3432  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
3433  DB  196,98,125,24,96,36                 ; vbroadcastss  0x24(%rax),%ymm12
3434  DB  196,98,125,24,104,52                ; vbroadcastss  0x34(%rax),%ymm13
3435  DB  196,98,125,24,72,68                 ; vbroadcastss  0x44(%rax),%ymm9
3436  DB  196,66,101,184,205                  ; vfmadd231ps   %ymm13,%ymm3,%ymm9
3437  DB  196,66,109,184,204                  ; vfmadd231ps   %ymm12,%ymm2,%ymm9
3438  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
3439  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
3440  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
3441  DB  196,98,125,24,96,24                 ; vbroadcastss  0x18(%rax),%ymm12
3442  DB  196,98,125,24,104,40                ; vbroadcastss  0x28(%rax),%ymm13
3443  DB  196,98,125,24,112,56                ; vbroadcastss  0x38(%rax),%ymm14
3444  DB  196,98,125,24,80,72                 ; vbroadcastss  0x48(%rax),%ymm10
3445  DB  196,66,101,184,214                  ; vfmadd231ps   %ymm14,%ymm3,%ymm10
3446  DB  196,66,109,184,213                  ; vfmadd231ps   %ymm13,%ymm2,%ymm10
3447  DB  196,66,117,184,212                  ; vfmadd231ps   %ymm12,%ymm1,%ymm10
3448  DB  196,66,125,184,211                  ; vfmadd231ps   %ymm11,%ymm0,%ymm10
3449  DB  196,98,125,24,96,12                 ; vbroadcastss  0xc(%rax),%ymm12
3450  DB  196,98,125,24,104,28                ; vbroadcastss  0x1c(%rax),%ymm13
3451  DB  196,98,125,24,112,44                ; vbroadcastss  0x2c(%rax),%ymm14
3452  DB  196,98,125,24,120,60                ; vbroadcastss  0x3c(%rax),%ymm15
3453  DB  196,98,125,24,88,76                 ; vbroadcastss  0x4c(%rax),%ymm11
3454  DB  196,66,101,184,223                  ; vfmadd231ps   %ymm15,%ymm3,%ymm11
3455  DB  196,66,109,184,222                  ; vfmadd231ps   %ymm14,%ymm2,%ymm11
3456  DB  196,66,117,184,221                  ; vfmadd231ps   %ymm13,%ymm1,%ymm11
3457  DB  196,66,125,184,220                  ; vfmadd231ps   %ymm12,%ymm0,%ymm11
3458  DB  72,173                              ; lods          %ds:(%rsi),%rax
3459  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3460  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
3461  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
3462  DB  197,124,41,219                      ; vmovaps       %ymm11,%ymm3
3463  DB  255,224                             ; jmpq          *%rax
3464
3465PUBLIC _sk_matrix_perspective_hsw
3466_sk_matrix_perspective_hsw LABEL PROC
3467  DB  72,173                              ; lods          %ds:(%rsi),%rax
3468  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
3469  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
3470  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
3471  DB  196,66,117,184,209                  ; vfmadd231ps   %ymm9,%ymm1,%ymm10
3472  DB  196,66,125,184,208                  ; vfmadd231ps   %ymm8,%ymm0,%ymm10
3473  DB  196,98,125,24,64,12                 ; vbroadcastss  0xc(%rax),%ymm8
3474  DB  196,98,125,24,72,16                 ; vbroadcastss  0x10(%rax),%ymm9
3475  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
3476  DB  196,66,117,184,217                  ; vfmadd231ps   %ymm9,%ymm1,%ymm11
3477  DB  196,66,125,184,216                  ; vfmadd231ps   %ymm8,%ymm0,%ymm11
3478  DB  196,98,125,24,64,24                 ; vbroadcastss  0x18(%rax),%ymm8
3479  DB  196,98,125,24,72,28                 ; vbroadcastss  0x1c(%rax),%ymm9
3480  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
3481  DB  196,66,117,184,225                  ; vfmadd231ps   %ymm9,%ymm1,%ymm12
3482  DB  196,66,125,184,224                  ; vfmadd231ps   %ymm8,%ymm0,%ymm12
3483  DB  196,193,124,83,204                  ; vrcpps        %ymm12,%ymm1
3484  DB  197,172,89,193                      ; vmulps        %ymm1,%ymm10,%ymm0
3485  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
3486  DB  72,173                              ; lods          %ds:(%rsi),%rax
3487  DB  255,224                             ; jmpq          *%rax
3488
3489PUBLIC _sk_linear_gradient_hsw
3490_sk_linear_gradient_hsw LABEL PROC
3491  DB  72,173                              ; lods          %ds:(%rsi),%rax
3492  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
3493  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
3494  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
3495  DB  196,98,125,24,72,28                 ; vbroadcastss  0x1c(%rax),%ymm9
3496  DB  76,139,0                            ; mov           (%rax),%r8
3497  DB  77,133,192                          ; test          %r8,%r8
3498  DB  15,132,143,0,0,0                    ; je            394b <_sk_linear_gradient_hsw+0xb5>
3499  DB  72,139,64,8                         ; mov           0x8(%rax),%rax
3500  DB  72,131,192,32                       ; add           $0x20,%rax
3501  DB  196,65,28,87,228                    ; vxorps        %ymm12,%ymm12,%ymm12
3502  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
3503  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
3504  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
3505  DB  196,98,125,24,104,224               ; vbroadcastss  -0x20(%rax),%ymm13
3506  DB  196,65,124,194,237,1                ; vcmpltps      %ymm13,%ymm0,%ymm13
3507  DB  196,98,125,24,112,228               ; vbroadcastss  -0x1c(%rax),%ymm14
3508  DB  196,67,13,74,228,208                ; vblendvps     %ymm13,%ymm12,%ymm14,%ymm12
3509  DB  196,98,125,24,112,232               ; vbroadcastss  -0x18(%rax),%ymm14
3510  DB  196,227,13,74,201,208               ; vblendvps     %ymm13,%ymm1,%ymm14,%ymm1
3511  DB  196,98,125,24,112,236               ; vbroadcastss  -0x14(%rax),%ymm14
3512  DB  196,227,13,74,210,208               ; vblendvps     %ymm13,%ymm2,%ymm14,%ymm2
3513  DB  196,98,125,24,112,240               ; vbroadcastss  -0x10(%rax),%ymm14
3514  DB  196,227,13,74,219,208               ; vblendvps     %ymm13,%ymm3,%ymm14,%ymm3
3515  DB  196,98,125,24,112,244               ; vbroadcastss  -0xc(%rax),%ymm14
3516  DB  196,67,13,74,192,208                ; vblendvps     %ymm13,%ymm8,%ymm14,%ymm8
3517  DB  196,98,125,24,112,248               ; vbroadcastss  -0x8(%rax),%ymm14
3518  DB  196,67,13,74,219,208                ; vblendvps     %ymm13,%ymm11,%ymm14,%ymm11
3519  DB  196,98,125,24,112,252               ; vbroadcastss  -0x4(%rax),%ymm14
3520  DB  196,67,13,74,210,208                ; vblendvps     %ymm13,%ymm10,%ymm14,%ymm10
3521  DB  196,98,125,24,48                    ; vbroadcastss  (%rax),%ymm14
3522  DB  196,67,13,74,201,208                ; vblendvps     %ymm13,%ymm9,%ymm14,%ymm9
3523  DB  72,131,192,36                       ; add           $0x24,%rax
3524  DB  73,255,200                          ; dec           %r8
3525  DB  117,140                             ; jne           38d5 <_sk_linear_gradient_hsw+0x3f>
3526  DB  235,17                              ; jmp           395c <_sk_linear_gradient_hsw+0xc6>
3527  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
3528  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
3529  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
3530  DB  196,65,28,87,228                    ; vxorps        %ymm12,%ymm12,%ymm12
3531  DB  196,66,125,184,196                  ; vfmadd231ps   %ymm12,%ymm0,%ymm8
3532  DB  196,194,125,168,203                 ; vfmadd213ps   %ymm11,%ymm0,%ymm1
3533  DB  196,194,125,168,210                 ; vfmadd213ps   %ymm10,%ymm0,%ymm2
3534  DB  196,194,125,168,217                 ; vfmadd213ps   %ymm9,%ymm0,%ymm3
3535  DB  72,173                              ; lods          %ds:(%rsi),%rax
3536  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3537  DB  255,224                             ; jmpq          *%rax
3538
3539PUBLIC _sk_linear_gradient_2stops_hsw
3540_sk_linear_gradient_2stops_hsw LABEL PROC
3541  DB  72,173                              ; lods          %ds:(%rsi),%rax
3542  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
3543  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
3544  DB  196,98,125,184,193                  ; vfmadd231ps   %ymm1,%ymm0,%ymm8
3545  DB  196,226,125,24,80,4                 ; vbroadcastss  0x4(%rax),%ymm2
3546  DB  196,226,125,24,72,20                ; vbroadcastss  0x14(%rax),%ymm1
3547  DB  196,226,125,184,202                 ; vfmadd231ps   %ymm2,%ymm0,%ymm1
3548  DB  196,226,125,24,88,8                 ; vbroadcastss  0x8(%rax),%ymm3
3549  DB  196,226,125,24,80,24                ; vbroadcastss  0x18(%rax),%ymm2
3550  DB  196,226,125,184,211                 ; vfmadd231ps   %ymm3,%ymm0,%ymm2
3551  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
3552  DB  196,226,125,24,88,28                ; vbroadcastss  0x1c(%rax),%ymm3
3553  DB  196,194,125,184,217                 ; vfmadd231ps   %ymm9,%ymm0,%ymm3
3554  DB  72,173                              ; lods          %ds:(%rsi),%rax
3555  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3556  DB  255,224                             ; jmpq          *%rax
3557
3558PUBLIC _sk_xy_to_polar_unit_hsw
3559_sk_xy_to_polar_unit_hsw LABEL PROC
3560  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3561  DB  197,60,92,200                       ; vsubps        %ymm0,%ymm8,%ymm9
3562  DB  197,52,84,200                       ; vandps        %ymm0,%ymm9,%ymm9
3563  DB  197,60,92,209                       ; vsubps        %ymm1,%ymm8,%ymm10
3564  DB  197,44,84,209                       ; vandps        %ymm1,%ymm10,%ymm10
3565  DB  196,65,52,93,218                    ; vminps        %ymm10,%ymm9,%ymm11
3566  DB  196,65,52,95,226                    ; vmaxps        %ymm10,%ymm9,%ymm12
3567  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
3568  DB  196,65,36,89,227                    ; vmulps        %ymm11,%ymm11,%ymm12
3569  DB  196,98,125,24,45,241,7,0,0          ; vbroadcastss  0x7f1(%rip),%ymm13        # 41e8 <_sk_callback_hsw+0x3fb>
3570  DB  196,98,125,24,53,236,7,0,0          ; vbroadcastss  0x7ec(%rip),%ymm14        # 41ec <_sk_callback_hsw+0x3ff>
3571  DB  196,66,29,184,245                   ; vfmadd231ps   %ymm13,%ymm12,%ymm14
3572  DB  196,98,125,24,45,226,7,0,0          ; vbroadcastss  0x7e2(%rip),%ymm13        # 41f0 <_sk_callback_hsw+0x403>
3573  DB  196,66,29,184,238                   ; vfmadd231ps   %ymm14,%ymm12,%ymm13
3574  DB  196,98,125,24,53,216,7,0,0          ; vbroadcastss  0x7d8(%rip),%ymm14        # 41f4 <_sk_callback_hsw+0x407>
3575  DB  196,66,29,184,245                   ; vfmadd231ps   %ymm13,%ymm12,%ymm14
3576  DB  196,65,36,89,222                    ; vmulps        %ymm14,%ymm11,%ymm11
3577  DB  196,65,52,194,202,1                 ; vcmpltps      %ymm10,%ymm9,%ymm9
3578  DB  196,98,125,24,21,195,7,0,0          ; vbroadcastss  0x7c3(%rip),%ymm10        # 41f8 <_sk_callback_hsw+0x40b>
3579  DB  196,65,44,92,211                    ; vsubps        %ymm11,%ymm10,%ymm10
3580  DB  196,67,37,74,202,144                ; vblendvps     %ymm9,%ymm10,%ymm11,%ymm9
3581  DB  196,193,124,194,192,1               ; vcmpltps      %ymm8,%ymm0,%ymm0
3582  DB  196,98,125,24,21,173,7,0,0          ; vbroadcastss  0x7ad(%rip),%ymm10        # 41fc <_sk_callback_hsw+0x40f>
3583  DB  196,65,44,92,209                    ; vsubps        %ymm9,%ymm10,%ymm10
3584  DB  196,195,53,74,194,0                 ; vblendvps     %ymm0,%ymm10,%ymm9,%ymm0
3585  DB  196,65,116,194,200,1                ; vcmpltps      %ymm8,%ymm1,%ymm9
3586  DB  196,98,125,24,21,151,7,0,0          ; vbroadcastss  0x797(%rip),%ymm10        # 4200 <_sk_callback_hsw+0x413>
3587  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
3588  DB  196,195,125,74,194,144              ; vblendvps     %ymm9,%ymm10,%ymm0,%ymm0
3589  DB  196,65,124,194,200,3                ; vcmpunordps   %ymm8,%ymm0,%ymm9
3590  DB  196,195,125,74,192,144              ; vblendvps     %ymm9,%ymm8,%ymm0,%ymm0
3591  DB  72,173                              ; lods          %ds:(%rsi),%rax
3592  DB  255,224                             ; jmpq          *%rax
3593
3594PUBLIC _sk_save_xy_hsw
3595_sk_save_xy_hsw LABEL PROC
3596  DB  72,173                              ; lods          %ds:(%rsi),%rax
3597  DB  196,98,125,24,5,118,7,0,0           ; vbroadcastss  0x776(%rip),%ymm8        # 4204 <_sk_callback_hsw+0x417>
3598  DB  196,65,124,88,200                   ; vaddps        %ymm8,%ymm0,%ymm9
3599  DB  196,67,125,8,209,1                  ; vroundps      $0x1,%ymm9,%ymm10
3600  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
3601  DB  196,65,116,88,192                   ; vaddps        %ymm8,%ymm1,%ymm8
3602  DB  196,67,125,8,208,1                  ; vroundps      $0x1,%ymm8,%ymm10
3603  DB  196,65,60,92,194                    ; vsubps        %ymm10,%ymm8,%ymm8
3604  DB  197,252,17,0                        ; vmovups       %ymm0,(%rax)
3605  DB  197,252,17,72,32                    ; vmovups       %ymm1,0x20(%rax)
3606  DB  197,124,17,72,64                    ; vmovups       %ymm9,0x40(%rax)
3607  DB  197,124,17,64,96                    ; vmovups       %ymm8,0x60(%rax)
3608  DB  72,173                              ; lods          %ds:(%rsi),%rax
3609  DB  255,224                             ; jmpq          *%rax
3610
3611PUBLIC _sk_accumulate_hsw
3612_sk_accumulate_hsw LABEL PROC
3613  DB  72,173                              ; lods          %ds:(%rsi),%rax
3614  DB  197,124,16,128,128,0,0,0            ; vmovups       0x80(%rax),%ymm8
3615  DB  197,60,89,128,160,0,0,0             ; vmulps        0xa0(%rax),%ymm8,%ymm8
3616  DB  196,226,61,184,224                  ; vfmadd231ps   %ymm0,%ymm8,%ymm4
3617  DB  196,226,61,184,233                  ; vfmadd231ps   %ymm1,%ymm8,%ymm5
3618  DB  196,226,61,184,242                  ; vfmadd231ps   %ymm2,%ymm8,%ymm6
3619  DB  196,98,101,168,199                  ; vfmadd213ps   %ymm7,%ymm3,%ymm8
3620  DB  72,173                              ; lods          %ds:(%rsi),%rax
3621  DB  197,124,41,199                      ; vmovaps       %ymm8,%ymm7
3622  DB  255,224                             ; jmpq          *%rax
3623
3624PUBLIC _sk_bilinear_nx_hsw
3625_sk_bilinear_nx_hsw LABEL PROC
3626  DB  72,173                              ; lods          %ds:(%rsi),%rax
3627  DB  196,226,125,24,5,10,7,0,0           ; vbroadcastss  0x70a(%rip),%ymm0        # 4208 <_sk_callback_hsw+0x41b>
3628  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
3629  DB  196,98,125,24,5,1,7,0,0             ; vbroadcastss  0x701(%rip),%ymm8        # 420c <_sk_callback_hsw+0x41f>
3630  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
3631  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
3632  DB  72,173                              ; lods          %ds:(%rsi),%rax
3633  DB  255,224                             ; jmpq          *%rax
3634
3635PUBLIC _sk_bilinear_px_hsw
3636_sk_bilinear_px_hsw LABEL PROC
3637  DB  72,173                              ; lods          %ds:(%rsi),%rax
3638  DB  196,226,125,24,5,233,6,0,0          ; vbroadcastss  0x6e9(%rip),%ymm0        # 4210 <_sk_callback_hsw+0x423>
3639  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
3640  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
3641  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
3642  DB  72,173                              ; lods          %ds:(%rsi),%rax
3643  DB  255,224                             ; jmpq          *%rax
3644
3645PUBLIC _sk_bilinear_ny_hsw
3646_sk_bilinear_ny_hsw LABEL PROC
3647  DB  72,173                              ; lods          %ds:(%rsi),%rax
3648  DB  196,226,125,24,13,205,6,0,0         ; vbroadcastss  0x6cd(%rip),%ymm1        # 4214 <_sk_callback_hsw+0x427>
3649  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
3650  DB  196,98,125,24,5,195,6,0,0           ; vbroadcastss  0x6c3(%rip),%ymm8        # 4218 <_sk_callback_hsw+0x42b>
3651  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
3652  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
3653  DB  72,173                              ; lods          %ds:(%rsi),%rax
3654  DB  255,224                             ; jmpq          *%rax
3655
3656PUBLIC _sk_bilinear_py_hsw
3657_sk_bilinear_py_hsw LABEL PROC
3658  DB  72,173                              ; lods          %ds:(%rsi),%rax
3659  DB  196,226,125,24,13,171,6,0,0         ; vbroadcastss  0x6ab(%rip),%ymm1        # 421c <_sk_callback_hsw+0x42f>
3660  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
3661  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
3662  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
3663  DB  72,173                              ; lods          %ds:(%rsi),%rax
3664  DB  255,224                             ; jmpq          *%rax
3665
3666PUBLIC _sk_bicubic_n3x_hsw
3667_sk_bicubic_n3x_hsw LABEL PROC
3668  DB  72,173                              ; lods          %ds:(%rsi),%rax
3669  DB  196,226,125,24,5,142,6,0,0          ; vbroadcastss  0x68e(%rip),%ymm0        # 4220 <_sk_callback_hsw+0x433>
3670  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
3671  DB  196,98,125,24,5,133,6,0,0           ; vbroadcastss  0x685(%rip),%ymm8        # 4224 <_sk_callback_hsw+0x437>
3672  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
3673  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
3674  DB  196,98,125,24,21,118,6,0,0          ; vbroadcastss  0x676(%rip),%ymm10        # 4228 <_sk_callback_hsw+0x43b>
3675  DB  196,98,125,24,29,113,6,0,0          ; vbroadcastss  0x671(%rip),%ymm11        # 422c <_sk_callback_hsw+0x43f>
3676  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
3677  DB  196,65,36,89,193                    ; vmulps        %ymm9,%ymm11,%ymm8
3678  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
3679  DB  72,173                              ; lods          %ds:(%rsi),%rax
3680  DB  255,224                             ; jmpq          *%rax
3681
3682PUBLIC _sk_bicubic_n1x_hsw
3683_sk_bicubic_n1x_hsw LABEL PROC
3684  DB  72,173                              ; lods          %ds:(%rsi),%rax
3685  DB  196,226,125,24,5,84,6,0,0           ; vbroadcastss  0x654(%rip),%ymm0        # 4230 <_sk_callback_hsw+0x443>
3686  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
3687  DB  196,98,125,24,5,75,6,0,0            ; vbroadcastss  0x64b(%rip),%ymm8        # 4234 <_sk_callback_hsw+0x447>
3688  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
3689  DB  196,98,125,24,13,65,6,0,0           ; vbroadcastss  0x641(%rip),%ymm9        # 4238 <_sk_callback_hsw+0x44b>
3690  DB  196,98,125,24,21,60,6,0,0           ; vbroadcastss  0x63c(%rip),%ymm10        # 423c <_sk_callback_hsw+0x44f>
3691  DB  196,66,61,168,209                   ; vfmadd213ps   %ymm9,%ymm8,%ymm10
3692  DB  196,98,125,24,13,50,6,0,0           ; vbroadcastss  0x632(%rip),%ymm9        # 4240 <_sk_callback_hsw+0x453>
3693  DB  196,66,61,184,202                   ; vfmadd231ps   %ymm10,%ymm8,%ymm9
3694  DB  196,98,125,24,21,40,6,0,0           ; vbroadcastss  0x628(%rip),%ymm10        # 4244 <_sk_callback_hsw+0x457>
3695  DB  196,66,61,184,209                   ; vfmadd231ps   %ymm9,%ymm8,%ymm10
3696  DB  197,124,17,144,128,0,0,0            ; vmovups       %ymm10,0x80(%rax)
3697  DB  72,173                              ; lods          %ds:(%rsi),%rax
3698  DB  255,224                             ; jmpq          *%rax
3699
3700PUBLIC _sk_bicubic_p1x_hsw
3701_sk_bicubic_p1x_hsw LABEL PROC
3702  DB  72,173                              ; lods          %ds:(%rsi),%rax
3703  DB  196,98,125,24,5,16,6,0,0            ; vbroadcastss  0x610(%rip),%ymm8        # 4248 <_sk_callback_hsw+0x45b>
3704  DB  197,188,88,0                        ; vaddps        (%rax),%ymm8,%ymm0
3705  DB  197,124,16,72,64                    ; vmovups       0x40(%rax),%ymm9
3706  DB  196,98,125,24,21,2,6,0,0            ; vbroadcastss  0x602(%rip),%ymm10        # 424c <_sk_callback_hsw+0x45f>
3707  DB  196,98,125,24,29,253,5,0,0          ; vbroadcastss  0x5fd(%rip),%ymm11        # 4250 <_sk_callback_hsw+0x463>
3708  DB  196,66,53,168,218                   ; vfmadd213ps   %ymm10,%ymm9,%ymm11
3709  DB  196,66,53,168,216                   ; vfmadd213ps   %ymm8,%ymm9,%ymm11
3710  DB  196,98,125,24,5,238,5,0,0           ; vbroadcastss  0x5ee(%rip),%ymm8        # 4254 <_sk_callback_hsw+0x467>
3711  DB  196,66,53,184,195                   ; vfmadd231ps   %ymm11,%ymm9,%ymm8
3712  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
3713  DB  72,173                              ; lods          %ds:(%rsi),%rax
3714  DB  255,224                             ; jmpq          *%rax
3715
3716PUBLIC _sk_bicubic_p3x_hsw
3717_sk_bicubic_p3x_hsw LABEL PROC
3718  DB  72,173                              ; lods          %ds:(%rsi),%rax
3719  DB  196,226,125,24,5,214,5,0,0          ; vbroadcastss  0x5d6(%rip),%ymm0        # 4258 <_sk_callback_hsw+0x46b>
3720  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
3721  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
3722  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
3723  DB  196,98,125,24,21,195,5,0,0          ; vbroadcastss  0x5c3(%rip),%ymm10        # 425c <_sk_callback_hsw+0x46f>
3724  DB  196,98,125,24,29,190,5,0,0          ; vbroadcastss  0x5be(%rip),%ymm11        # 4260 <_sk_callback_hsw+0x473>
3725  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
3726  DB  196,65,52,89,195                    ; vmulps        %ymm11,%ymm9,%ymm8
3727  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
3728  DB  72,173                              ; lods          %ds:(%rsi),%rax
3729  DB  255,224                             ; jmpq          *%rax
3730
3731PUBLIC _sk_bicubic_n3y_hsw
3732_sk_bicubic_n3y_hsw LABEL PROC
3733  DB  72,173                              ; lods          %ds:(%rsi),%rax
3734  DB  196,226,125,24,13,161,5,0,0         ; vbroadcastss  0x5a1(%rip),%ymm1        # 4264 <_sk_callback_hsw+0x477>
3735  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
3736  DB  196,98,125,24,5,151,5,0,0           ; vbroadcastss  0x597(%rip),%ymm8        # 4268 <_sk_callback_hsw+0x47b>
3737  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
3738  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
3739  DB  196,98,125,24,21,136,5,0,0          ; vbroadcastss  0x588(%rip),%ymm10        # 426c <_sk_callback_hsw+0x47f>
3740  DB  196,98,125,24,29,131,5,0,0          ; vbroadcastss  0x583(%rip),%ymm11        # 4270 <_sk_callback_hsw+0x483>
3741  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
3742  DB  196,65,36,89,193                    ; vmulps        %ymm9,%ymm11,%ymm8
3743  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
3744  DB  72,173                              ; lods          %ds:(%rsi),%rax
3745  DB  255,224                             ; jmpq          *%rax
3746
3747PUBLIC _sk_bicubic_n1y_hsw
3748_sk_bicubic_n1y_hsw LABEL PROC
3749  DB  72,173                              ; lods          %ds:(%rsi),%rax
3750  DB  196,226,125,24,13,102,5,0,0         ; vbroadcastss  0x566(%rip),%ymm1        # 4274 <_sk_callback_hsw+0x487>
3751  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
3752  DB  196,98,125,24,5,92,5,0,0            ; vbroadcastss  0x55c(%rip),%ymm8        # 4278 <_sk_callback_hsw+0x48b>
3753  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
3754  DB  196,98,125,24,13,82,5,0,0           ; vbroadcastss  0x552(%rip),%ymm9        # 427c <_sk_callback_hsw+0x48f>
3755  DB  196,98,125,24,21,77,5,0,0           ; vbroadcastss  0x54d(%rip),%ymm10        # 4280 <_sk_callback_hsw+0x493>
3756  DB  196,66,61,168,209                   ; vfmadd213ps   %ymm9,%ymm8,%ymm10
3757  DB  196,98,125,24,13,67,5,0,0           ; vbroadcastss  0x543(%rip),%ymm9        # 4284 <_sk_callback_hsw+0x497>
3758  DB  196,66,61,184,202                   ; vfmadd231ps   %ymm10,%ymm8,%ymm9
3759  DB  196,98,125,24,21,57,5,0,0           ; vbroadcastss  0x539(%rip),%ymm10        # 4288 <_sk_callback_hsw+0x49b>
3760  DB  196,66,61,184,209                   ; vfmadd231ps   %ymm9,%ymm8,%ymm10
3761  DB  197,124,17,144,160,0,0,0            ; vmovups       %ymm10,0xa0(%rax)
3762  DB  72,173                              ; lods          %ds:(%rsi),%rax
3763  DB  255,224                             ; jmpq          *%rax
3764
3765PUBLIC _sk_bicubic_p1y_hsw
3766_sk_bicubic_p1y_hsw LABEL PROC
3767  DB  72,173                              ; lods          %ds:(%rsi),%rax
3768  DB  196,98,125,24,5,33,5,0,0            ; vbroadcastss  0x521(%rip),%ymm8        # 428c <_sk_callback_hsw+0x49f>
3769  DB  197,188,88,72,32                    ; vaddps        0x20(%rax),%ymm8,%ymm1
3770  DB  197,124,16,72,96                    ; vmovups       0x60(%rax),%ymm9
3771  DB  196,98,125,24,21,18,5,0,0           ; vbroadcastss  0x512(%rip),%ymm10        # 4290 <_sk_callback_hsw+0x4a3>
3772  DB  196,98,125,24,29,13,5,0,0           ; vbroadcastss  0x50d(%rip),%ymm11        # 4294 <_sk_callback_hsw+0x4a7>
3773  DB  196,66,53,168,218                   ; vfmadd213ps   %ymm10,%ymm9,%ymm11
3774  DB  196,66,53,168,216                   ; vfmadd213ps   %ymm8,%ymm9,%ymm11
3775  DB  196,98,125,24,5,254,4,0,0           ; vbroadcastss  0x4fe(%rip),%ymm8        # 4298 <_sk_callback_hsw+0x4ab>
3776  DB  196,66,53,184,195                   ; vfmadd231ps   %ymm11,%ymm9,%ymm8
3777  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
3778  DB  72,173                              ; lods          %ds:(%rsi),%rax
3779  DB  255,224                             ; jmpq          *%rax
3780
3781PUBLIC _sk_bicubic_p3y_hsw
3782_sk_bicubic_p3y_hsw LABEL PROC
3783  DB  72,173                              ; lods          %ds:(%rsi),%rax
3784  DB  196,226,125,24,13,230,4,0,0         ; vbroadcastss  0x4e6(%rip),%ymm1        # 429c <_sk_callback_hsw+0x4af>
3785  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
3786  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
3787  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
3788  DB  196,98,125,24,21,210,4,0,0          ; vbroadcastss  0x4d2(%rip),%ymm10        # 42a0 <_sk_callback_hsw+0x4b3>
3789  DB  196,98,125,24,29,205,4,0,0          ; vbroadcastss  0x4cd(%rip),%ymm11        # 42a4 <_sk_callback_hsw+0x4b7>
3790  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
3791  DB  196,65,52,89,195                    ; vmulps        %ymm11,%ymm9,%ymm8
3792  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
3793  DB  72,173                              ; lods          %ds:(%rsi),%rax
3794  DB  255,224                             ; jmpq          *%rax
3795
3796PUBLIC _sk_callback_hsw
3797_sk_callback_hsw LABEL PROC
3798  DB  65,87                               ; push          %r15
3799  DB  65,86                               ; push          %r14
3800  DB  83                                  ; push          %rbx
3801  DB  72,129,236,160,0,0,0                ; sub           $0xa0,%rsp
3802  DB  197,252,17,188,36,128,0,0,0         ; vmovups       %ymm7,0x80(%rsp)
3803  DB  197,252,17,116,36,96                ; vmovups       %ymm6,0x60(%rsp)
3804  DB  197,252,17,108,36,64                ; vmovups       %ymm5,0x40(%rsp)
3805  DB  197,252,17,100,36,32                ; vmovups       %ymm4,0x20(%rsp)
3806  DB  73,137,207                          ; mov           %rcx,%r15
3807  DB  73,137,214                          ; mov           %rdx,%r14
3808  DB  72,173                              ; lods          %ds:(%rsi),%rax
3809  DB  72,137,195                          ; mov           %rax,%rbx
3810  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
3811  DB  197,252,21,193                      ; vunpckhps     %ymm1,%ymm0,%ymm0
3812  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
3813  DB  197,236,21,211                      ; vunpckhps     %ymm3,%ymm2,%ymm2
3814  DB  197,221,20,217                      ; vunpcklpd     %ymm1,%ymm4,%ymm3
3815  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
3816  DB  197,253,20,226                      ; vunpcklpd     %ymm2,%ymm0,%ymm4
3817  DB  197,253,21,194                      ; vunpckhpd     %ymm2,%ymm0,%ymm0
3818  DB  196,227,101,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm2
3819  DB  196,227,93,24,232,1                 ; vinsertf128   $0x1,%xmm0,%ymm4,%ymm5
3820  DB  196,227,101,6,201,49                ; vperm2f128    $0x31,%ymm1,%ymm3,%ymm1
3821  DB  196,227,93,6,192,49                 ; vperm2f128    $0x31,%ymm0,%ymm4,%ymm0
3822  DB  197,253,17,83,8                     ; vmovupd       %ymm2,0x8(%rbx)
3823  DB  197,253,17,107,40                   ; vmovupd       %ymm5,0x28(%rbx)
3824  DB  197,253,17,75,72                    ; vmovupd       %ymm1,0x48(%rbx)
3825  DB  197,253,17,67,104                   ; vmovupd       %ymm0,0x68(%rbx)
3826  DB  77,133,255                          ; test          %r15,%r15
3827  DB  186,8,0,0,0                         ; mov           $0x8,%edx
3828  DB  65,15,69,215                        ; cmovne        %r15d,%edx
3829  DB  72,137,217                          ; mov           %rbx,%rcx
3830  DB  197,248,119                         ; vzeroupper
3831  DB  255,19                              ; callq         *(%rbx)
3832  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
3833  DB  197,248,16,0                        ; vmovups       (%rax),%xmm0
3834  DB  197,248,16,72,16                    ; vmovups       0x10(%rax),%xmm1
3835  DB  197,248,16,80,32                    ; vmovups       0x20(%rax),%xmm2
3836  DB  197,248,16,88,48                    ; vmovups       0x30(%rax),%xmm3
3837  DB  196,227,101,24,88,112,1             ; vinsertf128   $0x1,0x70(%rax),%ymm3,%ymm3
3838  DB  196,227,109,24,80,96,1              ; vinsertf128   $0x1,0x60(%rax),%ymm2,%ymm2
3839  DB  196,227,117,24,72,80,1              ; vinsertf128   $0x1,0x50(%rax),%ymm1,%ymm1
3840  DB  196,227,125,24,64,64,1              ; vinsertf128   $0x1,0x40(%rax),%ymm0,%ymm0
3841  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
3842  DB  197,252,21,233                      ; vunpckhps     %ymm1,%ymm0,%ymm5
3843  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
3844  DB  197,236,21,219                      ; vunpckhps     %ymm3,%ymm2,%ymm3
3845  DB  197,221,20,193                      ; vunpcklpd     %ymm1,%ymm4,%ymm0
3846  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
3847  DB  197,213,20,211                      ; vunpcklpd     %ymm3,%ymm5,%ymm2
3848  DB  197,213,21,219                      ; vunpckhpd     %ymm3,%ymm5,%ymm3
3849  DB  72,173                              ; lods          %ds:(%rsi),%rax
3850  DB  76,137,242                          ; mov           %r14,%rdx
3851  DB  76,137,249                          ; mov           %r15,%rcx
3852  DB  197,252,16,100,36,32                ; vmovups       0x20(%rsp),%ymm4
3853  DB  197,252,16,108,36,64                ; vmovups       0x40(%rsp),%ymm5
3854  DB  197,252,16,116,36,96                ; vmovups       0x60(%rsp),%ymm6
3855  DB  197,252,16,188,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm7
3856  DB  72,129,196,160,0,0,0                ; add           $0xa0,%rsp
3857  DB  91                                  ; pop           %rbx
3858  DB  65,94                               ; pop           %r14
3859  DB  65,95                               ; pop           %r15
3860  DB  255,224                             ; jmpq          *%rax
3861
3862ALIGN 4
3863  DB  0,0                                 ; add           %al,(%rax)
3864  DB  0,63                                ; add           %bh,(%rdi)
3865  DB  0,0                                 ; add           %al,(%rax)
3866  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
3867  DB  0,0                                 ; add           %al,(%rax)
3868  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
3869  DB  0,0                                 ; add           %al,(%rax)
3870  DB  2,0                                 ; add           (%rax),%al
3871  DB  0,0                                 ; add           %al,(%rax)
3872  DB  0,0                                 ; add           %al,(%rax)
3873  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
3874  DB  252                                 ; cld
3875  DB  190,0,0,128,63                      ; mov           $0x3f800000,%esi
3876  DB  0,0                                 ; add           %al,(%rax)
3877  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3878  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3879  DB  63                                  ; (bad)
3880  DB  0,0                                 ; add           %al,(%rax)
3881  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3882  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3883  DB  63                                  ; (bad)
3884  DB  0,0                                 ; add           %al,(%rax)
3885  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3886  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3887  DB  63                                  ; (bad)
3888  DB  0,0                                 ; add           %al,(%rax)
3889  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3890  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3891  DB  63                                  ; (bad)
3892  DB  0,0                                 ; add           %al,(%rax)
3893  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3894  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3895  DB  63                                  ; (bad)
3896  DB  0,0                                 ; add           %al,(%rax)
3897  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3898  DB  0,128,191,0,0,224                   ; add           %al,-0x1fffff41(%rax)
3899  DB  64,0,0                              ; add           %al,(%rax)
3900  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3901  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
3902  DB  63                                  ; (bad)
3903  DB  145                                 ; xchg          %eax,%ecx
3904  DB  131,158,61,92,143,50,63             ; sbbl          $0x3f,0x328f5c3d(%rsi)
3905  DB  154                                 ; (bad)
3906  DB  153                                 ; cltd
3907  DB  153                                 ; cltd
3908  DB  62,10,215                           ; ds            or  %bh,%dl
3909  DB  35,59                               ; and           (%rbx),%edi
3910  DB  174                                 ; scas          %es:(%rdi),%al
3911  DB  71,97                               ; rex.RXB       (bad)
3912  DB  61,41,92,71,65                      ; cmp           $0x41475c29,%eax
3913  DB  168,87                              ; test          $0x57,%al
3914  DB  202,189,206                         ; lret          $0xcebd
3915  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
3916  DB  48,63                               ; xor           %bh,(%rdi)
3917  DB  194,135,210                         ; retq          $0xd287
3918  DB  62,0,0                              ; add           %al,%ds:(%rax)
3919  DB  128,63,4                            ; cmpb          $0x4,(%rdi)
3920  DB  231,140                             ; out           %eax,$0x8c
3921  DB  59,0                                ; cmp           (%rax),%eax
3922  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
3923  DB  64,0,0                              ; add           %al,(%rax)
3924  DB  0,64,0                              ; add           %al,0x0(%rax)
3925  DB  0,128,64,171,170,42                 ; add           %al,0x2aaaab40(%rax)
3926  DB  62,0,0                              ; add           %al,%ds:(%rax)
3927  DB  0,63                                ; add           %bh,(%rdi)
3928  DB  0,0                                 ; add           %al,(%rax)
3929  DB  0,63                                ; add           %bh,(%rdi)
3930  DB  0,0                                 ; add           %al,(%rax)
3931  DB  0,64,171                            ; add           %al,-0x55(%rax)
3932  DB  170                                 ; stos          %al,%es:(%rdi)
3933  DB  170                                 ; stos          %al,%es:(%rdi)
3934  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
3935  DB  170                                 ; stos          %al,%es:(%rdi)
3936  DB  42,63                               ; sub           (%rdi),%bh
3937  DB  0,0                                 ; add           %al,(%rax)
3938  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
3939  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
3940  DB  42,62                               ; sub           (%rsi),%bh
3941  DB  171                                 ; stos          %eax,%es:(%rdi)
3942  DB  170                                 ; stos          %al,%es:(%rdi)
3943  DB  170                                 ; stos          %al,%es:(%rdi)
3944  DB  190,129,128,128,59                  ; mov           $0x3b808081,%esi
3945  DB  129,128,128,59,0,248,0,0,8,33       ; addl          $0x21080000,-0x7ffc480(%rax)
3946  DB  132,55                              ; test          %dh,(%rdi)
3947  DB  224,7                               ; loopne        3ff9 <.literal4+0xf1>
3948  DB  0,0                                 ; add           %al,(%rax)
3949  DB  33,8                                ; and           %ecx,(%rax)
3950  DB  2,58                                ; add           (%rdx),%bh
3951  DB  31                                  ; (bad)
3952  DB  0,0                                 ; add           %al,(%rax)
3953  DB  0,8                                 ; add           %cl,(%rax)
3954  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
3955  DB  129,128,128,59,128,0,128,55,0,0     ; addl          $0x3780,0x803b80(%rax)
3956  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
3957  DB  0,127,67                            ; add           %bh,0x43(%rdi)
3958  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
3959  DB  0,52,255                            ; add           %dh,(%rdi,%rdi,8)
3960  DB  255                                 ; (bad)
3961  DB  127,0                               ; jg            4024 <.literal4+0x11c>
3962  DB  0,0                                 ; add           %al,(%rax)
3963  DB  0,63                                ; add           %bh,(%rdi)
3964  DB  119,115                             ; ja            409d <.literal4+0x195>
3965  DB  248                                 ; clc
3966  DB  194,117,191                         ; retq          $0xbf75
3967  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
3968  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
3969  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
3970  DB  154                                 ; (bad)
3971  DB  64,254                              ; rex           (bad)
3972  DB  210,221                             ; rcr           %cl,%ch
3973  DB  65,0,0                              ; add           %al,(%r8)
3974  DB  0,75,0                              ; add           %cl,0x0(%rbx)
3975  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
3976  DB  52,255                              ; xor           $0xff,%al
3977  DB  255                                 ; (bad)
3978  DB  127,0                               ; jg            4058 <.literal4+0x150>
3979  DB  0,0                                 ; add           %al,(%rax)
3980  DB  0,63                                ; add           %bh,(%rdi)
3981  DB  119,115                             ; ja            40d1 <.literal4+0x1c9>
3982  DB  248                                 ; clc
3983  DB  194,117,191                         ; retq          $0xbf75
3984  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
3985  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
3986  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
3987  DB  154                                 ; (bad)
3988  DB  64,254                              ; rex           (bad)
3989  DB  210,221                             ; rcr           %cl,%ch
3990  DB  65,0,0                              ; add           %al,(%r8)
3991  DB  0,75,0                              ; add           %cl,0x0(%rbx)
3992  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
3993  DB  52,255                              ; xor           $0xff,%al
3994  DB  255                                 ; (bad)
3995  DB  127,0                               ; jg            408c <.literal4+0x184>
3996  DB  0,0                                 ; add           %al,(%rax)
3997  DB  0,63                                ; add           %bh,(%rdi)
3998  DB  119,115                             ; ja            4105 <.literal4+0x1fd>
3999  DB  248                                 ; clc
4000  DB  194,117,191                         ; retq          $0xbf75
4001  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
4002  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
4003  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
4004  DB  154                                 ; (bad)
4005  DB  64,254                              ; rex           (bad)
4006  DB  210,221                             ; rcr           %cl,%ch
4007  DB  65,0,0                              ; add           %al,(%r8)
4008  DB  0,75,0                              ; add           %cl,0x0(%rbx)
4009  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
4010  DB  52,255                              ; xor           $0xff,%al
4011  DB  255                                 ; (bad)
4012  DB  127,0                               ; jg            40c0 <.literal4+0x1b8>
4013  DB  0,0                                 ; add           %al,(%rax)
4014  DB  0,63                                ; add           %bh,(%rdi)
4015  DB  119,115                             ; ja            4139 <.literal4+0x231>
4016  DB  248                                 ; clc
4017  DB  194,117,191                         ; retq          $0xbf75
4018  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
4019  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
4020  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
4021  DB  154                                 ; (bad)
4022  DB  64,254                              ; rex           (bad)
4023  DB  210,221                             ; rcr           %cl,%ch
4024  DB  65,0,0                              ; add           %al,(%r8)
4025  DB  0,75,0                              ; add           %cl,0x0(%rbx)
4026  DB  0,128,63,0,0,200                    ; add           %al,-0x37ffffc1(%rax)
4027  DB  66,0,0                              ; rex.X         add %al,(%rax)
4028  DB  127,67                              ; jg            4137 <.literal4+0x22f>
4029  DB  0,0                                 ; add           %al,(%rax)
4030  DB  0,195                               ; add           %al,%bl
4031  DB  0,0                                 ; add           %al,(%rax)
4032  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
4033  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
4034  DB  59,10                               ; cmp           (%rdx),%ecx
4035  DB  215                                 ; xlat          %ds:(%rbx)
4036  DB  163,59,194,24,17,60,203,61,13       ; movabs        %eax,0xd3dcb3c1118c23b
4037  DB  190,80,128,3,62                     ; mov           $0x3e038050,%esi
4038  DB  31                                  ; (bad)
4039  DB  215                                 ; xlat          %ds:(%rbx)
4040  DB  118,63                              ; jbe           4157 <.literal4+0x24f>
4041  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
4042  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
4043  DB  127,67                              ; jg            416b <.literal4+0x263>
4044  DB  129,128,128,59,0,0,128,63,129,128   ; addl          $0x80813f80,0x3b80(%rax)
4045  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
4046  DB  0,128,63,129,128,128                ; add           %al,-0x7f7f7ec1(%rax)
4047  DB  59,0                                ; cmp           (%rax),%eax
4048  DB  248                                 ; clc
4049  DB  0,0                                 ; add           %al,(%rax)
4050  DB  8,33                                ; or            %ah,(%rcx)
4051  DB  132,55                              ; test          %dh,(%rdi)
4052  DB  224,7                               ; loopne        414d <.literal4+0x245>
4053  DB  0,0                                 ; add           %al,(%rax)
4054  DB  33,8                                ; and           %ecx,(%rax)
4055  DB  2,58                                ; add           (%rdx),%bh
4056  DB  31                                  ; (bad)
4057  DB  0,0                                 ; add           %al,(%rax)
4058  DB  0,8                                 ; add           %cl,(%rax)
4059  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
4060  DB  0,248                               ; add           %bh,%al
4061  DB  0,0                                 ; add           %al,(%rax)
4062  DB  8,33                                ; or            %ah,(%rcx)
4063  DB  132,55                              ; test          %dh,(%rdi)
4064  DB  224,7                               ; loopne        4169 <.literal4+0x261>
4065  DB  0,0                                 ; add           %al,(%rax)
4066  DB  33,8                                ; and           %ecx,(%rax)
4067  DB  2,58                                ; add           (%rdx),%bh
4068  DB  31                                  ; (bad)
4069  DB  0,0                                 ; add           %al,(%rax)
4070  DB  0,8                                 ; add           %cl,(%rax)
4071  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
4072  DB  0,0                                 ; add           %al,(%rax)
4073  DB  248                                 ; clc
4074  DB  65,0,0                              ; add           %al,(%r8)
4075  DB  124,66                              ; jl            41be <.literal4+0x2b6>
4076  DB  0,240                               ; add           %dh,%al
4077  DB  0,0                                 ; add           %al,(%rax)
4078  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
4079  DB  0,0                                 ; add           %al,(%rax)
4080  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
4081  DB  0,0                                 ; add           %al,(%rax)
4082  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
4083  DB  0,0                                 ; add           %al,(%rax)
4084  DB  137,136,136,61,0,240                ; mov           %ecx,-0xfffc278(%rax)
4085  DB  0,0                                 ; add           %al,(%rax)
4086  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
4087  DB  0,0                                 ; add           %al,(%rax)
4088  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
4089  DB  0,0                                 ; add           %al,(%rax)
4090  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
4091  DB  0,0                                 ; add           %al,(%rax)
4092  DB  137,136,136,61,0,0                  ; mov           %ecx,0x3d88(%rax)
4093  DB  112,65                              ; jo            4201 <.literal4+0x2f9>
4094  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
4095  DB  127,67                              ; jg            420f <.literal4+0x307>
4096  DB  128,0,128                           ; addb          $0x80,(%rax)
4097  DB  55                                  ; (bad)
4098  DB  128,0,128                           ; addb          $0x80,(%rax)
4099  DB  55                                  ; (bad)
4100  DB  0,0                                 ; add           %al,(%rax)
4101  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4102  DB  255                                 ; (bad)
4103  DB  127,71                              ; jg            4223 <.literal4+0x31b>
4104  DB  208                                 ; (bad)
4105  DB  179,89                              ; mov           $0x59,%bl
4106  DB  62,89                               ; ds            pop %rcx
4107  DB  23                                  ; (bad)
4108  DB  55                                  ; (bad)
4109  DB  63                                  ; (bad)
4110  DB  152                                 ; cwtl
4111  DB  221,147,61,111,43,231               ; fstl          -0x18d490c3(%rbx)
4112  DB  187,159,215,202,60                  ; mov           $0x3ccad79f,%ebx
4113  DB  212                                 ; (bad)
4114  DB  100,84                              ; fs            push %rsp
4115  DB  189,169,240,34,62                   ; mov           $0x3e22f0a9,%ebp
4116  DB  0,0                                 ; add           %al,(%rax)
4117  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
4118  DB  0,0                                 ; add           %al,(%rax)
4119  DB  63                                  ; (bad)
4120  DB  0,0                                 ; add           %al,(%rax)
4121  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4122  DB  0,0                                 ; add           %al,(%rax)
4123  DB  63                                  ; (bad)
4124  DB  0,0                                 ; add           %al,(%rax)
4125  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4126  DB  0,0                                 ; add           %al,(%rax)
4127  DB  0,63                                ; add           %bh,(%rdi)
4128  DB  0,0                                 ; add           %al,(%rax)
4129  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4130  DB  0,0                                 ; add           %al,(%rax)
4131  DB  0,63                                ; add           %bh,(%rdi)
4132  DB  0,0                                 ; add           %al,(%rax)
4133  DB  192,191,0,0,128,63,171              ; sarb          $0xab,0x3f800000(%rdi)
4134  DB  170                                 ; stos          %al,%es:(%rdi)
4135  DB  170                                 ; stos          %al,%es:(%rdi)
4136  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4137  DB  0,0                                 ; add           %al,(%rax)
4138  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4139  DB  0,0                                 ; add           %al,(%rax)
4140  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4141  DB  85                                  ; push          %rbp
4142  DB  149                                 ; xchg          %eax,%ebp
4143  DB  191,0,0,0,63                        ; mov           $0x3f000000,%edi
4144  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
4145  DB  0,63                                ; add           %bh,(%rdi)
4146  DB  0,0                                 ; add           %al,(%rax)
4147  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4148  DB  85                                  ; push          %rbp
4149  DB  149                                 ; xchg          %eax,%ebp
4150  DB  191,57,142,99,61                    ; mov           $0x3d638e39,%edi
4151  DB  0,0                                 ; add           %al,(%rax)
4152  DB  192,63,171                          ; sarb          $0xab,(%rdi)
4153  DB  170                                 ; stos          %al,%es:(%rdi)
4154  DB  170                                 ; stos          %al,%es:(%rdi)
4155  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4156  DB  0,0                                 ; add           %al,(%rax)
4157  DB  192,191,0,0,128,63,171              ; sarb          $0xab,0x3f800000(%rdi)
4158  DB  170                                 ; stos          %al,%es:(%rdi)
4159  DB  170                                 ; stos          %al,%es:(%rdi)
4160  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4161  DB  0,0                                 ; add           %al,(%rax)
4162  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4163  DB  0,0                                 ; add           %al,(%rax)
4164  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4165  DB  85                                  ; push          %rbp
4166  DB  149                                 ; xchg          %eax,%ebp
4167  DB  191,0,0,0,63                        ; mov           $0x3f000000,%edi
4168  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
4169  DB  0,63                                ; add           %bh,(%rdi)
4170  DB  0,0                                 ; add           %al,(%rax)
4171  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4172  DB  85                                  ; push          %rbp
4173  DB  149                                 ; xchg          %eax,%ebp
4174  DB  191,57,142,99,61                    ; mov           $0x3d638e39,%edi
4175  DB  0,0                                 ; add           %al,(%rax)
4176  DB  192,63,171                          ; sarb          $0xab,(%rdi)
4177  DB  170                                 ; stos          %al,%es:(%rdi)
4178  DB  170                                 ; stos          %al,%es:(%rdi)
4179  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4180
4181ALIGN 32
4182  DB  255,0                               ; incl          (%rax)
4183  DB  0,0                                 ; add           %al,(%rax)
4184  DB  255,0                               ; incl          (%rax)
4185  DB  0,0                                 ; add           %al,(%rax)
4186  DB  255,0                               ; incl          (%rax)
4187  DB  0,0                                 ; add           %al,(%rax)
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  1,255                               ; add           %edi,%edi
4199  DB  255                                 ; (bad)
4200  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a0042e8 <_sk_callback_hsw+0xa0004fb>
4201  DB  255                                 ; (bad)
4202  DB  255                                 ; (bad)
4203  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 120042f0 <_sk_callback_hsw+0x12000503>
4204  DB  255                                 ; (bad)
4205  DB  255                                 ; (bad)
4206  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a0042f8 <_sk_callback_hsw+0x1a00050b>
4207  DB  255                                 ; (bad)
4208  DB  255                                 ; (bad)
4209  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3004300 <_sk_callback_hsw+0x3000513>
4210  DB  255                                 ; (bad)
4211  DB  255                                 ; (bad)
4212  DB  255,6                               ; incl          (%rsi)
4213  DB  255                                 ; (bad)
4214  DB  255                                 ; (bad)
4215  DB  255,10                              ; decl          (%rdx)
4216  DB  255                                 ; (bad)
4217  DB  255                                 ; (bad)
4218  DB  255,14                              ; decl          (%rsi)
4219  DB  255                                 ; (bad)
4220  DB  255                                 ; (bad)
4221  DB  255,18                              ; callq         *(%rdx)
4222  DB  255                                 ; (bad)
4223  DB  255                                 ; (bad)
4224  DB  255,22                              ; callq         *(%rsi)
4225  DB  255                                 ; (bad)
4226  DB  255                                 ; (bad)
4227  DB  255,26                              ; lcall         *(%rdx)
4228  DB  255                                 ; (bad)
4229  DB  255                                 ; (bad)
4230  DB  255,30                              ; lcall         *(%rsi)
4231  DB  255                                 ; (bad)
4232  DB  255                                 ; (bad)
4233  DB  255                                 ; (bad)
4234  DB  255,0                               ; incl          (%rax)
4235  DB  0,0                                 ; add           %al,(%rax)
4236  DB  255,0                               ; incl          (%rax)
4237  DB  0,0                                 ; add           %al,(%rax)
4238  DB  255,0                               ; incl          (%rax)
4239  DB  0,0                                 ; add           %al,(%rax)
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  1,255                               ; add           %edi,%edi
4251  DB  255                                 ; (bad)
4252  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a004348 <_sk_callback_hsw+0xa00055b>
4253  DB  255                                 ; (bad)
4254  DB  255                                 ; (bad)
4255  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12004350 <_sk_callback_hsw+0x12000563>
4256  DB  255                                 ; (bad)
4257  DB  255                                 ; (bad)
4258  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a004358 <_sk_callback_hsw+0x1a00056b>
4259  DB  255                                 ; (bad)
4260  DB  255                                 ; (bad)
4261  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3004360 <_sk_callback_hsw+0x3000573>
4262  DB  255                                 ; (bad)
4263  DB  255                                 ; (bad)
4264  DB  255,6                               ; incl          (%rsi)
4265  DB  255                                 ; (bad)
4266  DB  255                                 ; (bad)
4267  DB  255,10                              ; decl          (%rdx)
4268  DB  255                                 ; (bad)
4269  DB  255                                 ; (bad)
4270  DB  255,14                              ; decl          (%rsi)
4271  DB  255                                 ; (bad)
4272  DB  255                                 ; (bad)
4273  DB  255,18                              ; callq         *(%rdx)
4274  DB  255                                 ; (bad)
4275  DB  255                                 ; (bad)
4276  DB  255,22                              ; callq         *(%rsi)
4277  DB  255                                 ; (bad)
4278  DB  255                                 ; (bad)
4279  DB  255,26                              ; lcall         *(%rdx)
4280  DB  255                                 ; (bad)
4281  DB  255                                 ; (bad)
4282  DB  255,30                              ; lcall         *(%rsi)
4283  DB  255                                 ; (bad)
4284  DB  255                                 ; (bad)
4285  DB  255                                 ; (bad)
4286  DB  255,0                               ; incl          (%rax)
4287  DB  0,0                                 ; add           %al,(%rax)
4288  DB  255,0                               ; incl          (%rax)
4289  DB  0,0                                 ; add           %al,(%rax)
4290  DB  255,0                               ; incl          (%rax)
4291  DB  0,0                                 ; add           %al,(%rax)
4292  DB  255,0                               ; incl          (%rax)
4293  DB  0,0                                 ; add           %al,(%rax)
4294  DB  255,0                               ; incl          (%rax)
4295  DB  0,0                                 ; add           %al,(%rax)
4296  DB  255,0                               ; incl          (%rax)
4297  DB  0,0                                 ; add           %al,(%rax)
4298  DB  255,0                               ; incl          (%rax)
4299  DB  0,0                                 ; add           %al,(%rax)
4300  DB  255,0                               ; incl          (%rax)
4301  DB  0,0                                 ; add           %al,(%rax)
4302  DB  1,255                               ; add           %edi,%edi
4303  DB  255                                 ; (bad)
4304  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a0043a8 <_sk_callback_hsw+0xa0005bb>
4305  DB  255                                 ; (bad)
4306  DB  255                                 ; (bad)
4307  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 120043b0 <_sk_callback_hsw+0x120005c3>
4308  DB  255                                 ; (bad)
4309  DB  255                                 ; (bad)
4310  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a0043b8 <_sk_callback_hsw+0x1a0005cb>
4311  DB  255                                 ; (bad)
4312  DB  255                                 ; (bad)
4313  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 30043c0 <_sk_callback_hsw+0x30005d3>
4314  DB  255                                 ; (bad)
4315  DB  255                                 ; (bad)
4316  DB  255,6                               ; incl          (%rsi)
4317  DB  255                                 ; (bad)
4318  DB  255                                 ; (bad)
4319  DB  255,10                              ; decl          (%rdx)
4320  DB  255                                 ; (bad)
4321  DB  255                                 ; (bad)
4322  DB  255,14                              ; decl          (%rsi)
4323  DB  255                                 ; (bad)
4324  DB  255                                 ; (bad)
4325  DB  255,18                              ; callq         *(%rdx)
4326  DB  255                                 ; (bad)
4327  DB  255                                 ; (bad)
4328  DB  255,22                              ; callq         *(%rsi)
4329  DB  255                                 ; (bad)
4330  DB  255                                 ; (bad)
4331  DB  255,26                              ; lcall         *(%rdx)
4332  DB  255                                 ; (bad)
4333  DB  255                                 ; (bad)
4334  DB  255,30                              ; lcall         *(%rsi)
4335  DB  255                                 ; (bad)
4336  DB  255                                 ; (bad)
4337  DB  255                                 ; (bad)
4338  DB  255,0                               ; incl          (%rax)
4339  DB  0,0                                 ; add           %al,(%rax)
4340  DB  255,0                               ; incl          (%rax)
4341  DB  0,0                                 ; add           %al,(%rax)
4342  DB  255,0                               ; incl          (%rax)
4343  DB  0,0                                 ; add           %al,(%rax)
4344  DB  255,0                               ; incl          (%rax)
4345  DB  0,0                                 ; add           %al,(%rax)
4346  DB  255,0                               ; incl          (%rax)
4347  DB  0,0                                 ; add           %al,(%rax)
4348  DB  255,0                               ; incl          (%rax)
4349  DB  0,0                                 ; add           %al,(%rax)
4350  DB  255,0                               ; incl          (%rax)
4351  DB  0,0                                 ; add           %al,(%rax)
4352  DB  255,0                               ; incl          (%rax)
4353  DB  0,0                                 ; add           %al,(%rax)
4354  DB  1,255                               ; add           %edi,%edi
4355  DB  255                                 ; (bad)
4356  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a004408 <_sk_callback_hsw+0xa00061b>
4357  DB  255                                 ; (bad)
4358  DB  255                                 ; (bad)
4359  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12004410 <_sk_callback_hsw+0x12000623>
4360  DB  255                                 ; (bad)
4361  DB  255                                 ; (bad)
4362  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a004418 <_sk_callback_hsw+0x1a00062b>
4363  DB  255                                 ; (bad)
4364  DB  255                                 ; (bad)
4365  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3004420 <_sk_callback_hsw+0x3000633>
4366  DB  255                                 ; (bad)
4367  DB  255                                 ; (bad)
4368  DB  255,6                               ; incl          (%rsi)
4369  DB  255                                 ; (bad)
4370  DB  255                                 ; (bad)
4371  DB  255,10                              ; decl          (%rdx)
4372  DB  255                                 ; (bad)
4373  DB  255                                 ; (bad)
4374  DB  255,14                              ; decl          (%rsi)
4375  DB  255                                 ; (bad)
4376  DB  255                                 ; (bad)
4377  DB  255,18                              ; callq         *(%rdx)
4378  DB  255                                 ; (bad)
4379  DB  255                                 ; (bad)
4380  DB  255,22                              ; callq         *(%rsi)
4381  DB  255                                 ; (bad)
4382  DB  255                                 ; (bad)
4383  DB  255,26                              ; lcall         *(%rdx)
4384  DB  255                                 ; (bad)
4385  DB  255                                 ; (bad)
4386  DB  255,30                              ; lcall         *(%rsi)
4387  DB  255                                 ; (bad)
4388  DB  255                                 ; (bad)
4389  DB  255                                 ; .byte         0xff
4390
4391ALIGN 16
4392  DB  255,0                               ; incl          (%rax)
4393  DB  255,0                               ; incl          (%rax)
4394  DB  255,0                               ; incl          (%rax)
4395  DB  255,0                               ; incl          (%rax)
4396  DB  255,0                               ; incl          (%rax)
4397  DB  255,0                               ; incl          (%rax)
4398  DB  255,0                               ; incl          (%rax)
4399  DB  255,0                               ; incl          (%rax)
4400  DB  255,0                               ; incl          (%rax)
4401  DB  255,0                               ; incl          (%rax)
4402  DB  255,0                               ; incl          (%rax)
4403  DB  255,0                               ; incl          (%rax)
4404  DB  255,0                               ; incl          (%rax)
4405  DB  255,0                               ; incl          (%rax)
4406  DB  255,0                               ; incl          (%rax)
4407  DB  255,0                               ; incl          (%rax)
4408ALIGN 32
4409
4410PUBLIC _sk_start_pipeline_avx
4411_sk_start_pipeline_avx LABEL PROC
4412  DB  65,87                               ; push          %r15
4413  DB  65,86                               ; push          %r14
4414  DB  65,85                               ; push          %r13
4415  DB  65,84                               ; push          %r12
4416  DB  86                                  ; push          %rsi
4417  DB  87                                  ; push          %rdi
4418  DB  83                                  ; push          %rbx
4419  DB  72,129,236,160,0,0,0                ; sub           $0xa0,%rsp
4420  DB  197,120,41,188,36,144,0,0,0         ; vmovaps       %xmm15,0x90(%rsp)
4421  DB  197,120,41,180,36,128,0,0,0         ; vmovaps       %xmm14,0x80(%rsp)
4422  DB  197,120,41,108,36,112               ; vmovaps       %xmm13,0x70(%rsp)
4423  DB  197,120,41,100,36,96                ; vmovaps       %xmm12,0x60(%rsp)
4424  DB  197,120,41,92,36,80                 ; vmovaps       %xmm11,0x50(%rsp)
4425  DB  197,120,41,84,36,64                 ; vmovaps       %xmm10,0x40(%rsp)
4426  DB  197,120,41,76,36,48                 ; vmovaps       %xmm9,0x30(%rsp)
4427  DB  197,120,41,68,36,32                 ; vmovaps       %xmm8,0x20(%rsp)
4428  DB  197,248,41,124,36,16                ; vmovaps       %xmm7,0x10(%rsp)
4429  DB  197,248,41,52,36                    ; vmovaps       %xmm6,(%rsp)
4430  DB  77,137,205                          ; mov           %r9,%r13
4431  DB  77,137,198                          ; mov           %r8,%r14
4432  DB  72,137,203                          ; mov           %rcx,%rbx
4433  DB  72,137,214                          ; mov           %rdx,%rsi
4434  DB  72,173                              ; lods          %ds:(%rsi),%rax
4435  DB  73,137,199                          ; mov           %rax,%r15
4436  DB  73,137,244                          ; mov           %rsi,%r12
4437  DB  72,141,67,8                         ; lea           0x8(%rbx),%rax
4438  DB  76,57,232                           ; cmp           %r13,%rax
4439  DB  118,5                               ; jbe           75 <_sk_start_pipeline_avx+0x75>
4440  DB  72,137,223                          ; mov           %rbx,%rdi
4441  DB  235,65                              ; jmp           b6 <_sk_start_pipeline_avx+0xb6>
4442  DB  185,0,0,0,0                         ; mov           $0x0,%ecx
4443  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
4444  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
4445  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
4446  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
4447  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
4448  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
4449  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
4450  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
4451  DB  72,137,223                          ; mov           %rbx,%rdi
4452  DB  76,137,230                          ; mov           %r12,%rsi
4453  DB  76,137,242                          ; mov           %r14,%rdx
4454  DB  65,255,215                          ; callq         *%r15
4455  DB  72,141,123,8                        ; lea           0x8(%rbx),%rdi
4456  DB  72,131,195,16                       ; add           $0x10,%rbx
4457  DB  76,57,235                           ; cmp           %r13,%rbx
4458  DB  72,137,251                          ; mov           %rdi,%rbx
4459  DB  118,191                             ; jbe           75 <_sk_start_pipeline_avx+0x75>
4460  DB  76,137,233                          ; mov           %r13,%rcx
4461  DB  72,41,249                           ; sub           %rdi,%rcx
4462  DB  116,41                              ; je            e7 <_sk_start_pipeline_avx+0xe7>
4463  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
4464  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
4465  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
4466  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
4467  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
4468  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
4469  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
4470  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
4471  DB  76,137,230                          ; mov           %r12,%rsi
4472  DB  76,137,242                          ; mov           %r14,%rdx
4473  DB  65,255,215                          ; callq         *%r15
4474  DB  76,137,232                          ; mov           %r13,%rax
4475  DB  197,248,40,52,36                    ; vmovaps       (%rsp),%xmm6
4476  DB  197,248,40,124,36,16                ; vmovaps       0x10(%rsp),%xmm7
4477  DB  197,120,40,68,36,32                 ; vmovaps       0x20(%rsp),%xmm8
4478  DB  197,120,40,76,36,48                 ; vmovaps       0x30(%rsp),%xmm9
4479  DB  197,120,40,84,36,64                 ; vmovaps       0x40(%rsp),%xmm10
4480  DB  197,120,40,92,36,80                 ; vmovaps       0x50(%rsp),%xmm11
4481  DB  197,120,40,100,36,96                ; vmovaps       0x60(%rsp),%xmm12
4482  DB  197,120,40,108,36,112               ; vmovaps       0x70(%rsp),%xmm13
4483  DB  197,120,40,180,36,128,0,0,0         ; vmovaps       0x80(%rsp),%xmm14
4484  DB  197,120,40,188,36,144,0,0,0         ; vmovaps       0x90(%rsp),%xmm15
4485  DB  72,129,196,160,0,0,0                ; add           $0xa0,%rsp
4486  DB  91                                  ; pop           %rbx
4487  DB  95                                  ; pop           %rdi
4488  DB  94                                  ; pop           %rsi
4489  DB  65,92                               ; pop           %r12
4490  DB  65,93                               ; pop           %r13
4491  DB  65,94                               ; pop           %r14
4492  DB  65,95                               ; pop           %r15
4493  DB  197,248,119                         ; vzeroupper
4494  DB  195                                 ; retq
4495
4496PUBLIC _sk_just_return_avx
4497_sk_just_return_avx LABEL PROC
4498  DB  195                                 ; retq
4499
4500PUBLIC _sk_seed_shader_avx
4501_sk_seed_shader_avx LABEL PROC
4502  DB  72,173                              ; lods          %ds:(%rsi),%rax
4503  DB  197,249,110,199                     ; vmovd         %edi,%xmm0
4504  DB  197,249,112,192,0                   ; vpshufd       $0x0,%xmm0,%xmm0
4505  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
4506  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
4507  DB  196,226,125,24,13,240,84,0,0        ; vbroadcastss  0x54f0(%rip),%ymm1        # 5650 <_sk_callback_avx+0x119>
4508  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
4509  DB  197,252,88,2                        ; vaddps        (%rdx),%ymm0,%ymm0
4510  DB  196,226,125,24,16                   ; vbroadcastss  (%rax),%ymm2
4511  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
4512  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
4513  DB  72,173                              ; lods          %ds:(%rsi),%rax
4514  DB  196,226,125,24,21,212,84,0,0        ; vbroadcastss  0x54d4(%rip),%ymm2        # 5654 <_sk_callback_avx+0x11d>
4515  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
4516  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
4517  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
4518  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
4519  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
4520  DB  255,224                             ; jmpq          *%rax
4521
4522PUBLIC _sk_dither_avx
4523_sk_dither_avx LABEL PROC
4524  DB  72,173                              ; lods          %ds:(%rsi),%rax
4525  DB  197,121,110,199                     ; vmovd         %edi,%xmm8
4526  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
4527  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
4528  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
4529  DB  197,60,88,2                         ; vaddps        (%rdx),%ymm8,%ymm8
4530  DB  196,65,126,91,192                   ; vcvttps2dq    %ymm8,%ymm8
4531  DB  76,139,0                            ; mov           (%rax),%r8
4532  DB  196,66,125,24,8                     ; vbroadcastss  (%r8),%ymm9
4533  DB  196,65,60,87,209                    ; vxorps        %ymm9,%ymm8,%ymm10
4534  DB  196,98,125,24,29,140,84,0,0         ; vbroadcastss  0x548c(%rip),%ymm11        # 5658 <_sk_callback_avx+0x121>
4535  DB  196,65,44,84,203                    ; vandps        %ymm11,%ymm10,%ymm9
4536  DB  196,193,25,114,241,5                ; vpslld        $0x5,%xmm9,%xmm12
4537  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
4538  DB  196,193,49,114,241,5                ; vpslld        $0x5,%xmm9,%xmm9
4539  DB  196,67,29,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm12,%ymm9
4540  DB  196,65,60,84,219                    ; vandps        %ymm11,%ymm8,%ymm11
4541  DB  196,193,25,114,243,4                ; vpslld        $0x4,%xmm11,%xmm12
4542  DB  196,67,125,25,219,1                 ; vextractf128  $0x1,%ymm11,%xmm11
4543  DB  196,193,33,114,243,4                ; vpslld        $0x4,%xmm11,%xmm11
4544  DB  196,67,29,24,219,1                  ; vinsertf128   $0x1,%xmm11,%ymm12,%ymm11
4545  DB  196,98,125,24,37,77,84,0,0          ; vbroadcastss  0x544d(%rip),%ymm12        # 565c <_sk_callback_avx+0x125>
4546  DB  196,98,125,24,45,72,84,0,0          ; vbroadcastss  0x5448(%rip),%ymm13        # 5660 <_sk_callback_avx+0x129>
4547  DB  196,65,44,84,245                    ; vandps        %ymm13,%ymm10,%ymm14
4548  DB  196,193,1,114,246,2                 ; vpslld        $0x2,%xmm14,%xmm15
4549  DB  196,67,125,25,246,1                 ; vextractf128  $0x1,%ymm14,%xmm14
4550  DB  196,193,9,114,246,2                 ; vpslld        $0x2,%xmm14,%xmm14
4551  DB  196,67,5,24,246,1                   ; vinsertf128   $0x1,%xmm14,%ymm15,%ymm14
4552  DB  196,65,60,84,237                    ; vandps        %ymm13,%ymm8,%ymm13
4553  DB  196,65,17,254,253                   ; vpaddd        %xmm13,%xmm13,%xmm15
4554  DB  196,67,125,25,237,1                 ; vextractf128  $0x1,%ymm13,%xmm13
4555  DB  196,65,17,254,237                   ; vpaddd        %xmm13,%xmm13,%xmm13
4556  DB  196,67,5,24,237,1                   ; vinsertf128   $0x1,%xmm13,%ymm15,%ymm13
4557  DB  196,65,44,84,212                    ; vandps        %ymm12,%ymm10,%ymm10
4558  DB  196,193,1,114,210,1                 ; vpsrld        $0x1,%xmm10,%xmm15
4559  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
4560  DB  196,193,41,114,210,1                ; vpsrld        $0x1,%xmm10,%xmm10
4561  DB  196,67,5,24,210,1                   ; vinsertf128   $0x1,%xmm10,%ymm15,%ymm10
4562  DB  196,65,60,84,196                    ; vandps        %ymm12,%ymm8,%ymm8
4563  DB  196,193,25,114,208,2                ; vpsrld        $0x2,%xmm8,%xmm12
4564  DB  196,67,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm8
4565  DB  196,193,57,114,208,2                ; vpsrld        $0x2,%xmm8,%xmm8
4566  DB  196,67,29,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm12,%ymm8
4567  DB  196,65,20,86,219                    ; vorps         %ymm11,%ymm13,%ymm11
4568  DB  196,65,36,86,192                    ; vorps         %ymm8,%ymm11,%ymm8
4569  DB  196,65,52,86,206                    ; vorps         %ymm14,%ymm9,%ymm9
4570  DB  196,65,60,86,193                    ; vorps         %ymm9,%ymm8,%ymm8
4571  DB  196,65,60,86,194                    ; vorps         %ymm10,%ymm8,%ymm8
4572  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
4573  DB  196,98,125,24,13,179,83,0,0         ; vbroadcastss  0x53b3(%rip),%ymm9        # 5664 <_sk_callback_avx+0x12d>
4574  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
4575  DB  196,98,125,24,13,169,83,0,0         ; vbroadcastss  0x53a9(%rip),%ymm9        # 5668 <_sk_callback_avx+0x131>
4576  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
4577  DB  196,98,125,24,72,8                  ; vbroadcastss  0x8(%rax),%ymm9
4578  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
4579  DB  197,188,88,192                      ; vaddps        %ymm0,%ymm8,%ymm0
4580  DB  197,188,88,201                      ; vaddps        %ymm1,%ymm8,%ymm1
4581  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
4582  DB  72,173                              ; lods          %ds:(%rsi),%rax
4583  DB  255,224                             ; jmpq          *%rax
4584
4585PUBLIC _sk_constant_color_avx
4586_sk_constant_color_avx LABEL PROC
4587  DB  72,173                              ; lods          %ds:(%rsi),%rax
4588  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
4589  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
4590  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
4591  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
4592  DB  72,173                              ; lods          %ds:(%rsi),%rax
4593  DB  255,224                             ; jmpq          *%rax
4594
4595PUBLIC _sk_clear_avx
4596_sk_clear_avx LABEL PROC
4597  DB  72,173                              ; lods          %ds:(%rsi),%rax
4598  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
4599  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
4600  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
4601  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
4602  DB  255,224                             ; jmpq          *%rax
4603
4604PUBLIC _sk_srcatop_avx
4605_sk_srcatop_avx LABEL PROC
4606  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
4607  DB  196,98,125,24,5,79,83,0,0           ; vbroadcastss  0x534f(%rip),%ymm8        # 566c <_sk_callback_avx+0x135>
4608  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4609  DB  197,60,89,204                       ; vmulps        %ymm4,%ymm8,%ymm9
4610  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
4611  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
4612  DB  197,60,89,205                       ; vmulps        %ymm5,%ymm8,%ymm9
4613  DB  197,180,88,201                      ; vaddps        %ymm1,%ymm9,%ymm1
4614  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
4615  DB  197,60,89,206                       ; vmulps        %ymm6,%ymm8,%ymm9
4616  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
4617  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4618  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4619  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
4620  DB  72,173                              ; lods          %ds:(%rsi),%rax
4621  DB  255,224                             ; jmpq          *%rax
4622
4623PUBLIC _sk_dstatop_avx
4624_sk_dstatop_avx LABEL PROC
4625  DB  197,100,89,196                      ; vmulps        %ymm4,%ymm3,%ymm8
4626  DB  196,98,125,24,13,17,83,0,0          ; vbroadcastss  0x5311(%rip),%ymm9        # 5670 <_sk_callback_avx+0x139>
4627  DB  197,52,92,207                       ; vsubps        %ymm7,%ymm9,%ymm9
4628  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
4629  DB  197,188,88,192                      ; vaddps        %ymm0,%ymm8,%ymm0
4630  DB  197,100,89,197                      ; vmulps        %ymm5,%ymm3,%ymm8
4631  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
4632  DB  197,188,88,201                      ; vaddps        %ymm1,%ymm8,%ymm1
4633  DB  197,100,89,198                      ; vmulps        %ymm6,%ymm3,%ymm8
4634  DB  197,180,89,210                      ; vmulps        %ymm2,%ymm9,%ymm2
4635  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
4636  DB  197,100,89,199                      ; vmulps        %ymm7,%ymm3,%ymm8
4637  DB  197,180,89,219                      ; vmulps        %ymm3,%ymm9,%ymm3
4638  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4639  DB  72,173                              ; lods          %ds:(%rsi),%rax
4640  DB  255,224                             ; jmpq          *%rax
4641
4642PUBLIC _sk_srcin_avx
4643_sk_srcin_avx LABEL PROC
4644  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
4645  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
4646  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
4647  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4648  DB  72,173                              ; lods          %ds:(%rsi),%rax
4649  DB  255,224                             ; jmpq          *%rax
4650
4651PUBLIC _sk_dstin_avx
4652_sk_dstin_avx LABEL PROC
4653  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
4654  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
4655  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
4656  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4657  DB  72,173                              ; lods          %ds:(%rsi),%rax
4658  DB  255,224                             ; jmpq          *%rax
4659
4660PUBLIC _sk_srcout_avx
4661_sk_srcout_avx LABEL PROC
4662  DB  196,98,125,24,5,176,82,0,0          ; vbroadcastss  0x52b0(%rip),%ymm8        # 5674 <_sk_callback_avx+0x13d>
4663  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
4664  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
4665  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
4666  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
4667  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
4668  DB  72,173                              ; lods          %ds:(%rsi),%rax
4669  DB  255,224                             ; jmpq          *%rax
4670
4671PUBLIC _sk_dstout_avx
4672_sk_dstout_avx LABEL PROC
4673  DB  196,226,125,24,5,147,82,0,0         ; vbroadcastss  0x5293(%rip),%ymm0        # 5678 <_sk_callback_avx+0x141>
4674  DB  197,252,92,219                      ; vsubps        %ymm3,%ymm0,%ymm3
4675  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
4676  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
4677  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
4678  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4679  DB  72,173                              ; lods          %ds:(%rsi),%rax
4680  DB  255,224                             ; jmpq          *%rax
4681
4682PUBLIC _sk_srcover_avx
4683_sk_srcover_avx LABEL PROC
4684  DB  196,98,125,24,5,118,82,0,0          ; vbroadcastss  0x5276(%rip),%ymm8        # 567c <_sk_callback_avx+0x145>
4685  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4686  DB  197,60,89,204                       ; vmulps        %ymm4,%ymm8,%ymm9
4687  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
4688  DB  197,60,89,205                       ; vmulps        %ymm5,%ymm8,%ymm9
4689  DB  197,180,88,201                      ; vaddps        %ymm1,%ymm9,%ymm1
4690  DB  197,60,89,206                       ; vmulps        %ymm6,%ymm8,%ymm9
4691  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
4692  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4693  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4694  DB  72,173                              ; lods          %ds:(%rsi),%rax
4695  DB  255,224                             ; jmpq          *%rax
4696
4697PUBLIC _sk_dstover_avx
4698_sk_dstover_avx LABEL PROC
4699  DB  196,98,125,24,5,73,82,0,0           ; vbroadcastss  0x5249(%rip),%ymm8        # 5680 <_sk_callback_avx+0x149>
4700  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
4701  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
4702  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
4703  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
4704  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
4705  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
4706  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
4707  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
4708  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
4709  DB  72,173                              ; lods          %ds:(%rsi),%rax
4710  DB  255,224                             ; jmpq          *%rax
4711
4712PUBLIC _sk_modulate_avx
4713_sk_modulate_avx LABEL PROC
4714  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
4715  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
4716  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
4717  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4718  DB  72,173                              ; lods          %ds:(%rsi),%rax
4719  DB  255,224                             ; jmpq          *%rax
4720
4721PUBLIC _sk_multiply_avx
4722_sk_multiply_avx LABEL PROC
4723  DB  196,98,125,24,5,8,82,0,0            ; vbroadcastss  0x5208(%rip),%ymm8        # 5684 <_sk_callback_avx+0x14d>
4724  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
4725  DB  197,52,89,208                       ; vmulps        %ymm0,%ymm9,%ymm10
4726  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4727  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
4728  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
4729  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
4730  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
4731  DB  197,52,89,209                       ; vmulps        %ymm1,%ymm9,%ymm10
4732  DB  197,60,89,221                       ; vmulps        %ymm5,%ymm8,%ymm11
4733  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
4734  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
4735  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
4736  DB  197,52,89,210                       ; vmulps        %ymm2,%ymm9,%ymm10
4737  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
4738  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
4739  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
4740  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
4741  DB  197,52,89,203                       ; vmulps        %ymm3,%ymm9,%ymm9
4742  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4743  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
4744  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4745  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
4746  DB  72,173                              ; lods          %ds:(%rsi),%rax
4747  DB  255,224                             ; jmpq          *%rax
4748
4749PUBLIC _sk_plus__avx
4750_sk_plus__avx LABEL PROC
4751  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
4752  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
4753  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
4754  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
4755  DB  72,173                              ; lods          %ds:(%rsi),%rax
4756  DB  255,224                             ; jmpq          *%rax
4757
4758PUBLIC _sk_screen_avx
4759_sk_screen_avx LABEL PROC
4760  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
4761  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
4762  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
4763  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
4764  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
4765  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
4766  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
4767  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
4768  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
4769  DB  197,100,88,199                      ; vaddps        %ymm7,%ymm3,%ymm8
4770  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
4771  DB  197,188,92,219                      ; vsubps        %ymm3,%ymm8,%ymm3
4772  DB  72,173                              ; lods          %ds:(%rsi),%rax
4773  DB  255,224                             ; jmpq          *%rax
4774
4775PUBLIC _sk_xor__avx
4776_sk_xor__avx LABEL PROC
4777  DB  196,98,125,24,5,87,81,0,0           ; vbroadcastss  0x5157(%rip),%ymm8        # 5688 <_sk_callback_avx+0x151>
4778  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
4779  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
4780  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4781  DB  197,60,89,212                       ; vmulps        %ymm4,%ymm8,%ymm10
4782  DB  197,172,88,192                      ; vaddps        %ymm0,%ymm10,%ymm0
4783  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
4784  DB  197,60,89,213                       ; vmulps        %ymm5,%ymm8,%ymm10
4785  DB  197,172,88,201                      ; vaddps        %ymm1,%ymm10,%ymm1
4786  DB  197,180,89,210                      ; vmulps        %ymm2,%ymm9,%ymm2
4787  DB  197,60,89,214                       ; vmulps        %ymm6,%ymm8,%ymm10
4788  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
4789  DB  197,180,89,219                      ; vmulps        %ymm3,%ymm9,%ymm3
4790  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4791  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4792  DB  72,173                              ; lods          %ds:(%rsi),%rax
4793  DB  255,224                             ; jmpq          *%rax
4794
4795PUBLIC _sk_darken_avx
4796_sk_darken_avx LABEL PROC
4797  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
4798  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
4799  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
4800  DB  196,193,124,95,193                  ; vmaxps        %ymm9,%ymm0,%ymm0
4801  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
4802  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
4803  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
4804  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
4805  DB  196,193,116,95,201                  ; vmaxps        %ymm9,%ymm1,%ymm1
4806  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
4807  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
4808  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
4809  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
4810  DB  196,193,108,95,209                  ; vmaxps        %ymm9,%ymm2,%ymm2
4811  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
4812  DB  196,98,125,24,5,215,80,0,0          ; vbroadcastss  0x50d7(%rip),%ymm8        # 568c <_sk_callback_avx+0x155>
4813  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4814  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4815  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4816  DB  72,173                              ; lods          %ds:(%rsi),%rax
4817  DB  255,224                             ; jmpq          *%rax
4818
4819PUBLIC _sk_lighten_avx
4820_sk_lighten_avx LABEL PROC
4821  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
4822  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
4823  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
4824  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
4825  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
4826  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
4827  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
4828  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
4829  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
4830  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
4831  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
4832  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
4833  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
4834  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
4835  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
4836  DB  196,98,125,24,5,131,80,0,0          ; vbroadcastss  0x5083(%rip),%ymm8        # 5690 <_sk_callback_avx+0x159>
4837  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4838  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4839  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4840  DB  72,173                              ; lods          %ds:(%rsi),%rax
4841  DB  255,224                             ; jmpq          *%rax
4842
4843PUBLIC _sk_difference_avx
4844_sk_difference_avx LABEL PROC
4845  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
4846  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
4847  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
4848  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
4849  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
4850  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
4851  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
4852  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
4853  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
4854  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
4855  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
4856  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
4857  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
4858  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
4859  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
4860  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
4861  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
4862  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
4863  DB  196,98,125,24,5,35,80,0,0           ; vbroadcastss  0x5023(%rip),%ymm8        # 5694 <_sk_callback_avx+0x15d>
4864  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4865  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4866  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4867  DB  72,173                              ; lods          %ds:(%rsi),%rax
4868  DB  255,224                             ; jmpq          *%rax
4869
4870PUBLIC _sk_exclusion_avx
4871_sk_exclusion_avx LABEL PROC
4872  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
4873  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
4874  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
4875  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
4876  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
4877  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
4878  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
4879  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
4880  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
4881  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
4882  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
4883  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
4884  DB  196,98,125,24,5,222,79,0,0          ; vbroadcastss  0x4fde(%rip),%ymm8        # 5698 <_sk_callback_avx+0x161>
4885  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4886  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4887  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4888  DB  72,173                              ; lods          %ds:(%rsi),%rax
4889  DB  255,224                             ; jmpq          *%rax
4890
4891PUBLIC _sk_colorburn_avx
4892_sk_colorburn_avx LABEL PROC
4893  DB  196,98,125,24,5,201,79,0,0          ; vbroadcastss  0x4fc9(%rip),%ymm8        # 569c <_sk_callback_avx+0x165>
4894  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
4895  DB  197,52,89,216                       ; vmulps        %ymm0,%ymm9,%ymm11
4896  DB  196,65,44,87,210                    ; vxorps        %ymm10,%ymm10,%ymm10
4897  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
4898  DB  197,60,89,228                       ; vmulps        %ymm4,%ymm8,%ymm12
4899  DB  197,68,92,236                       ; vsubps        %ymm4,%ymm7,%ymm13
4900  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
4901  DB  197,20,94,232                       ; vdivps        %ymm0,%ymm13,%ymm13
4902  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
4903  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
4904  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
4905  DB  196,65,36,88,237                    ; vaddps        %ymm13,%ymm11,%ymm13
4906  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
4907  DB  197,28,88,224                       ; vaddps        %ymm0,%ymm12,%ymm12
4908  DB  196,193,124,194,194,0               ; vcmpeqps      %ymm10,%ymm0,%ymm0
4909  DB  196,195,21,74,196,0                 ; vblendvps     %ymm0,%ymm12,%ymm13,%ymm0
4910  DB  197,92,194,231,0                    ; vcmpeqps      %ymm7,%ymm4,%ymm12
4911  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
4912  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
4913  DB  197,52,89,217                       ; vmulps        %ymm1,%ymm9,%ymm11
4914  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
4915  DB  197,68,92,237                       ; vsubps        %ymm5,%ymm7,%ymm13
4916  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
4917  DB  197,20,94,233                       ; vdivps        %ymm1,%ymm13,%ymm13
4918  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
4919  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
4920  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
4921  DB  196,65,36,88,237                    ; vaddps        %ymm13,%ymm11,%ymm13
4922  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
4923  DB  197,28,88,225                       ; vaddps        %ymm1,%ymm12,%ymm12
4924  DB  196,193,116,194,202,0               ; vcmpeqps      %ymm10,%ymm1,%ymm1
4925  DB  196,195,21,74,204,16                ; vblendvps     %ymm1,%ymm12,%ymm13,%ymm1
4926  DB  197,84,194,231,0                    ; vcmpeqps      %ymm7,%ymm5,%ymm12
4927  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
4928  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
4929  DB  197,52,89,202                       ; vmulps        %ymm2,%ymm9,%ymm9
4930  DB  196,65,108,194,210,0                ; vcmpeqps      %ymm10,%ymm2,%ymm10
4931  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
4932  DB  197,68,92,230                       ; vsubps        %ymm6,%ymm7,%ymm12
4933  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
4934  DB  197,28,94,226                       ; vdivps        %ymm2,%ymm12,%ymm12
4935  DB  197,164,88,210                      ; vaddps        %ymm2,%ymm11,%ymm2
4936  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
4937  DB  196,65,68,92,228                    ; vsubps        %ymm12,%ymm7,%ymm12
4938  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
4939  DB  196,65,52,88,228                    ; vaddps        %ymm12,%ymm9,%ymm12
4940  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
4941  DB  196,227,37,74,210,160               ; vblendvps     %ymm10,%ymm2,%ymm11,%ymm2
4942  DB  197,76,194,215,0                    ; vcmpeqps      %ymm7,%ymm6,%ymm10
4943  DB  197,52,88,206                       ; vaddps        %ymm6,%ymm9,%ymm9
4944  DB  196,195,109,74,209,160              ; vblendvps     %ymm10,%ymm9,%ymm2,%ymm2
4945  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
4946  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
4947  DB  72,173                              ; lods          %ds:(%rsi),%rax
4948  DB  255,224                             ; jmpq          *%rax
4949
4950PUBLIC _sk_colordodge_avx
4951_sk_colordodge_avx LABEL PROC
4952  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
4953  DB  196,98,125,24,13,197,78,0,0         ; vbroadcastss  0x4ec5(%rip),%ymm9        # 56a0 <_sk_callback_avx+0x169>
4954  DB  197,52,92,215                       ; vsubps        %ymm7,%ymm9,%ymm10
4955  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
4956  DB  197,52,92,203                       ; vsubps        %ymm3,%ymm9,%ymm9
4957  DB  197,100,89,228                      ; vmulps        %ymm4,%ymm3,%ymm12
4958  DB  197,100,92,232                      ; vsubps        %ymm0,%ymm3,%ymm13
4959  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
4960  DB  197,52,89,236                       ; vmulps        %ymm4,%ymm9,%ymm13
4961  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
4962  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
4963  DB  196,65,36,88,228                    ; vaddps        %ymm12,%ymm11,%ymm12
4964  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
4965  DB  197,20,88,232                       ; vaddps        %ymm0,%ymm13,%ymm13
4966  DB  197,252,194,195,0                   ; vcmpeqps      %ymm3,%ymm0,%ymm0
4967  DB  196,195,29,74,197,0                 ; vblendvps     %ymm0,%ymm13,%ymm12,%ymm0
4968  DB  196,65,92,194,224,0                 ; vcmpeqps      %ymm8,%ymm4,%ymm12
4969  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
4970  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
4971  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
4972  DB  197,100,89,229                      ; vmulps        %ymm5,%ymm3,%ymm12
4973  DB  197,100,92,233                      ; vsubps        %ymm1,%ymm3,%ymm13
4974  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
4975  DB  197,52,89,237                       ; vmulps        %ymm5,%ymm9,%ymm13
4976  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
4977  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
4978  DB  196,65,36,88,228                    ; vaddps        %ymm12,%ymm11,%ymm12
4979  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
4980  DB  197,20,88,233                       ; vaddps        %ymm1,%ymm13,%ymm13
4981  DB  197,244,194,203,0                   ; vcmpeqps      %ymm3,%ymm1,%ymm1
4982  DB  196,195,29,74,205,16                ; vblendvps     %ymm1,%ymm13,%ymm12,%ymm1
4983  DB  196,65,84,194,224,0                 ; vcmpeqps      %ymm8,%ymm5,%ymm12
4984  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
4985  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
4986  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
4987  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
4988  DB  197,100,92,226                      ; vsubps        %ymm2,%ymm3,%ymm12
4989  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
4990  DB  197,52,89,230                       ; vmulps        %ymm6,%ymm9,%ymm12
4991  DB  196,65,68,93,219                    ; vminps        %ymm11,%ymm7,%ymm11
4992  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
4993  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
4994  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
4995  DB  197,28,88,226                       ; vaddps        %ymm2,%ymm12,%ymm12
4996  DB  197,236,194,211,0                   ; vcmpeqps      %ymm3,%ymm2,%ymm2
4997  DB  196,195,37,74,212,32                ; vblendvps     %ymm2,%ymm12,%ymm11,%ymm2
4998  DB  196,65,76,194,192,0                 ; vcmpeqps      %ymm8,%ymm6,%ymm8
4999  DB  197,44,88,214                       ; vaddps        %ymm6,%ymm10,%ymm10
5000  DB  196,195,109,74,210,128              ; vblendvps     %ymm8,%ymm10,%ymm2,%ymm2
5001  DB  197,52,89,199                       ; vmulps        %ymm7,%ymm9,%ymm8
5002  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5003  DB  72,173                              ; lods          %ds:(%rsi),%rax
5004  DB  255,224                             ; jmpq          *%rax
5005
5006PUBLIC _sk_hardlight_avx
5007_sk_hardlight_avx LABEL PROC
5008  DB  196,98,125,24,5,215,77,0,0          ; vbroadcastss  0x4dd7(%rip),%ymm8        # 56a4 <_sk_callback_avx+0x16d>
5009  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
5010  DB  197,44,89,200                       ; vmulps        %ymm0,%ymm10,%ymm9
5011  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5012  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
5013  DB  196,65,36,88,217                    ; vaddps        %ymm9,%ymm11,%ymm11
5014  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
5015  DB  197,52,194,227,2                    ; vcmpleps      %ymm3,%ymm9,%ymm12
5016  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
5017  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
5018  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
5019  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
5020  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
5021  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
5022  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
5023  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
5024  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
5025  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
5026  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
5027  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
5028  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
5029  DB  197,116,88,225                      ; vaddps        %ymm1,%ymm1,%ymm12
5030  DB  197,28,194,227,2                    ; vcmpleps      %ymm3,%ymm12,%ymm12
5031  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
5032  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
5033  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
5034  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
5035  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
5036  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
5037  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
5038  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
5039  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
5040  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
5041  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
5042  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
5043  DB  197,108,88,218                      ; vaddps        %ymm2,%ymm2,%ymm11
5044  DB  197,36,194,219,2                    ; vcmpleps      %ymm3,%ymm11,%ymm11
5045  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
5046  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
5047  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
5048  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
5049  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
5050  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
5051  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
5052  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
5053  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
5054  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5055  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5056  DB  72,173                              ; lods          %ds:(%rsi),%rax
5057  DB  255,224                             ; jmpq          *%rax
5058
5059PUBLIC _sk_overlay_avx
5060_sk_overlay_avx LABEL PROC
5061  DB  196,98,125,24,5,0,77,0,0            ; vbroadcastss  0x4d00(%rip),%ymm8        # 56a8 <_sk_callback_avx+0x171>
5062  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
5063  DB  197,44,89,200                       ; vmulps        %ymm0,%ymm10,%ymm9
5064  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5065  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
5066  DB  196,65,36,88,217                    ; vaddps        %ymm9,%ymm11,%ymm11
5067  DB  197,92,88,204                       ; vaddps        %ymm4,%ymm4,%ymm9
5068  DB  197,52,194,231,2                    ; vcmpleps      %ymm7,%ymm9,%ymm12
5069  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
5070  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
5071  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
5072  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
5073  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
5074  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
5075  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
5076  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
5077  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
5078  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
5079  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
5080  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
5081  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
5082  DB  197,84,88,229                       ; vaddps        %ymm5,%ymm5,%ymm12
5083  DB  197,28,194,231,2                    ; vcmpleps      %ymm7,%ymm12,%ymm12
5084  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
5085  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
5086  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
5087  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
5088  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
5089  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
5090  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
5091  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
5092  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
5093  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
5094  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
5095  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
5096  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
5097  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
5098  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
5099  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
5100  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
5101  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
5102  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
5103  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
5104  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
5105  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
5106  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
5107  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5108  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5109  DB  72,173                              ; lods          %ds:(%rsi),%rax
5110  DB  255,224                             ; jmpq          *%rax
5111
5112PUBLIC _sk_softlight_avx
5113_sk_softlight_avx LABEL PROC
5114  DB  72,131,236,88                       ; sub           $0x58,%rsp
5115  DB  197,252,17,84,36,32                 ; vmovups       %ymm2,0x20(%rsp)
5116  DB  197,252,40,209                      ; vmovaps       %ymm1,%ymm2
5117  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
5118  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
5119  DB  197,52,194,215,1                    ; vcmpltps      %ymm7,%ymm9,%ymm10
5120  DB  197,92,94,199                       ; vdivps        %ymm7,%ymm4,%ymm8
5121  DB  196,67,53,74,224,160                ; vblendvps     %ymm10,%ymm8,%ymm9,%ymm12
5122  DB  196,65,28,88,196                    ; vaddps        %ymm12,%ymm12,%ymm8
5123  DB  196,65,60,88,192                    ; vaddps        %ymm8,%ymm8,%ymm8
5124  DB  196,65,60,89,216                    ; vmulps        %ymm8,%ymm8,%ymm11
5125  DB  196,65,60,88,195                    ; vaddps        %ymm11,%ymm8,%ymm8
5126  DB  196,98,125,24,29,243,75,0,0         ; vbroadcastss  0x4bf3(%rip),%ymm11        # 56b0 <_sk_callback_avx+0x179>
5127  DB  196,65,28,88,235                    ; vaddps        %ymm11,%ymm12,%ymm13
5128  DB  196,65,20,89,192                    ; vmulps        %ymm8,%ymm13,%ymm8
5129  DB  196,98,125,24,45,228,75,0,0         ; vbroadcastss  0x4be4(%rip),%ymm13        # 56b4 <_sk_callback_avx+0x17d>
5130  DB  196,65,28,89,245                    ; vmulps        %ymm13,%ymm12,%ymm14
5131  DB  196,65,12,88,192                    ; vaddps        %ymm8,%ymm14,%ymm8
5132  DB  196,65,124,82,244                   ; vrsqrtps      %ymm12,%ymm14
5133  DB  196,65,124,83,246                   ; vrcpps        %ymm14,%ymm14
5134  DB  196,65,12,92,244                    ; vsubps        %ymm12,%ymm14,%ymm14
5135  DB  197,92,88,252                       ; vaddps        %ymm4,%ymm4,%ymm15
5136  DB  196,65,4,88,255                     ; vaddps        %ymm15,%ymm15,%ymm15
5137  DB  197,4,194,255,2                     ; vcmpleps      %ymm7,%ymm15,%ymm15
5138  DB  196,67,13,74,240,240                ; vblendvps     %ymm15,%ymm8,%ymm14,%ymm14
5139  DB  197,116,88,249                      ; vaddps        %ymm1,%ymm1,%ymm15
5140  DB  196,98,125,24,5,162,75,0,0          ; vbroadcastss  0x4ba2(%rip),%ymm8        # 56ac <_sk_callback_avx+0x175>
5141  DB  196,65,60,92,228                    ; vsubps        %ymm12,%ymm8,%ymm12
5142  DB  197,132,92,195                      ; vsubps        %ymm3,%ymm15,%ymm0
5143  DB  196,65,124,89,228                   ; vmulps        %ymm12,%ymm0,%ymm12
5144  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5145  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
5146  DB  197,100,89,244                      ; vmulps        %ymm4,%ymm3,%ymm14
5147  DB  197,140,88,192                      ; vaddps        %ymm0,%ymm14,%ymm0
5148  DB  197,28,88,227                       ; vaddps        %ymm3,%ymm12,%ymm12
5149  DB  197,28,89,228                       ; vmulps        %ymm4,%ymm12,%ymm12
5150  DB  197,4,194,243,2                     ; vcmpleps      %ymm3,%ymm15,%ymm14
5151  DB  196,195,125,74,196,224              ; vblendvps     %ymm14,%ymm12,%ymm0,%ymm0
5152  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
5153  DB  197,212,94,199                      ; vdivps        %ymm7,%ymm5,%ymm0
5154  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
5155  DB  197,124,88,240                      ; vaddps        %ymm0,%ymm0,%ymm14
5156  DB  196,65,12,88,246                    ; vaddps        %ymm14,%ymm14,%ymm14
5157  DB  196,65,12,89,254                    ; vmulps        %ymm14,%ymm14,%ymm15
5158  DB  196,65,12,88,247                    ; vaddps        %ymm15,%ymm14,%ymm14
5159  DB  196,65,124,88,251                   ; vaddps        %ymm11,%ymm0,%ymm15
5160  DB  196,65,4,89,246                     ; vmulps        %ymm14,%ymm15,%ymm14
5161  DB  196,65,124,89,253                   ; vmulps        %ymm13,%ymm0,%ymm15
5162  DB  196,65,4,88,246                     ; vaddps        %ymm14,%ymm15,%ymm14
5163  DB  197,124,82,248                      ; vrsqrtps      %ymm0,%ymm15
5164  DB  196,65,124,83,255                   ; vrcpps        %ymm15,%ymm15
5165  DB  197,4,92,248                        ; vsubps        %ymm0,%ymm15,%ymm15
5166  DB  197,84,88,229                       ; vaddps        %ymm5,%ymm5,%ymm12
5167  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
5168  DB  197,28,194,231,2                    ; vcmpleps      %ymm7,%ymm12,%ymm12
5169  DB  196,67,5,74,230,192                 ; vblendvps     %ymm12,%ymm14,%ymm15,%ymm12
5170  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5171  DB  197,108,88,242                      ; vaddps        %ymm2,%ymm2,%ymm14
5172  DB  197,12,92,251                       ; vsubps        %ymm3,%ymm14,%ymm15
5173  DB  197,132,89,192                      ; vmulps        %ymm0,%ymm15,%ymm0
5174  DB  197,4,89,255                        ; vmulps        %ymm7,%ymm15,%ymm15
5175  DB  196,65,4,89,228                     ; vmulps        %ymm12,%ymm15,%ymm12
5176  DB  197,100,89,253                      ; vmulps        %ymm5,%ymm3,%ymm15
5177  DB  196,65,4,88,228                     ; vaddps        %ymm12,%ymm15,%ymm12
5178  DB  197,252,88,195                      ; vaddps        %ymm3,%ymm0,%ymm0
5179  DB  197,252,89,197                      ; vmulps        %ymm5,%ymm0,%ymm0
5180  DB  197,12,194,243,2                    ; vcmpleps      %ymm3,%ymm14,%ymm14
5181  DB  196,99,29,74,240,224                ; vblendvps     %ymm14,%ymm0,%ymm12,%ymm14
5182  DB  197,204,94,199                      ; vdivps        %ymm7,%ymm6,%ymm0
5183  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
5184  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
5185  DB  196,65,52,88,201                    ; vaddps        %ymm9,%ymm9,%ymm9
5186  DB  196,65,52,89,209                    ; vmulps        %ymm9,%ymm9,%ymm10
5187  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
5188  DB  196,65,124,88,211                   ; vaddps        %ymm11,%ymm0,%ymm10
5189  DB  196,65,44,89,201                    ; vmulps        %ymm9,%ymm10,%ymm9
5190  DB  196,65,124,89,213                   ; vmulps        %ymm13,%ymm0,%ymm10
5191  DB  196,65,44,88,201                    ; vaddps        %ymm9,%ymm10,%ymm9
5192  DB  197,124,82,208                      ; vrsqrtps      %ymm0,%ymm10
5193  DB  196,65,124,83,210                   ; vrcpps        %ymm10,%ymm10
5194  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
5195  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
5196  DB  196,65,36,88,219                    ; vaddps        %ymm11,%ymm11,%ymm11
5197  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
5198  DB  196,67,45,74,201,176                ; vblendvps     %ymm11,%ymm9,%ymm10,%ymm9
5199  DB  197,124,16,100,36,32                ; vmovups       0x20(%rsp),%ymm12
5200  DB  196,65,28,88,212                    ; vaddps        %ymm12,%ymm12,%ymm10
5201  DB  197,44,92,219                       ; vsubps        %ymm3,%ymm10,%ymm11
5202  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5203  DB  197,164,89,192                      ; vmulps        %ymm0,%ymm11,%ymm0
5204  DB  197,36,89,223                       ; vmulps        %ymm7,%ymm11,%ymm11
5205  DB  196,65,36,89,201                    ; vmulps        %ymm9,%ymm11,%ymm9
5206  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
5207  DB  196,65,36,88,201                    ; vaddps        %ymm9,%ymm11,%ymm9
5208  DB  197,252,88,195                      ; vaddps        %ymm3,%ymm0,%ymm0
5209  DB  197,252,89,198                      ; vmulps        %ymm6,%ymm0,%ymm0
5210  DB  197,44,194,211,2                    ; vcmpleps      %ymm3,%ymm10,%ymm10
5211  DB  196,99,53,74,200,160                ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm9
5212  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
5213  DB  197,172,89,193                      ; vmulps        %ymm1,%ymm10,%ymm0
5214  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5215  DB  197,188,89,204                      ; vmulps        %ymm4,%ymm8,%ymm1
5216  DB  197,244,88,192                      ; vaddps        %ymm0,%ymm1,%ymm0
5217  DB  197,252,88,4,36                     ; vaddps        (%rsp),%ymm0,%ymm0
5218  DB  197,172,89,202                      ; vmulps        %ymm2,%ymm10,%ymm1
5219  DB  197,188,89,213                      ; vmulps        %ymm5,%ymm8,%ymm2
5220  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
5221  DB  196,193,116,88,206                  ; vaddps        %ymm14,%ymm1,%ymm1
5222  DB  196,193,44,89,212                   ; vmulps        %ymm12,%ymm10,%ymm2
5223  DB  197,60,89,214                       ; vmulps        %ymm6,%ymm8,%ymm10
5224  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
5225  DB  196,193,108,88,209                  ; vaddps        %ymm9,%ymm2,%ymm2
5226  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5227  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5228  DB  72,173                              ; lods          %ds:(%rsi),%rax
5229  DB  72,131,196,88                       ; add           $0x58,%rsp
5230  DB  255,224                             ; jmpq          *%rax
5231
5232PUBLIC _sk_clamp_0_avx
5233_sk_clamp_0_avx LABEL PROC
5234  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
5235  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
5236  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
5237  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
5238  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
5239  DB  72,173                              ; lods          %ds:(%rsi),%rax
5240  DB  255,224                             ; jmpq          *%rax
5241
5242PUBLIC _sk_clamp_1_avx
5243_sk_clamp_1_avx LABEL PROC
5244  DB  196,98,125,24,5,240,73,0,0          ; vbroadcastss  0x49f0(%rip),%ymm8        # 56b8 <_sk_callback_avx+0x181>
5245  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
5246  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
5247  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
5248  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
5249  DB  72,173                              ; lods          %ds:(%rsi),%rax
5250  DB  255,224                             ; jmpq          *%rax
5251
5252PUBLIC _sk_clamp_a_avx
5253_sk_clamp_a_avx LABEL PROC
5254  DB  196,98,125,24,5,211,73,0,0          ; vbroadcastss  0x49d3(%rip),%ymm8        # 56bc <_sk_callback_avx+0x185>
5255  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
5256  DB  197,252,93,195                      ; vminps        %ymm3,%ymm0,%ymm0
5257  DB  197,244,93,203                      ; vminps        %ymm3,%ymm1,%ymm1
5258  DB  197,236,93,211                      ; vminps        %ymm3,%ymm2,%ymm2
5259  DB  72,173                              ; lods          %ds:(%rsi),%rax
5260  DB  255,224                             ; jmpq          *%rax
5261
5262PUBLIC _sk_set_rgb_avx
5263_sk_set_rgb_avx LABEL PROC
5264  DB  72,173                              ; lods          %ds:(%rsi),%rax
5265  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
5266  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
5267  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
5268  DB  72,173                              ; lods          %ds:(%rsi),%rax
5269  DB  255,224                             ; jmpq          *%rax
5270
5271PUBLIC _sk_swap_rb_avx
5272_sk_swap_rb_avx LABEL PROC
5273  DB  197,124,40,192                      ; vmovaps       %ymm0,%ymm8
5274  DB  72,173                              ; lods          %ds:(%rsi),%rax
5275  DB  197,252,40,194                      ; vmovaps       %ymm2,%ymm0
5276  DB  197,124,41,194                      ; vmovaps       %ymm8,%ymm2
5277  DB  255,224                             ; jmpq          *%rax
5278
5279PUBLIC _sk_swap_avx
5280_sk_swap_avx LABEL PROC
5281  DB  197,124,40,195                      ; vmovaps       %ymm3,%ymm8
5282  DB  197,124,40,202                      ; vmovaps       %ymm2,%ymm9
5283  DB  197,124,40,209                      ; vmovaps       %ymm1,%ymm10
5284  DB  197,124,40,216                      ; vmovaps       %ymm0,%ymm11
5285  DB  72,173                              ; lods          %ds:(%rsi),%rax
5286  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
5287  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
5288  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
5289  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
5290  DB  197,124,41,220                      ; vmovaps       %ymm11,%ymm4
5291  DB  197,124,41,213                      ; vmovaps       %ymm10,%ymm5
5292  DB  197,124,41,206                      ; vmovaps       %ymm9,%ymm6
5293  DB  197,124,41,199                      ; vmovaps       %ymm8,%ymm7
5294  DB  255,224                             ; jmpq          *%rax
5295
5296PUBLIC _sk_move_src_dst_avx
5297_sk_move_src_dst_avx LABEL PROC
5298  DB  72,173                              ; lods          %ds:(%rsi),%rax
5299  DB  197,252,40,224                      ; vmovaps       %ymm0,%ymm4
5300  DB  197,252,40,233                      ; vmovaps       %ymm1,%ymm5
5301  DB  197,252,40,242                      ; vmovaps       %ymm2,%ymm6
5302  DB  197,252,40,251                      ; vmovaps       %ymm3,%ymm7
5303  DB  255,224                             ; jmpq          *%rax
5304
5305PUBLIC _sk_move_dst_src_avx
5306_sk_move_dst_src_avx LABEL PROC
5307  DB  72,173                              ; lods          %ds:(%rsi),%rax
5308  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
5309  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
5310  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
5311  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
5312  DB  255,224                             ; jmpq          *%rax
5313
5314PUBLIC _sk_premul_avx
5315_sk_premul_avx LABEL PROC
5316  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
5317  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
5318  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
5319  DB  72,173                              ; lods          %ds:(%rsi),%rax
5320  DB  255,224                             ; jmpq          *%rax
5321
5322PUBLIC _sk_unpremul_avx
5323_sk_unpremul_avx LABEL PROC
5324  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
5325  DB  196,65,100,194,200,0                ; vcmpeqps      %ymm8,%ymm3,%ymm9
5326  DB  196,98,125,24,21,27,73,0,0          ; vbroadcastss  0x491b(%rip),%ymm10        # 56c0 <_sk_callback_avx+0x189>
5327  DB  197,44,94,211                       ; vdivps        %ymm3,%ymm10,%ymm10
5328  DB  196,67,45,74,192,144                ; vblendvps     %ymm9,%ymm8,%ymm10,%ymm8
5329  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
5330  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
5331  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
5332  DB  72,173                              ; lods          %ds:(%rsi),%rax
5333  DB  255,224                             ; jmpq          *%rax
5334
5335PUBLIC _sk_from_srgb_avx
5336_sk_from_srgb_avx LABEL PROC
5337  DB  196,98,125,24,5,252,72,0,0          ; vbroadcastss  0x48fc(%rip),%ymm8        # 56c4 <_sk_callback_avx+0x18d>
5338  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
5339  DB  197,124,89,208                      ; vmulps        %ymm0,%ymm0,%ymm10
5340  DB  196,98,125,24,29,238,72,0,0         ; vbroadcastss  0x48ee(%rip),%ymm11        # 56c8 <_sk_callback_avx+0x191>
5341  DB  196,65,124,89,227                   ; vmulps        %ymm11,%ymm0,%ymm12
5342  DB  196,98,125,24,45,228,72,0,0         ; vbroadcastss  0x48e4(%rip),%ymm13        # 56cc <_sk_callback_avx+0x195>
5343  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
5344  DB  196,65,44,89,212                    ; vmulps        %ymm12,%ymm10,%ymm10
5345  DB  196,98,125,24,37,213,72,0,0         ; vbroadcastss  0x48d5(%rip),%ymm12        # 56d0 <_sk_callback_avx+0x199>
5346  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
5347  DB  196,98,125,24,53,203,72,0,0         ; vbroadcastss  0x48cb(%rip),%ymm14        # 56d4 <_sk_callback_avx+0x19d>
5348  DB  196,193,124,194,198,1               ; vcmpltps      %ymm14,%ymm0,%ymm0
5349  DB  196,195,45,74,193,0                 ; vblendvps     %ymm0,%ymm9,%ymm10,%ymm0
5350  DB  196,65,116,89,200                   ; vmulps        %ymm8,%ymm1,%ymm9
5351  DB  197,116,89,209                      ; vmulps        %ymm1,%ymm1,%ymm10
5352  DB  196,65,116,89,251                   ; vmulps        %ymm11,%ymm1,%ymm15
5353  DB  196,65,4,88,253                     ; vaddps        %ymm13,%ymm15,%ymm15
5354  DB  196,65,44,89,215                    ; vmulps        %ymm15,%ymm10,%ymm10
5355  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
5356  DB  196,193,116,194,206,1               ; vcmpltps      %ymm14,%ymm1,%ymm1
5357  DB  196,195,45,74,201,16                ; vblendvps     %ymm1,%ymm9,%ymm10,%ymm1
5358  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
5359  DB  197,108,89,202                      ; vmulps        %ymm2,%ymm2,%ymm9
5360  DB  196,65,108,89,211                   ; vmulps        %ymm11,%ymm2,%ymm10
5361  DB  196,65,44,88,213                    ; vaddps        %ymm13,%ymm10,%ymm10
5362  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
5363  DB  196,65,52,88,204                    ; vaddps        %ymm12,%ymm9,%ymm9
5364  DB  196,193,108,194,214,1               ; vcmpltps      %ymm14,%ymm2,%ymm2
5365  DB  196,195,53,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm9,%ymm2
5366  DB  72,173                              ; lods          %ds:(%rsi),%rax
5367  DB  255,224                             ; jmpq          *%rax
5368
5369PUBLIC _sk_to_srgb_avx
5370_sk_to_srgb_avx LABEL PROC
5371  DB  197,124,82,192                      ; vrsqrtps      %ymm0,%ymm8
5372  DB  196,65,124,83,200                   ; vrcpps        %ymm8,%ymm9
5373  DB  196,65,124,82,208                   ; vrsqrtps      %ymm8,%ymm10
5374  DB  196,98,125,24,5,86,72,0,0           ; vbroadcastss  0x4856(%rip),%ymm8        # 56d8 <_sk_callback_avx+0x1a1>
5375  DB  196,65,124,89,216                   ; vmulps        %ymm8,%ymm0,%ymm11
5376  DB  196,98,125,24,37,76,72,0,0          ; vbroadcastss  0x484c(%rip),%ymm12        # 56dc <_sk_callback_avx+0x1a5>
5377  DB  196,65,52,89,204                    ; vmulps        %ymm12,%ymm9,%ymm9
5378  DB  196,98,125,24,45,66,72,0,0          ; vbroadcastss  0x4842(%rip),%ymm13        # 56e0 <_sk_callback_avx+0x1a9>
5379  DB  196,65,52,88,205                    ; vaddps        %ymm13,%ymm9,%ymm9
5380  DB  196,98,125,24,53,56,72,0,0          ; vbroadcastss  0x4838(%rip),%ymm14        # 56e4 <_sk_callback_avx+0x1ad>
5381  DB  196,65,44,89,214                    ; vmulps        %ymm14,%ymm10,%ymm10
5382  DB  196,65,44,88,201                    ; vaddps        %ymm9,%ymm10,%ymm9
5383  DB  196,98,125,24,21,41,72,0,0          ; vbroadcastss  0x4829(%rip),%ymm10        # 56e8 <_sk_callback_avx+0x1b1>
5384  DB  196,65,44,93,201                    ; vminps        %ymm9,%ymm10,%ymm9
5385  DB  196,98,125,24,61,31,72,0,0          ; vbroadcastss  0x481f(%rip),%ymm15        # 56ec <_sk_callback_avx+0x1b5>
5386  DB  196,193,124,194,199,1               ; vcmpltps      %ymm15,%ymm0,%ymm0
5387  DB  196,195,53,74,195,0                 ; vblendvps     %ymm0,%ymm11,%ymm9,%ymm0
5388  DB  197,124,82,201                      ; vrsqrtps      %ymm1,%ymm9
5389  DB  196,65,124,83,217                   ; vrcpps        %ymm9,%ymm11
5390  DB  196,65,124,82,201                   ; vrsqrtps      %ymm9,%ymm9
5391  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
5392  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
5393  DB  196,65,52,89,206                    ; vmulps        %ymm14,%ymm9,%ymm9
5394  DB  196,65,52,88,203                    ; vaddps        %ymm11,%ymm9,%ymm9
5395  DB  196,65,116,89,216                   ; vmulps        %ymm8,%ymm1,%ymm11
5396  DB  196,65,44,93,201                    ; vminps        %ymm9,%ymm10,%ymm9
5397  DB  196,193,116,194,207,1               ; vcmpltps      %ymm15,%ymm1,%ymm1
5398  DB  196,195,53,74,203,16                ; vblendvps     %ymm1,%ymm11,%ymm9,%ymm1
5399  DB  197,124,82,202                      ; vrsqrtps      %ymm2,%ymm9
5400  DB  196,65,124,83,217                   ; vrcpps        %ymm9,%ymm11
5401  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
5402  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
5403  DB  196,65,124,82,201                   ; vrsqrtps      %ymm9,%ymm9
5404  DB  196,65,52,89,206                    ; vmulps        %ymm14,%ymm9,%ymm9
5405  DB  196,65,52,88,203                    ; vaddps        %ymm11,%ymm9,%ymm9
5406  DB  196,65,44,93,201                    ; vminps        %ymm9,%ymm10,%ymm9
5407  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
5408  DB  196,193,108,194,215,1               ; vcmpltps      %ymm15,%ymm2,%ymm2
5409  DB  196,195,53,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm9,%ymm2
5410  DB  72,173                              ; lods          %ds:(%rsi),%rax
5411  DB  255,224                             ; jmpq          *%rax
5412
5413PUBLIC _sk_rgb_to_hsl_avx
5414_sk_rgb_to_hsl_avx LABEL PROC
5415  DB  197,124,95,193                      ; vmaxps        %ymm1,%ymm0,%ymm8
5416  DB  197,60,95,194                       ; vmaxps        %ymm2,%ymm8,%ymm8
5417  DB  197,124,93,201                      ; vminps        %ymm1,%ymm0,%ymm9
5418  DB  197,52,93,202                       ; vminps        %ymm2,%ymm9,%ymm9
5419  DB  196,65,60,92,209                    ; vsubps        %ymm9,%ymm8,%ymm10
5420  DB  196,98,125,24,29,133,71,0,0         ; vbroadcastss  0x4785(%rip),%ymm11        # 56f0 <_sk_callback_avx+0x1b9>
5421  DB  196,65,36,94,218                    ; vdivps        %ymm10,%ymm11,%ymm11
5422  DB  197,116,92,226                      ; vsubps        %ymm2,%ymm1,%ymm12
5423  DB  196,65,28,89,227                    ; vmulps        %ymm11,%ymm12,%ymm12
5424  DB  197,116,194,234,1                   ; vcmpltps      %ymm2,%ymm1,%ymm13
5425  DB  197,60,194,241,0                    ; vcmpeqps      %ymm1,%ymm8,%ymm14
5426  DB  197,236,92,208                      ; vsubps        %ymm0,%ymm2,%ymm2
5427  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
5428  DB  197,252,92,201                      ; vsubps        %ymm1,%ymm0,%ymm1
5429  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
5430  DB  196,98,125,24,29,94,71,0,0          ; vbroadcastss  0x475e(%rip),%ymm11        # 56fc <_sk_callback_avx+0x1c5>
5431  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
5432  DB  196,98,125,24,29,76,71,0,0          ; vbroadcastss  0x474c(%rip),%ymm11        # 56f8 <_sk_callback_avx+0x1c1>
5433  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
5434  DB  196,227,117,74,202,224              ; vblendvps     %ymm14,%ymm2,%ymm1,%ymm1
5435  DB  196,226,125,24,21,52,71,0,0         ; vbroadcastss  0x4734(%rip),%ymm2        # 56f4 <_sk_callback_avx+0x1bd>
5436  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
5437  DB  196,227,13,74,210,208               ; vblendvps     %ymm13,%ymm2,%ymm14,%ymm2
5438  DB  197,188,194,192,0                   ; vcmpeqps      %ymm0,%ymm8,%ymm0
5439  DB  196,193,108,88,212                  ; vaddps        %ymm12,%ymm2,%ymm2
5440  DB  196,227,117,74,194,0                ; vblendvps     %ymm0,%ymm2,%ymm1,%ymm0
5441  DB  196,193,60,88,201                   ; vaddps        %ymm9,%ymm8,%ymm1
5442  DB  196,98,125,24,37,27,71,0,0          ; vbroadcastss  0x471b(%rip),%ymm12        # 5704 <_sk_callback_avx+0x1cd>
5443  DB  196,193,116,89,212                  ; vmulps        %ymm12,%ymm1,%ymm2
5444  DB  197,28,194,226,1                    ; vcmpltps      %ymm2,%ymm12,%ymm12
5445  DB  196,65,36,92,216                    ; vsubps        %ymm8,%ymm11,%ymm11
5446  DB  196,65,36,92,217                    ; vsubps        %ymm9,%ymm11,%ymm11
5447  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
5448  DB  196,65,60,194,193,0                 ; vcmpeqps      %ymm9,%ymm8,%ymm8
5449  DB  197,172,94,201                      ; vdivps        %ymm1,%ymm10,%ymm1
5450  DB  196,195,125,74,198,128              ; vblendvps     %ymm8,%ymm14,%ymm0,%ymm0
5451  DB  196,195,117,74,206,128              ; vblendvps     %ymm8,%ymm14,%ymm1,%ymm1
5452  DB  196,98,125,24,5,222,70,0,0          ; vbroadcastss  0x46de(%rip),%ymm8        # 5700 <_sk_callback_avx+0x1c9>
5453  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
5454  DB  72,173                              ; lods          %ds:(%rsi),%rax
5455  DB  255,224                             ; jmpq          *%rax
5456
5457PUBLIC _sk_hsl_to_rgb_avx
5458_sk_hsl_to_rgb_avx LABEL PROC
5459  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
5460  DB  197,252,17,188,36,128,0,0,0         ; vmovups       %ymm7,0x80(%rsp)
5461  DB  197,252,17,116,36,96                ; vmovups       %ymm6,0x60(%rsp)
5462  DB  197,252,17,108,36,64                ; vmovups       %ymm5,0x40(%rsp)
5463  DB  197,252,17,100,36,32                ; vmovups       %ymm4,0x20(%rsp)
5464  DB  197,252,17,28,36                    ; vmovups       %ymm3,(%rsp)
5465  DB  197,252,40,225                      ; vmovaps       %ymm1,%ymm4
5466  DB  197,252,40,216                      ; vmovaps       %ymm0,%ymm3
5467  DB  196,98,125,24,5,165,70,0,0          ; vbroadcastss  0x46a5(%rip),%ymm8        # 5708 <_sk_callback_avx+0x1d1>
5468  DB  197,60,194,202,2                    ; vcmpleps      %ymm2,%ymm8,%ymm9
5469  DB  197,92,89,210                       ; vmulps        %ymm2,%ymm4,%ymm10
5470  DB  196,65,92,92,218                    ; vsubps        %ymm10,%ymm4,%ymm11
5471  DB  196,67,45,74,203,144                ; vblendvps     %ymm9,%ymm11,%ymm10,%ymm9
5472  DB  197,52,88,210                       ; vaddps        %ymm2,%ymm9,%ymm10
5473  DB  197,108,88,202                      ; vaddps        %ymm2,%ymm2,%ymm9
5474  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
5475  DB  196,98,125,24,29,127,70,0,0         ; vbroadcastss  0x467f(%rip),%ymm11        # 570c <_sk_callback_avx+0x1d5>
5476  DB  196,65,100,88,219                   ; vaddps        %ymm11,%ymm3,%ymm11
5477  DB  196,67,125,8,227,1                  ; vroundps      $0x1,%ymm11,%ymm12
5478  DB  196,65,36,92,252                    ; vsubps        %ymm12,%ymm11,%ymm15
5479  DB  196,65,44,92,217                    ; vsubps        %ymm9,%ymm10,%ymm11
5480  DB  196,98,125,24,37,105,70,0,0         ; vbroadcastss  0x4669(%rip),%ymm12        # 5714 <_sk_callback_avx+0x1dd>
5481  DB  196,193,4,89,196                    ; vmulps        %ymm12,%ymm15,%ymm0
5482  DB  196,98,125,24,45,95,70,0,0          ; vbroadcastss  0x465f(%rip),%ymm13        # 5718 <_sk_callback_avx+0x1e1>
5483  DB  197,20,92,240                       ; vsubps        %ymm0,%ymm13,%ymm14
5484  DB  196,65,36,89,246                    ; vmulps        %ymm14,%ymm11,%ymm14
5485  DB  196,65,52,88,246                    ; vaddps        %ymm14,%ymm9,%ymm14
5486  DB  196,226,125,24,13,64,70,0,0         ; vbroadcastss  0x4640(%rip),%ymm1        # 5710 <_sk_callback_avx+0x1d9>
5487  DB  196,193,116,194,255,2               ; vcmpleps      %ymm15,%ymm1,%ymm7
5488  DB  196,195,13,74,249,112               ; vblendvps     %ymm7,%ymm9,%ymm14,%ymm7
5489  DB  196,65,60,194,247,2                 ; vcmpleps      %ymm15,%ymm8,%ymm14
5490  DB  196,227,45,74,255,224               ; vblendvps     %ymm14,%ymm7,%ymm10,%ymm7
5491  DB  196,98,125,24,53,43,70,0,0          ; vbroadcastss  0x462b(%rip),%ymm14        # 571c <_sk_callback_avx+0x1e5>
5492  DB  196,65,12,194,255,2                 ; vcmpleps      %ymm15,%ymm14,%ymm15
5493  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
5494  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
5495  DB  196,99,125,74,255,240               ; vblendvps     %ymm15,%ymm7,%ymm0,%ymm15
5496  DB  196,227,125,8,195,1                 ; vroundps      $0x1,%ymm3,%ymm0
5497  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
5498  DB  196,193,124,89,252                  ; vmulps        %ymm12,%ymm0,%ymm7
5499  DB  197,148,92,247                      ; vsubps        %ymm7,%ymm13,%ymm6
5500  DB  197,164,89,246                      ; vmulps        %ymm6,%ymm11,%ymm6
5501  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
5502  DB  197,244,194,232,2                   ; vcmpleps      %ymm0,%ymm1,%ymm5
5503  DB  196,195,77,74,233,80                ; vblendvps     %ymm5,%ymm9,%ymm6,%ymm5
5504  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
5505  DB  196,227,45,74,237,96                ; vblendvps     %ymm6,%ymm5,%ymm10,%ymm5
5506  DB  197,140,194,192,2                   ; vcmpleps      %ymm0,%ymm14,%ymm0
5507  DB  197,164,89,247                      ; vmulps        %ymm7,%ymm11,%ymm6
5508  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
5509  DB  196,227,77,74,237,0                 ; vblendvps     %ymm0,%ymm5,%ymm6,%ymm5
5510  DB  196,226,125,24,5,205,69,0,0         ; vbroadcastss  0x45cd(%rip),%ymm0        # 5720 <_sk_callback_avx+0x1e9>
5511  DB  197,228,88,192                      ; vaddps        %ymm0,%ymm3,%ymm0
5512  DB  196,227,125,8,216,1                 ; vroundps      $0x1,%ymm0,%ymm3
5513  DB  197,252,92,195                      ; vsubps        %ymm3,%ymm0,%ymm0
5514  DB  197,244,194,200,2                   ; vcmpleps      %ymm0,%ymm1,%ymm1
5515  DB  196,193,124,89,220                  ; vmulps        %ymm12,%ymm0,%ymm3
5516  DB  197,148,92,243                      ; vsubps        %ymm3,%ymm13,%ymm6
5517  DB  197,164,89,246                      ; vmulps        %ymm6,%ymm11,%ymm6
5518  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
5519  DB  196,195,77,74,201,16                ; vblendvps     %ymm1,%ymm9,%ymm6,%ymm1
5520  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
5521  DB  196,227,45,74,201,96                ; vblendvps     %ymm6,%ymm1,%ymm10,%ymm1
5522  DB  197,140,194,192,2                   ; vcmpleps      %ymm0,%ymm14,%ymm0
5523  DB  197,164,89,219                      ; vmulps        %ymm3,%ymm11,%ymm3
5524  DB  197,180,88,219                      ; vaddps        %ymm3,%ymm9,%ymm3
5525  DB  196,227,101,74,217,0                ; vblendvps     %ymm0,%ymm1,%ymm3,%ymm3
5526  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
5527  DB  197,220,194,224,0                   ; vcmpeqps      %ymm0,%ymm4,%ymm4
5528  DB  196,227,5,74,194,64                 ; vblendvps     %ymm4,%ymm2,%ymm15,%ymm0
5529  DB  196,227,85,74,202,64                ; vblendvps     %ymm4,%ymm2,%ymm5,%ymm1
5530  DB  196,227,101,74,210,64               ; vblendvps     %ymm4,%ymm2,%ymm3,%ymm2
5531  DB  72,173                              ; lods          %ds:(%rsi),%rax
5532  DB  197,252,16,28,36                    ; vmovups       (%rsp),%ymm3
5533  DB  197,252,16,100,36,32                ; vmovups       0x20(%rsp),%ymm4
5534  DB  197,252,16,108,36,64                ; vmovups       0x40(%rsp),%ymm5
5535  DB  197,252,16,116,36,96                ; vmovups       0x60(%rsp),%ymm6
5536  DB  197,252,16,188,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm7
5537  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
5538  DB  255,224                             ; jmpq          *%rax
5539
5540PUBLIC _sk_scale_1_float_avx
5541_sk_scale_1_float_avx LABEL PROC
5542  DB  72,173                              ; lods          %ds:(%rsi),%rax
5543  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
5544  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
5545  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
5546  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
5547  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
5548  DB  72,173                              ; lods          %ds:(%rsi),%rax
5549  DB  255,224                             ; jmpq          *%rax
5550
5551PUBLIC _sk_scale_u8_avx
5552_sk_scale_u8_avx LABEL PROC
5553  DB  73,137,200                          ; mov           %rcx,%r8
5554  DB  72,173                              ; lods          %ds:(%rsi),%rax
5555  DB  72,139,0                            ; mov           (%rax),%rax
5556  DB  72,1,248                            ; add           %rdi,%rax
5557  DB  77,133,192                          ; test          %r8,%r8
5558  DB  117,68                              ; jne           1250 <_sk_scale_u8_avx+0x54>
5559  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
5560  DB  196,66,121,49,200                   ; vpmovzxbd     %xmm8,%xmm9
5561  DB  196,67,121,4,192,229                ; vpermilps     $0xe5,%xmm8,%xmm8
5562  DB  196,66,121,49,192                   ; vpmovzxbd     %xmm8,%xmm8
5563  DB  196,67,53,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm9,%ymm8
5564  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
5565  DB  196,98,125,24,13,240,68,0,0         ; vbroadcastss  0x44f0(%rip),%ymm9        # 5724 <_sk_callback_avx+0x1ed>
5566  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
5567  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
5568  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
5569  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
5570  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
5571  DB  72,173                              ; lods          %ds:(%rsi),%rax
5572  DB  76,137,193                          ; mov           %r8,%rcx
5573  DB  255,224                             ; jmpq          *%rax
5574  DB  49,201                              ; xor           %ecx,%ecx
5575  DB  77,137,194                          ; mov           %r8,%r10
5576  DB  69,49,201                           ; xor           %r9d,%r9d
5577  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
5578  DB  72,255,192                          ; inc           %rax
5579  DB  73,211,227                          ; shl           %cl,%r11
5580  DB  77,9,217                            ; or            %r11,%r9
5581  DB  72,131,193,8                        ; add           $0x8,%rcx
5582  DB  73,255,202                          ; dec           %r10
5583  DB  117,234                             ; jne           1258 <_sk_scale_u8_avx+0x5c>
5584  DB  196,65,249,110,193                  ; vmovq         %r9,%xmm8
5585  DB  235,155                             ; jmp           1210 <_sk_scale_u8_avx+0x14>
5586
5587PUBLIC _sk_lerp_1_float_avx
5588_sk_lerp_1_float_avx LABEL PROC
5589  DB  72,173                              ; lods          %ds:(%rsi),%rax
5590  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
5591  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
5592  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
5593  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
5594  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
5595  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
5596  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
5597  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
5598  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
5599  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
5600  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
5601  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
5602  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
5603  DB  72,173                              ; lods          %ds:(%rsi),%rax
5604  DB  255,224                             ; jmpq          *%rax
5605
5606PUBLIC _sk_lerp_u8_avx
5607_sk_lerp_u8_avx LABEL PROC
5608  DB  73,137,200                          ; mov           %rcx,%r8
5609  DB  72,173                              ; lods          %ds:(%rsi),%rax
5610  DB  72,139,0                            ; mov           (%rax),%rax
5611  DB  72,1,248                            ; add           %rdi,%rax
5612  DB  77,133,192                          ; test          %r8,%r8
5613  DB  117,104                             ; jne           132c <_sk_lerp_u8_avx+0x78>
5614  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
5615  DB  196,66,121,49,200                   ; vpmovzxbd     %xmm8,%xmm9
5616  DB  196,67,121,4,192,229                ; vpermilps     $0xe5,%xmm8,%xmm8
5617  DB  196,66,121,49,192                   ; vpmovzxbd     %xmm8,%xmm8
5618  DB  196,67,53,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm9,%ymm8
5619  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
5620  DB  196,98,125,24,13,60,68,0,0          ; vbroadcastss  0x443c(%rip),%ymm9        # 5728 <_sk_callback_avx+0x1f1>
5621  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
5622  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
5623  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
5624  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
5625  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
5626  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
5627  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
5628  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
5629  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
5630  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
5631  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
5632  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
5633  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
5634  DB  72,173                              ; lods          %ds:(%rsi),%rax
5635  DB  76,137,193                          ; mov           %r8,%rcx
5636  DB  255,224                             ; jmpq          *%rax
5637  DB  49,201                              ; xor           %ecx,%ecx
5638  DB  77,137,194                          ; mov           %r8,%r10
5639  DB  69,49,201                           ; xor           %r9d,%r9d
5640  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
5641  DB  72,255,192                          ; inc           %rax
5642  DB  73,211,227                          ; shl           %cl,%r11
5643  DB  77,9,217                            ; or            %r11,%r9
5644  DB  72,131,193,8                        ; add           $0x8,%rcx
5645  DB  73,255,202                          ; dec           %r10
5646  DB  117,234                             ; jne           1334 <_sk_lerp_u8_avx+0x80>
5647  DB  196,65,249,110,193                  ; vmovq         %r9,%xmm8
5648  DB  233,116,255,255,255                 ; jmpq          12c8 <_sk_lerp_u8_avx+0x14>
5649
5650PUBLIC _sk_lerp_565_avx
5651_sk_lerp_565_avx LABEL PROC
5652  DB  72,173                              ; lods          %ds:(%rsi),%rax
5653  DB  76,139,16                           ; mov           (%rax),%r10
5654  DB  72,133,201                          ; test          %rcx,%rcx
5655  DB  15,133,174,0,0,0                    ; jne           1410 <_sk_lerp_565_avx+0xbc>
5656  DB  196,65,122,111,4,122                ; vmovdqu       (%r10,%rdi,2),%xmm8
5657  DB  197,225,239,219                     ; vpxor         %xmm3,%xmm3,%xmm3
5658  DB  197,185,105,219                     ; vpunpckhwd    %xmm3,%xmm8,%xmm3
5659  DB  196,66,121,51,192                   ; vpmovzxwd     %xmm8,%xmm8
5660  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
5661  DB  196,98,125,24,5,168,67,0,0          ; vbroadcastss  0x43a8(%rip),%ymm8        # 572c <_sk_callback_avx+0x1f5>
5662  DB  196,65,100,84,192                   ; vandps        %ymm8,%ymm3,%ymm8
5663  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
5664  DB  196,98,125,24,13,153,67,0,0         ; vbroadcastss  0x4399(%rip),%ymm9        # 5730 <_sk_callback_avx+0x1f9>
5665  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
5666  DB  196,98,125,24,13,143,67,0,0         ; vbroadcastss  0x438f(%rip),%ymm9        # 5734 <_sk_callback_avx+0x1fd>
5667  DB  196,65,100,84,201                   ; vandps        %ymm9,%ymm3,%ymm9
5668  DB  196,65,124,91,201                   ; vcvtdq2ps     %ymm9,%ymm9
5669  DB  196,98,125,24,21,128,67,0,0         ; vbroadcastss  0x4380(%rip),%ymm10        # 5738 <_sk_callback_avx+0x201>
5670  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
5671  DB  196,98,125,24,21,118,67,0,0         ; vbroadcastss  0x4376(%rip),%ymm10        # 573c <_sk_callback_avx+0x205>
5672  DB  196,193,100,84,218                  ; vandps        %ymm10,%ymm3,%ymm3
5673  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
5674  DB  196,98,125,24,21,104,67,0,0         ; vbroadcastss  0x4368(%rip),%ymm10        # 5740 <_sk_callback_avx+0x209>
5675  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
5676  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
5677  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
5678  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
5679  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
5680  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
5681  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
5682  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
5683  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
5684  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
5685  DB  72,173                              ; lods          %ds:(%rsi),%rax
5686  DB  196,226,125,24,29,54,67,0,0         ; vbroadcastss  0x4336(%rip),%ymm3        # 5744 <_sk_callback_avx+0x20d>
5687  DB  255,224                             ; jmpq          *%rax
5688  DB  65,137,200                          ; mov           %ecx,%r8d
5689  DB  65,128,224,7                        ; and           $0x7,%r8b
5690  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
5691  DB  65,254,200                          ; dec           %r8b
5692  DB  65,128,248,6                        ; cmp           $0x6,%r8b
5693  DB  15,135,63,255,255,255               ; ja            1368 <_sk_lerp_565_avx+0x14>
5694  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
5695  DB  76,141,13,76,0,0,0                  ; lea           0x4c(%rip),%r9        # 1480 <_sk_lerp_565_avx+0x12c>
5696  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
5697  DB  76,1,200                            ; add           %r9,%rax
5698  DB  255,224                             ; jmpq          *%rax
5699  DB  197,225,239,219                     ; vpxor         %xmm3,%xmm3,%xmm3
5700  DB  196,65,97,196,68,122,12,6           ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm3,%xmm8
5701  DB  196,65,57,196,68,122,10,5           ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm8,%xmm8
5702  DB  196,65,57,196,68,122,8,4            ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm8,%xmm8
5703  DB  196,65,57,196,68,122,6,3            ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm8,%xmm8
5704  DB  196,65,57,196,68,122,4,2            ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm8,%xmm8
5705  DB  196,65,57,196,68,122,2,1            ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm8,%xmm8
5706  DB  196,65,57,196,4,122,0               ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm8,%xmm8
5707  DB  233,235,254,255,255                 ; jmpq          1368 <_sk_lerp_565_avx+0x14>
5708  DB  15,31,0                             ; nopl          (%rax)
5709  DB  241                                 ; icebp
5710  DB  255                                 ; (bad)
5711  DB  255                                 ; (bad)
5712  DB  255                                 ; (bad)
5713  DB  233,255,255,255,225                 ; jmpq          ffffffffe2001488 <_sk_callback_avx+0xffffffffe1ffbf51>
5714  DB  255                                 ; (bad)
5715  DB  255                                 ; (bad)
5716  DB  255                                 ; (bad)
5717  DB  217,255                             ; fcos
5718  DB  255                                 ; (bad)
5719  DB  255,209                             ; callq         *%rcx
5720  DB  255                                 ; (bad)
5721  DB  255                                 ; (bad)
5722  DB  255,201                             ; dec           %ecx
5723  DB  255                                 ; (bad)
5724  DB  255                                 ; (bad)
5725  DB  255                                 ; (bad)
5726  DB  189                                 ; .byte         0xbd
5727  DB  255                                 ; (bad)
5728  DB  255                                 ; (bad)
5729  DB  255                                 ; .byte         0xff
5730
5731PUBLIC _sk_load_tables_avx
5732_sk_load_tables_avx LABEL PROC
5733  DB  72,173                              ; lods          %ds:(%rsi),%rax
5734  DB  76,139,0                            ; mov           (%rax),%r8
5735  DB  72,133,201                          ; test          %rcx,%rcx
5736  DB  15,133,26,2,0,0                     ; jne           16c4 <_sk_load_tables_avx+0x228>
5737  DB  196,65,124,16,4,184                 ; vmovups       (%r8,%rdi,4),%ymm8
5738  DB  85                                  ; push          %rbp
5739  DB  65,87                               ; push          %r15
5740  DB  65,86                               ; push          %r14
5741  DB  65,85                               ; push          %r13
5742  DB  65,84                               ; push          %r12
5743  DB  83                                  ; push          %rbx
5744  DB  197,124,40,13,94,69,0,0             ; vmovaps       0x455e(%rip),%ymm9        # 5a20 <_sk_callback_avx+0x4e9>
5745  DB  196,193,60,84,193                   ; vandps        %ymm9,%ymm8,%ymm0
5746  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
5747  DB  69,137,203                          ; mov           %r9d,%r11d
5748  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
5749  DB  69,137,214                          ; mov           %r10d,%r14d
5750  DB  73,193,234,32                       ; shr           $0x20,%r10
5751  DB  73,193,233,32                       ; shr           $0x20,%r9
5752  DB  196,227,125,25,192,1                ; vextractf128  $0x1,%ymm0,%xmm0
5753  DB  196,193,249,126,196                 ; vmovq         %xmm0,%r12
5754  DB  69,137,231                          ; mov           %r12d,%r15d
5755  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
5756  DB  65,137,221                          ; mov           %ebx,%r13d
5757  DB  72,193,235,32                       ; shr           $0x20,%rbx
5758  DB  73,193,236,32                       ; shr           $0x20,%r12
5759  DB  72,139,104,8                        ; mov           0x8(%rax),%rbp
5760  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
5761  DB  196,161,122,16,68,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm0
5762  DB  196,163,121,33,68,165,0,16          ; vinsertps     $0x10,0x0(%rbp,%r12,4),%xmm0,%xmm0
5763  DB  196,163,121,33,68,173,0,32          ; vinsertps     $0x20,0x0(%rbp,%r13,4),%xmm0,%xmm0
5764  DB  196,227,121,33,68,157,0,48          ; vinsertps     $0x30,0x0(%rbp,%rbx,4),%xmm0,%xmm0
5765  DB  196,161,122,16,76,157,0             ; vmovss        0x0(%rbp,%r11,4),%xmm1
5766  DB  196,163,113,33,76,141,0,16          ; vinsertps     $0x10,0x0(%rbp,%r9,4),%xmm1,%xmm1
5767  DB  196,163,113,33,76,181,0,32          ; vinsertps     $0x20,0x0(%rbp,%r14,4),%xmm1,%xmm1
5768  DB  196,163,113,33,76,149,0,48          ; vinsertps     $0x30,0x0(%rbp,%r10,4),%xmm1,%xmm1
5769  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
5770  DB  196,193,113,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm1
5771  DB  196,67,125,25,194,1                 ; vextractf128  $0x1,%ymm8,%xmm10
5772  DB  196,193,105,114,210,8               ; vpsrld        $0x8,%xmm10,%xmm2
5773  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
5774  DB  196,193,116,84,201                  ; vandps        %ymm9,%ymm1,%ymm1
5775  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
5776  DB  69,137,203                          ; mov           %r9d,%r11d
5777  DB  196,195,249,22,202,1                ; vpextrq       $0x1,%xmm1,%r10
5778  DB  69,137,214                          ; mov           %r10d,%r14d
5779  DB  73,193,234,32                       ; shr           $0x20,%r10
5780  DB  73,193,233,32                       ; shr           $0x20,%r9
5781  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
5782  DB  196,225,249,126,205                 ; vmovq         %xmm1,%rbp
5783  DB  65,137,239                          ; mov           %ebp,%r15d
5784  DB  196,227,249,22,203,1                ; vpextrq       $0x1,%xmm1,%rbx
5785  DB  65,137,220                          ; mov           %ebx,%r12d
5786  DB  72,193,235,32                       ; shr           $0x20,%rbx
5787  DB  72,193,237,32                       ; shr           $0x20,%rbp
5788  DB  196,129,122,16,12,184               ; vmovss        (%r8,%r15,4),%xmm1
5789  DB  196,195,113,33,12,168,16            ; vinsertps     $0x10,(%r8,%rbp,4),%xmm1,%xmm1
5790  DB  196,129,122,16,20,160               ; vmovss        (%r8,%r12,4),%xmm2
5791  DB  196,227,113,33,202,32               ; vinsertps     $0x20,%xmm2,%xmm1,%xmm1
5792  DB  196,193,122,16,20,152               ; vmovss        (%r8,%rbx,4),%xmm2
5793  DB  196,227,113,33,202,48               ; vinsertps     $0x30,%xmm2,%xmm1,%xmm1
5794  DB  196,129,122,16,20,152               ; vmovss        (%r8,%r11,4),%xmm2
5795  DB  196,131,105,33,20,136,16            ; vinsertps     $0x10,(%r8,%r9,4),%xmm2,%xmm2
5796  DB  196,129,122,16,28,176               ; vmovss        (%r8,%r14,4),%xmm3
5797  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
5798  DB  196,129,122,16,28,144               ; vmovss        (%r8,%r10,4),%xmm3
5799  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
5800  DB  196,227,109,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm1
5801  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
5802  DB  196,193,105,114,208,16              ; vpsrld        $0x10,%xmm8,%xmm2
5803  DB  196,193,97,114,210,16               ; vpsrld        $0x10,%xmm10,%xmm3
5804  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
5805  DB  196,193,108,84,209                  ; vandps        %ymm9,%ymm2,%ymm2
5806  DB  196,193,249,126,208                 ; vmovq         %xmm2,%r8
5807  DB  69,137,194                          ; mov           %r8d,%r10d
5808  DB  196,195,249,22,209,1                ; vpextrq       $0x1,%xmm2,%r9
5809  DB  69,137,203                          ; mov           %r9d,%r11d
5810  DB  73,193,233,32                       ; shr           $0x20,%r9
5811  DB  73,193,232,32                       ; shr           $0x20,%r8
5812  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
5813  DB  196,225,249,126,213                 ; vmovq         %xmm2,%rbp
5814  DB  65,137,238                          ; mov           %ebp,%r14d
5815  DB  196,227,249,22,211,1                ; vpextrq       $0x1,%xmm2,%rbx
5816  DB  65,137,223                          ; mov           %ebx,%r15d
5817  DB  72,193,235,32                       ; shr           $0x20,%rbx
5818  DB  72,193,237,32                       ; shr           $0x20,%rbp
5819  DB  196,161,122,16,20,176               ; vmovss        (%rax,%r14,4),%xmm2
5820  DB  196,227,105,33,20,168,16            ; vinsertps     $0x10,(%rax,%rbp,4),%xmm2,%xmm2
5821  DB  196,161,122,16,28,184               ; vmovss        (%rax,%r15,4),%xmm3
5822  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
5823  DB  197,250,16,28,152                   ; vmovss        (%rax,%rbx,4),%xmm3
5824  DB  196,99,105,33,203,48                ; vinsertps     $0x30,%xmm3,%xmm2,%xmm9
5825  DB  196,161,122,16,28,144               ; vmovss        (%rax,%r10,4),%xmm3
5826  DB  196,163,97,33,28,128,16             ; vinsertps     $0x10,(%rax,%r8,4),%xmm3,%xmm3
5827  DB  196,161,122,16,20,152               ; vmovss        (%rax,%r11,4),%xmm2
5828  DB  196,227,97,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm3,%xmm2
5829  DB  196,161,122,16,28,136               ; vmovss        (%rax,%r9,4),%xmm3
5830  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
5831  DB  196,195,109,24,209,1                ; vinsertf128   $0x1,%xmm9,%ymm2,%ymm2
5832  DB  196,193,57,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm8
5833  DB  196,193,97,114,210,24               ; vpsrld        $0x18,%xmm10,%xmm3
5834  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
5835  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
5836  DB  196,98,125,24,5,151,64,0,0          ; vbroadcastss  0x4097(%rip),%ymm8        # 5748 <_sk_callback_avx+0x211>
5837  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
5838  DB  72,173                              ; lods          %ds:(%rsi),%rax
5839  DB  91                                  ; pop           %rbx
5840  DB  65,92                               ; pop           %r12
5841  DB  65,93                               ; pop           %r13
5842  DB  65,94                               ; pop           %r14
5843  DB  65,95                               ; pop           %r15
5844  DB  93                                  ; pop           %rbp
5845  DB  255,224                             ; jmpq          *%rax
5846  DB  65,137,201                          ; mov           %ecx,%r9d
5847  DB  65,128,225,7                        ; and           $0x7,%r9b
5848  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
5849  DB  65,254,201                          ; dec           %r9b
5850  DB  65,128,249,6                        ; cmp           $0x6,%r9b
5851  DB  15,135,211,253,255,255              ; ja            14b0 <_sk_load_tables_avx+0x14>
5852  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
5853  DB  76,141,21,140,0,0,0                 ; lea           0x8c(%rip),%r10        # 1774 <_sk_load_tables_avx+0x2d8>
5854  DB  79,99,12,138                        ; movslq        (%r10,%r9,4),%r9
5855  DB  77,1,209                            ; add           %r10,%r9
5856  DB  65,255,225                          ; jmpq          *%r9
5857  DB  196,193,121,110,68,184,24           ; vmovd         0x18(%r8,%rdi,4),%xmm0
5858  DB  197,249,112,192,68                  ; vpshufd       $0x44,%xmm0,%xmm0
5859  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
5860  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
5861  DB  196,99,117,12,192,64                ; vblendps      $0x40,%ymm0,%ymm1,%ymm8
5862  DB  196,99,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm0
5863  DB  196,195,121,34,68,184,20,1          ; vpinsrd       $0x1,0x14(%r8,%rdi,4),%xmm0,%xmm0
5864  DB  196,99,61,24,192,1                  ; vinsertf128   $0x1,%xmm0,%ymm8,%ymm8
5865  DB  196,99,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm0
5866  DB  196,195,121,34,68,184,16,0          ; vpinsrd       $0x0,0x10(%r8,%rdi,4),%xmm0,%xmm0
5867  DB  196,99,61,24,192,1                  ; vinsertf128   $0x1,%xmm0,%ymm8,%ymm8
5868  DB  196,195,57,34,68,184,12,3           ; vpinsrd       $0x3,0xc(%r8,%rdi,4),%xmm8,%xmm0
5869  DB  196,99,61,12,192,15                 ; vblendps      $0xf,%ymm0,%ymm8,%ymm8
5870  DB  196,195,57,34,68,184,8,2            ; vpinsrd       $0x2,0x8(%r8,%rdi,4),%xmm8,%xmm0
5871  DB  196,99,61,12,192,15                 ; vblendps      $0xf,%ymm0,%ymm8,%ymm8
5872  DB  196,195,57,34,68,184,4,1            ; vpinsrd       $0x1,0x4(%r8,%rdi,4),%xmm8,%xmm0
5873  DB  196,99,61,12,192,15                 ; vblendps      $0xf,%ymm0,%ymm8,%ymm8
5874  DB  196,195,57,34,4,184,0               ; vpinsrd       $0x0,(%r8,%rdi,4),%xmm8,%xmm0
5875  DB  196,99,61,12,192,15                 ; vblendps      $0xf,%ymm0,%ymm8,%ymm8
5876  DB  233,62,253,255,255                  ; jmpq          14b0 <_sk_load_tables_avx+0x14>
5877  DB  102,144                             ; xchg          %ax,%ax
5878  DB  236                                 ; in            (%dx),%al
5879  DB  255                                 ; (bad)
5880  DB  255                                 ; (bad)
5881  DB  255                                 ; (bad)
5882  DB  222,255                             ; fdivrp        %st,%st(7)
5883  DB  255                                 ; (bad)
5884  DB  255,208                             ; callq         *%rax
5885  DB  255                                 ; (bad)
5886  DB  255                                 ; (bad)
5887  DB  255,194                             ; inc           %edx
5888  DB  255                                 ; (bad)
5889  DB  255                                 ; (bad)
5890  DB  255,174,255,255,255,154             ; ljmp          *-0x65000001(%rsi)
5891  DB  255                                 ; (bad)
5892  DB  255                                 ; (bad)
5893  DB  255                                 ; (bad)
5894  DB  126,255                             ; jle           178d <_sk_load_tables_avx+0x2f1>
5895  DB  255                                 ; (bad)
5896  DB  255                                 ; .byte         0xff
5897
5898PUBLIC _sk_load_tables_u16_be_avx
5899_sk_load_tables_u16_be_avx LABEL PROC
5900  DB  72,173                              ; lods          %ds:(%rsi),%rax
5901  DB  76,139,0                            ; mov           (%rax),%r8
5902  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
5903  DB  72,133,201                          ; test          %rcx,%rcx
5904  DB  15,133,113,2,0,0                    ; jne           1a17 <_sk_load_tables_u16_be_avx+0x287>
5905  DB  196,1,121,16,4,72                   ; vmovupd       (%r8,%r9,2),%xmm8
5906  DB  196,129,121,16,84,72,16             ; vmovupd       0x10(%r8,%r9,2),%xmm2
5907  DB  196,129,121,16,92,72,32             ; vmovupd       0x20(%r8,%r9,2),%xmm3
5908  DB  196,1,122,111,76,72,48              ; vmovdqu       0x30(%r8,%r9,2),%xmm9
5909  DB  85                                  ; push          %rbp
5910  DB  65,87                               ; push          %r15
5911  DB  65,86                               ; push          %r14
5912  DB  65,85                               ; push          %r13
5913  DB  65,84                               ; push          %r12
5914  DB  83                                  ; push          %rbx
5915  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
5916  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
5917  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
5918  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
5919  DB  197,121,97,202                      ; vpunpcklwd    %xmm2,%xmm0,%xmm9
5920  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
5921  DB  197,241,97,195                      ; vpunpcklwd    %xmm3,%xmm1,%xmm0
5922  DB  197,113,105,227                     ; vpunpckhwd    %xmm3,%xmm1,%xmm12
5923  DB  197,177,108,208                     ; vpunpcklqdq   %xmm0,%xmm9,%xmm2
5924  DB  197,177,109,200                     ; vpunpckhqdq   %xmm0,%xmm9,%xmm1
5925  DB  196,65,57,108,212                   ; vpunpcklqdq   %xmm12,%xmm8,%xmm10
5926  DB  197,121,111,29,158,66,0,0           ; vmovdqa       0x429e(%rip),%xmm11        # 5aa0 <_sk_callback_avx+0x569>
5927  DB  196,193,105,219,195                 ; vpand         %xmm11,%xmm2,%xmm0
5928  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
5929  DB  196,193,121,105,209                 ; vpunpckhwd    %xmm9,%xmm0,%xmm2
5930  DB  196,195,249,22,208,1                ; vpextrq       $0x1,%xmm2,%r8
5931  DB  69,137,193                          ; mov           %r8d,%r9d
5932  DB  77,137,194                          ; mov           %r8,%r10
5933  DB  73,193,234,32                       ; shr           $0x20,%r10
5934  DB  196,193,249,126,208                 ; vmovq         %xmm2,%r8
5935  DB  69,137,195                          ; mov           %r8d,%r11d
5936  DB  77,137,198                          ; mov           %r8,%r14
5937  DB  73,193,238,32                       ; shr           $0x20,%r14
5938  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
5939  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
5940  DB  65,137,223                          ; mov           %ebx,%r15d
5941  DB  72,193,235,30                       ; shr           $0x1e,%rbx
5942  DB  196,195,249,22,196,1                ; vpextrq       $0x1,%xmm0,%r12
5943  DB  69,137,229                          ; mov           %r12d,%r13d
5944  DB  73,193,236,30                       ; shr           $0x1e,%r12
5945  DB  72,139,104,8                        ; mov           0x8(%rax),%rbp
5946  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
5947  DB  196,161,122,16,68,157,0             ; vmovss        0x0(%rbp,%r11,4),%xmm0
5948  DB  196,163,121,33,68,181,0,16          ; vinsertps     $0x10,0x0(%rbp,%r14,4),%xmm0,%xmm0
5949  DB  196,161,122,16,84,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm2
5950  DB  196,227,121,33,194,32               ; vinsertps     $0x20,%xmm2,%xmm0,%xmm0
5951  DB  196,161,122,16,84,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm2
5952  DB  196,227,121,33,194,48               ; vinsertps     $0x30,%xmm2,%xmm0,%xmm0
5953  DB  196,161,122,16,84,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm2
5954  DB  196,227,105,33,84,29,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,1),%xmm2,%xmm2
5955  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
5956  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
5957  DB  196,161,122,16,92,37,0              ; vmovss        0x0(%rbp,%r12,1),%xmm3
5958  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
5959  DB  196,227,109,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm2,%ymm0
5960  DB  196,193,113,219,203                 ; vpand         %xmm11,%xmm1,%xmm1
5961  DB  196,193,113,105,209                 ; vpunpckhwd    %xmm9,%xmm1,%xmm2
5962  DB  196,227,249,22,213,1                ; vpextrq       $0x1,%xmm2,%rbp
5963  DB  65,137,233                          ; mov           %ebp,%r9d
5964  DB  72,193,237,32                       ; shr           $0x20,%rbp
5965  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
5966  DB  65,137,218                          ; mov           %ebx,%r10d
5967  DB  72,193,235,32                       ; shr           $0x20,%rbx
5968  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
5969  DB  196,193,249,126,203                 ; vmovq         %xmm1,%r11
5970  DB  69,137,222                          ; mov           %r11d,%r14d
5971  DB  73,193,235,30                       ; shr           $0x1e,%r11
5972  DB  196,195,249,22,207,1                ; vpextrq       $0x1,%xmm1,%r15
5973  DB  69,137,252                          ; mov           %r15d,%r12d
5974  DB  73,193,239,30                       ; shr           $0x1e,%r15
5975  DB  196,129,122,16,12,144               ; vmovss        (%r8,%r10,4),%xmm1
5976  DB  196,195,113,33,12,152,16            ; vinsertps     $0x10,(%r8,%rbx,4),%xmm1,%xmm1
5977  DB  196,129,122,16,20,136               ; vmovss        (%r8,%r9,4),%xmm2
5978  DB  196,227,113,33,202,32               ; vinsertps     $0x20,%xmm2,%xmm1,%xmm1
5979  DB  196,193,122,16,20,168               ; vmovss        (%r8,%rbp,4),%xmm2
5980  DB  196,227,113,33,202,48               ; vinsertps     $0x30,%xmm2,%xmm1,%xmm1
5981  DB  196,129,122,16,20,176               ; vmovss        (%r8,%r14,4),%xmm2
5982  DB  196,131,105,33,20,24,16             ; vinsertps     $0x10,(%r8,%r11,1),%xmm2,%xmm2
5983  DB  196,129,122,16,28,160               ; vmovss        (%r8,%r12,4),%xmm3
5984  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
5985  DB  196,129,122,16,28,56                ; vmovss        (%r8,%r15,1),%xmm3
5986  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
5987  DB  196,227,109,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm1
5988  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
5989  DB  196,193,41,219,211                  ; vpand         %xmm11,%xmm10,%xmm2
5990  DB  196,193,105,105,217                 ; vpunpckhwd    %xmm9,%xmm2,%xmm3
5991  DB  196,227,249,22,221,1                ; vpextrq       $0x1,%xmm3,%rbp
5992  DB  65,137,232                          ; mov           %ebp,%r8d
5993  DB  72,193,237,32                       ; shr           $0x20,%rbp
5994  DB  196,225,249,126,219                 ; vmovq         %xmm3,%rbx
5995  DB  65,137,217                          ; mov           %ebx,%r9d
5996  DB  72,193,235,32                       ; shr           $0x20,%rbx
5997  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
5998  DB  196,225,249,126,208                 ; vmovq         %xmm2,%rax
5999  DB  65,137,195                          ; mov           %eax,%r11d
6000  DB  72,193,232,30                       ; shr           $0x1e,%rax
6001  DB  196,195,249,22,214,1                ; vpextrq       $0x1,%xmm2,%r14
6002  DB  69,137,247                          ; mov           %r14d,%r15d
6003  DB  73,193,238,30                       ; shr           $0x1e,%r14
6004  DB  196,129,122,16,20,138               ; vmovss        (%r10,%r9,4),%xmm2
6005  DB  196,195,105,33,20,154,16            ; vinsertps     $0x10,(%r10,%rbx,4),%xmm2,%xmm2
6006  DB  196,129,122,16,28,130               ; vmovss        (%r10,%r8,4),%xmm3
6007  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
6008  DB  196,193,122,16,28,170               ; vmovss        (%r10,%rbp,4),%xmm3
6009  DB  196,99,105,33,211,48                ; vinsertps     $0x30,%xmm3,%xmm2,%xmm10
6010  DB  196,129,122,16,28,154               ; vmovss        (%r10,%r11,4),%xmm3
6011  DB  196,195,97,33,28,2,16               ; vinsertps     $0x10,(%r10,%rax,1),%xmm3,%xmm3
6012  DB  196,129,122,16,20,186               ; vmovss        (%r10,%r15,4),%xmm2
6013  DB  196,227,97,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm3,%xmm2
6014  DB  196,129,122,16,28,50                ; vmovss        (%r10,%r14,1),%xmm3
6015  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
6016  DB  196,195,109,24,210,1                ; vinsertf128   $0x1,%xmm10,%ymm2,%ymm2
6017  DB  196,193,57,109,220                  ; vpunpckhqdq   %xmm12,%xmm8,%xmm3
6018  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
6019  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
6020  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
6021  DB  196,65,97,105,193                   ; vpunpckhwd    %xmm9,%xmm3,%xmm8
6022  DB  196,226,121,51,219                  ; vpmovzxwd     %xmm3,%xmm3
6023  DB  196,195,101,24,216,1                ; vinsertf128   $0x1,%xmm8,%ymm3,%ymm3
6024  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
6025  DB  196,98,125,24,5,72,61,0,0           ; vbroadcastss  0x3d48(%rip),%ymm8        # 574c <_sk_callback_avx+0x215>
6026  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
6027  DB  72,173                              ; lods          %ds:(%rsi),%rax
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,1,123,16,4,72                   ; vmovsd        (%r8,%r9,2),%xmm8
6036  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
6037  DB  72,131,249,1                        ; cmp           $0x1,%rcx
6038  DB  116,85                              ; je            1a7d <_sk_load_tables_u16_be_avx+0x2ed>
6039  DB  196,1,57,22,68,72,8                 ; vmovhpd       0x8(%r8,%r9,2),%xmm8,%xmm8
6040  DB  72,131,249,3                        ; cmp           $0x3,%rcx
6041  DB  114,72                              ; jb            1a7d <_sk_load_tables_u16_be_avx+0x2ed>
6042  DB  196,129,123,16,84,72,16             ; vmovsd        0x10(%r8,%r9,2),%xmm2
6043  DB  72,131,249,3                        ; cmp           $0x3,%rcx
6044  DB  116,72                              ; je            1a8a <_sk_load_tables_u16_be_avx+0x2fa>
6045  DB  196,129,105,22,84,72,24             ; vmovhpd       0x18(%r8,%r9,2),%xmm2,%xmm2
6046  DB  72,131,249,5                        ; cmp           $0x5,%rcx
6047  DB  114,59                              ; jb            1a8a <_sk_load_tables_u16_be_avx+0x2fa>
6048  DB  196,129,123,16,92,72,32             ; vmovsd        0x20(%r8,%r9,2),%xmm3
6049  DB  72,131,249,5                        ; cmp           $0x5,%rcx
6050  DB  15,132,97,253,255,255               ; je            17c1 <_sk_load_tables_u16_be_avx+0x31>
6051  DB  196,129,97,22,92,72,40              ; vmovhpd       0x28(%r8,%r9,2),%xmm3,%xmm3
6052  DB  72,131,249,7                        ; cmp           $0x7,%rcx
6053  DB  15,130,80,253,255,255               ; jb            17c1 <_sk_load_tables_u16_be_avx+0x31>
6054  DB  196,1,122,126,76,72,48              ; vmovq         0x30(%r8,%r9,2),%xmm9
6055  DB  233,68,253,255,255                  ; jmpq          17c1 <_sk_load_tables_u16_be_avx+0x31>
6056  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
6057  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
6058  DB  233,55,253,255,255                  ; jmpq          17c1 <_sk_load_tables_u16_be_avx+0x31>
6059  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
6060  DB  233,46,253,255,255                  ; jmpq          17c1 <_sk_load_tables_u16_be_avx+0x31>
6061
6062PUBLIC _sk_load_tables_rgb_u16_be_avx
6063_sk_load_tables_rgb_u16_be_avx LABEL PROC
6064  DB  72,173                              ; lods          %ds:(%rsi),%rax
6065  DB  76,139,0                            ; mov           (%rax),%r8
6066  DB  76,141,12,127                       ; lea           (%rdi,%rdi,2),%r9
6067  DB  72,133,201                          ; test          %rcx,%rcx
6068  DB  15,133,93,2,0,0                     ; jne           1d02 <_sk_load_tables_rgb_u16_be_avx+0x26f>
6069  DB  196,129,122,111,4,72                ; vmovdqu       (%r8,%r9,2),%xmm0
6070  DB  196,129,122,111,84,72,12            ; vmovdqu       0xc(%r8,%r9,2),%xmm2
6071  DB  196,129,122,111,76,72,24            ; vmovdqu       0x18(%r8,%r9,2),%xmm1
6072  DB  196,129,122,111,92,72,32            ; vmovdqu       0x20(%r8,%r9,2),%xmm3
6073  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
6074  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
6075  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
6076  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
6077  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
6078  DB  85                                  ; push          %rbp
6079  DB  65,87                               ; push          %r15
6080  DB  65,86                               ; push          %r14
6081  DB  65,85                               ; push          %r13
6082  DB  65,84                               ; push          %r12
6083  DB  83                                  ; push          %rbx
6084  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
6085  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
6086  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
6087  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
6088  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
6089  DB  197,249,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm0
6090  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
6091  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
6092  DB  197,185,108,202                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm1
6093  DB  197,185,109,210                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm2
6094  DB  197,121,108,195                     ; vpunpcklqdq   %xmm3,%xmm0,%xmm8
6095  DB  197,121,111,13,151,63,0,0           ; vmovdqa       0x3f97(%rip),%xmm9        # 5ab0 <_sk_callback_avx+0x579>
6096  DB  196,193,113,219,193                 ; vpand         %xmm9,%xmm1,%xmm0
6097  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
6098  DB  196,193,121,105,202                 ; vpunpckhwd    %xmm10,%xmm0,%xmm1
6099  DB  196,195,249,22,200,1                ; vpextrq       $0x1,%xmm1,%r8
6100  DB  69,137,193                          ; mov           %r8d,%r9d
6101  DB  77,137,194                          ; mov           %r8,%r10
6102  DB  73,193,234,32                       ; shr           $0x20,%r10
6103  DB  196,193,249,126,200                 ; vmovq         %xmm1,%r8
6104  DB  69,137,195                          ; mov           %r8d,%r11d
6105  DB  77,137,198                          ; mov           %r8,%r14
6106  DB  73,193,238,32                       ; shr           $0x20,%r14
6107  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
6108  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
6109  DB  65,137,223                          ; mov           %ebx,%r15d
6110  DB  72,193,235,30                       ; shr           $0x1e,%rbx
6111  DB  196,195,249,22,196,1                ; vpextrq       $0x1,%xmm0,%r12
6112  DB  69,137,229                          ; mov           %r12d,%r13d
6113  DB  73,193,236,30                       ; shr           $0x1e,%r12
6114  DB  72,139,104,8                        ; mov           0x8(%rax),%rbp
6115  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
6116  DB  196,161,122,16,68,157,0             ; vmovss        0x0(%rbp,%r11,4),%xmm0
6117  DB  196,163,121,33,68,181,0,16          ; vinsertps     $0x10,0x0(%rbp,%r14,4),%xmm0,%xmm0
6118  DB  196,161,122,16,76,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm1
6119  DB  196,227,121,33,193,32               ; vinsertps     $0x20,%xmm1,%xmm0,%xmm0
6120  DB  196,161,122,16,76,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm1
6121  DB  196,227,121,33,193,48               ; vinsertps     $0x30,%xmm1,%xmm0,%xmm0
6122  DB  196,161,122,16,76,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm1
6123  DB  196,227,113,33,76,29,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,1),%xmm1,%xmm1
6124  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
6125  DB  196,227,113,33,203,32               ; vinsertps     $0x20,%xmm3,%xmm1,%xmm1
6126  DB  196,161,122,16,92,37,0              ; vmovss        0x0(%rbp,%r12,1),%xmm3
6127  DB  196,227,113,33,203,48               ; vinsertps     $0x30,%xmm3,%xmm1,%xmm1
6128  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
6129  DB  196,193,105,219,201                 ; vpand         %xmm9,%xmm2,%xmm1
6130  DB  196,193,113,105,210                 ; vpunpckhwd    %xmm10,%xmm1,%xmm2
6131  DB  196,227,249,22,213,1                ; vpextrq       $0x1,%xmm2,%rbp
6132  DB  65,137,233                          ; mov           %ebp,%r9d
6133  DB  72,193,237,32                       ; shr           $0x20,%rbp
6134  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
6135  DB  65,137,218                          ; mov           %ebx,%r10d
6136  DB  72,193,235,32                       ; shr           $0x20,%rbx
6137  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
6138  DB  196,193,249,126,203                 ; vmovq         %xmm1,%r11
6139  DB  69,137,222                          ; mov           %r11d,%r14d
6140  DB  73,193,235,30                       ; shr           $0x1e,%r11
6141  DB  196,195,249,22,207,1                ; vpextrq       $0x1,%xmm1,%r15
6142  DB  69,137,252                          ; mov           %r15d,%r12d
6143  DB  73,193,239,30                       ; shr           $0x1e,%r15
6144  DB  196,129,122,16,12,144               ; vmovss        (%r8,%r10,4),%xmm1
6145  DB  196,195,113,33,12,152,16            ; vinsertps     $0x10,(%r8,%rbx,4),%xmm1,%xmm1
6146  DB  196,129,122,16,20,136               ; vmovss        (%r8,%r9,4),%xmm2
6147  DB  196,227,113,33,202,32               ; vinsertps     $0x20,%xmm2,%xmm1,%xmm1
6148  DB  196,193,122,16,20,168               ; vmovss        (%r8,%rbp,4),%xmm2
6149  DB  196,227,113,33,202,48               ; vinsertps     $0x30,%xmm2,%xmm1,%xmm1
6150  DB  196,129,122,16,20,176               ; vmovss        (%r8,%r14,4),%xmm2
6151  DB  196,131,105,33,20,24,16             ; vinsertps     $0x10,(%r8,%r11,1),%xmm2,%xmm2
6152  DB  196,129,122,16,28,160               ; vmovss        (%r8,%r12,4),%xmm3
6153  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
6154  DB  196,129,122,16,28,56                ; vmovss        (%r8,%r15,1),%xmm3
6155  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
6156  DB  196,227,109,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm1
6157  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
6158  DB  196,193,57,219,209                  ; vpand         %xmm9,%xmm8,%xmm2
6159  DB  196,193,105,105,218                 ; vpunpckhwd    %xmm10,%xmm2,%xmm3
6160  DB  196,227,249,22,221,1                ; vpextrq       $0x1,%xmm3,%rbp
6161  DB  65,137,232                          ; mov           %ebp,%r8d
6162  DB  72,193,237,32                       ; shr           $0x20,%rbp
6163  DB  196,225,249,126,219                 ; vmovq         %xmm3,%rbx
6164  DB  65,137,217                          ; mov           %ebx,%r9d
6165  DB  72,193,235,32                       ; shr           $0x20,%rbx
6166  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
6167  DB  196,225,249,126,208                 ; vmovq         %xmm2,%rax
6168  DB  65,137,195                          ; mov           %eax,%r11d
6169  DB  72,193,232,30                       ; shr           $0x1e,%rax
6170  DB  196,195,249,22,214,1                ; vpextrq       $0x1,%xmm2,%r14
6171  DB  69,137,247                          ; mov           %r14d,%r15d
6172  DB  73,193,238,30                       ; shr           $0x1e,%r14
6173  DB  196,129,122,16,20,138               ; vmovss        (%r10,%r9,4),%xmm2
6174  DB  196,195,105,33,20,154,16            ; vinsertps     $0x10,(%r10,%rbx,4),%xmm2,%xmm2
6175  DB  196,129,122,16,28,130               ; vmovss        (%r10,%r8,4),%xmm3
6176  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
6177  DB  196,193,122,16,28,170               ; vmovss        (%r10,%rbp,4),%xmm3
6178  DB  196,99,105,33,195,48                ; vinsertps     $0x30,%xmm3,%xmm2,%xmm8
6179  DB  196,129,122,16,28,154               ; vmovss        (%r10,%r11,4),%xmm3
6180  DB  196,195,97,33,28,2,16               ; vinsertps     $0x10,(%r10,%rax,1),%xmm3,%xmm3
6181  DB  196,129,122,16,20,186               ; vmovss        (%r10,%r15,4),%xmm2
6182  DB  196,227,97,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm3,%xmm2
6183  DB  196,129,122,16,28,50                ; vmovss        (%r10,%r14,1),%xmm3
6184  DB  196,227,105,33,211,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm2
6185  DB  196,195,109,24,208,1                ; vinsertf128   $0x1,%xmm8,%ymm2,%ymm2
6186  DB  72,173                              ; lods          %ds:(%rsi),%rax
6187  DB  196,226,125,24,29,90,58,0,0         ; vbroadcastss  0x3a5a(%rip),%ymm3        # 5750 <_sk_callback_avx+0x219>
6188  DB  91                                  ; pop           %rbx
6189  DB  65,92                               ; pop           %r12
6190  DB  65,93                               ; pop           %r13
6191  DB  65,94                               ; pop           %r14
6192  DB  65,95                               ; pop           %r15
6193  DB  93                                  ; pop           %rbp
6194  DB  255,224                             ; jmpq          *%rax
6195  DB  196,129,121,110,4,72                ; vmovd         (%r8,%r9,2),%xmm0
6196  DB  196,129,121,196,68,72,4,2           ; vpinsrw       $0x2,0x4(%r8,%r9,2),%xmm0,%xmm0
6197  DB  72,131,249,1                        ; cmp           $0x1,%rcx
6198  DB  117,5                               ; jne           1d1b <_sk_load_tables_rgb_u16_be_avx+0x288>
6199  DB  233,190,253,255,255                 ; jmpq          1ad9 <_sk_load_tables_rgb_u16_be_avx+0x46>
6200  DB  196,129,121,110,76,72,6             ; vmovd         0x6(%r8,%r9,2),%xmm1
6201  DB  196,1,113,196,68,72,10,2            ; vpinsrw       $0x2,0xa(%r8,%r9,2),%xmm1,%xmm8
6202  DB  72,131,249,3                        ; cmp           $0x3,%rcx
6203  DB  114,26                              ; jb            1d4a <_sk_load_tables_rgb_u16_be_avx+0x2b7>
6204  DB  196,129,121,110,76,72,12            ; vmovd         0xc(%r8,%r9,2),%xmm1
6205  DB  196,129,113,196,84,72,16,2          ; vpinsrw       $0x2,0x10(%r8,%r9,2),%xmm1,%xmm2
6206  DB  72,131,249,3                        ; cmp           $0x3,%rcx
6207  DB  117,10                              ; jne           1d4f <_sk_load_tables_rgb_u16_be_avx+0x2bc>
6208  DB  233,143,253,255,255                 ; jmpq          1ad9 <_sk_load_tables_rgb_u16_be_avx+0x46>
6209  DB  233,138,253,255,255                 ; jmpq          1ad9 <_sk_load_tables_rgb_u16_be_avx+0x46>
6210  DB  196,129,121,110,76,72,18            ; vmovd         0x12(%r8,%r9,2),%xmm1
6211  DB  196,1,113,196,76,72,22,2            ; vpinsrw       $0x2,0x16(%r8,%r9,2),%xmm1,%xmm9
6212  DB  72,131,249,5                        ; cmp           $0x5,%rcx
6213  DB  114,26                              ; jb            1d7e <_sk_load_tables_rgb_u16_be_avx+0x2eb>
6214  DB  196,129,121,110,76,72,24            ; vmovd         0x18(%r8,%r9,2),%xmm1
6215  DB  196,129,113,196,76,72,28,2          ; vpinsrw       $0x2,0x1c(%r8,%r9,2),%xmm1,%xmm1
6216  DB  72,131,249,5                        ; cmp           $0x5,%rcx
6217  DB  117,10                              ; jne           1d83 <_sk_load_tables_rgb_u16_be_avx+0x2f0>
6218  DB  233,91,253,255,255                  ; jmpq          1ad9 <_sk_load_tables_rgb_u16_be_avx+0x46>
6219  DB  233,86,253,255,255                  ; jmpq          1ad9 <_sk_load_tables_rgb_u16_be_avx+0x46>
6220  DB  196,129,121,110,92,72,30            ; vmovd         0x1e(%r8,%r9,2),%xmm3
6221  DB  196,1,97,196,92,72,34,2             ; vpinsrw       $0x2,0x22(%r8,%r9,2),%xmm3,%xmm11
6222  DB  72,131,249,7                        ; cmp           $0x7,%rcx
6223  DB  114,20                              ; jb            1dac <_sk_load_tables_rgb_u16_be_avx+0x319>
6224  DB  196,129,121,110,92,72,36            ; vmovd         0x24(%r8,%r9,2),%xmm3
6225  DB  196,129,97,196,92,72,40,2           ; vpinsrw       $0x2,0x28(%r8,%r9,2),%xmm3,%xmm3
6226  DB  233,45,253,255,255                  ; jmpq          1ad9 <_sk_load_tables_rgb_u16_be_avx+0x46>
6227  DB  233,40,253,255,255                  ; jmpq          1ad9 <_sk_load_tables_rgb_u16_be_avx+0x46>
6228
6229PUBLIC _sk_byte_tables_avx
6230_sk_byte_tables_avx LABEL PROC
6231  DB  85                                  ; push          %rbp
6232  DB  65,87                               ; push          %r15
6233  DB  65,86                               ; push          %r14
6234  DB  65,85                               ; push          %r13
6235  DB  65,84                               ; push          %r12
6236  DB  83                                  ; push          %rbx
6237  DB  72,173                              ; lods          %ds:(%rsi),%rax
6238  DB  196,98,125,24,5,142,57,0,0          ; vbroadcastss  0x398e(%rip),%ymm8        # 5754 <_sk_callback_avx+0x21d>
6239  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%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,220,56,0,0         ; vbroadcastss  0x38dc(%rip),%ymm9        # 5758 <_sk_callback_avx+0x221>
6276  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
6277  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%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  76,139,64,16                        ; mov           0x10(%rax),%r8
6310  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%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,233                          ; mov           %ebp,%r9d
6314  DB  72,193,237,32                       ; shr           $0x20,%rbp
6315  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
6316  DB  65,137,218                          ; mov           %ebx,%r10d
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,211,1                ; vpextrq       $0x1,%xmm2,%r11
6320  DB  69,137,222                          ; mov           %r11d,%r14d
6321  DB  73,193,235,32                       ; shr           $0x20,%r11
6322  DB  196,193,249,126,215                 ; vmovq         %xmm2,%r15
6323  DB  69,137,252                          ; mov           %r15d,%r12d
6324  DB  73,193,239,32                       ; shr           $0x20,%r15
6325  DB  196,131,121,32,20,16,0              ; vpinsrb       $0x0,(%r8,%r10,1),%xmm0,%xmm2
6326  DB  196,195,105,32,20,24,1              ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm2,%xmm2
6327  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
6328  DB  196,227,105,32,211,2                ; vpinsrb       $0x2,%ebx,%xmm2,%xmm2
6329  DB  65,15,182,44,40                     ; movzbl        (%r8,%rbp,1),%ebp
6330  DB  196,227,105,32,213,3                ; vpinsrb       $0x3,%ebp,%xmm2,%xmm2
6331  DB  196,98,121,49,210                   ; vpmovzxbd     %xmm2,%xmm10
6332  DB  196,131,121,32,20,32,0              ; vpinsrb       $0x0,(%r8,%r12,1),%xmm0,%xmm2
6333  DB  196,131,105,32,20,56,1              ; vpinsrb       $0x1,(%r8,%r15,1),%xmm2,%xmm2
6334  DB  67,15,182,44,48                     ; movzbl        (%r8,%r14,1),%ebp
6335  DB  196,227,105,32,213,2                ; vpinsrb       $0x2,%ebp,%xmm2,%xmm2
6336  DB  67,15,182,44,24                     ; movzbl        (%r8,%r11,1),%ebp
6337  DB  196,227,105,32,213,3                ; vpinsrb       $0x3,%ebp,%xmm2,%xmm2
6338  DB  196,226,121,49,210                  ; vpmovzxbd     %xmm2,%xmm2
6339  DB  196,227,45,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm10,%ymm2
6340  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
6341  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
6342  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
6343  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
6344  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
6345  DB  196,227,249,22,221,1                ; vpextrq       $0x1,%xmm3,%rbp
6346  DB  65,137,232                          ; mov           %ebp,%r8d
6347  DB  72,193,237,32                       ; shr           $0x20,%rbp
6348  DB  196,225,249,126,219                 ; vmovq         %xmm3,%rbx
6349  DB  65,137,217                          ; mov           %ebx,%r9d
6350  DB  72,193,235,32                       ; shr           $0x20,%rbx
6351  DB  196,227,125,25,219,1                ; vextractf128  $0x1,%ymm3,%xmm3
6352  DB  196,195,249,22,218,1                ; vpextrq       $0x1,%xmm3,%r10
6353  DB  69,137,211                          ; mov           %r10d,%r11d
6354  DB  73,193,234,32                       ; shr           $0x20,%r10
6355  DB  196,193,249,126,222                 ; vmovq         %xmm3,%r14
6356  DB  69,137,247                          ; mov           %r14d,%r15d
6357  DB  73,193,238,32                       ; shr           $0x20,%r14
6358  DB  196,163,121,32,28,8,0               ; vpinsrb       $0x0,(%rax,%r9,1),%xmm0,%xmm3
6359  DB  196,227,97,32,28,24,1               ; vpinsrb       $0x1,(%rax,%rbx,1),%xmm3,%xmm3
6360  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
6361  DB  196,227,97,32,219,2                 ; vpinsrb       $0x2,%ebx,%xmm3,%xmm3
6362  DB  15,182,44,40                        ; movzbl        (%rax,%rbp,1),%ebp
6363  DB  196,227,97,32,221,3                 ; vpinsrb       $0x3,%ebp,%xmm3,%xmm3
6364  DB  196,98,121,49,195                   ; vpmovzxbd     %xmm3,%xmm8
6365  DB  196,163,121,32,28,56,0              ; vpinsrb       $0x0,(%rax,%r15,1),%xmm0,%xmm3
6366  DB  196,163,97,32,28,48,1               ; vpinsrb       $0x1,(%rax,%r14,1),%xmm3,%xmm3
6367  DB  66,15,182,44,24                     ; movzbl        (%rax,%r11,1),%ebp
6368  DB  196,227,97,32,221,2                 ; vpinsrb       $0x2,%ebp,%xmm3,%xmm3
6369  DB  66,15,182,4,16                      ; movzbl        (%rax,%r10,1),%eax
6370  DB  196,227,97,32,216,3                 ; vpinsrb       $0x3,%eax,%xmm3,%xmm3
6371  DB  196,226,121,49,219                  ; vpmovzxbd     %xmm3,%xmm3
6372  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
6373  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
6374  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
6375  DB  72,173                              ; lods          %ds:(%rsi),%rax
6376  DB  91                                  ; pop           %rbx
6377  DB  65,92                               ; pop           %r12
6378  DB  65,93                               ; pop           %r13
6379  DB  65,94                               ; pop           %r14
6380  DB  65,95                               ; pop           %r15
6381  DB  93                                  ; pop           %rbp
6382  DB  255,224                             ; jmpq          *%rax
6383
6384PUBLIC _sk_byte_tables_rgb_avx
6385_sk_byte_tables_rgb_avx LABEL PROC
6386  DB  85                                  ; push          %rbp
6387  DB  65,87                               ; push          %r15
6388  DB  65,86                               ; push          %r14
6389  DB  65,85                               ; push          %r13
6390  DB  65,84                               ; push          %r12
6391  DB  83                                  ; push          %rbx
6392  DB  72,173                              ; lods          %ds:(%rsi),%rax
6393  DB  68,139,64,24                        ; mov           0x18(%rax),%r8d
6394  DB  65,255,200                          ; dec           %r8d
6395  DB  196,65,121,110,192                  ; vmovd         %r8d,%xmm8
6396  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
6397  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
6398  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6399  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
6400  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
6401  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
6402  DB  68,137,197                          ; mov           %r8d,%ebp
6403  DB  77,137,194                          ; mov           %r8,%r10
6404  DB  73,193,234,32                       ; shr           $0x20,%r10
6405  DB  196,193,249,126,192                 ; vmovq         %xmm0,%r8
6406  DB  69,137,195                          ; mov           %r8d,%r11d
6407  DB  77,137,199                          ; mov           %r8,%r15
6408  DB  73,193,239,32                       ; shr           $0x20,%r15
6409  DB  196,227,125,25,192,1                ; vextractf128  $0x1,%ymm0,%xmm0
6410  DB  196,195,249,22,192,1                ; vpextrq       $0x1,%xmm0,%r8
6411  DB  69,137,198                          ; mov           %r8d,%r14d
6412  DB  77,137,196                          ; mov           %r8,%r12
6413  DB  73,193,236,32                       ; shr           $0x20,%r12
6414  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
6415  DB  65,137,221                          ; mov           %ebx,%r13d
6416  DB  72,193,235,32                       ; shr           $0x20,%rbx
6417  DB  76,139,8                            ; mov           (%rax),%r9
6418  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
6419  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
6420  DB  196,131,121,32,4,57,1               ; vpinsrb       $0x1,(%r9,%r15,1),%xmm0,%xmm0
6421  DB  65,15,182,44,41                     ; movzbl        (%r9,%rbp,1),%ebp
6422  DB  196,227,121,32,197,2                ; vpinsrb       $0x2,%ebp,%xmm0,%xmm0
6423  DB  67,15,182,44,17                     ; movzbl        (%r9,%r10,1),%ebp
6424  DB  196,227,121,32,197,3                ; vpinsrb       $0x3,%ebp,%xmm0,%xmm0
6425  DB  196,98,121,49,200                   ; vpmovzxbd     %xmm0,%xmm9
6426  DB  196,131,121,32,4,41,0               ; vpinsrb       $0x0,(%r9,%r13,1),%xmm0,%xmm0
6427  DB  196,195,121,32,4,25,1               ; vpinsrb       $0x1,(%r9,%rbx,1),%xmm0,%xmm0
6428  DB  67,15,182,44,49                     ; movzbl        (%r9,%r14,1),%ebp
6429  DB  196,227,121,32,197,2                ; vpinsrb       $0x2,%ebp,%xmm0,%xmm0
6430  DB  67,15,182,44,33                     ; movzbl        (%r9,%r12,1),%ebp
6431  DB  196,227,121,32,197,3                ; vpinsrb       $0x3,%ebp,%xmm0,%xmm0
6432  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
6433  DB  196,227,53,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm9,%ymm0
6434  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
6435  DB  196,98,125,24,13,2,54,0,0           ; vbroadcastss  0x3602(%rip),%ymm9        # 575c <_sk_callback_avx+0x225>
6436  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
6437  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
6438  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
6439  DB  196,227,249,22,205,1                ; vpextrq       $0x1,%xmm1,%rbp
6440  DB  65,137,233                          ; mov           %ebp,%r9d
6441  DB  72,193,237,32                       ; shr           $0x20,%rbp
6442  DB  196,225,249,126,203                 ; vmovq         %xmm1,%rbx
6443  DB  65,137,218                          ; mov           %ebx,%r10d
6444  DB  72,193,235,32                       ; shr           $0x20,%rbx
6445  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
6446  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
6447  DB  69,137,222                          ; mov           %r11d,%r14d
6448  DB  73,193,235,32                       ; shr           $0x20,%r11
6449  DB  196,193,249,126,207                 ; vmovq         %xmm1,%r15
6450  DB  69,137,252                          ; mov           %r15d,%r12d
6451  DB  73,193,239,32                       ; shr           $0x20,%r15
6452  DB  196,131,121,32,12,16,0              ; vpinsrb       $0x0,(%r8,%r10,1),%xmm0,%xmm1
6453  DB  196,195,113,32,12,24,1              ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm1,%xmm1
6454  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
6455  DB  196,227,113,32,203,2                ; vpinsrb       $0x2,%ebx,%xmm1,%xmm1
6456  DB  65,15,182,44,40                     ; movzbl        (%r8,%rbp,1),%ebp
6457  DB  196,227,113,32,205,3                ; vpinsrb       $0x3,%ebp,%xmm1,%xmm1
6458  DB  196,98,121,49,209                   ; vpmovzxbd     %xmm1,%xmm10
6459  DB  196,131,121,32,12,32,0              ; vpinsrb       $0x0,(%r8,%r12,1),%xmm0,%xmm1
6460  DB  196,131,113,32,12,56,1              ; vpinsrb       $0x1,(%r8,%r15,1),%xmm1,%xmm1
6461  DB  67,15,182,44,48                     ; movzbl        (%r8,%r14,1),%ebp
6462  DB  196,227,113,32,205,2                ; vpinsrb       $0x2,%ebp,%xmm1,%xmm1
6463  DB  67,15,182,44,24                     ; movzbl        (%r8,%r11,1),%ebp
6464  DB  196,227,113,32,205,3                ; vpinsrb       $0x3,%ebp,%xmm1,%xmm1
6465  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
6466  DB  196,227,45,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm10,%ymm1
6467  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
6468  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
6469  DB  72,139,64,16                        ; mov           0x10(%rax),%rax
6470  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
6471  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
6472  DB  196,227,249,22,213,1                ; vpextrq       $0x1,%xmm2,%rbp
6473  DB  65,137,232                          ; mov           %ebp,%r8d
6474  DB  72,193,237,32                       ; shr           $0x20,%rbp
6475  DB  196,225,249,126,211                 ; vmovq         %xmm2,%rbx
6476  DB  65,137,217                          ; mov           %ebx,%r9d
6477  DB  72,193,235,32                       ; shr           $0x20,%rbx
6478  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
6479  DB  196,195,249,22,210,1                ; vpextrq       $0x1,%xmm2,%r10
6480  DB  69,137,211                          ; mov           %r10d,%r11d
6481  DB  73,193,234,32                       ; shr           $0x20,%r10
6482  DB  196,193,249,126,214                 ; vmovq         %xmm2,%r14
6483  DB  69,137,247                          ; mov           %r14d,%r15d
6484  DB  73,193,238,32                       ; shr           $0x20,%r14
6485  DB  196,163,121,32,20,8,0               ; vpinsrb       $0x0,(%rax,%r9,1),%xmm0,%xmm2
6486  DB  196,227,105,32,20,24,1              ; vpinsrb       $0x1,(%rax,%rbx,1),%xmm2,%xmm2
6487  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
6488  DB  196,227,105,32,211,2                ; vpinsrb       $0x2,%ebx,%xmm2,%xmm2
6489  DB  15,182,44,40                        ; movzbl        (%rax,%rbp,1),%ebp
6490  DB  196,227,105,32,213,3                ; vpinsrb       $0x3,%ebp,%xmm2,%xmm2
6491  DB  196,98,121,49,194                   ; vpmovzxbd     %xmm2,%xmm8
6492  DB  196,163,121,32,20,56,0              ; vpinsrb       $0x0,(%rax,%r15,1),%xmm0,%xmm2
6493  DB  196,163,105,32,20,48,1              ; vpinsrb       $0x1,(%rax,%r14,1),%xmm2,%xmm2
6494  DB  66,15,182,44,24                     ; movzbl        (%rax,%r11,1),%ebp
6495  DB  196,227,105,32,213,2                ; vpinsrb       $0x2,%ebp,%xmm2,%xmm2
6496  DB  66,15,182,4,16                      ; movzbl        (%rax,%r10,1),%eax
6497  DB  196,227,105,32,208,3                ; vpinsrb       $0x3,%eax,%xmm2,%xmm2
6498  DB  196,226,121,49,210                  ; vpmovzxbd     %xmm2,%xmm2
6499  DB  196,227,61,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm8,%ymm2
6500  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
6501  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
6502  DB  72,173                              ; lods          %ds:(%rsi),%rax
6503  DB  91                                  ; pop           %rbx
6504  DB  65,92                               ; pop           %r12
6505  DB  65,93                               ; pop           %r13
6506  DB  65,94                               ; pop           %r14
6507  DB  65,95                               ; pop           %r15
6508  DB  93                                  ; pop           %rbp
6509  DB  255,224                             ; jmpq          *%rax
6510
6511PUBLIC _sk_table_r_avx
6512_sk_table_r_avx LABEL PROC
6513  DB  65,87                               ; push          %r15
6514  DB  65,86                               ; push          %r14
6515  DB  65,84                               ; push          %r12
6516  DB  83                                  ; push          %rbx
6517  DB  72,173                              ; lods          %ds:(%rsi),%rax
6518  DB  76,139,0                            ; mov           (%rax),%r8
6519  DB  139,64,8                            ; mov           0x8(%rax),%eax
6520  DB  255,200                             ; dec           %eax
6521  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
6522  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
6523  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
6524  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6525  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
6526  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
6527  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
6528  DB  65,137,193                          ; mov           %eax,%r9d
6529  DB  72,193,232,32                       ; shr           $0x20,%rax
6530  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
6531  DB  69,137,211                          ; mov           %r10d,%r11d
6532  DB  73,193,234,32                       ; shr           $0x20,%r10
6533  DB  196,227,125,25,192,1                ; vextractf128  $0x1,%ymm0,%xmm0
6534  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
6535  DB  65,137,222                          ; mov           %ebx,%r14d
6536  DB  72,193,235,32                       ; shr           $0x20,%rbx
6537  DB  196,193,249,126,199                 ; vmovq         %xmm0,%r15
6538  DB  69,137,252                          ; mov           %r15d,%r12d
6539  DB  73,193,239,32                       ; shr           $0x20,%r15
6540  DB  196,129,122,16,4,160                ; vmovss        (%r8,%r12,4),%xmm0
6541  DB  196,3,121,33,4,184,16               ; vinsertps     $0x10,(%r8,%r15,4),%xmm0,%xmm8
6542  DB  196,129,122,16,4,176                ; vmovss        (%r8,%r14,4),%xmm0
6543  DB  196,99,57,33,192,32                 ; vinsertps     $0x20,%xmm0,%xmm8,%xmm8
6544  DB  196,193,122,16,4,152                ; vmovss        (%r8,%rbx,4),%xmm0
6545  DB  196,99,57,33,192,48                 ; vinsertps     $0x30,%xmm0,%xmm8,%xmm8
6546  DB  196,129,122,16,4,152                ; vmovss        (%r8,%r11,4),%xmm0
6547  DB  196,3,121,33,12,144,16              ; vinsertps     $0x10,(%r8,%r10,4),%xmm0,%xmm9
6548  DB  196,129,122,16,4,136                ; vmovss        (%r8,%r9,4),%xmm0
6549  DB  196,99,49,33,200,32                 ; vinsertps     $0x20,%xmm0,%xmm9,%xmm9
6550  DB  196,193,122,16,4,128                ; vmovss        (%r8,%rax,4),%xmm0
6551  DB  196,227,49,33,192,48                ; vinsertps     $0x30,%xmm0,%xmm9,%xmm0
6552  DB  196,195,125,24,192,1                ; vinsertf128   $0x1,%xmm8,%ymm0,%ymm0
6553  DB  72,173                              ; lods          %ds:(%rsi),%rax
6554  DB  91                                  ; pop           %rbx
6555  DB  65,92                               ; pop           %r12
6556  DB  65,94                               ; pop           %r14
6557  DB  65,95                               ; pop           %r15
6558  DB  255,224                             ; jmpq          *%rax
6559
6560PUBLIC _sk_table_g_avx
6561_sk_table_g_avx LABEL PROC
6562  DB  65,87                               ; push          %r15
6563  DB  65,86                               ; push          %r14
6564  DB  65,84                               ; push          %r12
6565  DB  83                                  ; push          %rbx
6566  DB  72,173                              ; lods          %ds:(%rsi),%rax
6567  DB  76,139,0                            ; mov           (%rax),%r8
6568  DB  139,64,8                            ; mov           0x8(%rax),%eax
6569  DB  255,200                             ; dec           %eax
6570  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
6571  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
6572  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
6573  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6574  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
6575  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
6576  DB  196,227,249,22,200,1                ; vpextrq       $0x1,%xmm1,%rax
6577  DB  65,137,193                          ; mov           %eax,%r9d
6578  DB  72,193,232,32                       ; shr           $0x20,%rax
6579  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
6580  DB  69,137,211                          ; mov           %r10d,%r11d
6581  DB  73,193,234,32                       ; shr           $0x20,%r10
6582  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
6583  DB  196,227,249,22,203,1                ; vpextrq       $0x1,%xmm1,%rbx
6584  DB  65,137,222                          ; mov           %ebx,%r14d
6585  DB  72,193,235,32                       ; shr           $0x20,%rbx
6586  DB  196,193,249,126,207                 ; vmovq         %xmm1,%r15
6587  DB  69,137,252                          ; mov           %r15d,%r12d
6588  DB  73,193,239,32                       ; shr           $0x20,%r15
6589  DB  196,129,122,16,12,160               ; vmovss        (%r8,%r12,4),%xmm1
6590  DB  196,3,113,33,4,184,16               ; vinsertps     $0x10,(%r8,%r15,4),%xmm1,%xmm8
6591  DB  196,129,122,16,12,176               ; vmovss        (%r8,%r14,4),%xmm1
6592  DB  196,99,57,33,193,32                 ; vinsertps     $0x20,%xmm1,%xmm8,%xmm8
6593  DB  196,193,122,16,12,152               ; vmovss        (%r8,%rbx,4),%xmm1
6594  DB  196,99,57,33,193,48                 ; vinsertps     $0x30,%xmm1,%xmm8,%xmm8
6595  DB  196,129,122,16,12,152               ; vmovss        (%r8,%r11,4),%xmm1
6596  DB  196,3,113,33,12,144,16              ; vinsertps     $0x10,(%r8,%r10,4),%xmm1,%xmm9
6597  DB  196,129,122,16,12,136               ; vmovss        (%r8,%r9,4),%xmm1
6598  DB  196,99,49,33,201,32                 ; vinsertps     $0x20,%xmm1,%xmm9,%xmm9
6599  DB  196,193,122,16,12,128               ; vmovss        (%r8,%rax,4),%xmm1
6600  DB  196,227,49,33,201,48                ; vinsertps     $0x30,%xmm1,%xmm9,%xmm1
6601  DB  196,195,117,24,200,1                ; vinsertf128   $0x1,%xmm8,%ymm1,%ymm1
6602  DB  72,173                              ; lods          %ds:(%rsi),%rax
6603  DB  91                                  ; pop           %rbx
6604  DB  65,92                               ; pop           %r12
6605  DB  65,94                               ; pop           %r14
6606  DB  65,95                               ; pop           %r15
6607  DB  255,224                             ; jmpq          *%rax
6608
6609PUBLIC _sk_table_b_avx
6610_sk_table_b_avx LABEL PROC
6611  DB  65,87                               ; push          %r15
6612  DB  65,86                               ; push          %r14
6613  DB  65,84                               ; push          %r12
6614  DB  83                                  ; push          %rbx
6615  DB  72,173                              ; lods          %ds:(%rsi),%rax
6616  DB  76,139,0                            ; mov           (%rax),%r8
6617  DB  139,64,8                            ; mov           0x8(%rax),%eax
6618  DB  255,200                             ; dec           %eax
6619  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
6620  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
6621  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
6622  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6623  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
6624  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
6625  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
6626  DB  65,137,193                          ; mov           %eax,%r9d
6627  DB  72,193,232,32                       ; shr           $0x20,%rax
6628  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
6629  DB  69,137,211                          ; mov           %r10d,%r11d
6630  DB  73,193,234,32                       ; shr           $0x20,%r10
6631  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
6632  DB  196,227,249,22,211,1                ; vpextrq       $0x1,%xmm2,%rbx
6633  DB  65,137,222                          ; mov           %ebx,%r14d
6634  DB  72,193,235,32                       ; shr           $0x20,%rbx
6635  DB  196,193,249,126,215                 ; vmovq         %xmm2,%r15
6636  DB  69,137,252                          ; mov           %r15d,%r12d
6637  DB  73,193,239,32                       ; shr           $0x20,%r15
6638  DB  196,129,122,16,20,160               ; vmovss        (%r8,%r12,4),%xmm2
6639  DB  196,3,105,33,4,184,16               ; vinsertps     $0x10,(%r8,%r15,4),%xmm2,%xmm8
6640  DB  196,129,122,16,20,176               ; vmovss        (%r8,%r14,4),%xmm2
6641  DB  196,99,57,33,194,32                 ; vinsertps     $0x20,%xmm2,%xmm8,%xmm8
6642  DB  196,193,122,16,20,152               ; vmovss        (%r8,%rbx,4),%xmm2
6643  DB  196,99,57,33,194,48                 ; vinsertps     $0x30,%xmm2,%xmm8,%xmm8
6644  DB  196,129,122,16,20,152               ; vmovss        (%r8,%r11,4),%xmm2
6645  DB  196,3,105,33,12,144,16              ; vinsertps     $0x10,(%r8,%r10,4),%xmm2,%xmm9
6646  DB  196,129,122,16,20,136               ; vmovss        (%r8,%r9,4),%xmm2
6647  DB  196,99,49,33,202,32                 ; vinsertps     $0x20,%xmm2,%xmm9,%xmm9
6648  DB  196,193,122,16,20,128               ; vmovss        (%r8,%rax,4),%xmm2
6649  DB  196,227,49,33,210,48                ; vinsertps     $0x30,%xmm2,%xmm9,%xmm2
6650  DB  196,195,109,24,208,1                ; vinsertf128   $0x1,%xmm8,%ymm2,%ymm2
6651  DB  72,173                              ; lods          %ds:(%rsi),%rax
6652  DB  91                                  ; pop           %rbx
6653  DB  65,92                               ; pop           %r12
6654  DB  65,94                               ; pop           %r14
6655  DB  65,95                               ; pop           %r15
6656  DB  255,224                             ; jmpq          *%rax
6657
6658PUBLIC _sk_table_a_avx
6659_sk_table_a_avx LABEL PROC
6660  DB  65,87                               ; push          %r15
6661  DB  65,86                               ; push          %r14
6662  DB  65,84                               ; push          %r12
6663  DB  83                                  ; push          %rbx
6664  DB  72,173                              ; lods          %ds:(%rsi),%rax
6665  DB  76,139,0                            ; mov           (%rax),%r8
6666  DB  139,64,8                            ; mov           0x8(%rax),%eax
6667  DB  255,200                             ; dec           %eax
6668  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
6669  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
6670  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
6671  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6672  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
6673  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
6674  DB  196,227,249,22,216,1                ; vpextrq       $0x1,%xmm3,%rax
6675  DB  65,137,193                          ; mov           %eax,%r9d
6676  DB  72,193,232,32                       ; shr           $0x20,%rax
6677  DB  196,193,249,126,218                 ; vmovq         %xmm3,%r10
6678  DB  69,137,211                          ; mov           %r10d,%r11d
6679  DB  73,193,234,32                       ; shr           $0x20,%r10
6680  DB  196,227,125,25,219,1                ; vextractf128  $0x1,%ymm3,%xmm3
6681  DB  196,227,249,22,219,1                ; vpextrq       $0x1,%xmm3,%rbx
6682  DB  65,137,222                          ; mov           %ebx,%r14d
6683  DB  72,193,235,32                       ; shr           $0x20,%rbx
6684  DB  196,193,249,126,223                 ; vmovq         %xmm3,%r15
6685  DB  69,137,252                          ; mov           %r15d,%r12d
6686  DB  73,193,239,32                       ; shr           $0x20,%r15
6687  DB  196,129,122,16,28,160               ; vmovss        (%r8,%r12,4),%xmm3
6688  DB  196,3,97,33,4,184,16                ; vinsertps     $0x10,(%r8,%r15,4),%xmm3,%xmm8
6689  DB  196,129,122,16,28,176               ; vmovss        (%r8,%r14,4),%xmm3
6690  DB  196,99,57,33,195,32                 ; vinsertps     $0x20,%xmm3,%xmm8,%xmm8
6691  DB  196,193,122,16,28,152               ; vmovss        (%r8,%rbx,4),%xmm3
6692  DB  196,99,57,33,195,48                 ; vinsertps     $0x30,%xmm3,%xmm8,%xmm8
6693  DB  196,129,122,16,28,152               ; vmovss        (%r8,%r11,4),%xmm3
6694  DB  196,3,97,33,12,144,16               ; vinsertps     $0x10,(%r8,%r10,4),%xmm3,%xmm9
6695  DB  196,129,122,16,28,136               ; vmovss        (%r8,%r9,4),%xmm3
6696  DB  196,99,49,33,203,32                 ; vinsertps     $0x20,%xmm3,%xmm9,%xmm9
6697  DB  196,193,122,16,28,128               ; vmovss        (%r8,%rax,4),%xmm3
6698  DB  196,227,49,33,219,48                ; vinsertps     $0x30,%xmm3,%xmm9,%xmm3
6699  DB  196,195,101,24,216,1                ; vinsertf128   $0x1,%xmm8,%ymm3,%ymm3
6700  DB  72,173                              ; lods          %ds:(%rsi),%rax
6701  DB  91                                  ; pop           %rbx
6702  DB  65,92                               ; pop           %r12
6703  DB  65,94                               ; pop           %r14
6704  DB  65,95                               ; pop           %r15
6705  DB  255,224                             ; jmpq          *%rax
6706
6707PUBLIC _sk_parametric_r_avx
6708_sk_parametric_r_avx LABEL PROC
6709  DB  72,173                              ; lods          %ds:(%rsi),%rax
6710  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
6711  DB  196,65,124,194,192,2                ; vcmpleps      %ymm8,%ymm0,%ymm8
6712  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
6713  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
6714  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
6715  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
6716  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
6717  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
6718  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
6719  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
6720  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
6721  DB  197,124,91,216                      ; vcvtdq2ps     %ymm0,%ymm11
6722  DB  196,98,125,24,37,96,49,0,0          ; vbroadcastss  0x3160(%rip),%ymm12        # 5760 <_sk_callback_avx+0x229>
6723  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
6724  DB  196,98,125,24,37,86,49,0,0          ; vbroadcastss  0x3156(%rip),%ymm12        # 5764 <_sk_callback_avx+0x22d>
6725  DB  196,193,124,84,196                  ; vandps        %ymm12,%ymm0,%ymm0
6726  DB  196,98,125,24,37,76,49,0,0          ; vbroadcastss  0x314c(%rip),%ymm12        # 5768 <_sk_callback_avx+0x231>
6727  DB  196,193,124,86,196                  ; vorps         %ymm12,%ymm0,%ymm0
6728  DB  196,98,125,24,37,66,49,0,0          ; vbroadcastss  0x3142(%rip),%ymm12        # 576c <_sk_callback_avx+0x235>
6729  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6730  DB  196,98,125,24,37,56,49,0,0          ; vbroadcastss  0x3138(%rip),%ymm12        # 5770 <_sk_callback_avx+0x239>
6731  DB  196,65,124,89,228                   ; vmulps        %ymm12,%ymm0,%ymm12
6732  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
6733  DB  196,98,125,24,37,41,49,0,0          ; vbroadcastss  0x3129(%rip),%ymm12        # 5774 <_sk_callback_avx+0x23d>
6734  DB  196,193,124,88,196                  ; vaddps        %ymm12,%ymm0,%ymm0
6735  DB  196,98,125,24,37,31,49,0,0          ; vbroadcastss  0x311f(%rip),%ymm12        # 5778 <_sk_callback_avx+0x241>
6736  DB  197,156,94,192                      ; vdivps        %ymm0,%ymm12,%ymm0
6737  DB  197,164,92,192                      ; vsubps        %ymm0,%ymm11,%ymm0
6738  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
6739  DB  196,99,125,8,208,1                  ; vroundps      $0x1,%ymm0,%ymm10
6740  DB  196,65,124,92,210                   ; vsubps        %ymm10,%ymm0,%ymm10
6741  DB  196,98,125,24,29,3,49,0,0           ; vbroadcastss  0x3103(%rip),%ymm11        # 577c <_sk_callback_avx+0x245>
6742  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
6743  DB  196,98,125,24,29,249,48,0,0         ; vbroadcastss  0x30f9(%rip),%ymm11        # 5780 <_sk_callback_avx+0x249>
6744  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
6745  DB  196,193,124,92,195                  ; vsubps        %ymm11,%ymm0,%ymm0
6746  DB  196,98,125,24,29,234,48,0,0         ; vbroadcastss  0x30ea(%rip),%ymm11        # 5784 <_sk_callback_avx+0x24d>
6747  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
6748  DB  196,98,125,24,29,224,48,0,0         ; vbroadcastss  0x30e0(%rip),%ymm11        # 5788 <_sk_callback_avx+0x251>
6749  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
6750  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
6751  DB  196,98,125,24,21,209,48,0,0         ; vbroadcastss  0x30d1(%rip),%ymm10        # 578c <_sk_callback_avx+0x255>
6752  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
6753  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
6754  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
6755  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
6756  DB  196,195,125,74,193,128              ; vblendvps     %ymm8,%ymm9,%ymm0,%ymm0
6757  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6758  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
6759  DB  196,98,125,24,5,168,48,0,0          ; vbroadcastss  0x30a8(%rip),%ymm8        # 5790 <_sk_callback_avx+0x259>
6760  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
6761  DB  72,173                              ; lods          %ds:(%rsi),%rax
6762  DB  255,224                             ; jmpq          *%rax
6763
6764PUBLIC _sk_parametric_g_avx
6765_sk_parametric_g_avx LABEL PROC
6766  DB  72,173                              ; lods          %ds:(%rsi),%rax
6767  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
6768  DB  196,65,116,194,192,2                ; vcmpleps      %ymm8,%ymm1,%ymm8
6769  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
6770  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
6771  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
6772  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
6773  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
6774  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
6775  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
6776  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
6777  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
6778  DB  197,124,91,217                      ; vcvtdq2ps     %ymm1,%ymm11
6779  DB  196,98,125,24,37,89,48,0,0          ; vbroadcastss  0x3059(%rip),%ymm12        # 5794 <_sk_callback_avx+0x25d>
6780  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
6781  DB  196,98,125,24,37,79,48,0,0          ; vbroadcastss  0x304f(%rip),%ymm12        # 5798 <_sk_callback_avx+0x261>
6782  DB  196,193,116,84,204                  ; vandps        %ymm12,%ymm1,%ymm1
6783  DB  196,98,125,24,37,69,48,0,0          ; vbroadcastss  0x3045(%rip),%ymm12        # 579c <_sk_callback_avx+0x265>
6784  DB  196,193,116,86,204                  ; vorps         %ymm12,%ymm1,%ymm1
6785  DB  196,98,125,24,37,59,48,0,0          ; vbroadcastss  0x303b(%rip),%ymm12        # 57a0 <_sk_callback_avx+0x269>
6786  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6787  DB  196,98,125,24,37,49,48,0,0          ; vbroadcastss  0x3031(%rip),%ymm12        # 57a4 <_sk_callback_avx+0x26d>
6788  DB  196,65,116,89,228                   ; vmulps        %ymm12,%ymm1,%ymm12
6789  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
6790  DB  196,98,125,24,37,34,48,0,0          ; vbroadcastss  0x3022(%rip),%ymm12        # 57a8 <_sk_callback_avx+0x271>
6791  DB  196,193,116,88,204                  ; vaddps        %ymm12,%ymm1,%ymm1
6792  DB  196,98,125,24,37,24,48,0,0          ; vbroadcastss  0x3018(%rip),%ymm12        # 57ac <_sk_callback_avx+0x275>
6793  DB  197,156,94,201                      ; vdivps        %ymm1,%ymm12,%ymm1
6794  DB  197,164,92,201                      ; vsubps        %ymm1,%ymm11,%ymm1
6795  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
6796  DB  196,99,125,8,209,1                  ; vroundps      $0x1,%ymm1,%ymm10
6797  DB  196,65,116,92,210                   ; vsubps        %ymm10,%ymm1,%ymm10
6798  DB  196,98,125,24,29,252,47,0,0         ; vbroadcastss  0x2ffc(%rip),%ymm11        # 57b0 <_sk_callback_avx+0x279>
6799  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
6800  DB  196,98,125,24,29,242,47,0,0         ; vbroadcastss  0x2ff2(%rip),%ymm11        # 57b4 <_sk_callback_avx+0x27d>
6801  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
6802  DB  196,193,116,92,203                  ; vsubps        %ymm11,%ymm1,%ymm1
6803  DB  196,98,125,24,29,227,47,0,0         ; vbroadcastss  0x2fe3(%rip),%ymm11        # 57b8 <_sk_callback_avx+0x281>
6804  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
6805  DB  196,98,125,24,29,217,47,0,0         ; vbroadcastss  0x2fd9(%rip),%ymm11        # 57bc <_sk_callback_avx+0x285>
6806  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
6807  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
6808  DB  196,98,125,24,21,202,47,0,0         ; vbroadcastss  0x2fca(%rip),%ymm10        # 57c0 <_sk_callback_avx+0x289>
6809  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
6810  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
6811  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
6812  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
6813  DB  196,195,117,74,201,128              ; vblendvps     %ymm8,%ymm9,%ymm1,%ymm1
6814  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6815  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
6816  DB  196,98,125,24,5,161,47,0,0          ; vbroadcastss  0x2fa1(%rip),%ymm8        # 57c4 <_sk_callback_avx+0x28d>
6817  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
6818  DB  72,173                              ; lods          %ds:(%rsi),%rax
6819  DB  255,224                             ; jmpq          *%rax
6820
6821PUBLIC _sk_parametric_b_avx
6822_sk_parametric_b_avx LABEL PROC
6823  DB  72,173                              ; lods          %ds:(%rsi),%rax
6824  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
6825  DB  196,65,108,194,192,2                ; vcmpleps      %ymm8,%ymm2,%ymm8
6826  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
6827  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
6828  DB  197,52,89,202                       ; vmulps        %ymm2,%ymm9,%ymm9
6829  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
6830  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
6831  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
6832  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
6833  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
6834  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
6835  DB  197,124,91,218                      ; vcvtdq2ps     %ymm2,%ymm11
6836  DB  196,98,125,24,37,82,47,0,0          ; vbroadcastss  0x2f52(%rip),%ymm12        # 57c8 <_sk_callback_avx+0x291>
6837  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
6838  DB  196,98,125,24,37,72,47,0,0          ; vbroadcastss  0x2f48(%rip),%ymm12        # 57cc <_sk_callback_avx+0x295>
6839  DB  196,193,108,84,212                  ; vandps        %ymm12,%ymm2,%ymm2
6840  DB  196,98,125,24,37,62,47,0,0          ; vbroadcastss  0x2f3e(%rip),%ymm12        # 57d0 <_sk_callback_avx+0x299>
6841  DB  196,193,108,86,212                  ; vorps         %ymm12,%ymm2,%ymm2
6842  DB  196,98,125,24,37,52,47,0,0          ; vbroadcastss  0x2f34(%rip),%ymm12        # 57d4 <_sk_callback_avx+0x29d>
6843  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6844  DB  196,98,125,24,37,42,47,0,0          ; vbroadcastss  0x2f2a(%rip),%ymm12        # 57d8 <_sk_callback_avx+0x2a1>
6845  DB  196,65,108,89,228                   ; vmulps        %ymm12,%ymm2,%ymm12
6846  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
6847  DB  196,98,125,24,37,27,47,0,0          ; vbroadcastss  0x2f1b(%rip),%ymm12        # 57dc <_sk_callback_avx+0x2a5>
6848  DB  196,193,108,88,212                  ; vaddps        %ymm12,%ymm2,%ymm2
6849  DB  196,98,125,24,37,17,47,0,0          ; vbroadcastss  0x2f11(%rip),%ymm12        # 57e0 <_sk_callback_avx+0x2a9>
6850  DB  197,156,94,210                      ; vdivps        %ymm2,%ymm12,%ymm2
6851  DB  197,164,92,210                      ; vsubps        %ymm2,%ymm11,%ymm2
6852  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
6853  DB  196,99,125,8,210,1                  ; vroundps      $0x1,%ymm2,%ymm10
6854  DB  196,65,108,92,210                   ; vsubps        %ymm10,%ymm2,%ymm10
6855  DB  196,98,125,24,29,245,46,0,0         ; vbroadcastss  0x2ef5(%rip),%ymm11        # 57e4 <_sk_callback_avx+0x2ad>
6856  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
6857  DB  196,98,125,24,29,235,46,0,0         ; vbroadcastss  0x2eeb(%rip),%ymm11        # 57e8 <_sk_callback_avx+0x2b1>
6858  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
6859  DB  196,193,108,92,211                  ; vsubps        %ymm11,%ymm2,%ymm2
6860  DB  196,98,125,24,29,220,46,0,0         ; vbroadcastss  0x2edc(%rip),%ymm11        # 57ec <_sk_callback_avx+0x2b5>
6861  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
6862  DB  196,98,125,24,29,210,46,0,0         ; vbroadcastss  0x2ed2(%rip),%ymm11        # 57f0 <_sk_callback_avx+0x2b9>
6863  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
6864  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
6865  DB  196,98,125,24,21,195,46,0,0         ; vbroadcastss  0x2ec3(%rip),%ymm10        # 57f4 <_sk_callback_avx+0x2bd>
6866  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
6867  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
6868  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
6869  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
6870  DB  196,195,109,74,209,128              ; vblendvps     %ymm8,%ymm9,%ymm2,%ymm2
6871  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6872  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
6873  DB  196,98,125,24,5,154,46,0,0          ; vbroadcastss  0x2e9a(%rip),%ymm8        # 57f8 <_sk_callback_avx+0x2c1>
6874  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
6875  DB  72,173                              ; lods          %ds:(%rsi),%rax
6876  DB  255,224                             ; jmpq          *%rax
6877
6878PUBLIC _sk_parametric_a_avx
6879_sk_parametric_a_avx LABEL PROC
6880  DB  72,173                              ; lods          %ds:(%rsi),%rax
6881  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
6882  DB  196,65,100,194,192,2                ; vcmpleps      %ymm8,%ymm3,%ymm8
6883  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
6884  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
6885  DB  197,52,89,203                       ; vmulps        %ymm3,%ymm9,%ymm9
6886  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
6887  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
6888  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
6889  DB  197,172,89,219                      ; vmulps        %ymm3,%ymm10,%ymm3
6890  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
6891  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
6892  DB  197,124,91,219                      ; vcvtdq2ps     %ymm3,%ymm11
6893  DB  196,98,125,24,37,75,46,0,0          ; vbroadcastss  0x2e4b(%rip),%ymm12        # 57fc <_sk_callback_avx+0x2c5>
6894  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
6895  DB  196,98,125,24,37,65,46,0,0          ; vbroadcastss  0x2e41(%rip),%ymm12        # 5800 <_sk_callback_avx+0x2c9>
6896  DB  196,193,100,84,220                  ; vandps        %ymm12,%ymm3,%ymm3
6897  DB  196,98,125,24,37,55,46,0,0          ; vbroadcastss  0x2e37(%rip),%ymm12        # 5804 <_sk_callback_avx+0x2cd>
6898  DB  196,193,100,86,220                  ; vorps         %ymm12,%ymm3,%ymm3
6899  DB  196,98,125,24,37,45,46,0,0          ; vbroadcastss  0x2e2d(%rip),%ymm12        # 5808 <_sk_callback_avx+0x2d1>
6900  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6901  DB  196,98,125,24,37,35,46,0,0          ; vbroadcastss  0x2e23(%rip),%ymm12        # 580c <_sk_callback_avx+0x2d5>
6902  DB  196,65,100,89,228                   ; vmulps        %ymm12,%ymm3,%ymm12
6903  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
6904  DB  196,98,125,24,37,20,46,0,0          ; vbroadcastss  0x2e14(%rip),%ymm12        # 5810 <_sk_callback_avx+0x2d9>
6905  DB  196,193,100,88,220                  ; vaddps        %ymm12,%ymm3,%ymm3
6906  DB  196,98,125,24,37,10,46,0,0          ; vbroadcastss  0x2e0a(%rip),%ymm12        # 5814 <_sk_callback_avx+0x2dd>
6907  DB  197,156,94,219                      ; vdivps        %ymm3,%ymm12,%ymm3
6908  DB  197,164,92,219                      ; vsubps        %ymm3,%ymm11,%ymm3
6909  DB  197,172,89,219                      ; vmulps        %ymm3,%ymm10,%ymm3
6910  DB  196,99,125,8,211,1                  ; vroundps      $0x1,%ymm3,%ymm10
6911  DB  196,65,100,92,210                   ; vsubps        %ymm10,%ymm3,%ymm10
6912  DB  196,98,125,24,29,238,45,0,0         ; vbroadcastss  0x2dee(%rip),%ymm11        # 5818 <_sk_callback_avx+0x2e1>
6913  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
6914  DB  196,98,125,24,29,228,45,0,0         ; vbroadcastss  0x2de4(%rip),%ymm11        # 581c <_sk_callback_avx+0x2e5>
6915  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
6916  DB  196,193,100,92,219                  ; vsubps        %ymm11,%ymm3,%ymm3
6917  DB  196,98,125,24,29,213,45,0,0         ; vbroadcastss  0x2dd5(%rip),%ymm11        # 5820 <_sk_callback_avx+0x2e9>
6918  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
6919  DB  196,98,125,24,29,203,45,0,0         ; vbroadcastss  0x2dcb(%rip),%ymm11        # 5824 <_sk_callback_avx+0x2ed>
6920  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
6921  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
6922  DB  196,98,125,24,21,188,45,0,0         ; vbroadcastss  0x2dbc(%rip),%ymm10        # 5828 <_sk_callback_avx+0x2f1>
6923  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
6924  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
6925  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
6926  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
6927  DB  196,195,101,74,217,128              ; vblendvps     %ymm8,%ymm9,%ymm3,%ymm3
6928  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6929  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
6930  DB  196,98,125,24,5,147,45,0,0          ; vbroadcastss  0x2d93(%rip),%ymm8        # 582c <_sk_callback_avx+0x2f5>
6931  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
6932  DB  72,173                              ; lods          %ds:(%rsi),%rax
6933  DB  255,224                             ; jmpq          *%rax
6934
6935PUBLIC _sk_lab_to_xyz_avx
6936_sk_lab_to_xyz_avx LABEL PROC
6937  DB  196,98,125,24,5,133,45,0,0          ; vbroadcastss  0x2d85(%rip),%ymm8        # 5830 <_sk_callback_avx+0x2f9>
6938  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
6939  DB  196,98,125,24,5,123,45,0,0          ; vbroadcastss  0x2d7b(%rip),%ymm8        # 5834 <_sk_callback_avx+0x2fd>
6940  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
6941  DB  196,98,125,24,13,113,45,0,0         ; vbroadcastss  0x2d71(%rip),%ymm9        # 5838 <_sk_callback_avx+0x301>
6942  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
6943  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
6944  DB  196,193,108,88,209                  ; vaddps        %ymm9,%ymm2,%ymm2
6945  DB  196,98,125,24,5,93,45,0,0           ; vbroadcastss  0x2d5d(%rip),%ymm8        # 583c <_sk_callback_avx+0x305>
6946  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
6947  DB  196,98,125,24,5,83,45,0,0           ; vbroadcastss  0x2d53(%rip),%ymm8        # 5840 <_sk_callback_avx+0x309>
6948  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
6949  DB  196,98,125,24,5,73,45,0,0           ; vbroadcastss  0x2d49(%rip),%ymm8        # 5844 <_sk_callback_avx+0x30d>
6950  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
6951  DB  197,252,88,201                      ; vaddps        %ymm1,%ymm0,%ymm1
6952  DB  196,98,125,24,5,59,45,0,0           ; vbroadcastss  0x2d3b(%rip),%ymm8        # 5848 <_sk_callback_avx+0x311>
6953  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
6954  DB  197,252,92,210                      ; vsubps        %ymm2,%ymm0,%ymm2
6955  DB  197,116,89,193                      ; vmulps        %ymm1,%ymm1,%ymm8
6956  DB  196,65,116,89,192                   ; vmulps        %ymm8,%ymm1,%ymm8
6957  DB  196,98,125,24,13,36,45,0,0          ; vbroadcastss  0x2d24(%rip),%ymm9        # 584c <_sk_callback_avx+0x315>
6958  DB  196,65,52,194,208,1                 ; vcmpltps      %ymm8,%ymm9,%ymm10
6959  DB  196,98,125,24,29,25,45,0,0          ; vbroadcastss  0x2d19(%rip),%ymm11        # 5850 <_sk_callback_avx+0x319>
6960  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
6961  DB  196,98,125,24,37,15,45,0,0          ; vbroadcastss  0x2d0f(%rip),%ymm12        # 5854 <_sk_callback_avx+0x31d>
6962  DB  196,193,116,89,204                  ; vmulps        %ymm12,%ymm1,%ymm1
6963  DB  196,67,117,74,192,160               ; vblendvps     %ymm10,%ymm8,%ymm1,%ymm8
6964  DB  197,252,89,200                      ; vmulps        %ymm0,%ymm0,%ymm1
6965  DB  197,252,89,201                      ; vmulps        %ymm1,%ymm0,%ymm1
6966  DB  197,52,194,209,1                    ; vcmpltps      %ymm1,%ymm9,%ymm10
6967  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
6968  DB  196,193,124,89,196                  ; vmulps        %ymm12,%ymm0,%ymm0
6969  DB  196,227,125,74,201,160              ; vblendvps     %ymm10,%ymm1,%ymm0,%ymm1
6970  DB  197,236,89,194                      ; vmulps        %ymm2,%ymm2,%ymm0
6971  DB  197,236,89,192                      ; vmulps        %ymm0,%ymm2,%ymm0
6972  DB  197,52,194,200,1                    ; vcmpltps      %ymm0,%ymm9,%ymm9
6973  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
6974  DB  196,193,108,89,212                  ; vmulps        %ymm12,%ymm2,%ymm2
6975  DB  196,227,109,74,208,144              ; vblendvps     %ymm9,%ymm0,%ymm2,%ymm2
6976  DB  196,226,125,24,5,197,44,0,0         ; vbroadcastss  0x2cc5(%rip),%ymm0        # 5858 <_sk_callback_avx+0x321>
6977  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
6978  DB  196,98,125,24,5,188,44,0,0          ; vbroadcastss  0x2cbc(%rip),%ymm8        # 585c <_sk_callback_avx+0x325>
6979  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
6980  DB  72,173                              ; lods          %ds:(%rsi),%rax
6981  DB  255,224                             ; jmpq          *%rax
6982
6983PUBLIC _sk_load_a8_avx
6984_sk_load_a8_avx LABEL PROC
6985  DB  73,137,200                          ; mov           %rcx,%r8
6986  DB  72,173                              ; lods          %ds:(%rsi),%rax
6987  DB  72,139,0                            ; mov           (%rax),%rax
6988  DB  72,1,248                            ; add           %rdi,%rax
6989  DB  77,133,192                          ; test          %r8,%r8
6990  DB  117,62                              ; jne           2bf7 <_sk_load_a8_avx+0x4e>
6991  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
6992  DB  196,226,121,49,200                  ; vpmovzxbd     %xmm0,%xmm1
6993  DB  196,227,121,4,192,229               ; vpermilps     $0xe5,%xmm0,%xmm0
6994  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
6995  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
6996  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
6997  DB  196,226,125,24,13,128,44,0,0        ; vbroadcastss  0x2c80(%rip),%ymm1        # 5860 <_sk_callback_avx+0x329>
6998  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
6999  DB  72,173                              ; lods          %ds:(%rsi),%rax
7000  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
7001  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
7002  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
7003  DB  76,137,193                          ; mov           %r8,%rcx
7004  DB  255,224                             ; jmpq          *%rax
7005  DB  49,201                              ; xor           %ecx,%ecx
7006  DB  77,137,194                          ; mov           %r8,%r10
7007  DB  69,49,201                           ; xor           %r9d,%r9d
7008  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
7009  DB  72,255,192                          ; inc           %rax
7010  DB  73,211,227                          ; shl           %cl,%r11
7011  DB  77,9,217                            ; or            %r11,%r9
7012  DB  72,131,193,8                        ; add           $0x8,%rcx
7013  DB  73,255,202                          ; dec           %r10
7014  DB  117,234                             ; jne           2bff <_sk_load_a8_avx+0x56>
7015  DB  196,193,249,110,193                 ; vmovq         %r9,%xmm0
7016  DB  235,161                             ; jmp           2bbd <_sk_load_a8_avx+0x14>
7017
7018PUBLIC _sk_gather_a8_avx
7019_sk_gather_a8_avx LABEL PROC
7020  DB  65,87                               ; push          %r15
7021  DB  65,86                               ; push          %r14
7022  DB  65,84                               ; push          %r12
7023  DB  83                                  ; push          %rbx
7024  DB  72,173                              ; lods          %ds:(%rsi),%rax
7025  DB  76,139,0                            ; mov           (%rax),%r8
7026  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
7027  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
7028  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
7029  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
7030  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
7031  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
7032  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
7033  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
7034  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
7035  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7036  DB  65,137,193                          ; mov           %eax,%r9d
7037  DB  72,193,232,32                       ; shr           $0x20,%rax
7038  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
7039  DB  69,137,211                          ; mov           %r10d,%r11d
7040  DB  73,193,234,32                       ; shr           $0x20,%r10
7041  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
7042  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
7043  DB  65,137,222                          ; mov           %ebx,%r14d
7044  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
7045  DB  69,137,252                          ; mov           %r15d,%r12d
7046  DB  73,193,239,32                       ; shr           $0x20,%r15
7047  DB  72,193,235,32                       ; shr           $0x20,%rbx
7048  DB  196,131,121,32,4,48,0               ; vpinsrb       $0x0,(%r8,%r14,1),%xmm0,%xmm0
7049  DB  196,195,121,32,4,24,1               ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm0,%xmm0
7050  DB  67,15,182,28,32                     ; movzbl        (%r8,%r12,1),%ebx
7051  DB  196,227,121,32,195,2                ; vpinsrb       $0x2,%ebx,%xmm0,%xmm0
7052  DB  67,15,182,28,56                     ; movzbl        (%r8,%r15,1),%ebx
7053  DB  196,227,121,32,195,3                ; vpinsrb       $0x3,%ebx,%xmm0,%xmm0
7054  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
7055  DB  196,131,121,32,12,24,0              ; vpinsrb       $0x0,(%r8,%r11,1),%xmm0,%xmm1
7056  DB  196,131,113,32,12,16,1              ; vpinsrb       $0x1,(%r8,%r10,1),%xmm1,%xmm1
7057  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
7058  DB  196,227,113,32,203,2                ; vpinsrb       $0x2,%ebx,%xmm1,%xmm1
7059  DB  65,15,182,4,0                       ; movzbl        (%r8,%rax,1),%eax
7060  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
7061  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
7062  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
7063  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7064  DB  196,226,125,24,13,117,43,0,0        ; vbroadcastss  0x2b75(%rip),%ymm1        # 5864 <_sk_callback_avx+0x32d>
7065  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
7066  DB  72,173                              ; lods          %ds:(%rsi),%rax
7067  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
7068  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
7069  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
7070  DB  91                                  ; pop           %rbx
7071  DB  65,92                               ; pop           %r12
7072  DB  65,94                               ; pop           %r14
7073  DB  65,95                               ; pop           %r15
7074  DB  255,224                             ; jmpq          *%rax
7075
7076PUBLIC _sk_store_a8_avx
7077_sk_store_a8_avx LABEL PROC
7078  DB  72,173                              ; lods          %ds:(%rsi),%rax
7079  DB  76,139,16                           ; mov           (%rax),%r10
7080  DB  196,98,125,24,5,80,43,0,0           ; vbroadcastss  0x2b50(%rip),%ymm8        # 5868 <_sk_callback_avx+0x331>
7081  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
7082  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
7083  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
7084  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
7085  DB  196,65,57,103,192                   ; vpackuswb     %xmm8,%xmm8,%xmm8
7086  DB  72,133,201                          ; test          %rcx,%rcx
7087  DB  117,10                              ; jne           2d41 <_sk_store_a8_avx+0x37>
7088  DB  196,65,123,17,4,58                  ; vmovsd        %xmm8,(%r10,%rdi,1)
7089  DB  72,173                              ; lods          %ds:(%rsi),%rax
7090  DB  255,224                             ; jmpq          *%rax
7091  DB  65,137,200                          ; mov           %ecx,%r8d
7092  DB  65,128,224,7                        ; and           $0x7,%r8b
7093  DB  65,254,200                          ; dec           %r8b
7094  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7095  DB  119,236                             ; ja            2d3d <_sk_store_a8_avx+0x33>
7096  DB  196,66,121,48,192                   ; vpmovzxbw     %xmm8,%xmm8
7097  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7098  DB  76,141,13,67,0,0,0                  ; lea           0x43(%rip),%r9        # 2da4 <_sk_store_a8_avx+0x9a>
7099  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7100  DB  76,1,200                            ; add           %r9,%rax
7101  DB  255,224                             ; jmpq          *%rax
7102  DB  196,67,121,20,68,58,6,12            ; vpextrb       $0xc,%xmm8,0x6(%r10,%rdi,1)
7103  DB  196,67,121,20,68,58,5,10            ; vpextrb       $0xa,%xmm8,0x5(%r10,%rdi,1)
7104  DB  196,67,121,20,68,58,4,8             ; vpextrb       $0x8,%xmm8,0x4(%r10,%rdi,1)
7105  DB  196,67,121,20,68,58,3,6             ; vpextrb       $0x6,%xmm8,0x3(%r10,%rdi,1)
7106  DB  196,67,121,20,68,58,2,4             ; vpextrb       $0x4,%xmm8,0x2(%r10,%rdi,1)
7107  DB  196,67,121,20,68,58,1,2             ; vpextrb       $0x2,%xmm8,0x1(%r10,%rdi,1)
7108  DB  196,67,121,20,4,58,0                ; vpextrb       $0x0,%xmm8,(%r10,%rdi,1)
7109  DB  235,154                             ; jmp           2d3d <_sk_store_a8_avx+0x33>
7110  DB  144                                 ; nop
7111  DB  246,255                             ; idiv          %bh
7112  DB  255                                 ; (bad)
7113  DB  255                                 ; (bad)
7114  DB  238                                 ; out           %al,(%dx)
7115  DB  255                                 ; (bad)
7116  DB  255                                 ; (bad)
7117  DB  255,230                             ; jmpq          *%rsi
7118  DB  255                                 ; (bad)
7119  DB  255                                 ; (bad)
7120  DB  255                                 ; (bad)
7121  DB  222,255                             ; fdivrp        %st,%st(7)
7122  DB  255                                 ; (bad)
7123  DB  255,214                             ; callq         *%rsi
7124  DB  255                                 ; (bad)
7125  DB  255                                 ; (bad)
7126  DB  255,206                             ; dec           %esi
7127  DB  255                                 ; (bad)
7128  DB  255                                 ; (bad)
7129  DB  255,198                             ; inc           %esi
7130  DB  255                                 ; (bad)
7131  DB  255                                 ; (bad)
7132  DB  255                                 ; .byte         0xff
7133
7134PUBLIC _sk_load_g8_avx
7135_sk_load_g8_avx LABEL PROC
7136  DB  73,137,200                          ; mov           %rcx,%r8
7137  DB  72,173                              ; lods          %ds:(%rsi),%rax
7138  DB  72,139,0                            ; mov           (%rax),%rax
7139  DB  72,1,248                            ; add           %rdi,%rax
7140  DB  77,133,192                          ; test          %r8,%r8
7141  DB  117,67                              ; jne           2e13 <_sk_load_g8_avx+0x53>
7142  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
7143  DB  196,226,121,49,200                  ; vpmovzxbd     %xmm0,%xmm1
7144  DB  196,227,121,4,192,229               ; vpermilps     $0xe5,%xmm0,%xmm0
7145  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
7146  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
7147  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7148  DB  196,226,125,24,13,117,42,0,0        ; vbroadcastss  0x2a75(%rip),%ymm1        # 586c <_sk_callback_avx+0x335>
7149  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
7150  DB  72,173                              ; lods          %ds:(%rsi),%rax
7151  DB  196,226,125,24,29,106,42,0,0        ; vbroadcastss  0x2a6a(%rip),%ymm3        # 5870 <_sk_callback_avx+0x339>
7152  DB  76,137,193                          ; mov           %r8,%rcx
7153  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
7154  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
7155  DB  255,224                             ; jmpq          *%rax
7156  DB  49,201                              ; xor           %ecx,%ecx
7157  DB  77,137,194                          ; mov           %r8,%r10
7158  DB  69,49,201                           ; xor           %r9d,%r9d
7159  DB  68,15,182,24                        ; movzbl        (%rax),%r11d
7160  DB  72,255,192                          ; inc           %rax
7161  DB  73,211,227                          ; shl           %cl,%r11
7162  DB  77,9,217                            ; or            %r11,%r9
7163  DB  72,131,193,8                        ; add           $0x8,%rcx
7164  DB  73,255,202                          ; dec           %r10
7165  DB  117,234                             ; jne           2e1b <_sk_load_g8_avx+0x5b>
7166  DB  196,193,249,110,193                 ; vmovq         %r9,%xmm0
7167  DB  235,156                             ; jmp           2dd4 <_sk_load_g8_avx+0x14>
7168
7169PUBLIC _sk_gather_g8_avx
7170_sk_gather_g8_avx LABEL PROC
7171  DB  65,87                               ; push          %r15
7172  DB  65,86                               ; push          %r14
7173  DB  65,84                               ; push          %r12
7174  DB  83                                  ; push          %rbx
7175  DB  72,173                              ; lods          %ds:(%rsi),%rax
7176  DB  76,139,0                            ; mov           (%rax),%r8
7177  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
7178  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
7179  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
7180  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
7181  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
7182  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
7183  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
7184  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
7185  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
7186  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7187  DB  65,137,193                          ; mov           %eax,%r9d
7188  DB  72,193,232,32                       ; shr           $0x20,%rax
7189  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
7190  DB  69,137,211                          ; mov           %r10d,%r11d
7191  DB  73,193,234,32                       ; shr           $0x20,%r10
7192  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
7193  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
7194  DB  65,137,222                          ; mov           %ebx,%r14d
7195  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
7196  DB  69,137,252                          ; mov           %r15d,%r12d
7197  DB  73,193,239,32                       ; shr           $0x20,%r15
7198  DB  72,193,235,32                       ; shr           $0x20,%rbx
7199  DB  196,131,121,32,4,48,0               ; vpinsrb       $0x0,(%r8,%r14,1),%xmm0,%xmm0
7200  DB  196,195,121,32,4,24,1               ; vpinsrb       $0x1,(%r8,%rbx,1),%xmm0,%xmm0
7201  DB  67,15,182,28,32                     ; movzbl        (%r8,%r12,1),%ebx
7202  DB  196,227,121,32,195,2                ; vpinsrb       $0x2,%ebx,%xmm0,%xmm0
7203  DB  67,15,182,28,56                     ; movzbl        (%r8,%r15,1),%ebx
7204  DB  196,227,121,32,195,3                ; vpinsrb       $0x3,%ebx,%xmm0,%xmm0
7205  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
7206  DB  196,131,121,32,12,24,0              ; vpinsrb       $0x0,(%r8,%r11,1),%xmm0,%xmm1
7207  DB  196,131,113,32,12,16,1              ; vpinsrb       $0x1,(%r8,%r10,1),%xmm1,%xmm1
7208  DB  67,15,182,28,8                      ; movzbl        (%r8,%r9,1),%ebx
7209  DB  196,227,113,32,203,2                ; vpinsrb       $0x2,%ebx,%xmm1,%xmm1
7210  DB  65,15,182,4,0                       ; movzbl        (%r8,%rax,1),%eax
7211  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
7212  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
7213  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
7214  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7215  DB  196,226,125,24,13,105,41,0,0        ; vbroadcastss  0x2969(%rip),%ymm1        # 5874 <_sk_callback_avx+0x33d>
7216  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
7217  DB  72,173                              ; lods          %ds:(%rsi),%rax
7218  DB  196,226,125,24,29,94,41,0,0         ; vbroadcastss  0x295e(%rip),%ymm3        # 5878 <_sk_callback_avx+0x341>
7219  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
7220  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
7221  DB  91                                  ; pop           %rbx
7222  DB  65,92                               ; pop           %r12
7223  DB  65,94                               ; pop           %r14
7224  DB  65,95                               ; pop           %r15
7225  DB  255,224                             ; jmpq          *%rax
7226
7227PUBLIC _sk_gather_i8_avx
7228_sk_gather_i8_avx LABEL PROC
7229  DB  72,173                              ; lods          %ds:(%rsi),%rax
7230  DB  73,137,192                          ; mov           %rax,%r8
7231  DB  77,133,192                          ; test          %r8,%r8
7232  DB  116,5                               ; je            2f3a <_sk_gather_i8_avx+0xf>
7233  DB  76,137,192                          ; mov           %r8,%rax
7234  DB  235,2                               ; jmp           2f3c <_sk_gather_i8_avx+0x11>
7235  DB  72,173                              ; lods          %ds:(%rsi),%rax
7236  DB  65,87                               ; push          %r15
7237  DB  65,86                               ; push          %r14
7238  DB  65,85                               ; push          %r13
7239  DB  65,84                               ; push          %r12
7240  DB  83                                  ; push          %rbx
7241  DB  76,139,8                            ; mov           (%rax),%r9
7242  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
7243  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
7244  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
7245  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
7246  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
7247  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
7248  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
7249  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
7250  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
7251  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7252  DB  65,137,194                          ; mov           %eax,%r10d
7253  DB  72,193,232,32                       ; shr           $0x20,%rax
7254  DB  196,193,249,126,211                 ; vmovq         %xmm2,%r11
7255  DB  69,137,222                          ; mov           %r11d,%r14d
7256  DB  73,193,235,32                       ; shr           $0x20,%r11
7257  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
7258  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
7259  DB  65,137,223                          ; mov           %ebx,%r15d
7260  DB  196,195,249,22,196,1                ; vpextrq       $0x1,%xmm0,%r12
7261  DB  69,137,229                          ; mov           %r12d,%r13d
7262  DB  73,193,236,32                       ; shr           $0x20,%r12
7263  DB  72,193,235,32                       ; shr           $0x20,%rbx
7264  DB  196,131,121,32,4,49,0               ; vpinsrb       $0x0,(%r9,%r14,1),%xmm0,%xmm0
7265  DB  196,131,121,32,4,25,1               ; vpinsrb       $0x1,(%r9,%r11,1),%xmm0,%xmm0
7266  DB  196,131,121,32,4,17,2               ; vpinsrb       $0x2,(%r9,%r10,1),%xmm0,%xmm0
7267  DB  196,195,121,32,4,1,3                ; vpinsrb       $0x3,(%r9,%rax,1),%xmm0,%xmm0
7268  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
7269  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
7270  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
7271  DB  196,131,121,32,4,57,0               ; vpinsrb       $0x0,(%r9,%r15,1),%xmm0,%xmm0
7272  DB  196,195,121,32,4,25,1               ; vpinsrb       $0x1,(%r9,%rbx,1),%xmm0,%xmm0
7273  DB  196,131,121,32,4,41,2               ; vpinsrb       $0x2,(%r9,%r13,1),%xmm0,%xmm0
7274  DB  196,131,121,32,4,33,3               ; vpinsrb       $0x3,(%r9,%r12,1),%xmm0,%xmm0
7275  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
7276  DB  73,139,88,8                         ; mov           0x8(%r8),%rbx
7277  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7278  DB  69,137,200                          ; mov           %r9d,%r8d
7279  DB  73,193,233,30                       ; shr           $0x1e,%r9
7280  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
7281  DB  65,137,198                          ; mov           %eax,%r14d
7282  DB  72,193,232,30                       ; shr           $0x1e,%rax
7283  DB  69,137,223                          ; mov           %r11d,%r15d
7284  DB  73,193,235,30                       ; shr           $0x1e,%r11
7285  DB  69,137,212                          ; mov           %r10d,%r12d
7286  DB  73,193,234,30                       ; shr           $0x1e,%r10
7287  DB  196,161,121,110,4,131               ; vmovd         (%rbx,%r8,4),%xmm0
7288  DB  196,163,121,34,4,11,1               ; vpinsrd       $0x1,(%rbx,%r9,1),%xmm0,%xmm0
7289  DB  196,163,121,34,4,179,2              ; vpinsrd       $0x2,(%rbx,%r14,4),%xmm0,%xmm0
7290  DB  196,99,121,34,4,3,3                 ; vpinsrd       $0x3,(%rbx,%rax,1),%xmm0,%xmm8
7291  DB  196,161,121,110,4,187               ; vmovd         (%rbx,%r15,4),%xmm0
7292  DB  196,163,121,34,4,27,1               ; vpinsrd       $0x1,(%rbx,%r11,1),%xmm0,%xmm0
7293  DB  196,163,121,34,4,163,2              ; vpinsrd       $0x2,(%rbx,%r12,4),%xmm0,%xmm0
7294  DB  196,163,121,34,28,19,3              ; vpinsrd       $0x3,(%rbx,%r10,1),%xmm0,%xmm3
7295  DB  196,227,61,24,195,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm0
7296  DB  197,124,40,21,218,41,0,0            ; vmovaps       0x29da(%rip),%ymm10        # 5a40 <_sk_callback_avx+0x509>
7297  DB  196,193,124,84,194                  ; vandps        %ymm10,%ymm0,%ymm0
7298  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7299  DB  196,98,125,24,13,4,40,0,0           ; vbroadcastss  0x2804(%rip),%ymm9        # 587c <_sk_callback_avx+0x345>
7300  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
7301  DB  196,193,113,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm1
7302  DB  197,233,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm2
7303  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7304  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
7305  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7306  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
7307  DB  196,193,33,114,208,16               ; vpsrld        $0x10,%xmm8,%xmm11
7308  DB  197,233,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm2
7309  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
7310  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
7311  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7312  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
7313  DB  196,193,57,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm8
7314  DB  197,225,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm3
7315  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
7316  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7317  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
7318  DB  72,173                              ; lods          %ds:(%rsi),%rax
7319  DB  91                                  ; pop           %rbx
7320  DB  65,92                               ; pop           %r12
7321  DB  65,93                               ; pop           %r13
7322  DB  65,94                               ; pop           %r14
7323  DB  65,95                               ; pop           %r15
7324  DB  255,224                             ; jmpq          *%rax
7325
7326PUBLIC _sk_load_565_avx
7327_sk_load_565_avx LABEL PROC
7328  DB  72,173                              ; lods          %ds:(%rsi),%rax
7329  DB  76,139,16                           ; mov           (%rax),%r10
7330  DB  72,133,201                          ; test          %rcx,%rcx
7331  DB  15,133,128,0,0,0                    ; jne           3170 <_sk_load_565_avx+0x8e>
7332  DB  196,193,122,111,4,122               ; vmovdqu       (%r10,%rdi,2),%xmm0
7333  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
7334  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
7335  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
7336  DB  196,227,125,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm2
7337  DB  196,226,125,24,5,110,39,0,0         ; vbroadcastss  0x276e(%rip),%ymm0        # 5880 <_sk_callback_avx+0x349>
7338  DB  197,236,84,192                      ; vandps        %ymm0,%ymm2,%ymm0
7339  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7340  DB  196,226,125,24,13,97,39,0,0         ; vbroadcastss  0x2761(%rip),%ymm1        # 5884 <_sk_callback_avx+0x34d>
7341  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
7342  DB  196,226,125,24,13,88,39,0,0         ; vbroadcastss  0x2758(%rip),%ymm1        # 5888 <_sk_callback_avx+0x351>
7343  DB  197,236,84,201                      ; vandps        %ymm1,%ymm2,%ymm1
7344  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7345  DB  196,226,125,24,29,75,39,0,0         ; vbroadcastss  0x274b(%rip),%ymm3        # 588c <_sk_callback_avx+0x355>
7346  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
7347  DB  196,226,125,24,29,66,39,0,0         ; vbroadcastss  0x2742(%rip),%ymm3        # 5890 <_sk_callback_avx+0x359>
7348  DB  197,236,84,211                      ; vandps        %ymm3,%ymm2,%ymm2
7349  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7350  DB  196,226,125,24,29,53,39,0,0         ; vbroadcastss  0x2735(%rip),%ymm3        # 5894 <_sk_callback_avx+0x35d>
7351  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
7352  DB  72,173                              ; lods          %ds:(%rsi),%rax
7353  DB  196,226,125,24,29,42,39,0,0         ; vbroadcastss  0x272a(%rip),%ymm3        # 5898 <_sk_callback_avx+0x361>
7354  DB  255,224                             ; jmpq          *%rax
7355  DB  65,137,200                          ; mov           %ecx,%r8d
7356  DB  65,128,224,7                        ; and           $0x7,%r8b
7357  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
7358  DB  65,254,200                          ; dec           %r8b
7359  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7360  DB  15,135,110,255,255,255              ; ja            30f6 <_sk_load_565_avx+0x14>
7361  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7362  DB  76,141,13,73,0,0,0                  ; lea           0x49(%rip),%r9        # 31dc <_sk_load_565_avx+0xfa>
7363  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7364  DB  76,1,200                            ; add           %r9,%rax
7365  DB  255,224                             ; jmpq          *%rax
7366  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
7367  DB  196,193,121,196,68,122,12,6         ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
7368  DB  196,193,121,196,68,122,10,5         ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
7369  DB  196,193,121,196,68,122,8,4          ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
7370  DB  196,193,121,196,68,122,6,3          ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
7371  DB  196,193,121,196,68,122,4,2          ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
7372  DB  196,193,121,196,68,122,2,1          ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
7373  DB  196,193,121,196,4,122,0             ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm0,%xmm0
7374  DB  233,26,255,255,255                  ; jmpq          30f6 <_sk_load_565_avx+0x14>
7375  DB  244                                 ; hlt
7376  DB  255                                 ; (bad)
7377  DB  255                                 ; (bad)
7378  DB  255                                 ; (bad)
7379  DB  236                                 ; in            (%dx),%al
7380  DB  255                                 ; (bad)
7381  DB  255                                 ; (bad)
7382  DB  255,228                             ; jmpq          *%rsp
7383  DB  255                                 ; (bad)
7384  DB  255                                 ; (bad)
7385  DB  255                                 ; (bad)
7386  DB  220,255                             ; fdivr         %st,%st(7)
7387  DB  255                                 ; (bad)
7388  DB  255,212                             ; callq         *%rsp
7389  DB  255                                 ; (bad)
7390  DB  255                                 ; (bad)
7391  DB  255,204                             ; dec           %esp
7392  DB  255                                 ; (bad)
7393  DB  255                                 ; (bad)
7394  DB  255,192                             ; inc           %eax
7395  DB  255                                 ; (bad)
7396  DB  255                                 ; (bad)
7397  DB  255                                 ; .byte         0xff
7398
7399PUBLIC _sk_gather_565_avx
7400_sk_gather_565_avx LABEL PROC
7401  DB  85                                  ; push          %rbp
7402  DB  65,87                               ; push          %r15
7403  DB  65,86                               ; push          %r14
7404  DB  65,84                               ; push          %r12
7405  DB  83                                  ; push          %rbx
7406  DB  72,173                              ; lods          %ds:(%rsi),%rax
7407  DB  76,139,0                            ; mov           (%rax),%r8
7408  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
7409  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
7410  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
7411  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
7412  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
7413  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
7414  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
7415  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
7416  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
7417  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7418  DB  65,137,193                          ; mov           %eax,%r9d
7419  DB  72,193,232,32                       ; shr           $0x20,%rax
7420  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
7421  DB  69,137,211                          ; mov           %r10d,%r11d
7422  DB  73,193,234,32                       ; shr           $0x20,%r10
7423  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
7424  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
7425  DB  65,137,222                          ; mov           %ebx,%r14d
7426  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
7427  DB  69,137,252                          ; mov           %r15d,%r12d
7428  DB  73,193,239,32                       ; shr           $0x20,%r15
7429  DB  72,193,235,32                       ; shr           $0x20,%rbx
7430  DB  65,15,183,28,88                     ; movzwl        (%r8,%rbx,2),%ebx
7431  DB  67,15,183,44,112                    ; movzwl        (%r8,%r14,2),%ebp
7432  DB  197,249,110,197                     ; vmovd         %ebp,%xmm0
7433  DB  197,249,196,195,1                   ; vpinsrw       $0x1,%ebx,%xmm0,%xmm0
7434  DB  67,15,183,28,96                     ; movzwl        (%r8,%r12,2),%ebx
7435  DB  197,249,196,195,2                   ; vpinsrw       $0x2,%ebx,%xmm0,%xmm0
7436  DB  67,15,183,28,120                    ; movzwl        (%r8,%r15,2),%ebx
7437  DB  197,249,196,195,3                   ; vpinsrw       $0x3,%ebx,%xmm0,%xmm0
7438  DB  67,15,183,44,88                     ; movzwl        (%r8,%r11,2),%ebp
7439  DB  197,249,196,197,4                   ; vpinsrw       $0x4,%ebp,%xmm0,%xmm0
7440  DB  67,15,183,44,80                     ; movzwl        (%r8,%r10,2),%ebp
7441  DB  197,249,196,197,5                   ; vpinsrw       $0x5,%ebp,%xmm0,%xmm0
7442  DB  67,15,183,44,72                     ; movzwl        (%r8,%r9,2),%ebp
7443  DB  197,249,196,197,6                   ; vpinsrw       $0x6,%ebp,%xmm0,%xmm0
7444  DB  65,15,183,4,64                      ; movzwl        (%r8,%rax,2),%eax
7445  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
7446  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
7447  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
7448  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
7449  DB  196,227,125,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm2
7450  DB  196,226,125,24,5,202,37,0,0         ; vbroadcastss  0x25ca(%rip),%ymm0        # 589c <_sk_callback_avx+0x365>
7451  DB  197,236,84,192                      ; vandps        %ymm0,%ymm2,%ymm0
7452  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7453  DB  196,226,125,24,13,189,37,0,0        ; vbroadcastss  0x25bd(%rip),%ymm1        # 58a0 <_sk_callback_avx+0x369>
7454  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
7455  DB  196,226,125,24,13,180,37,0,0        ; vbroadcastss  0x25b4(%rip),%ymm1        # 58a4 <_sk_callback_avx+0x36d>
7456  DB  197,236,84,201                      ; vandps        %ymm1,%ymm2,%ymm1
7457  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7458  DB  196,226,125,24,29,167,37,0,0        ; vbroadcastss  0x25a7(%rip),%ymm3        # 58a8 <_sk_callback_avx+0x371>
7459  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
7460  DB  196,226,125,24,29,158,37,0,0        ; vbroadcastss  0x259e(%rip),%ymm3        # 58ac <_sk_callback_avx+0x375>
7461  DB  197,236,84,211                      ; vandps        %ymm3,%ymm2,%ymm2
7462  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7463  DB  196,226,125,24,29,145,37,0,0        ; vbroadcastss  0x2591(%rip),%ymm3        # 58b0 <_sk_callback_avx+0x379>
7464  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
7465  DB  72,173                              ; lods          %ds:(%rsi),%rax
7466  DB  196,226,125,24,29,134,37,0,0        ; vbroadcastss  0x2586(%rip),%ymm3        # 58b4 <_sk_callback_avx+0x37d>
7467  DB  91                                  ; pop           %rbx
7468  DB  65,92                               ; pop           %r12
7469  DB  65,94                               ; pop           %r14
7470  DB  65,95                               ; pop           %r15
7471  DB  93                                  ; pop           %rbp
7472  DB  255,224                             ; jmpq          *%rax
7473
7474PUBLIC _sk_store_565_avx
7475_sk_store_565_avx LABEL PROC
7476  DB  72,173                              ; lods          %ds:(%rsi),%rax
7477  DB  76,139,16                           ; mov           (%rax),%r10
7478  DB  196,98,125,24,5,114,37,0,0          ; vbroadcastss  0x2572(%rip),%ymm8        # 58b8 <_sk_callback_avx+0x381>
7479  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
7480  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
7481  DB  196,193,41,114,241,11               ; vpslld        $0xb,%xmm9,%xmm10
7482  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
7483  DB  196,193,49,114,241,11               ; vpslld        $0xb,%xmm9,%xmm9
7484  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
7485  DB  196,98,125,24,21,75,37,0,0          ; vbroadcastss  0x254b(%rip),%ymm10        # 58bc <_sk_callback_avx+0x385>
7486  DB  196,65,116,89,210                   ; vmulps        %ymm10,%ymm1,%ymm10
7487  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
7488  DB  196,193,33,114,242,5                ; vpslld        $0x5,%xmm10,%xmm11
7489  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
7490  DB  196,193,41,114,242,5                ; vpslld        $0x5,%xmm10,%xmm10
7491  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
7492  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
7493  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
7494  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
7495  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
7496  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
7497  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
7498  DB  72,133,201                          ; test          %rcx,%rcx
7499  DB  117,10                              ; jne           33c1 <_sk_store_565_avx+0x89>
7500  DB  196,65,122,127,4,122                ; vmovdqu       %xmm8,(%r10,%rdi,2)
7501  DB  72,173                              ; lods          %ds:(%rsi),%rax
7502  DB  255,224                             ; jmpq          *%rax
7503  DB  65,137,200                          ; mov           %ecx,%r8d
7504  DB  65,128,224,7                        ; and           $0x7,%r8b
7505  DB  65,254,200                          ; dec           %r8b
7506  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7507  DB  119,236                             ; ja            33bd <_sk_store_565_avx+0x85>
7508  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7509  DB  76,141,13,68,0,0,0                  ; lea           0x44(%rip),%r9        # 3420 <_sk_store_565_avx+0xe8>
7510  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7511  DB  76,1,200                            ; add           %r9,%rax
7512  DB  255,224                             ; jmpq          *%rax
7513  DB  196,67,121,21,68,122,12,6           ; vpextrw       $0x6,%xmm8,0xc(%r10,%rdi,2)
7514  DB  196,67,121,21,68,122,10,5           ; vpextrw       $0x5,%xmm8,0xa(%r10,%rdi,2)
7515  DB  196,67,121,21,68,122,8,4            ; vpextrw       $0x4,%xmm8,0x8(%r10,%rdi,2)
7516  DB  196,67,121,21,68,122,6,3            ; vpextrw       $0x3,%xmm8,0x6(%r10,%rdi,2)
7517  DB  196,67,121,21,68,122,4,2            ; vpextrw       $0x2,%xmm8,0x4(%r10,%rdi,2)
7518  DB  196,67,121,21,68,122,2,1            ; vpextrw       $0x1,%xmm8,0x2(%r10,%rdi,2)
7519  DB  196,67,121,21,4,122,0               ; vpextrw       $0x0,%xmm8,(%r10,%rdi,2)
7520  DB  235,159                             ; jmp           33bd <_sk_store_565_avx+0x85>
7521  DB  102,144                             ; xchg          %ax,%ax
7522  DB  245                                 ; cmc
7523  DB  255                                 ; (bad)
7524  DB  255                                 ; (bad)
7525  DB  255                                 ; (bad)
7526  DB  237                                 ; in            (%dx),%eax
7527  DB  255                                 ; (bad)
7528  DB  255                                 ; (bad)
7529  DB  255,229                             ; jmpq          *%rbp
7530  DB  255                                 ; (bad)
7531  DB  255                                 ; (bad)
7532  DB  255                                 ; (bad)
7533  DB  221,255                             ; (bad)
7534  DB  255                                 ; (bad)
7535  DB  255,213                             ; callq         *%rbp
7536  DB  255                                 ; (bad)
7537  DB  255                                 ; (bad)
7538  DB  255,205                             ; dec           %ebp
7539  DB  255                                 ; (bad)
7540  DB  255                                 ; (bad)
7541  DB  255,197                             ; inc           %ebp
7542  DB  255                                 ; (bad)
7543  DB  255                                 ; (bad)
7544  DB  255                                 ; .byte         0xff
7545
7546PUBLIC _sk_load_4444_avx
7547_sk_load_4444_avx LABEL PROC
7548  DB  72,173                              ; lods          %ds:(%rsi),%rax
7549  DB  76,139,16                           ; mov           (%rax),%r10
7550  DB  72,133,201                          ; test          %rcx,%rcx
7551  DB  15,133,152,0,0,0                    ; jne           34e2 <_sk_load_4444_avx+0xa6>
7552  DB  196,193,122,111,4,122               ; vmovdqu       (%r10,%rdi,2),%xmm0
7553  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
7554  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
7555  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
7556  DB  196,227,125,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm3
7557  DB  196,226,125,24,5,84,36,0,0          ; vbroadcastss  0x2454(%rip),%ymm0        # 58c0 <_sk_callback_avx+0x389>
7558  DB  197,228,84,192                      ; vandps        %ymm0,%ymm3,%ymm0
7559  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7560  DB  196,226,125,24,13,71,36,0,0         ; vbroadcastss  0x2447(%rip),%ymm1        # 58c4 <_sk_callback_avx+0x38d>
7561  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
7562  DB  196,226,125,24,13,62,36,0,0         ; vbroadcastss  0x243e(%rip),%ymm1        # 58c8 <_sk_callback_avx+0x391>
7563  DB  197,228,84,201                      ; vandps        %ymm1,%ymm3,%ymm1
7564  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7565  DB  196,226,125,24,21,49,36,0,0         ; vbroadcastss  0x2431(%rip),%ymm2        # 58cc <_sk_callback_avx+0x395>
7566  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
7567  DB  196,226,125,24,21,40,36,0,0         ; vbroadcastss  0x2428(%rip),%ymm2        # 58d0 <_sk_callback_avx+0x399>
7568  DB  197,228,84,210                      ; vandps        %ymm2,%ymm3,%ymm2
7569  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7570  DB  196,98,125,24,5,27,36,0,0           ; vbroadcastss  0x241b(%rip),%ymm8        # 58d4 <_sk_callback_avx+0x39d>
7571  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
7572  DB  196,98,125,24,5,17,36,0,0           ; vbroadcastss  0x2411(%rip),%ymm8        # 58d8 <_sk_callback_avx+0x3a1>
7573  DB  196,193,100,84,216                  ; vandps        %ymm8,%ymm3,%ymm3
7574  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7575  DB  196,98,125,24,5,3,36,0,0            ; vbroadcastss  0x2403(%rip),%ymm8        # 58dc <_sk_callback_avx+0x3a5>
7576  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
7577  DB  72,173                              ; lods          %ds:(%rsi),%rax
7578  DB  255,224                             ; jmpq          *%rax
7579  DB  65,137,200                          ; mov           %ecx,%r8d
7580  DB  65,128,224,7                        ; and           $0x7,%r8b
7581  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
7582  DB  65,254,200                          ; dec           %r8b
7583  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7584  DB  15,135,86,255,255,255               ; ja            3450 <_sk_load_4444_avx+0x14>
7585  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7586  DB  76,141,13,75,0,0,0                  ; lea           0x4b(%rip),%r9        # 3550 <_sk_load_4444_avx+0x114>
7587  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7588  DB  76,1,200                            ; add           %r9,%rax
7589  DB  255,224                             ; jmpq          *%rax
7590  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
7591  DB  196,193,121,196,68,122,12,6         ; vpinsrw       $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
7592  DB  196,193,121,196,68,122,10,5         ; vpinsrw       $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
7593  DB  196,193,121,196,68,122,8,4          ; vpinsrw       $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
7594  DB  196,193,121,196,68,122,6,3          ; vpinsrw       $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
7595  DB  196,193,121,196,68,122,4,2          ; vpinsrw       $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
7596  DB  196,193,121,196,68,122,2,1          ; vpinsrw       $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
7597  DB  196,193,121,196,4,122,0             ; vpinsrw       $0x0,(%r10,%rdi,2),%xmm0,%xmm0
7598  DB  233,2,255,255,255                   ; jmpq          3450 <_sk_load_4444_avx+0x14>
7599  DB  102,144                             ; xchg          %ax,%ax
7600  DB  242,255                             ; repnz         (bad)
7601  DB  255                                 ; (bad)
7602  DB  255                                 ; (bad)
7603  DB  234                                 ; (bad)
7604  DB  255                                 ; (bad)
7605  DB  255                                 ; (bad)
7606  DB  255,226                             ; jmpq          *%rdx
7607  DB  255                                 ; (bad)
7608  DB  255                                 ; (bad)
7609  DB  255                                 ; (bad)
7610  DB  218,255                             ; (bad)
7611  DB  255                                 ; (bad)
7612  DB  255,210                             ; callq         *%rdx
7613  DB  255                                 ; (bad)
7614  DB  255                                 ; (bad)
7615  DB  255,202                             ; dec           %edx
7616  DB  255                                 ; (bad)
7617  DB  255                                 ; (bad)
7618  DB  255                                 ; (bad)
7619  DB  190                                 ; .byte         0xbe
7620  DB  255                                 ; (bad)
7621  DB  255                                 ; (bad)
7622  DB  255                                 ; .byte         0xff
7623
7624PUBLIC _sk_gather_4444_avx
7625_sk_gather_4444_avx LABEL PROC
7626  DB  85                                  ; push          %rbp
7627  DB  65,87                               ; push          %r15
7628  DB  65,86                               ; push          %r14
7629  DB  65,84                               ; push          %r12
7630  DB  83                                  ; push          %rbx
7631  DB  72,173                              ; lods          %ds:(%rsi),%rax
7632  DB  76,139,0                            ; mov           (%rax),%r8
7633  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
7634  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
7635  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
7636  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
7637  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
7638  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
7639  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
7640  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
7641  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
7642  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7643  DB  65,137,193                          ; mov           %eax,%r9d
7644  DB  72,193,232,32                       ; shr           $0x20,%rax
7645  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
7646  DB  69,137,211                          ; mov           %r10d,%r11d
7647  DB  73,193,234,32                       ; shr           $0x20,%r10
7648  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
7649  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
7650  DB  65,137,222                          ; mov           %ebx,%r14d
7651  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
7652  DB  69,137,252                          ; mov           %r15d,%r12d
7653  DB  73,193,239,32                       ; shr           $0x20,%r15
7654  DB  72,193,235,32                       ; shr           $0x20,%rbx
7655  DB  65,15,183,28,88                     ; movzwl        (%r8,%rbx,2),%ebx
7656  DB  67,15,183,44,112                    ; movzwl        (%r8,%r14,2),%ebp
7657  DB  197,249,110,197                     ; vmovd         %ebp,%xmm0
7658  DB  197,249,196,195,1                   ; vpinsrw       $0x1,%ebx,%xmm0,%xmm0
7659  DB  67,15,183,28,96                     ; movzwl        (%r8,%r12,2),%ebx
7660  DB  197,249,196,195,2                   ; vpinsrw       $0x2,%ebx,%xmm0,%xmm0
7661  DB  67,15,183,28,120                    ; movzwl        (%r8,%r15,2),%ebx
7662  DB  197,249,196,195,3                   ; vpinsrw       $0x3,%ebx,%xmm0,%xmm0
7663  DB  67,15,183,44,88                     ; movzwl        (%r8,%r11,2),%ebp
7664  DB  197,249,196,197,4                   ; vpinsrw       $0x4,%ebp,%xmm0,%xmm0
7665  DB  67,15,183,44,80                     ; movzwl        (%r8,%r10,2),%ebp
7666  DB  197,249,196,197,5                   ; vpinsrw       $0x5,%ebp,%xmm0,%xmm0
7667  DB  67,15,183,44,72                     ; movzwl        (%r8,%r9,2),%ebp
7668  DB  197,249,196,197,6                   ; vpinsrw       $0x6,%ebp,%xmm0,%xmm0
7669  DB  65,15,183,4,64                      ; movzwl        (%r8,%rax,2),%eax
7670  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
7671  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
7672  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
7673  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
7674  DB  196,227,125,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm3
7675  DB  196,226,125,24,5,154,34,0,0         ; vbroadcastss  0x229a(%rip),%ymm0        # 58e0 <_sk_callback_avx+0x3a9>
7676  DB  197,228,84,192                      ; vandps        %ymm0,%ymm3,%ymm0
7677  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7678  DB  196,226,125,24,13,141,34,0,0        ; vbroadcastss  0x228d(%rip),%ymm1        # 58e4 <_sk_callback_avx+0x3ad>
7679  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
7680  DB  196,226,125,24,13,132,34,0,0        ; vbroadcastss  0x2284(%rip),%ymm1        # 58e8 <_sk_callback_avx+0x3b1>
7681  DB  197,228,84,201                      ; vandps        %ymm1,%ymm3,%ymm1
7682  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7683  DB  196,226,125,24,21,119,34,0,0        ; vbroadcastss  0x2277(%rip),%ymm2        # 58ec <_sk_callback_avx+0x3b5>
7684  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
7685  DB  196,226,125,24,21,110,34,0,0        ; vbroadcastss  0x226e(%rip),%ymm2        # 58f0 <_sk_callback_avx+0x3b9>
7686  DB  197,228,84,210                      ; vandps        %ymm2,%ymm3,%ymm2
7687  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7688  DB  196,98,125,24,5,97,34,0,0           ; vbroadcastss  0x2261(%rip),%ymm8        # 58f4 <_sk_callback_avx+0x3bd>
7689  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
7690  DB  196,98,125,24,5,87,34,0,0           ; vbroadcastss  0x2257(%rip),%ymm8        # 58f8 <_sk_callback_avx+0x3c1>
7691  DB  196,193,100,84,216                  ; vandps        %ymm8,%ymm3,%ymm3
7692  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7693  DB  196,98,125,24,5,73,34,0,0           ; vbroadcastss  0x2249(%rip),%ymm8        # 58fc <_sk_callback_avx+0x3c5>
7694  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
7695  DB  72,173                              ; lods          %ds:(%rsi),%rax
7696  DB  91                                  ; pop           %rbx
7697  DB  65,92                               ; pop           %r12
7698  DB  65,94                               ; pop           %r14
7699  DB  65,95                               ; pop           %r15
7700  DB  93                                  ; pop           %rbp
7701  DB  255,224                             ; jmpq          *%rax
7702
7703PUBLIC _sk_store_4444_avx
7704_sk_store_4444_avx LABEL PROC
7705  DB  72,173                              ; lods          %ds:(%rsi),%rax
7706  DB  76,139,16                           ; mov           (%rax),%r10
7707  DB  196,98,125,24,5,46,34,0,0           ; vbroadcastss  0x222e(%rip),%ymm8        # 5900 <_sk_callback_avx+0x3c9>
7708  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
7709  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
7710  DB  196,193,41,114,241,12               ; vpslld        $0xc,%xmm9,%xmm10
7711  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
7712  DB  196,193,49,114,241,12               ; vpslld        $0xc,%xmm9,%xmm9
7713  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
7714  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
7715  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
7716  DB  196,193,33,114,242,8                ; vpslld        $0x8,%xmm10,%xmm11
7717  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
7718  DB  196,193,41,114,242,8                ; vpslld        $0x8,%xmm10,%xmm10
7719  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
7720  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
7721  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
7722  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
7723  DB  196,193,33,114,242,4                ; vpslld        $0x4,%xmm10,%xmm11
7724  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
7725  DB  196,193,41,114,242,4                ; vpslld        $0x4,%xmm10,%xmm10
7726  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
7727  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
7728  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
7729  DB  196,65,45,86,192                    ; vorpd         %ymm8,%ymm10,%ymm8
7730  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
7731  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
7732  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
7733  DB  72,133,201                          ; test          %rcx,%rcx
7734  DB  117,10                              ; jne           376b <_sk_store_4444_avx+0xa7>
7735  DB  196,65,122,127,4,122                ; vmovdqu       %xmm8,(%r10,%rdi,2)
7736  DB  72,173                              ; lods          %ds:(%rsi),%rax
7737  DB  255,224                             ; jmpq          *%rax
7738  DB  65,137,200                          ; mov           %ecx,%r8d
7739  DB  65,128,224,7                        ; and           $0x7,%r8b
7740  DB  65,254,200                          ; dec           %r8b
7741  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7742  DB  119,236                             ; ja            3767 <_sk_store_4444_avx+0xa3>
7743  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7744  DB  76,141,13,66,0,0,0                  ; lea           0x42(%rip),%r9        # 37c8 <_sk_store_4444_avx+0x104>
7745  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7746  DB  76,1,200                            ; add           %r9,%rax
7747  DB  255,224                             ; jmpq          *%rax
7748  DB  196,67,121,21,68,122,12,6           ; vpextrw       $0x6,%xmm8,0xc(%r10,%rdi,2)
7749  DB  196,67,121,21,68,122,10,5           ; vpextrw       $0x5,%xmm8,0xa(%r10,%rdi,2)
7750  DB  196,67,121,21,68,122,8,4            ; vpextrw       $0x4,%xmm8,0x8(%r10,%rdi,2)
7751  DB  196,67,121,21,68,122,6,3            ; vpextrw       $0x3,%xmm8,0x6(%r10,%rdi,2)
7752  DB  196,67,121,21,68,122,4,2            ; vpextrw       $0x2,%xmm8,0x4(%r10,%rdi,2)
7753  DB  196,67,121,21,68,122,2,1            ; vpextrw       $0x1,%xmm8,0x2(%r10,%rdi,2)
7754  DB  196,67,121,21,4,122,0               ; vpextrw       $0x0,%xmm8,(%r10,%rdi,2)
7755  DB  235,159                             ; jmp           3767 <_sk_store_4444_avx+0xa3>
7756  DB  247,255                             ; idiv          %edi
7757  DB  255                                 ; (bad)
7758  DB  255                                 ; (bad)
7759  DB  239                                 ; out           %eax,(%dx)
7760  DB  255                                 ; (bad)
7761  DB  255                                 ; (bad)
7762  DB  255,231                             ; jmpq          *%rdi
7763  DB  255                                 ; (bad)
7764  DB  255                                 ; (bad)
7765  DB  255                                 ; (bad)
7766  DB  223,255                             ; (bad)
7767  DB  255                                 ; (bad)
7768  DB  255,215                             ; callq         *%rdi
7769  DB  255                                 ; (bad)
7770  DB  255                                 ; (bad)
7771  DB  255,207                             ; dec           %edi
7772  DB  255                                 ; (bad)
7773  DB  255                                 ; (bad)
7774  DB  255,199                             ; inc           %edi
7775  DB  255                                 ; (bad)
7776  DB  255                                 ; (bad)
7777  DB  255                                 ; .byte         0xff
7778
7779PUBLIC _sk_load_8888_avx
7780_sk_load_8888_avx LABEL PROC
7781  DB  72,173                              ; lods          %ds:(%rsi),%rax
7782  DB  76,139,16                           ; mov           (%rax),%r10
7783  DB  72,133,201                          ; test          %rcx,%rcx
7784  DB  15,133,135,0,0,0                    ; jne           3879 <_sk_load_8888_avx+0x95>
7785  DB  196,65,124,16,12,186                ; vmovups       (%r10,%rdi,4),%ymm9
7786  DB  197,124,40,21,96,34,0,0             ; vmovaps       0x2260(%rip),%ymm10        # 5a60 <_sk_callback_avx+0x529>
7787  DB  196,193,52,84,194                   ; vandps        %ymm10,%ymm9,%ymm0
7788  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7789  DB  196,98,125,24,5,242,32,0,0          ; vbroadcastss  0x20f2(%rip),%ymm8        # 5904 <_sk_callback_avx+0x3cd>
7790  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
7791  DB  196,193,113,114,209,8               ; vpsrld        $0x8,%xmm9,%xmm1
7792  DB  196,99,125,25,203,1                 ; vextractf128  $0x1,%ymm9,%xmm3
7793  DB  197,233,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm2
7794  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7795  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
7796  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7797  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
7798  DB  196,193,33,114,209,16               ; vpsrld        $0x10,%xmm9,%xmm11
7799  DB  197,233,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm2
7800  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
7801  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
7802  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7803  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
7804  DB  196,193,49,114,209,24               ; vpsrld        $0x18,%xmm9,%xmm9
7805  DB  197,225,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm3
7806  DB  196,227,53,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm9,%ymm3
7807  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7808  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
7809  DB  72,173                              ; lods          %ds:(%rsi),%rax
7810  DB  255,224                             ; jmpq          *%rax
7811  DB  65,137,200                          ; mov           %ecx,%r8d
7812  DB  65,128,224,7                        ; and           $0x7,%r8b
7813  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
7814  DB  65,254,200                          ; dec           %r8b
7815  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7816  DB  15,135,102,255,255,255              ; ja            37f8 <_sk_load_8888_avx+0x14>
7817  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7818  DB  76,141,13,139,0,0,0                 ; lea           0x8b(%rip),%r9        # 3928 <_sk_load_8888_avx+0x144>
7819  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7820  DB  76,1,200                            ; add           %r9,%rax
7821  DB  255,224                             ; jmpq          *%rax
7822  DB  196,193,121,110,68,186,24           ; vmovd         0x18(%r10,%rdi,4),%xmm0
7823  DB  197,249,112,192,68                  ; vpshufd       $0x44,%xmm0,%xmm0
7824  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
7825  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
7826  DB  196,99,117,12,200,64                ; vblendps      $0x40,%ymm0,%ymm1,%ymm9
7827  DB  196,99,125,25,200,1                 ; vextractf128  $0x1,%ymm9,%xmm0
7828  DB  196,195,121,34,68,186,20,1          ; vpinsrd       $0x1,0x14(%r10,%rdi,4),%xmm0,%xmm0
7829  DB  196,99,53,24,200,1                  ; vinsertf128   $0x1,%xmm0,%ymm9,%ymm9
7830  DB  196,99,125,25,200,1                 ; vextractf128  $0x1,%ymm9,%xmm0
7831  DB  196,195,121,34,68,186,16,0          ; vpinsrd       $0x0,0x10(%r10,%rdi,4),%xmm0,%xmm0
7832  DB  196,99,53,24,200,1                  ; vinsertf128   $0x1,%xmm0,%ymm9,%ymm9
7833  DB  196,195,49,34,68,186,12,3           ; vpinsrd       $0x3,0xc(%r10,%rdi,4),%xmm9,%xmm0
7834  DB  196,99,53,12,200,15                 ; vblendps      $0xf,%ymm0,%ymm9,%ymm9
7835  DB  196,195,49,34,68,186,8,2            ; vpinsrd       $0x2,0x8(%r10,%rdi,4),%xmm9,%xmm0
7836  DB  196,99,53,12,200,15                 ; vblendps      $0xf,%ymm0,%ymm9,%ymm9
7837  DB  196,195,49,34,68,186,4,1            ; vpinsrd       $0x1,0x4(%r10,%rdi,4),%xmm9,%xmm0
7838  DB  196,99,53,12,200,15                 ; vblendps      $0xf,%ymm0,%ymm9,%ymm9
7839  DB  196,195,49,34,4,186,0               ; vpinsrd       $0x0,(%r10,%rdi,4),%xmm9,%xmm0
7840  DB  196,99,53,12,200,15                 ; vblendps      $0xf,%ymm0,%ymm9,%ymm9
7841  DB  233,210,254,255,255                 ; jmpq          37f8 <_sk_load_8888_avx+0x14>
7842  DB  102,144                             ; xchg          %ax,%ax
7843  DB  236                                 ; in            (%dx),%al
7844  DB  255                                 ; (bad)
7845  DB  255                                 ; (bad)
7846  DB  255                                 ; (bad)
7847  DB  222,255                             ; fdivrp        %st,%st(7)
7848  DB  255                                 ; (bad)
7849  DB  255,208                             ; callq         *%rax
7850  DB  255                                 ; (bad)
7851  DB  255                                 ; (bad)
7852  DB  255,194                             ; inc           %edx
7853  DB  255                                 ; (bad)
7854  DB  255                                 ; (bad)
7855  DB  255,174,255,255,255,154             ; ljmp          *-0x65000001(%rsi)
7856  DB  255                                 ; (bad)
7857  DB  255                                 ; (bad)
7858  DB  255                                 ; (bad)
7859  DB  126,255                             ; jle           3941 <_sk_load_8888_avx+0x15d>
7860  DB  255                                 ; (bad)
7861  DB  255                                 ; .byte         0xff
7862
7863PUBLIC _sk_gather_8888_avx
7864_sk_gather_8888_avx LABEL PROC
7865  DB  65,87                               ; push          %r15
7866  DB  65,86                               ; push          %r14
7867  DB  65,84                               ; push          %r12
7868  DB  83                                  ; push          %rbx
7869  DB  72,173                              ; lods          %ds:(%rsi),%rax
7870  DB  76,139,0                            ; mov           (%rax),%r8
7871  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
7872  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
7873  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
7874  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
7875  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
7876  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
7877  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
7878  DB  196,227,125,25,194,1                ; vextractf128  $0x1,%ymm0,%xmm2
7879  DB  197,241,254,202                     ; vpaddd        %xmm2,%xmm1,%xmm1
7880  DB  196,225,249,126,200                 ; vmovq         %xmm1,%rax
7881  DB  65,137,193                          ; mov           %eax,%r9d
7882  DB  72,193,232,32                       ; shr           $0x20,%rax
7883  DB  196,195,249,22,202,1                ; vpextrq       $0x1,%xmm1,%r10
7884  DB  69,137,211                          ; mov           %r10d,%r11d
7885  DB  73,193,234,32                       ; shr           $0x20,%r10
7886  DB  197,225,254,192                     ; vpaddd        %xmm0,%xmm3,%xmm0
7887  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
7888  DB  65,137,222                          ; mov           %ebx,%r14d
7889  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
7890  DB  69,137,252                          ; mov           %r15d,%r12d
7891  DB  72,193,235,32                       ; shr           $0x20,%rbx
7892  DB  73,193,239,32                       ; shr           $0x20,%r15
7893  DB  196,129,121,110,4,176               ; vmovd         (%r8,%r14,4),%xmm0
7894  DB  196,195,121,34,4,152,1              ; vpinsrd       $0x1,(%r8,%rbx,4),%xmm0,%xmm0
7895  DB  196,131,121,34,4,160,2              ; vpinsrd       $0x2,(%r8,%r12,4),%xmm0,%xmm0
7896  DB  196,3,121,34,4,184,3                ; vpinsrd       $0x3,(%r8,%r15,4),%xmm0,%xmm8
7897  DB  196,129,121,110,4,136               ; vmovd         (%r8,%r9,4),%xmm0
7898  DB  196,195,121,34,4,128,1              ; vpinsrd       $0x1,(%r8,%rax,4),%xmm0,%xmm0
7899  DB  196,131,121,34,4,152,2              ; vpinsrd       $0x2,(%r8,%r11,4),%xmm0,%xmm0
7900  DB  196,131,121,34,28,144,3             ; vpinsrd       $0x3,(%r8,%r10,4),%xmm0,%xmm3
7901  DB  196,227,61,24,195,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm0
7902  DB  197,124,40,21,138,32,0,0            ; vmovaps       0x208a(%rip),%ymm10        # 5a80 <_sk_callback_avx+0x549>
7903  DB  196,193,124,84,194                  ; vandps        %ymm10,%ymm0,%ymm0
7904  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7905  DB  196,98,125,24,13,0,31,0,0           ; vbroadcastss  0x1f00(%rip),%ymm9        # 5908 <_sk_callback_avx+0x3d1>
7906  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
7907  DB  196,193,113,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm1
7908  DB  197,233,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm2
7909  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7910  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
7911  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7912  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
7913  DB  196,193,33,114,208,16               ; vpsrld        $0x10,%xmm8,%xmm11
7914  DB  197,233,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm2
7915  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
7916  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
7917  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7918  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
7919  DB  196,193,57,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm8
7920  DB  197,225,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm3
7921  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
7922  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7923  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
7924  DB  72,173                              ; lods          %ds:(%rsi),%rax
7925  DB  91                                  ; pop           %rbx
7926  DB  65,92                               ; pop           %r12
7927  DB  65,94                               ; pop           %r14
7928  DB  65,95                               ; pop           %r15
7929  DB  255,224                             ; jmpq          *%rax
7930
7931PUBLIC _sk_store_8888_avx
7932_sk_store_8888_avx LABEL PROC
7933  DB  72,173                              ; lods          %ds:(%rsi),%rax
7934  DB  76,139,16                           ; mov           (%rax),%r10
7935  DB  196,98,125,24,5,142,30,0,0          ; vbroadcastss  0x1e8e(%rip),%ymm8        # 590c <_sk_callback_avx+0x3d5>
7936  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
7937  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
7938  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
7939  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
7940  DB  196,193,33,114,242,8                ; vpslld        $0x8,%xmm10,%xmm11
7941  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
7942  DB  196,193,41,114,242,8                ; vpslld        $0x8,%xmm10,%xmm10
7943  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
7944  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
7945  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
7946  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
7947  DB  196,193,33,114,242,16               ; vpslld        $0x10,%xmm10,%xmm11
7948  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
7949  DB  196,193,41,114,242,16               ; vpslld        $0x10,%xmm10,%xmm10
7950  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
7951  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
7952  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
7953  DB  196,193,33,114,240,24               ; vpslld        $0x18,%xmm8,%xmm11
7954  DB  196,67,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm8
7955  DB  196,193,57,114,240,24               ; vpslld        $0x18,%xmm8,%xmm8
7956  DB  196,67,37,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm11,%ymm8
7957  DB  196,65,45,86,192                    ; vorpd         %ymm8,%ymm10,%ymm8
7958  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
7959  DB  72,133,201                          ; test          %rcx,%rcx
7960  DB  117,10                              ; jne           3b0c <_sk_store_8888_avx+0x9c>
7961  DB  196,65,124,17,4,186                 ; vmovups       %ymm8,(%r10,%rdi,4)
7962  DB  72,173                              ; lods          %ds:(%rsi),%rax
7963  DB  255,224                             ; jmpq          *%rax
7964  DB  65,137,200                          ; mov           %ecx,%r8d
7965  DB  65,128,224,7                        ; and           $0x7,%r8b
7966  DB  65,254,200                          ; dec           %r8b
7967  DB  65,128,248,6                        ; cmp           $0x6,%r8b
7968  DB  119,236                             ; ja            3b08 <_sk_store_8888_avx+0x98>
7969  DB  69,15,182,192                       ; movzbl        %r8b,%r8d
7970  DB  76,141,13,85,0,0,0                  ; lea           0x55(%rip),%r9        # 3b7c <_sk_store_8888_avx+0x10c>
7971  DB  75,99,4,129                         ; movslq        (%r9,%r8,4),%rax
7972  DB  76,1,200                            ; add           %r9,%rax
7973  DB  255,224                             ; jmpq          *%rax
7974  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
7975  DB  196,67,121,22,76,186,24,2           ; vpextrd       $0x2,%xmm9,0x18(%r10,%rdi,4)
7976  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
7977  DB  196,67,121,22,76,186,20,1           ; vpextrd       $0x1,%xmm9,0x14(%r10,%rdi,4)
7978  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
7979  DB  196,65,122,17,76,186,16             ; vmovss        %xmm9,0x10(%r10,%rdi,4)
7980  DB  196,67,121,22,68,186,12,3           ; vpextrd       $0x3,%xmm8,0xc(%r10,%rdi,4)
7981  DB  196,67,121,22,68,186,8,2            ; vpextrd       $0x2,%xmm8,0x8(%r10,%rdi,4)
7982  DB  196,67,121,22,68,186,4,1            ; vpextrd       $0x1,%xmm8,0x4(%r10,%rdi,4)
7983  DB  196,65,121,126,4,186                ; vmovd         %xmm8,(%r10,%rdi,4)
7984  DB  235,143                             ; jmp           3b08 <_sk_store_8888_avx+0x98>
7985  DB  15,31,0                             ; nopl          (%rax)
7986  DB  245                                 ; cmc
7987  DB  255                                 ; (bad)
7988  DB  255                                 ; (bad)
7989  DB  255                                 ; (bad)
7990  DB  237                                 ; in            (%dx),%eax
7991  DB  255                                 ; (bad)
7992  DB  255                                 ; (bad)
7993  DB  255,229                             ; jmpq          *%rbp
7994  DB  255                                 ; (bad)
7995  DB  255                                 ; (bad)
7996  DB  255                                 ; (bad)
7997  DB  221,255                             ; (bad)
7998  DB  255                                 ; (bad)
7999  DB  255,208                             ; callq         *%rax
8000  DB  255                                 ; (bad)
8001  DB  255                                 ; (bad)
8002  DB  255,194                             ; inc           %edx
8003  DB  255                                 ; (bad)
8004  DB  255                                 ; (bad)
8005  DB  255                                 ; .byte         0xff
8006  DB  180,255                             ; mov           $0xff,%ah
8007  DB  255                                 ; (bad)
8008  DB  255                                 ; .byte         0xff
8009
8010PUBLIC _sk_load_f16_avx
8011_sk_load_f16_avx LABEL PROC
8012  DB  72,129,236,152,0,0,0                ; sub           $0x98,%rsp
8013  DB  72,173                              ; lods          %ds:(%rsi),%rax
8014  DB  72,139,0                            ; mov           (%rax),%rax
8015  DB  72,133,201                          ; test          %rcx,%rcx
8016  DB  197,252,17,124,36,96                ; vmovups       %ymm7,0x60(%rsp)
8017  DB  197,252,17,116,36,64                ; vmovups       %ymm6,0x40(%rsp)
8018  DB  197,252,17,108,36,32                ; vmovups       %ymm5,0x20(%rsp)
8019  DB  197,254,127,36,36                   ; vmovdqu       %ymm4,(%rsp)
8020  DB  15,133,143,2,0,0                    ; jne           3e53 <_sk_load_f16_avx+0x2bb>
8021  DB  197,121,16,4,248                    ; vmovupd       (%rax,%rdi,8),%xmm8
8022  DB  197,249,16,84,248,16                ; vmovupd       0x10(%rax,%rdi,8),%xmm2
8023  DB  197,249,16,76,248,32                ; vmovupd       0x20(%rax,%rdi,8),%xmm1
8024  DB  197,122,111,76,248,48               ; vmovdqu       0x30(%rax,%rdi,8),%xmm9
8025  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
8026  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
8027  DB  196,193,113,97,217                  ; vpunpcklwd    %xmm9,%xmm1,%xmm3
8028  DB  196,193,113,105,201                 ; vpunpckhwd    %xmm9,%xmm1,%xmm1
8029  DB  197,121,97,250                      ; vpunpcklwd    %xmm2,%xmm0,%xmm15
8030  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
8031  DB  197,225,97,209                      ; vpunpcklwd    %xmm1,%xmm3,%xmm2
8032  DB  197,97,105,201                      ; vpunpckhwd    %xmm1,%xmm3,%xmm9
8033  DB  197,129,108,194                     ; vpunpcklqdq   %xmm2,%xmm15,%xmm0
8034  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
8035  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
8036  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8037  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
8038  DB  196,98,125,24,37,243,28,0,0         ; vbroadcastss  0x1cf3(%rip),%ymm12        # 5910 <_sk_callback_avx+0x3d9>
8039  DB  196,193,124,84,204                  ; vandps        %ymm12,%ymm0,%ymm1
8040  DB  197,252,87,193                      ; vxorps        %ymm1,%ymm0,%ymm0
8041  DB  196,195,125,25,198,1                ; vextractf128  $0x1,%ymm0,%xmm14
8042  DB  196,98,121,24,29,223,28,0,0         ; vbroadcastss  0x1cdf(%rip),%xmm11        # 5914 <_sk_callback_avx+0x3dd>
8043  DB  196,193,8,87,219                    ; vxorps        %xmm11,%xmm14,%xmm3
8044  DB  196,98,121,24,45,213,28,0,0         ; vbroadcastss  0x1cd5(%rip),%xmm13        # 5918 <_sk_callback_avx+0x3e1>
8045  DB  197,145,102,219                     ; vpcmpgtd      %xmm3,%xmm13,%xmm3
8046  DB  196,65,120,87,211                   ; vxorps        %xmm11,%xmm0,%xmm10
8047  DB  196,65,17,102,210                   ; vpcmpgtd      %xmm10,%xmm13,%xmm10
8048  DB  196,99,45,24,211,1                  ; vinsertf128   $0x1,%xmm3,%ymm10,%ymm10
8049  DB  197,225,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm3
8050  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
8051  DB  197,241,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm1
8052  DB  196,227,101,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm1
8053  DB  197,249,114,240,13                  ; vpslld        $0xd,%xmm0,%xmm0
8054  DB  196,193,97,114,246,13               ; vpslld        $0xd,%xmm14,%xmm3
8055  DB  196,227,125,24,195,1                ; vinsertf128   $0x1,%xmm3,%ymm0,%ymm0
8056  DB  197,252,86,193                      ; vorps         %ymm1,%ymm0,%ymm0
8057  DB  196,227,125,25,193,1                ; vextractf128  $0x1,%ymm0,%xmm1
8058  DB  196,226,121,24,29,139,28,0,0        ; vbroadcastss  0x1c8b(%rip),%xmm3        # 591c <_sk_callback_avx+0x3e5>
8059  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
8060  DB  197,249,254,195                     ; vpaddd        %xmm3,%xmm0,%xmm0
8061  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
8062  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
8063  DB  196,195,125,74,198,160              ; vblendvps     %ymm10,%ymm14,%ymm0,%ymm0
8064  DB  197,129,109,202                     ; vpunpckhqdq   %xmm2,%xmm15,%xmm1
8065  DB  197,217,239,228                     ; vpxor         %xmm4,%xmm4,%xmm4
8066  DB  197,241,105,212                     ; vpunpckhwd    %xmm4,%xmm1,%xmm2
8067  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
8068  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8069  DB  196,193,116,84,212                  ; vandps        %ymm12,%ymm1,%ymm2
8070  DB  197,244,87,202                      ; vxorps        %ymm2,%ymm1,%ymm1
8071  DB  196,195,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm10
8072  DB  196,193,40,87,251                   ; vxorps        %xmm11,%xmm10,%xmm7
8073  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
8074  DB  196,193,112,87,243                  ; vxorps        %xmm11,%xmm1,%xmm6
8075  DB  197,145,102,246                     ; vpcmpgtd      %xmm6,%xmm13,%xmm6
8076  DB  196,227,77,24,247,1                 ; vinsertf128   $0x1,%xmm7,%ymm6,%ymm6
8077  DB  197,193,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm7
8078  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
8079  DB  197,233,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm2
8080  DB  196,227,69,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm7,%ymm2
8081  DB  197,241,114,241,13                  ; vpslld        $0xd,%xmm1,%xmm1
8082  DB  196,193,65,114,242,13               ; vpslld        $0xd,%xmm10,%xmm7
8083  DB  196,227,117,24,207,1                ; vinsertf128   $0x1,%xmm7,%ymm1,%ymm1
8084  DB  197,244,86,202                      ; vorps         %ymm2,%ymm1,%ymm1
8085  DB  196,227,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm2
8086  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8087  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
8088  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8089  DB  196,195,117,74,206,96               ; vblendvps     %ymm6,%ymm14,%ymm1,%ymm1
8090  DB  196,193,57,108,209                  ; vpunpcklqdq   %xmm9,%xmm8,%xmm2
8091  DB  197,233,105,244                     ; vpunpckhwd    %xmm4,%xmm2,%xmm6
8092  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
8093  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
8094  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
8095  DB  196,193,108,84,244                  ; vandps        %ymm12,%ymm2,%ymm6
8096  DB  197,236,87,214                      ; vxorps        %ymm6,%ymm2,%ymm2
8097  DB  196,227,125,25,215,1                ; vextractf128  $0x1,%ymm2,%xmm7
8098  DB  196,193,64,87,235                   ; vxorps        %xmm11,%xmm7,%xmm5
8099  DB  197,145,102,237                     ; vpcmpgtd      %xmm5,%xmm13,%xmm5
8100  DB  196,193,104,87,227                  ; vxorps        %xmm11,%xmm2,%xmm4
8101  DB  197,145,102,228                     ; vpcmpgtd      %xmm4,%xmm13,%xmm4
8102  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
8103  DB  197,209,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm5
8104  DB  196,227,125,25,246,1                ; vextractf128  $0x1,%ymm6,%xmm6
8105  DB  197,201,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm6
8106  DB  196,227,85,24,238,1                 ; vinsertf128   $0x1,%xmm6,%ymm5,%ymm5
8107  DB  197,233,114,242,13                  ; vpslld        $0xd,%xmm2,%xmm2
8108  DB  197,201,114,247,13                  ; vpslld        $0xd,%xmm7,%xmm6
8109  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
8110  DB  197,236,86,213                      ; vorps         %ymm5,%ymm2,%ymm2
8111  DB  196,227,125,25,213,1                ; vextractf128  $0x1,%ymm2,%xmm5
8112  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
8113  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8114  DB  196,227,109,24,213,1                ; vinsertf128   $0x1,%xmm5,%ymm2,%ymm2
8115  DB  196,195,109,74,214,64               ; vblendvps     %ymm4,%ymm14,%ymm2,%ymm2
8116  DB  196,193,57,109,225                  ; vpunpckhqdq   %xmm9,%xmm8,%xmm4
8117  DB  196,193,89,105,234                  ; vpunpckhwd    %xmm10,%xmm4,%xmm5
8118  DB  196,226,121,51,228                  ; vpmovzxwd     %xmm4,%xmm4
8119  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
8120  DB  196,193,92,84,236                   ; vandps        %ymm12,%ymm4,%ymm5
8121  DB  197,220,87,229                      ; vxorps        %ymm5,%ymm4,%ymm4
8122  DB  196,227,125,25,230,1                ; vextractf128  $0x1,%ymm4,%xmm6
8123  DB  196,193,72,87,251                   ; vxorps        %xmm11,%xmm6,%xmm7
8124  DB  197,17,102,199                      ; vpcmpgtd      %xmm7,%xmm13,%xmm8
8125  DB  196,193,88,87,251                   ; vxorps        %xmm11,%xmm4,%xmm7
8126  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
8127  DB  196,195,69,24,248,1                 ; vinsertf128   $0x1,%xmm8,%ymm7,%ymm7
8128  DB  197,185,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm8
8129  DB  196,227,125,25,237,1                ; vextractf128  $0x1,%ymm5,%xmm5
8130  DB  197,209,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm5
8131  DB  196,227,61,24,237,1                 ; vinsertf128   $0x1,%xmm5,%ymm8,%ymm5
8132  DB  197,217,114,244,13                  ; vpslld        $0xd,%xmm4,%xmm4
8133  DB  197,201,114,246,13                  ; vpslld        $0xd,%xmm6,%xmm6
8134  DB  196,227,93,24,230,1                 ; vinsertf128   $0x1,%xmm6,%ymm4,%ymm4
8135  DB  197,220,86,229                      ; vorps         %ymm5,%ymm4,%ymm4
8136  DB  196,227,125,25,229,1                ; vextractf128  $0x1,%ymm4,%xmm5
8137  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
8138  DB  197,217,254,219                     ; vpaddd        %xmm3,%xmm4,%xmm3
8139  DB  196,227,101,24,221,1                ; vinsertf128   $0x1,%xmm5,%ymm3,%ymm3
8140  DB  196,195,101,74,222,112              ; vblendvps     %ymm7,%ymm14,%ymm3,%ymm3
8141  DB  72,173                              ; lods          %ds:(%rsi),%rax
8142  DB  197,252,16,36,36                    ; vmovups       (%rsp),%ymm4
8143  DB  197,252,16,108,36,32                ; vmovups       0x20(%rsp),%ymm5
8144  DB  197,252,16,116,36,64                ; vmovups       0x40(%rsp),%ymm6
8145  DB  197,252,16,124,36,96                ; vmovups       0x60(%rsp),%ymm7
8146  DB  72,129,196,152,0,0,0                ; add           $0x98,%rsp
8147  DB  255,224                             ; jmpq          *%rax
8148  DB  197,123,16,4,248                    ; vmovsd        (%rax,%rdi,8),%xmm8
8149  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
8150  DB  72,131,249,1                        ; cmp           $0x1,%rcx
8151  DB  116,79                              ; je            3eb2 <_sk_load_f16_avx+0x31a>
8152  DB  197,57,22,68,248,8                  ; vmovhpd       0x8(%rax,%rdi,8),%xmm8,%xmm8
8153  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8154  DB  114,67                              ; jb            3eb2 <_sk_load_f16_avx+0x31a>
8155  DB  197,251,16,84,248,16                ; vmovsd        0x10(%rax,%rdi,8),%xmm2
8156  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8157  DB  116,68                              ; je            3ebf <_sk_load_f16_avx+0x327>
8158  DB  197,233,22,84,248,24                ; vmovhpd       0x18(%rax,%rdi,8),%xmm2,%xmm2
8159  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8160  DB  114,56                              ; jb            3ebf <_sk_load_f16_avx+0x327>
8161  DB  197,251,16,76,248,32                ; vmovsd        0x20(%rax,%rdi,8),%xmm1
8162  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8163  DB  15,132,68,253,255,255               ; je            3bdb <_sk_load_f16_avx+0x43>
8164  DB  197,241,22,76,248,40                ; vmovhpd       0x28(%rax,%rdi,8),%xmm1,%xmm1
8165  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8166  DB  15,130,52,253,255,255               ; jb            3bdb <_sk_load_f16_avx+0x43>
8167  DB  197,122,126,76,248,48               ; vmovq         0x30(%rax,%rdi,8),%xmm9
8168  DB  233,41,253,255,255                  ; jmpq          3bdb <_sk_load_f16_avx+0x43>
8169  DB  197,241,87,201                      ; vxorpd        %xmm1,%xmm1,%xmm1
8170  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
8171  DB  233,28,253,255,255                  ; jmpq          3bdb <_sk_load_f16_avx+0x43>
8172  DB  197,241,87,201                      ; vxorpd        %xmm1,%xmm1,%xmm1
8173  DB  233,19,253,255,255                  ; jmpq          3bdb <_sk_load_f16_avx+0x43>
8174
8175PUBLIC _sk_gather_f16_avx
8176_sk_gather_f16_avx LABEL PROC
8177  DB  65,87                               ; push          %r15
8178  DB  65,86                               ; push          %r14
8179  DB  65,84                               ; push          %r12
8180  DB  83                                  ; push          %rbx
8181  DB  72,129,236,152,0,0,0                ; sub           $0x98,%rsp
8182  DB  197,252,17,124,36,96                ; vmovups       %ymm7,0x60(%rsp)
8183  DB  197,252,17,116,36,64                ; vmovups       %ymm6,0x40(%rsp)
8184  DB  197,252,17,108,36,32                ; vmovups       %ymm5,0x20(%rsp)
8185  DB  197,254,127,36,36                   ; vmovdqu       %ymm4,(%rsp)
8186  DB  72,173                              ; lods          %ds:(%rsi),%rax
8187  DB  76,139,0                            ; mov           (%rax),%r8
8188  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
8189  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
8190  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
8191  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
8192  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
8193  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
8194  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
8195  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
8196  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8197  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
8198  DB  65,137,193                          ; mov           %eax,%r9d
8199  DB  72,193,232,32                       ; shr           $0x20,%rax
8200  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
8201  DB  69,137,211                          ; mov           %r10d,%r11d
8202  DB  73,193,234,32                       ; shr           $0x20,%r10
8203  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8204  DB  196,225,249,126,195                 ; vmovq         %xmm0,%rbx
8205  DB  65,137,222                          ; mov           %ebx,%r14d
8206  DB  196,195,249,22,199,1                ; vpextrq       $0x1,%xmm0,%r15
8207  DB  69,137,252                          ; mov           %r15d,%r12d
8208  DB  73,193,239,32                       ; shr           $0x20,%r15
8209  DB  72,193,235,32                       ; shr           $0x20,%rbx
8210  DB  196,193,122,126,4,216               ; vmovq         (%r8,%rbx,8),%xmm0
8211  DB  196,129,122,126,12,240              ; vmovq         (%r8,%r14,8),%xmm1
8212  DB  197,113,108,200                     ; vpunpcklqdq   %xmm0,%xmm1,%xmm9
8213  DB  196,129,122,126,12,248              ; vmovq         (%r8,%r15,8),%xmm1
8214  DB  196,129,122,126,20,224              ; vmovq         (%r8,%r12,8),%xmm2
8215  DB  197,233,108,201                     ; vpunpcklqdq   %xmm1,%xmm2,%xmm1
8216  DB  196,129,122,126,20,208              ; vmovq         (%r8,%r10,8),%xmm2
8217  DB  196,129,122,126,28,216              ; vmovq         (%r8,%r11,8),%xmm3
8218  DB  197,97,108,210                      ; vpunpcklqdq   %xmm2,%xmm3,%xmm10
8219  DB  196,65,122,126,4,192                ; vmovq         (%r8,%rax,8),%xmm8
8220  DB  196,129,122,126,28,200              ; vmovq         (%r8,%r9,8),%xmm3
8221  DB  196,193,97,108,216                  ; vpunpcklqdq   %xmm8,%xmm3,%xmm3
8222  DB  197,177,97,193                      ; vpunpcklwd    %xmm1,%xmm9,%xmm0
8223  DB  197,177,105,201                     ; vpunpckhwd    %xmm1,%xmm9,%xmm1
8224  DB  197,169,97,211                      ; vpunpcklwd    %xmm3,%xmm10,%xmm2
8225  DB  197,169,105,219                     ; vpunpckhwd    %xmm3,%xmm10,%xmm3
8226  DB  197,121,97,249                      ; vpunpcklwd    %xmm1,%xmm0,%xmm15
8227  DB  197,121,105,193                     ; vpunpckhwd    %xmm1,%xmm0,%xmm8
8228  DB  197,233,97,203                      ; vpunpcklwd    %xmm3,%xmm2,%xmm1
8229  DB  197,105,105,203                     ; vpunpckhwd    %xmm3,%xmm2,%xmm9
8230  DB  197,129,108,193                     ; vpunpcklqdq   %xmm1,%xmm15,%xmm0
8231  DB  197,233,239,210                     ; vpxor         %xmm2,%xmm2,%xmm2
8232  DB  197,249,105,210                     ; vpunpckhwd    %xmm2,%xmm0,%xmm2
8233  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8234  DB  196,227,125,24,194,1                ; vinsertf128   $0x1,%xmm2,%ymm0,%ymm0
8235  DB  196,98,125,24,37,75,25,0,0          ; vbroadcastss  0x194b(%rip),%ymm12        # 5920 <_sk_callback_avx+0x3e9>
8236  DB  196,193,124,84,212                  ; vandps        %ymm12,%ymm0,%ymm2
8237  DB  197,252,87,194                      ; vxorps        %ymm2,%ymm0,%ymm0
8238  DB  196,195,125,25,198,1                ; vextractf128  $0x1,%ymm0,%xmm14
8239  DB  196,98,121,24,29,55,25,0,0          ; vbroadcastss  0x1937(%rip),%xmm11        # 5924 <_sk_callback_avx+0x3ed>
8240  DB  196,193,8,87,219                    ; vxorps        %xmm11,%xmm14,%xmm3
8241  DB  196,98,121,24,45,45,25,0,0          ; vbroadcastss  0x192d(%rip),%xmm13        # 5928 <_sk_callback_avx+0x3f1>
8242  DB  197,145,102,219                     ; vpcmpgtd      %xmm3,%xmm13,%xmm3
8243  DB  196,65,120,87,211                   ; vxorps        %xmm11,%xmm0,%xmm10
8244  DB  196,65,17,102,210                   ; vpcmpgtd      %xmm10,%xmm13,%xmm10
8245  DB  196,99,45,24,211,1                  ; vinsertf128   $0x1,%xmm3,%ymm10,%ymm10
8246  DB  197,225,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm3
8247  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
8248  DB  197,233,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm2
8249  DB  196,227,101,24,210,1                ; vinsertf128   $0x1,%xmm2,%ymm3,%ymm2
8250  DB  197,249,114,240,13                  ; vpslld        $0xd,%xmm0,%xmm0
8251  DB  196,193,97,114,246,13               ; vpslld        $0xd,%xmm14,%xmm3
8252  DB  196,227,125,24,195,1                ; vinsertf128   $0x1,%xmm3,%ymm0,%ymm0
8253  DB  197,252,86,194                      ; vorps         %ymm2,%ymm0,%ymm0
8254  DB  196,227,125,25,194,1                ; vextractf128  $0x1,%ymm0,%xmm2
8255  DB  196,226,121,24,29,227,24,0,0        ; vbroadcastss  0x18e3(%rip),%xmm3        # 592c <_sk_callback_avx+0x3f5>
8256  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8257  DB  197,249,254,195                     ; vpaddd        %xmm3,%xmm0,%xmm0
8258  DB  196,227,125,24,194,1                ; vinsertf128   $0x1,%xmm2,%ymm0,%ymm0
8259  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
8260  DB  196,195,125,74,198,160              ; vblendvps     %ymm10,%ymm14,%ymm0,%ymm0
8261  DB  197,129,109,201                     ; vpunpckhqdq   %xmm1,%xmm15,%xmm1
8262  DB  197,217,239,228                     ; vpxor         %xmm4,%xmm4,%xmm4
8263  DB  197,241,105,212                     ; vpunpckhwd    %xmm4,%xmm1,%xmm2
8264  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
8265  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8266  DB  196,193,116,84,212                  ; vandps        %ymm12,%ymm1,%ymm2
8267  DB  197,244,87,202                      ; vxorps        %ymm2,%ymm1,%ymm1
8268  DB  196,195,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm10
8269  DB  196,193,40,87,251                   ; vxorps        %xmm11,%xmm10,%xmm7
8270  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
8271  DB  196,193,112,87,243                  ; vxorps        %xmm11,%xmm1,%xmm6
8272  DB  197,145,102,246                     ; vpcmpgtd      %xmm6,%xmm13,%xmm6
8273  DB  196,227,77,24,247,1                 ; vinsertf128   $0x1,%xmm7,%ymm6,%ymm6
8274  DB  197,193,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm7
8275  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
8276  DB  197,233,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm2
8277  DB  196,227,69,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm7,%ymm2
8278  DB  197,241,114,241,13                  ; vpslld        $0xd,%xmm1,%xmm1
8279  DB  196,193,65,114,242,13               ; vpslld        $0xd,%xmm10,%xmm7
8280  DB  196,227,117,24,207,1                ; vinsertf128   $0x1,%xmm7,%ymm1,%ymm1
8281  DB  197,244,86,202                      ; vorps         %ymm2,%ymm1,%ymm1
8282  DB  196,227,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm2
8283  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8284  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
8285  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8286  DB  196,195,117,74,206,96               ; vblendvps     %ymm6,%ymm14,%ymm1,%ymm1
8287  DB  196,193,57,108,209                  ; vpunpcklqdq   %xmm9,%xmm8,%xmm2
8288  DB  197,233,105,244                     ; vpunpckhwd    %xmm4,%xmm2,%xmm6
8289  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
8290  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
8291  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
8292  DB  196,193,108,84,244                  ; vandps        %ymm12,%ymm2,%ymm6
8293  DB  197,236,87,214                      ; vxorps        %ymm6,%ymm2,%ymm2
8294  DB  196,227,125,25,215,1                ; vextractf128  $0x1,%ymm2,%xmm7
8295  DB  196,193,64,87,235                   ; vxorps        %xmm11,%xmm7,%xmm5
8296  DB  197,145,102,237                     ; vpcmpgtd      %xmm5,%xmm13,%xmm5
8297  DB  196,193,104,87,227                  ; vxorps        %xmm11,%xmm2,%xmm4
8298  DB  197,145,102,228                     ; vpcmpgtd      %xmm4,%xmm13,%xmm4
8299  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
8300  DB  197,209,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm5
8301  DB  196,227,125,25,246,1                ; vextractf128  $0x1,%ymm6,%xmm6
8302  DB  197,201,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm6
8303  DB  196,227,85,24,238,1                 ; vinsertf128   $0x1,%xmm6,%ymm5,%ymm5
8304  DB  197,233,114,242,13                  ; vpslld        $0xd,%xmm2,%xmm2
8305  DB  197,201,114,247,13                  ; vpslld        $0xd,%xmm7,%xmm6
8306  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
8307  DB  197,236,86,213                      ; vorps         %ymm5,%ymm2,%ymm2
8308  DB  196,227,125,25,213,1                ; vextractf128  $0x1,%ymm2,%xmm5
8309  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
8310  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8311  DB  196,227,109,24,213,1                ; vinsertf128   $0x1,%xmm5,%ymm2,%ymm2
8312  DB  196,195,109,74,214,64               ; vblendvps     %ymm4,%ymm14,%ymm2,%ymm2
8313  DB  196,193,57,109,225                  ; vpunpckhqdq   %xmm9,%xmm8,%xmm4
8314  DB  196,193,89,105,234                  ; vpunpckhwd    %xmm10,%xmm4,%xmm5
8315  DB  196,226,121,51,228                  ; vpmovzxwd     %xmm4,%xmm4
8316  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
8317  DB  196,193,92,84,236                   ; vandps        %ymm12,%ymm4,%ymm5
8318  DB  197,220,87,229                      ; vxorps        %ymm5,%ymm4,%ymm4
8319  DB  196,227,125,25,230,1                ; vextractf128  $0x1,%ymm4,%xmm6
8320  DB  196,193,72,87,251                   ; vxorps        %xmm11,%xmm6,%xmm7
8321  DB  197,17,102,199                      ; vpcmpgtd      %xmm7,%xmm13,%xmm8
8322  DB  196,193,88,87,251                   ; vxorps        %xmm11,%xmm4,%xmm7
8323  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
8324  DB  196,195,69,24,248,1                 ; vinsertf128   $0x1,%xmm8,%ymm7,%ymm7
8325  DB  197,185,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm8
8326  DB  196,227,125,25,237,1                ; vextractf128  $0x1,%ymm5,%xmm5
8327  DB  197,209,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm5
8328  DB  196,227,61,24,237,1                 ; vinsertf128   $0x1,%xmm5,%ymm8,%ymm5
8329  DB  197,217,114,244,13                  ; vpslld        $0xd,%xmm4,%xmm4
8330  DB  197,201,114,246,13                  ; vpslld        $0xd,%xmm6,%xmm6
8331  DB  196,227,93,24,230,1                 ; vinsertf128   $0x1,%xmm6,%ymm4,%ymm4
8332  DB  197,220,86,229                      ; vorps         %ymm5,%ymm4,%ymm4
8333  DB  196,227,125,25,229,1                ; vextractf128  $0x1,%ymm4,%xmm5
8334  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
8335  DB  197,217,254,219                     ; vpaddd        %xmm3,%xmm4,%xmm3
8336  DB  196,227,101,24,221,1                ; vinsertf128   $0x1,%xmm5,%ymm3,%ymm3
8337  DB  196,195,101,74,222,112              ; vblendvps     %ymm7,%ymm14,%ymm3,%ymm3
8338  DB  72,173                              ; lods          %ds:(%rsi),%rax
8339  DB  197,252,16,36,36                    ; vmovups       (%rsp),%ymm4
8340  DB  197,252,16,108,36,32                ; vmovups       0x20(%rsp),%ymm5
8341  DB  197,252,16,116,36,64                ; vmovups       0x40(%rsp),%ymm6
8342  DB  197,252,16,124,36,96                ; vmovups       0x60(%rsp),%ymm7
8343  DB  72,129,196,152,0,0,0                ; add           $0x98,%rsp
8344  DB  91                                  ; pop           %rbx
8345  DB  65,92                               ; pop           %r12
8346  DB  65,94                               ; pop           %r14
8347  DB  65,95                               ; pop           %r15
8348  DB  255,224                             ; jmpq          *%rax
8349
8350PUBLIC _sk_store_f16_avx
8351_sk_store_f16_avx LABEL PROC
8352  DB  72,129,236,216,0,0,0                ; sub           $0xd8,%rsp
8353  DB  197,252,17,188,36,160,0,0,0         ; vmovups       %ymm7,0xa0(%rsp)
8354  DB  197,252,17,180,36,128,0,0,0         ; vmovups       %ymm6,0x80(%rsp)
8355  DB  197,252,17,108,36,96                ; vmovups       %ymm5,0x60(%rsp)
8356  DB  197,252,17,100,36,64                ; vmovups       %ymm4,0x40(%rsp)
8357  DB  196,98,125,24,13,240,22,0,0         ; vbroadcastss  0x16f0(%rip),%ymm9        # 5930 <_sk_callback_avx+0x3f9>
8358  DB  196,65,124,84,209                   ; vandps        %ymm9,%ymm0,%ymm10
8359  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
8360  DB  196,65,124,87,218                   ; vxorps        %ymm10,%ymm0,%ymm11
8361  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
8362  DB  196,98,121,24,5,214,22,0,0          ; vbroadcastss  0x16d6(%rip),%xmm8        # 5934 <_sk_callback_avx+0x3fd>
8363  DB  196,65,57,102,236                   ; vpcmpgtd      %xmm12,%xmm8,%xmm13
8364  DB  196,65,57,102,243                   ; vpcmpgtd      %xmm11,%xmm8,%xmm14
8365  DB  196,67,13,24,237,1                  ; vinsertf128   $0x1,%xmm13,%ymm14,%ymm13
8366  DB  196,193,9,114,210,16                ; vpsrld        $0x10,%xmm10,%xmm14
8367  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
8368  DB  196,193,41,114,210,16               ; vpsrld        $0x10,%xmm10,%xmm10
8369  DB  196,67,13,24,242,1                  ; vinsertf128   $0x1,%xmm10,%ymm14,%ymm14
8370  DB  196,193,33,114,211,13               ; vpsrld        $0xd,%xmm11,%xmm11
8371  DB  196,193,25,114,212,13               ; vpsrld        $0xd,%xmm12,%xmm12
8372  DB  196,98,125,24,21,157,22,0,0         ; vbroadcastss  0x169d(%rip),%ymm10        # 5938 <_sk_callback_avx+0x401>
8373  DB  196,65,12,86,242                    ; vorps         %ymm10,%ymm14,%ymm14
8374  DB  196,67,125,25,247,1                 ; vextractf128  $0x1,%ymm14,%xmm15
8375  DB  196,65,1,254,228                    ; vpaddd        %xmm12,%xmm15,%xmm12
8376  DB  196,65,9,254,219                    ; vpaddd        %xmm11,%xmm14,%xmm11
8377  DB  196,67,37,24,228,1                  ; vinsertf128   $0x1,%xmm12,%ymm11,%ymm12
8378  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
8379  DB  196,99,29,74,224,208                ; vblendvps     %ymm13,%ymm0,%ymm12,%ymm12
8380  DB  196,65,116,84,233                   ; vandps        %ymm9,%ymm1,%ymm13
8381  DB  197,252,17,76,36,32                 ; vmovups       %ymm1,0x20(%rsp)
8382  DB  196,65,116,87,245                   ; vxorps        %ymm13,%ymm1,%ymm14
8383  DB  196,67,125,25,247,1                 ; vextractf128  $0x1,%ymm14,%xmm15
8384  DB  196,193,57,102,255                  ; vpcmpgtd      %xmm15,%xmm8,%xmm7
8385  DB  196,65,57,102,222                   ; vpcmpgtd      %xmm14,%xmm8,%xmm11
8386  DB  196,227,37,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm11,%ymm7
8387  DB  196,193,33,114,213,16               ; vpsrld        $0x10,%xmm13,%xmm11
8388  DB  196,99,125,25,238,1                 ; vextractf128  $0x1,%ymm13,%xmm6
8389  DB  197,201,114,214,16                  ; vpsrld        $0x10,%xmm6,%xmm6
8390  DB  196,227,37,24,246,1                 ; vinsertf128   $0x1,%xmm6,%ymm11,%ymm6
8391  DB  196,193,33,114,215,13               ; vpsrld        $0xd,%xmm15,%xmm11
8392  DB  196,193,76,86,242                   ; vorps         %ymm10,%ymm6,%ymm6
8393  DB  196,227,125,25,245,1                ; vextractf128  $0x1,%ymm6,%xmm5
8394  DB  196,193,81,254,235                  ; vpaddd        %xmm11,%xmm5,%xmm5
8395  DB  196,193,89,114,214,13               ; vpsrld        $0xd,%xmm14,%xmm4
8396  DB  197,201,254,228                     ; vpaddd        %xmm4,%xmm6,%xmm4
8397  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
8398  DB  196,99,93,74,232,112                ; vblendvps     %ymm7,%ymm0,%ymm4,%ymm13
8399  DB  196,193,108,84,225                  ; vandps        %ymm9,%ymm2,%ymm4
8400  DB  197,236,87,236                      ; vxorps        %ymm4,%ymm2,%ymm5
8401  DB  196,227,125,25,238,1                ; vextractf128  $0x1,%ymm5,%xmm6
8402  DB  197,185,102,254                     ; vpcmpgtd      %xmm6,%xmm8,%xmm7
8403  DB  197,57,102,221                      ; vpcmpgtd      %xmm5,%xmm8,%xmm11
8404  DB  196,227,37,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm11,%ymm7
8405  DB  197,161,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm11
8406  DB  196,227,125,25,228,1                ; vextractf128  $0x1,%ymm4,%xmm4
8407  DB  197,217,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm4
8408  DB  196,227,37,24,228,1                 ; vinsertf128   $0x1,%xmm4,%ymm11,%ymm4
8409  DB  197,201,114,214,13                  ; vpsrld        $0xd,%xmm6,%xmm6
8410  DB  196,193,92,86,226                   ; vorps         %ymm10,%ymm4,%ymm4
8411  DB  196,227,125,25,225,1                ; vextractf128  $0x1,%ymm4,%xmm1
8412  DB  197,241,254,206                     ; vpaddd        %xmm6,%xmm1,%xmm1
8413  DB  197,209,114,213,13                  ; vpsrld        $0xd,%xmm5,%xmm5
8414  DB  197,217,254,229                     ; vpaddd        %xmm5,%xmm4,%xmm4
8415  DB  196,227,93,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm4,%ymm1
8416  DB  196,99,117,74,216,112               ; vblendvps     %ymm7,%ymm0,%ymm1,%ymm11
8417  DB  196,193,100,84,225                  ; vandps        %ymm9,%ymm3,%ymm4
8418  DB  197,228,87,236                      ; vxorps        %ymm4,%ymm3,%ymm5
8419  DB  196,227,125,25,238,1                ; vextractf128  $0x1,%ymm5,%xmm6
8420  DB  197,185,102,254                     ; vpcmpgtd      %xmm6,%xmm8,%xmm7
8421  DB  197,57,102,197                      ; vpcmpgtd      %xmm5,%xmm8,%xmm8
8422  DB  196,227,61,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm8,%ymm7
8423  DB  197,185,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm8
8424  DB  196,227,125,25,228,1                ; vextractf128  $0x1,%ymm4,%xmm4
8425  DB  197,217,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm4
8426  DB  196,227,61,24,228,1                 ; vinsertf128   $0x1,%xmm4,%ymm8,%ymm4
8427  DB  196,193,92,86,226                   ; vorps         %ymm10,%ymm4,%ymm4
8428  DB  197,201,114,214,13                  ; vpsrld        $0xd,%xmm6,%xmm6
8429  DB  196,227,125,25,225,1                ; vextractf128  $0x1,%ymm4,%xmm1
8430  DB  197,241,254,206                     ; vpaddd        %xmm6,%xmm1,%xmm1
8431  DB  197,209,114,213,13                  ; vpsrld        $0xd,%xmm5,%xmm5
8432  DB  197,217,254,229                     ; vpaddd        %xmm5,%xmm4,%xmm4
8433  DB  196,227,93,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm4,%ymm1
8434  DB  196,227,117,74,200,112              ; vblendvps     %ymm7,%ymm0,%ymm1,%ymm1
8435  DB  196,99,125,25,224,1                 ; vextractf128  $0x1,%ymm12,%xmm0
8436  DB  196,226,25,43,192                   ; vpackusdw     %xmm0,%xmm12,%xmm0
8437  DB  196,99,125,25,236,1                 ; vextractf128  $0x1,%ymm13,%xmm4
8438  DB  196,226,17,43,228                   ; vpackusdw     %xmm4,%xmm13,%xmm4
8439  DB  196,99,125,25,221,1                 ; vextractf128  $0x1,%ymm11,%xmm5
8440  DB  196,226,33,43,245                   ; vpackusdw     %xmm5,%xmm11,%xmm6
8441  DB  196,227,125,25,205,1                ; vextractf128  $0x1,%ymm1,%xmm5
8442  DB  196,226,113,43,205                  ; vpackusdw     %xmm5,%xmm1,%xmm1
8443  DB  197,249,97,236                      ; vpunpcklwd    %xmm4,%xmm0,%xmm5
8444  DB  197,249,105,196                     ; vpunpckhwd    %xmm4,%xmm0,%xmm0
8445  DB  197,201,97,225                      ; vpunpcklwd    %xmm1,%xmm6,%xmm4
8446  DB  197,201,105,201                     ; vpunpckhwd    %xmm1,%xmm6,%xmm1
8447  DB  197,81,98,220                       ; vpunpckldq    %xmm4,%xmm5,%xmm11
8448  DB  197,81,106,212                      ; vpunpckhdq    %xmm4,%xmm5,%xmm10
8449  DB  197,121,98,201                      ; vpunpckldq    %xmm1,%xmm0,%xmm9
8450  DB  197,121,106,193                     ; vpunpckhdq    %xmm1,%xmm0,%xmm8
8451  DB  72,173                              ; lods          %ds:(%rsi),%rax
8452  DB  72,139,0                            ; mov           (%rax),%rax
8453  DB  72,133,201                          ; test          %rcx,%rcx
8454  DB  117,75                              ; jne           4482 <_sk_store_f16_avx+0x270>
8455  DB  197,120,17,28,248                   ; vmovups       %xmm11,(%rax,%rdi,8)
8456  DB  197,120,17,84,248,16                ; vmovups       %xmm10,0x10(%rax,%rdi,8)
8457  DB  197,120,17,76,248,32                ; vmovups       %xmm9,0x20(%rax,%rdi,8)
8458  DB  197,122,127,68,248,48               ; vmovdqu       %xmm8,0x30(%rax,%rdi,8)
8459  DB  72,173                              ; lods          %ds:(%rsi),%rax
8460  DB  197,252,16,4,36                     ; vmovups       (%rsp),%ymm0
8461  DB  197,252,16,76,36,32                 ; vmovups       0x20(%rsp),%ymm1
8462  DB  197,252,16,100,36,64                ; vmovups       0x40(%rsp),%ymm4
8463  DB  197,252,16,108,36,96                ; vmovups       0x60(%rsp),%ymm5
8464  DB  197,252,16,180,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm6
8465  DB  197,252,16,188,36,160,0,0,0         ; vmovups       0xa0(%rsp),%ymm7
8466  DB  72,129,196,216,0,0,0                ; add           $0xd8,%rsp
8467  DB  255,224                             ; jmpq          *%rax
8468  DB  197,121,214,28,248                  ; vmovq         %xmm11,(%rax,%rdi,8)
8469  DB  72,131,249,1                        ; cmp           $0x1,%rcx
8470  DB  116,193                             ; je            444e <_sk_store_f16_avx+0x23c>
8471  DB  197,121,23,92,248,8                 ; vmovhpd       %xmm11,0x8(%rax,%rdi,8)
8472  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8473  DB  114,181                             ; jb            444e <_sk_store_f16_avx+0x23c>
8474  DB  197,121,214,84,248,16               ; vmovq         %xmm10,0x10(%rax,%rdi,8)
8475  DB  116,173                             ; je            444e <_sk_store_f16_avx+0x23c>
8476  DB  197,121,23,84,248,24                ; vmovhpd       %xmm10,0x18(%rax,%rdi,8)
8477  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8478  DB  114,161                             ; jb            444e <_sk_store_f16_avx+0x23c>
8479  DB  197,121,214,76,248,32               ; vmovq         %xmm9,0x20(%rax,%rdi,8)
8480  DB  116,153                             ; je            444e <_sk_store_f16_avx+0x23c>
8481  DB  197,121,23,76,248,40                ; vmovhpd       %xmm9,0x28(%rax,%rdi,8)
8482  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8483  DB  114,141                             ; jb            444e <_sk_store_f16_avx+0x23c>
8484  DB  197,121,214,68,248,48               ; vmovq         %xmm8,0x30(%rax,%rdi,8)
8485  DB  235,133                             ; jmp           444e <_sk_store_f16_avx+0x23c>
8486
8487PUBLIC _sk_load_u16_be_avx
8488_sk_load_u16_be_avx LABEL PROC
8489  DB  72,173                              ; lods          %ds:(%rsi),%rax
8490  DB  76,139,0                            ; mov           (%rax),%r8
8491  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
8492  DB  72,133,201                          ; test          %rcx,%rcx
8493  DB  15,133,253,0,0,0                    ; jne           45dc <_sk_load_u16_be_avx+0x113>
8494  DB  196,65,121,16,4,64                  ; vmovupd       (%r8,%rax,2),%xmm8
8495  DB  196,193,121,16,84,64,16             ; vmovupd       0x10(%r8,%rax,2),%xmm2
8496  DB  196,193,121,16,92,64,32             ; vmovupd       0x20(%r8,%rax,2),%xmm3
8497  DB  196,65,122,111,76,64,48             ; vmovdqu       0x30(%r8,%rax,2),%xmm9
8498  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
8499  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
8500  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
8501  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
8502  DB  197,121,97,202                      ; vpunpcklwd    %xmm2,%xmm0,%xmm9
8503  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
8504  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
8505  DB  197,113,105,227                     ; vpunpckhwd    %xmm3,%xmm1,%xmm12
8506  DB  197,177,108,194                     ; vpunpcklqdq   %xmm2,%xmm9,%xmm0
8507  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
8508  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
8509  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
8510  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
8511  DB  196,193,121,105,202                 ; vpunpckhwd    %xmm10,%xmm0,%xmm1
8512  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8513  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
8514  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8515  DB  196,98,125,24,29,236,19,0,0         ; vbroadcastss  0x13ec(%rip),%ymm11        # 593c <_sk_callback_avx+0x405>
8516  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
8517  DB  197,177,109,202                     ; vpunpckhqdq   %xmm2,%xmm9,%xmm1
8518  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
8519  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
8520  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
8521  DB  196,193,113,105,210                 ; vpunpckhwd    %xmm10,%xmm1,%xmm2
8522  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
8523  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8524  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8525  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
8526  DB  196,193,57,108,212                  ; vpunpcklqdq   %xmm12,%xmm8,%xmm2
8527  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
8528  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
8529  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
8530  DB  196,193,105,105,218                 ; vpunpckhwd    %xmm10,%xmm2,%xmm3
8531  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
8532  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
8533  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8534  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
8535  DB  196,193,57,109,220                  ; vpunpckhqdq   %xmm12,%xmm8,%xmm3
8536  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
8537  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
8538  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
8539  DB  196,65,97,105,194                   ; vpunpckhwd    %xmm10,%xmm3,%xmm8
8540  DB  196,226,121,51,219                  ; vpmovzxwd     %xmm3,%xmm3
8541  DB  196,195,101,24,216,1                ; vinsertf128   $0x1,%xmm8,%ymm3,%ymm3
8542  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
8543  DB  196,193,100,89,219                  ; vmulps        %ymm11,%ymm3,%ymm3
8544  DB  72,173                              ; lods          %ds:(%rsi),%rax
8545  DB  255,224                             ; jmpq          *%rax
8546  DB  196,65,123,16,4,64                  ; vmovsd        (%r8,%rax,2),%xmm8
8547  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
8548  DB  72,131,249,1                        ; cmp           $0x1,%rcx
8549  DB  116,85                              ; je            4642 <_sk_load_u16_be_avx+0x179>
8550  DB  196,65,57,22,68,64,8                ; vmovhpd       0x8(%r8,%rax,2),%xmm8,%xmm8
8551  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8552  DB  114,72                              ; jb            4642 <_sk_load_u16_be_avx+0x179>
8553  DB  196,193,123,16,84,64,16             ; vmovsd        0x10(%r8,%rax,2),%xmm2
8554  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8555  DB  116,72                              ; je            464f <_sk_load_u16_be_avx+0x186>
8556  DB  196,193,105,22,84,64,24             ; vmovhpd       0x18(%r8,%rax,2),%xmm2,%xmm2
8557  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8558  DB  114,59                              ; jb            464f <_sk_load_u16_be_avx+0x186>
8559  DB  196,193,123,16,92,64,32             ; vmovsd        0x20(%r8,%rax,2),%xmm3
8560  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8561  DB  15,132,213,254,255,255              ; je            44fa <_sk_load_u16_be_avx+0x31>
8562  DB  196,193,97,22,92,64,40              ; vmovhpd       0x28(%r8,%rax,2),%xmm3,%xmm3
8563  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8564  DB  15,130,196,254,255,255              ; jb            44fa <_sk_load_u16_be_avx+0x31>
8565  DB  196,65,122,126,76,64,48             ; vmovq         0x30(%r8,%rax,2),%xmm9
8566  DB  233,184,254,255,255                 ; jmpq          44fa <_sk_load_u16_be_avx+0x31>
8567  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
8568  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
8569  DB  233,171,254,255,255                 ; jmpq          44fa <_sk_load_u16_be_avx+0x31>
8570  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
8571  DB  233,162,254,255,255                 ; jmpq          44fa <_sk_load_u16_be_avx+0x31>
8572
8573PUBLIC _sk_load_rgb_u16_be_avx
8574_sk_load_rgb_u16_be_avx LABEL PROC
8575  DB  72,173                              ; lods          %ds:(%rsi),%rax
8576  DB  76,139,0                            ; mov           (%rax),%r8
8577  DB  72,141,4,127                        ; lea           (%rdi,%rdi,2),%rax
8578  DB  72,133,201                          ; test          %rcx,%rcx
8579  DB  15,133,243,0,0,0                    ; jne           475d <_sk_load_rgb_u16_be_avx+0x105>
8580  DB  196,193,122,111,4,64                ; vmovdqu       (%r8,%rax,2),%xmm0
8581  DB  196,193,122,111,84,64,12            ; vmovdqu       0xc(%r8,%rax,2),%xmm2
8582  DB  196,193,122,111,76,64,24            ; vmovdqu       0x18(%r8,%rax,2),%xmm1
8583  DB  196,193,122,111,92,64,32            ; vmovdqu       0x20(%r8,%rax,2),%xmm3
8584  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
8585  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
8586  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
8587  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
8588  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
8589  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
8590  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
8591  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
8592  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
8593  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
8594  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
8595  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
8596  DB  197,113,105,211                     ; vpunpckhwd    %xmm3,%xmm1,%xmm10
8597  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
8598  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
8599  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
8600  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
8601  DB  196,65,25,239,228                   ; vpxor         %xmm12,%xmm12,%xmm12
8602  DB  196,193,121,105,204                 ; vpunpckhwd    %xmm12,%xmm0,%xmm1
8603  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8604  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
8605  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8606  DB  196,98,125,24,29,76,18,0,0          ; vbroadcastss  0x124c(%rip),%ymm11        # 5940 <_sk_callback_avx+0x409>
8607  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
8608  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
8609  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
8610  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
8611  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
8612  DB  196,193,113,105,212                 ; vpunpckhwd    %xmm12,%xmm1,%xmm2
8613  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
8614  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8615  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8616  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
8617  DB  196,193,49,108,210                  ; vpunpcklqdq   %xmm10,%xmm9,%xmm2
8618  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
8619  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
8620  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
8621  DB  196,193,105,105,220                 ; vpunpckhwd    %xmm12,%xmm2,%xmm3
8622  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
8623  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
8624  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8625  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
8626  DB  72,173                              ; lods          %ds:(%rsi),%rax
8627  DB  196,226,125,24,29,233,17,0,0        ; vbroadcastss  0x11e9(%rip),%ymm3        # 5944 <_sk_callback_avx+0x40d>
8628  DB  255,224                             ; jmpq          *%rax
8629  DB  196,193,121,110,4,64                ; vmovd         (%r8,%rax,2),%xmm0
8630  DB  196,193,121,196,68,64,4,2           ; vpinsrw       $0x2,0x4(%r8,%rax,2),%xmm0,%xmm0
8631  DB  72,131,249,1                        ; cmp           $0x1,%rcx
8632  DB  117,5                               ; jne           4776 <_sk_load_rgb_u16_be_avx+0x11e>
8633  DB  233,40,255,255,255                  ; jmpq          469e <_sk_load_rgb_u16_be_avx+0x46>
8634  DB  196,193,121,110,76,64,6             ; vmovd         0x6(%r8,%rax,2),%xmm1
8635  DB  196,65,113,196,68,64,10,2           ; vpinsrw       $0x2,0xa(%r8,%rax,2),%xmm1,%xmm8
8636  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8637  DB  114,26                              ; jb            47a5 <_sk_load_rgb_u16_be_avx+0x14d>
8638  DB  196,193,121,110,76,64,12            ; vmovd         0xc(%r8,%rax,2),%xmm1
8639  DB  196,193,113,196,84,64,16,2          ; vpinsrw       $0x2,0x10(%r8,%rax,2),%xmm1,%xmm2
8640  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8641  DB  117,10                              ; jne           47aa <_sk_load_rgb_u16_be_avx+0x152>
8642  DB  233,249,254,255,255                 ; jmpq          469e <_sk_load_rgb_u16_be_avx+0x46>
8643  DB  233,244,254,255,255                 ; jmpq          469e <_sk_load_rgb_u16_be_avx+0x46>
8644  DB  196,193,121,110,76,64,18            ; vmovd         0x12(%r8,%rax,2),%xmm1
8645  DB  196,65,113,196,76,64,22,2           ; vpinsrw       $0x2,0x16(%r8,%rax,2),%xmm1,%xmm9
8646  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8647  DB  114,26                              ; jb            47d9 <_sk_load_rgb_u16_be_avx+0x181>
8648  DB  196,193,121,110,76,64,24            ; vmovd         0x18(%r8,%rax,2),%xmm1
8649  DB  196,193,113,196,76,64,28,2          ; vpinsrw       $0x2,0x1c(%r8,%rax,2),%xmm1,%xmm1
8650  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8651  DB  117,10                              ; jne           47de <_sk_load_rgb_u16_be_avx+0x186>
8652  DB  233,197,254,255,255                 ; jmpq          469e <_sk_load_rgb_u16_be_avx+0x46>
8653  DB  233,192,254,255,255                 ; jmpq          469e <_sk_load_rgb_u16_be_avx+0x46>
8654  DB  196,193,121,110,92,64,30            ; vmovd         0x1e(%r8,%rax,2),%xmm3
8655  DB  196,65,97,196,92,64,34,2            ; vpinsrw       $0x2,0x22(%r8,%rax,2),%xmm3,%xmm11
8656  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8657  DB  114,20                              ; jb            4807 <_sk_load_rgb_u16_be_avx+0x1af>
8658  DB  196,193,121,110,92,64,36            ; vmovd         0x24(%r8,%rax,2),%xmm3
8659  DB  196,193,97,196,92,64,40,2           ; vpinsrw       $0x2,0x28(%r8,%rax,2),%xmm3,%xmm3
8660  DB  233,151,254,255,255                 ; jmpq          469e <_sk_load_rgb_u16_be_avx+0x46>
8661  DB  233,146,254,255,255                 ; jmpq          469e <_sk_load_rgb_u16_be_avx+0x46>
8662
8663PUBLIC _sk_store_u16_be_avx
8664_sk_store_u16_be_avx LABEL PROC
8665  DB  72,173                              ; lods          %ds:(%rsi),%rax
8666  DB  76,139,0                            ; mov           (%rax),%r8
8667  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
8668  DB  196,98,125,24,5,38,17,0,0           ; vbroadcastss  0x1126(%rip),%ymm8        # 5948 <_sk_callback_avx+0x411>
8669  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
8670  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
8671  DB  196,67,125,25,202,1                 ; vextractf128  $0x1,%ymm9,%xmm10
8672  DB  196,66,49,43,202                    ; vpackusdw     %xmm10,%xmm9,%xmm9
8673  DB  196,193,41,113,241,8                ; vpsllw        $0x8,%xmm9,%xmm10
8674  DB  196,193,49,113,209,8                ; vpsrlw        $0x8,%xmm9,%xmm9
8675  DB  196,65,41,235,201                   ; vpor          %xmm9,%xmm10,%xmm9
8676  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
8677  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
8678  DB  196,67,125,25,211,1                 ; vextractf128  $0x1,%ymm10,%xmm11
8679  DB  196,66,41,43,211                    ; vpackusdw     %xmm11,%xmm10,%xmm10
8680  DB  196,193,33,113,242,8                ; vpsllw        $0x8,%xmm10,%xmm11
8681  DB  196,193,41,113,210,8                ; vpsrlw        $0x8,%xmm10,%xmm10
8682  DB  196,65,33,235,210                   ; vpor          %xmm10,%xmm11,%xmm10
8683  DB  196,65,108,89,216                   ; vmulps        %ymm8,%ymm2,%ymm11
8684  DB  196,65,125,91,219                   ; vcvtps2dq     %ymm11,%ymm11
8685  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
8686  DB  196,66,33,43,220                    ; vpackusdw     %xmm12,%xmm11,%xmm11
8687  DB  196,193,25,113,243,8                ; vpsllw        $0x8,%xmm11,%xmm12
8688  DB  196,193,33,113,211,8                ; vpsrlw        $0x8,%xmm11,%xmm11
8689  DB  196,65,25,235,219                   ; vpor          %xmm11,%xmm12,%xmm11
8690  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
8691  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
8692  DB  196,67,125,25,196,1                 ; vextractf128  $0x1,%ymm8,%xmm12
8693  DB  196,66,57,43,196                    ; vpackusdw     %xmm12,%xmm8,%xmm8
8694  DB  196,193,25,113,240,8                ; vpsllw        $0x8,%xmm8,%xmm12
8695  DB  196,193,57,113,208,8                ; vpsrlw        $0x8,%xmm8,%xmm8
8696  DB  196,65,25,235,192                   ; vpor          %xmm8,%xmm12,%xmm8
8697  DB  196,65,49,97,226                    ; vpunpcklwd    %xmm10,%xmm9,%xmm12
8698  DB  196,65,49,105,234                   ; vpunpckhwd    %xmm10,%xmm9,%xmm13
8699  DB  196,65,33,97,200                    ; vpunpcklwd    %xmm8,%xmm11,%xmm9
8700  DB  196,65,33,105,192                   ; vpunpckhwd    %xmm8,%xmm11,%xmm8
8701  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
8702  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
8703  DB  196,65,17,98,200                    ; vpunpckldq    %xmm8,%xmm13,%xmm9
8704  DB  196,65,17,106,192                   ; vpunpckhdq    %xmm8,%xmm13,%xmm8
8705  DB  72,133,201                          ; test          %rcx,%rcx
8706  DB  117,31                              ; jne           4906 <_sk_store_u16_be_avx+0xfa>
8707  DB  196,65,120,17,28,64                 ; vmovups       %xmm11,(%r8,%rax,2)
8708  DB  196,65,120,17,84,64,16              ; vmovups       %xmm10,0x10(%r8,%rax,2)
8709  DB  196,65,120,17,76,64,32              ; vmovups       %xmm9,0x20(%r8,%rax,2)
8710  DB  196,65,122,127,68,64,48             ; vmovdqu       %xmm8,0x30(%r8,%rax,2)
8711  DB  72,173                              ; lods          %ds:(%rsi),%rax
8712  DB  255,224                             ; jmpq          *%rax
8713  DB  196,65,121,214,28,64                ; vmovq         %xmm11,(%r8,%rax,2)
8714  DB  72,131,249,1                        ; cmp           $0x1,%rcx
8715  DB  116,240                             ; je            4902 <_sk_store_u16_be_avx+0xf6>
8716  DB  196,65,121,23,92,64,8               ; vmovhpd       %xmm11,0x8(%r8,%rax,2)
8717  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8718  DB  114,227                             ; jb            4902 <_sk_store_u16_be_avx+0xf6>
8719  DB  196,65,121,214,84,64,16             ; vmovq         %xmm10,0x10(%r8,%rax,2)
8720  DB  116,218                             ; je            4902 <_sk_store_u16_be_avx+0xf6>
8721  DB  196,65,121,23,84,64,24              ; vmovhpd       %xmm10,0x18(%r8,%rax,2)
8722  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8723  DB  114,205                             ; jb            4902 <_sk_store_u16_be_avx+0xf6>
8724  DB  196,65,121,214,76,64,32             ; vmovq         %xmm9,0x20(%r8,%rax,2)
8725  DB  116,196                             ; je            4902 <_sk_store_u16_be_avx+0xf6>
8726  DB  196,65,121,23,76,64,40              ; vmovhpd       %xmm9,0x28(%r8,%rax,2)
8727  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8728  DB  114,183                             ; jb            4902 <_sk_store_u16_be_avx+0xf6>
8729  DB  196,65,121,214,68,64,48             ; vmovq         %xmm8,0x30(%r8,%rax,2)
8730  DB  235,174                             ; jmp           4902 <_sk_store_u16_be_avx+0xf6>
8731
8732PUBLIC _sk_load_f32_avx
8733_sk_load_f32_avx LABEL PROC
8734  DB  72,173                              ; lods          %ds:(%rsi),%rax
8735  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8736  DB  119,110                             ; ja            49ca <_sk_load_f32_avx+0x76>
8737  DB  76,139,0                            ; mov           (%rax),%r8
8738  DB  76,141,12,189,0,0,0,0               ; lea           0x0(,%rdi,4),%r9
8739  DB  76,141,21,134,0,0,0                 ; lea           0x86(%rip),%r10        # 49f4 <_sk_load_f32_avx+0xa0>
8740  DB  73,99,4,138                         ; movslq        (%r10,%rcx,4),%rax
8741  DB  76,1,208                            ; add           %r10,%rax
8742  DB  255,224                             ; jmpq          *%rax
8743  DB  196,3,125,24,68,136,112,1           ; vinsertf128   $0x1,0x70(%r8,%r9,4),%ymm0,%ymm8
8744  DB  196,131,125,24,92,136,96,1          ; vinsertf128   $0x1,0x60(%r8,%r9,4),%ymm0,%ymm3
8745  DB  196,131,125,24,76,136,80,1          ; vinsertf128   $0x1,0x50(%r8,%r9,4),%ymm0,%ymm1
8746  DB  196,131,125,24,84,136,64,1          ; vinsertf128   $0x1,0x40(%r8,%r9,4),%ymm0,%ymm2
8747  DB  196,129,121,16,68,136,48            ; vmovupd       0x30(%r8,%r9,4),%xmm0
8748  DB  196,195,125,13,192,12               ; vblendpd      $0xc,%ymm8,%ymm0,%ymm0
8749  DB  196,1,121,16,68,136,32              ; vmovupd       0x20(%r8,%r9,4),%xmm8
8750  DB  196,99,61,13,203,12                 ; vblendpd      $0xc,%ymm3,%ymm8,%ymm9
8751  DB  196,129,121,16,92,136,16            ; vmovupd       0x10(%r8,%r9,4),%xmm3
8752  DB  196,99,101,13,209,12                ; vblendpd      $0xc,%ymm1,%ymm3,%ymm10
8753  DB  196,129,121,16,12,136               ; vmovupd       (%r8,%r9,4),%xmm1
8754  DB  196,227,117,13,202,12               ; vblendpd      $0xc,%ymm2,%ymm1,%ymm1
8755  DB  196,193,116,20,210                  ; vunpcklps     %ymm10,%ymm1,%ymm2
8756  DB  196,193,116,21,218                  ; vunpckhps     %ymm10,%ymm1,%ymm3
8757  DB  197,180,20,200                      ; vunpcklps     %ymm0,%ymm9,%ymm1
8758  DB  197,52,21,192                       ; vunpckhps     %ymm0,%ymm9,%ymm8
8759  DB  197,237,20,193                      ; vunpcklpd     %ymm1,%ymm2,%ymm0
8760  DB  197,237,21,201                      ; vunpckhpd     %ymm1,%ymm2,%ymm1
8761  DB  196,193,101,20,208                  ; vunpcklpd     %ymm8,%ymm3,%ymm2
8762  DB  196,193,101,21,216                  ; vunpckhpd     %ymm8,%ymm3,%ymm3
8763  DB  72,173                              ; lods          %ds:(%rsi),%rax
8764  DB  255,224                             ; jmpq          *%rax
8765  DB  102,144                             ; xchg          %ax,%ax
8766  DB  131,255,255                         ; cmp           $0xffffffff,%edi
8767  DB  255,202                             ; dec           %edx
8768  DB  255                                 ; (bad)
8769  DB  255                                 ; (bad)
8770  DB  255                                 ; (bad)
8771  DB  189,255,255,255,176                 ; mov           $0xb0ffffff,%ebp
8772  DB  255                                 ; (bad)
8773  DB  255                                 ; (bad)
8774  DB  255,163,255,255,255,155             ; jmpq          *-0x64000001(%rbx)
8775  DB  255                                 ; (bad)
8776  DB  255                                 ; (bad)
8777  DB  255,147,255,255,255,139             ; callq         *-0x74000001(%rbx)
8778  DB  255                                 ; (bad)
8779  DB  255                                 ; (bad)
8780  DB  255                                 ; .byte         0xff
8781
8782PUBLIC _sk_store_f32_avx
8783_sk_store_f32_avx LABEL PROC
8784  DB  72,173                              ; lods          %ds:(%rsi),%rax
8785  DB  76,139,0                            ; mov           (%rax),%r8
8786  DB  72,141,4,189,0,0,0,0                ; lea           0x0(,%rdi,4),%rax
8787  DB  197,124,20,193                      ; vunpcklps     %ymm1,%ymm0,%ymm8
8788  DB  197,124,21,217                      ; vunpckhps     %ymm1,%ymm0,%ymm11
8789  DB  197,108,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm9
8790  DB  197,108,21,227                      ; vunpckhps     %ymm3,%ymm2,%ymm12
8791  DB  196,65,61,20,209                    ; vunpcklpd     %ymm9,%ymm8,%ymm10
8792  DB  196,65,61,21,201                    ; vunpckhpd     %ymm9,%ymm8,%ymm9
8793  DB  196,65,37,20,196                    ; vunpcklpd     %ymm12,%ymm11,%ymm8
8794  DB  196,65,37,21,220                    ; vunpckhpd     %ymm12,%ymm11,%ymm11
8795  DB  72,133,201                          ; test          %rcx,%rcx
8796  DB  117,55                              ; jne           4a81 <_sk_store_f32_avx+0x6d>
8797  DB  196,67,45,24,225,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm12
8798  DB  196,67,61,24,235,1                  ; vinsertf128   $0x1,%xmm11,%ymm8,%ymm13
8799  DB  196,67,45,6,201,49                  ; vperm2f128    $0x31,%ymm9,%ymm10,%ymm9
8800  DB  196,67,61,6,195,49                  ; vperm2f128    $0x31,%ymm11,%ymm8,%ymm8
8801  DB  196,65,125,17,36,128                ; vmovupd       %ymm12,(%r8,%rax,4)
8802  DB  196,65,125,17,108,128,32            ; vmovupd       %ymm13,0x20(%r8,%rax,4)
8803  DB  196,65,125,17,76,128,64             ; vmovupd       %ymm9,0x40(%r8,%rax,4)
8804  DB  196,65,125,17,68,128,96             ; vmovupd       %ymm8,0x60(%r8,%rax,4)
8805  DB  72,173                              ; lods          %ds:(%rsi),%rax
8806  DB  255,224                             ; jmpq          *%rax
8807  DB  196,65,121,17,20,128                ; vmovupd       %xmm10,(%r8,%rax,4)
8808  DB  72,131,249,1                        ; cmp           $0x1,%rcx
8809  DB  116,240                             ; je            4a7d <_sk_store_f32_avx+0x69>
8810  DB  196,65,121,17,76,128,16             ; vmovupd       %xmm9,0x10(%r8,%rax,4)
8811  DB  72,131,249,3                        ; cmp           $0x3,%rcx
8812  DB  114,227                             ; jb            4a7d <_sk_store_f32_avx+0x69>
8813  DB  196,65,121,17,68,128,32             ; vmovupd       %xmm8,0x20(%r8,%rax,4)
8814  DB  116,218                             ; je            4a7d <_sk_store_f32_avx+0x69>
8815  DB  196,65,121,17,92,128,48             ; vmovupd       %xmm11,0x30(%r8,%rax,4)
8816  DB  72,131,249,5                        ; cmp           $0x5,%rcx
8817  DB  114,205                             ; jb            4a7d <_sk_store_f32_avx+0x69>
8818  DB  196,67,125,25,84,128,64,1           ; vextractf128  $0x1,%ymm10,0x40(%r8,%rax,4)
8819  DB  116,195                             ; je            4a7d <_sk_store_f32_avx+0x69>
8820  DB  196,67,125,25,76,128,80,1           ; vextractf128  $0x1,%ymm9,0x50(%r8,%rax,4)
8821  DB  72,131,249,7                        ; cmp           $0x7,%rcx
8822  DB  114,181                             ; jb            4a7d <_sk_store_f32_avx+0x69>
8823  DB  196,67,125,25,68,128,96,1           ; vextractf128  $0x1,%ymm8,0x60(%r8,%rax,4)
8824  DB  235,171                             ; jmp           4a7d <_sk_store_f32_avx+0x69>
8825
8826PUBLIC _sk_clamp_x_avx
8827_sk_clamp_x_avx LABEL PROC
8828  DB  72,173                              ; lods          %ds:(%rsi),%rax
8829  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8830  DB  197,60,95,200                       ; vmaxps        %ymm0,%ymm8,%ymm9
8831  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8832  DB  196,99,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm0
8833  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8834  DB  196,193,121,254,194                 ; vpaddd        %xmm10,%xmm0,%xmm0
8835  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
8836  DB  196,227,61,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm8,%ymm0
8837  DB  197,180,93,192                      ; vminps        %ymm0,%ymm9,%ymm0
8838  DB  72,173                              ; lods          %ds:(%rsi),%rax
8839  DB  255,224                             ; jmpq          *%rax
8840
8841PUBLIC _sk_clamp_y_avx
8842_sk_clamp_y_avx LABEL PROC
8843  DB  72,173                              ; lods          %ds:(%rsi),%rax
8844  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8845  DB  197,60,95,201                       ; vmaxps        %ymm1,%ymm8,%ymm9
8846  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8847  DB  196,99,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm1
8848  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8849  DB  196,193,113,254,202                 ; vpaddd        %xmm10,%xmm1,%xmm1
8850  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
8851  DB  196,227,61,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm8,%ymm1
8852  DB  197,180,93,201                      ; vminps        %ymm1,%ymm9,%ymm1
8853  DB  72,173                              ; lods          %ds:(%rsi),%rax
8854  DB  255,224                             ; jmpq          *%rax
8855
8856PUBLIC _sk_repeat_x_avx
8857_sk_repeat_x_avx LABEL PROC
8858  DB  72,173                              ; lods          %ds:(%rsi),%rax
8859  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8860  DB  196,65,124,94,200                   ; vdivps        %ymm8,%ymm0,%ymm9
8861  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
8862  DB  196,65,52,89,200                    ; vmulps        %ymm8,%ymm9,%ymm9
8863  DB  196,65,124,92,201                   ; vsubps        %ymm9,%ymm0,%ymm9
8864  DB  196,99,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm0
8865  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8866  DB  196,193,121,254,194                 ; vpaddd        %xmm10,%xmm0,%xmm0
8867  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
8868  DB  196,227,61,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm8,%ymm0
8869  DB  197,180,93,192                      ; vminps        %ymm0,%ymm9,%ymm0
8870  DB  72,173                              ; lods          %ds:(%rsi),%rax
8871  DB  255,224                             ; jmpq          *%rax
8872
8873PUBLIC _sk_repeat_y_avx
8874_sk_repeat_y_avx LABEL PROC
8875  DB  72,173                              ; lods          %ds:(%rsi),%rax
8876  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8877  DB  196,65,116,94,200                   ; vdivps        %ymm8,%ymm1,%ymm9
8878  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
8879  DB  196,65,52,89,200                    ; vmulps        %ymm8,%ymm9,%ymm9
8880  DB  196,65,116,92,201                   ; vsubps        %ymm9,%ymm1,%ymm9
8881  DB  196,99,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm1
8882  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8883  DB  196,193,113,254,202                 ; vpaddd        %xmm10,%xmm1,%xmm1
8884  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
8885  DB  196,227,61,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm8,%ymm1
8886  DB  197,180,93,201                      ; vminps        %ymm1,%ymm9,%ymm1
8887  DB  72,173                              ; lods          %ds:(%rsi),%rax
8888  DB  255,224                             ; jmpq          *%rax
8889
8890PUBLIC _sk_mirror_x_avx
8891_sk_mirror_x_avx LABEL PROC
8892  DB  72,173                              ; lods          %ds:(%rsi),%rax
8893  DB  197,121,110,0                       ; vmovd         (%rax),%xmm8
8894  DB  196,65,121,112,200,0                ; vpshufd       $0x0,%xmm8,%xmm9
8895  DB  196,67,53,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm9,%ymm9
8896  DB  196,65,124,92,209                   ; vsubps        %ymm9,%ymm0,%ymm10
8897  DB  196,193,58,88,192                   ; vaddss        %xmm8,%xmm8,%xmm0
8898  DB  196,227,121,4,192,0                 ; vpermilps     $0x0,%xmm0,%xmm0
8899  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
8900  DB  197,44,94,192                       ; vdivps        %ymm0,%ymm10,%ymm8
8901  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
8902  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
8903  DB  197,172,92,192                      ; vsubps        %ymm0,%ymm10,%ymm0
8904  DB  196,193,124,92,193                  ; vsubps        %ymm9,%ymm0,%ymm0
8905  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8906  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
8907  DB  197,60,84,192                       ; vandps        %ymm0,%ymm8,%ymm8
8908  DB  196,99,125,25,200,1                 ; vextractf128  $0x1,%ymm9,%xmm0
8909  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8910  DB  196,193,121,254,194                 ; vpaddd        %xmm10,%xmm0,%xmm0
8911  DB  196,65,49,254,202                   ; vpaddd        %xmm10,%xmm9,%xmm9
8912  DB  196,227,53,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm9,%ymm0
8913  DB  197,188,93,192                      ; vminps        %ymm0,%ymm8,%ymm0
8914  DB  72,173                              ; lods          %ds:(%rsi),%rax
8915  DB  255,224                             ; jmpq          *%rax
8916
8917PUBLIC _sk_mirror_y_avx
8918_sk_mirror_y_avx LABEL PROC
8919  DB  72,173                              ; lods          %ds:(%rsi),%rax
8920  DB  197,121,110,0                       ; vmovd         (%rax),%xmm8
8921  DB  196,65,121,112,200,0                ; vpshufd       $0x0,%xmm8,%xmm9
8922  DB  196,67,53,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm9,%ymm9
8923  DB  196,65,116,92,209                   ; vsubps        %ymm9,%ymm1,%ymm10
8924  DB  196,193,58,88,200                   ; vaddss        %xmm8,%xmm8,%xmm1
8925  DB  196,227,121,4,201,0                 ; vpermilps     $0x0,%xmm1,%xmm1
8926  DB  196,227,117,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm1,%ymm1
8927  DB  197,44,94,193                       ; vdivps        %ymm1,%ymm10,%ymm8
8928  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
8929  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
8930  DB  197,172,92,201                      ; vsubps        %ymm1,%ymm10,%ymm1
8931  DB  196,193,116,92,201                  ; vsubps        %ymm9,%ymm1,%ymm1
8932  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8933  DB  197,60,92,193                       ; vsubps        %ymm1,%ymm8,%ymm8
8934  DB  197,60,84,193                       ; vandps        %ymm1,%ymm8,%ymm8
8935  DB  196,99,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm1
8936  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
8937  DB  196,193,113,254,202                 ; vpaddd        %xmm10,%xmm1,%xmm1
8938  DB  196,65,49,254,202                   ; vpaddd        %xmm10,%xmm9,%xmm9
8939  DB  196,227,53,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm9,%ymm1
8940  DB  197,188,93,201                      ; vminps        %ymm1,%ymm8,%ymm1
8941  DB  72,173                              ; lods          %ds:(%rsi),%rax
8942  DB  255,224                             ; jmpq          *%rax
8943
8944PUBLIC _sk_luminance_to_alpha_avx
8945_sk_luminance_to_alpha_avx LABEL PROC
8946  DB  196,226,125,24,29,175,12,0,0        ; vbroadcastss  0xcaf(%rip),%ymm3        # 594c <_sk_callback_avx+0x415>
8947  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
8948  DB  196,226,125,24,29,166,12,0,0        ; vbroadcastss  0xca6(%rip),%ymm3        # 5950 <_sk_callback_avx+0x419>
8949  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
8950  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
8951  DB  196,226,125,24,13,153,12,0,0        ; vbroadcastss  0xc99(%rip),%ymm1        # 5954 <_sk_callback_avx+0x41d>
8952  DB  197,236,89,201                      ; vmulps        %ymm1,%ymm2,%ymm1
8953  DB  197,252,88,217                      ; vaddps        %ymm1,%ymm0,%ymm3
8954  DB  72,173                              ; lods          %ds:(%rsi),%rax
8955  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
8956  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
8957  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
8958  DB  255,224                             ; jmpq          *%rax
8959
8960PUBLIC _sk_matrix_2x3_avx
8961_sk_matrix_2x3_avx LABEL PROC
8962  DB  72,173                              ; lods          %ds:(%rsi),%rax
8963  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8964  DB  196,98,125,24,72,8                  ; vbroadcastss  0x8(%rax),%ymm9
8965  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
8966  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
8967  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8968  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
8969  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
8970  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
8971  DB  196,98,125,24,80,12                 ; vbroadcastss  0xc(%rax),%ymm10
8972  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
8973  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
8974  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
8975  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
8976  DB  197,252,88,201                      ; vaddps        %ymm1,%ymm0,%ymm1
8977  DB  72,173                              ; lods          %ds:(%rsi),%rax
8978  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
8979  DB  255,224                             ; jmpq          *%rax
8980
8981PUBLIC _sk_matrix_3x4_avx
8982_sk_matrix_3x4_avx LABEL PROC
8983  DB  72,173                              ; lods          %ds:(%rsi),%rax
8984  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
8985  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
8986  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
8987  DB  196,98,125,24,88,36                 ; vbroadcastss  0x24(%rax),%ymm11
8988  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
8989  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
8990  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
8991  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8992  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
8993  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
8994  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
8995  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
8996  DB  196,98,125,24,88,28                 ; vbroadcastss  0x1c(%rax),%ymm11
8997  DB  196,98,125,24,96,40                 ; vbroadcastss  0x28(%rax),%ymm12
8998  DB  197,36,89,218                       ; vmulps        %ymm2,%ymm11,%ymm11
8999  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
9000  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
9001  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
9002  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
9003  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9004  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
9005  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
9006  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
9007  DB  196,98,125,24,104,44                ; vbroadcastss  0x2c(%rax),%ymm13
9008  DB  197,156,89,210                      ; vmulps        %ymm2,%ymm12,%ymm2
9009  DB  196,193,108,88,213                  ; vaddps        %ymm13,%ymm2,%ymm2
9010  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
9011  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
9012  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
9013  DB  197,252,88,209                      ; vaddps        %ymm1,%ymm0,%ymm2
9014  DB  72,173                              ; lods          %ds:(%rsi),%rax
9015  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
9016  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
9017  DB  255,224                             ; jmpq          *%rax
9018
9019PUBLIC _sk_matrix_4x5_avx
9020_sk_matrix_4x5_avx LABEL PROC
9021  DB  72,173                              ; lods          %ds:(%rsi),%rax
9022  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
9023  DB  196,98,125,24,72,16                 ; vbroadcastss  0x10(%rax),%ymm9
9024  DB  196,98,125,24,80,32                 ; vbroadcastss  0x20(%rax),%ymm10
9025  DB  196,98,125,24,88,48                 ; vbroadcastss  0x30(%rax),%ymm11
9026  DB  196,98,125,24,96,64                 ; vbroadcastss  0x40(%rax),%ymm12
9027  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
9028  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
9029  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
9030  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
9031  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
9032  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9033  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
9034  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
9035  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
9036  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
9037  DB  196,98,125,24,88,36                 ; vbroadcastss  0x24(%rax),%ymm11
9038  DB  196,98,125,24,96,52                 ; vbroadcastss  0x34(%rax),%ymm12
9039  DB  196,98,125,24,104,68                ; vbroadcastss  0x44(%rax),%ymm13
9040  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
9041  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
9042  DB  197,36,89,218                       ; vmulps        %ymm2,%ymm11,%ymm11
9043  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
9044  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
9045  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
9046  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
9047  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9048  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
9049  DB  196,98,125,24,88,24                 ; vbroadcastss  0x18(%rax),%ymm11
9050  DB  196,98,125,24,96,40                 ; vbroadcastss  0x28(%rax),%ymm12
9051  DB  196,98,125,24,104,56                ; vbroadcastss  0x38(%rax),%ymm13
9052  DB  196,98,125,24,112,72                ; vbroadcastss  0x48(%rax),%ymm14
9053  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
9054  DB  196,65,20,88,238                    ; vaddps        %ymm14,%ymm13,%ymm13
9055  DB  197,28,89,226                       ; vmulps        %ymm2,%ymm12,%ymm12
9056  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
9057  DB  197,36,89,217                       ; vmulps        %ymm1,%ymm11,%ymm11
9058  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
9059  DB  197,44,89,208                       ; vmulps        %ymm0,%ymm10,%ymm10
9060  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
9061  DB  196,98,125,24,88,12                 ; vbroadcastss  0xc(%rax),%ymm11
9062  DB  196,98,125,24,96,28                 ; vbroadcastss  0x1c(%rax),%ymm12
9063  DB  196,98,125,24,104,44                ; vbroadcastss  0x2c(%rax),%ymm13
9064  DB  196,98,125,24,112,60                ; vbroadcastss  0x3c(%rax),%ymm14
9065  DB  196,98,125,24,120,76                ; vbroadcastss  0x4c(%rax),%ymm15
9066  DB  197,140,89,219                      ; vmulps        %ymm3,%ymm14,%ymm3
9067  DB  196,193,100,88,223                  ; vaddps        %ymm15,%ymm3,%ymm3
9068  DB  197,148,89,210                      ; vmulps        %ymm2,%ymm13,%ymm2
9069  DB  197,236,88,211                      ; vaddps        %ymm3,%ymm2,%ymm2
9070  DB  197,156,89,201                      ; vmulps        %ymm1,%ymm12,%ymm1
9071  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
9072  DB  197,164,89,192                      ; vmulps        %ymm0,%ymm11,%ymm0
9073  DB  197,252,88,217                      ; vaddps        %ymm1,%ymm0,%ymm3
9074  DB  72,173                              ; lods          %ds:(%rsi),%rax
9075  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
9076  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
9077  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
9078  DB  255,224                             ; jmpq          *%rax
9079
9080PUBLIC _sk_matrix_perspective_avx
9081_sk_matrix_perspective_avx LABEL PROC
9082  DB  72,173                              ; lods          %ds:(%rsi),%rax
9083  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
9084  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
9085  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
9086  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
9087  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9088  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
9089  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
9090  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
9091  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
9092  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
9093  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
9094  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
9095  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
9096  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9097  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
9098  DB  196,98,125,24,88,28                 ; vbroadcastss  0x1c(%rax),%ymm11
9099  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
9100  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
9101  DB  196,193,116,88,204                  ; vaddps        %ymm12,%ymm1,%ymm1
9102  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
9103  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
9104  DB  197,252,83,200                      ; vrcpps        %ymm0,%ymm1
9105  DB  197,188,89,193                      ; vmulps        %ymm1,%ymm8,%ymm0
9106  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
9107  DB  72,173                              ; lods          %ds:(%rsi),%rax
9108  DB  255,224                             ; jmpq          *%rax
9109
9110PUBLIC _sk_linear_gradient_avx
9111_sk_linear_gradient_avx LABEL PROC
9112  DB  72,173                              ; lods          %ds:(%rsi),%rax
9113  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
9114  DB  196,226,125,24,72,20                ; vbroadcastss  0x14(%rax),%ymm1
9115  DB  196,226,125,24,80,24                ; vbroadcastss  0x18(%rax),%ymm2
9116  DB  196,226,125,24,88,28                ; vbroadcastss  0x1c(%rax),%ymm3
9117  DB  76,139,0                            ; mov           (%rax),%r8
9118  DB  77,133,192                          ; test          %r8,%r8
9119  DB  15,132,146,0,0,0                    ; je            5011 <_sk_linear_gradient_avx+0xb8>
9120  DB  72,139,64,8                         ; mov           0x8(%rax),%rax
9121  DB  72,131,192,32                       ; add           $0x20,%rax
9122  DB  196,65,28,87,228                    ; vxorps        %ymm12,%ymm12,%ymm12
9123  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
9124  DB  196,65,44,87,210                    ; vxorps        %ymm10,%ymm10,%ymm10
9125  DB  196,65,36,87,219                    ; vxorps        %ymm11,%ymm11,%ymm11
9126  DB  196,98,125,24,104,224               ; vbroadcastss  -0x20(%rax),%ymm13
9127  DB  196,65,124,194,237,1                ; vcmpltps      %ymm13,%ymm0,%ymm13
9128  DB  196,98,125,24,112,228               ; vbroadcastss  -0x1c(%rax),%ymm14
9129  DB  196,67,13,74,228,208                ; vblendvps     %ymm13,%ymm12,%ymm14,%ymm12
9130  DB  196,98,125,24,112,232               ; vbroadcastss  -0x18(%rax),%ymm14
9131  DB  196,67,13,74,219,208                ; vblendvps     %ymm13,%ymm11,%ymm14,%ymm11
9132  DB  196,98,125,24,112,236               ; vbroadcastss  -0x14(%rax),%ymm14
9133  DB  196,67,13,74,210,208                ; vblendvps     %ymm13,%ymm10,%ymm14,%ymm10
9134  DB  196,98,125,24,112,240               ; vbroadcastss  -0x10(%rax),%ymm14
9135  DB  196,67,13,74,201,208                ; vblendvps     %ymm13,%ymm9,%ymm14,%ymm9
9136  DB  196,98,125,24,112,244               ; vbroadcastss  -0xc(%rax),%ymm14
9137  DB  196,67,13,74,192,208                ; vblendvps     %ymm13,%ymm8,%ymm14,%ymm8
9138  DB  196,98,125,24,112,248               ; vbroadcastss  -0x8(%rax),%ymm14
9139  DB  196,227,13,74,201,208               ; vblendvps     %ymm13,%ymm1,%ymm14,%ymm1
9140  DB  196,98,125,24,112,252               ; vbroadcastss  -0x4(%rax),%ymm14
9141  DB  196,227,13,74,210,208               ; vblendvps     %ymm13,%ymm2,%ymm14,%ymm2
9142  DB  196,98,125,24,48                    ; vbroadcastss  (%rax),%ymm14
9143  DB  196,227,13,74,219,208               ; vblendvps     %ymm13,%ymm3,%ymm14,%ymm3
9144  DB  72,131,192,36                       ; add           $0x24,%rax
9145  DB  73,255,200                          ; dec           %r8
9146  DB  117,140                             ; jne           4f9b <_sk_linear_gradient_avx+0x42>
9147  DB  235,20                              ; jmp           5025 <_sk_linear_gradient_avx+0xcc>
9148  DB  196,65,36,87,219                    ; vxorps        %ymm11,%ymm11,%ymm11
9149  DB  196,65,44,87,210                    ; vxorps        %ymm10,%ymm10,%ymm10
9150  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
9151  DB  196,65,28,87,228                    ; vxorps        %ymm12,%ymm12,%ymm12
9152  DB  197,28,89,224                       ; vmulps        %ymm0,%ymm12,%ymm12
9153  DB  196,65,60,88,196                    ; vaddps        %ymm12,%ymm8,%ymm8
9154  DB  197,36,89,216                       ; vmulps        %ymm0,%ymm11,%ymm11
9155  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
9156  DB  197,44,89,208                       ; vmulps        %ymm0,%ymm10,%ymm10
9157  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
9158  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
9159  DB  197,252,88,219                      ; vaddps        %ymm3,%ymm0,%ymm3
9160  DB  72,173                              ; lods          %ds:(%rsi),%rax
9161  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
9162  DB  255,224                             ; jmpq          *%rax
9163
9164PUBLIC _sk_linear_gradient_2stops_avx
9165_sk_linear_gradient_2stops_avx LABEL PROC
9166  DB  72,173                              ; lods          %ds:(%rsi),%rax
9167  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
9168  DB  196,226,125,24,80,16                ; vbroadcastss  0x10(%rax),%ymm2
9169  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
9170  DB  197,116,88,194                      ; vaddps        %ymm2,%ymm1,%ymm8
9171  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
9172  DB  196,226,125,24,80,20                ; vbroadcastss  0x14(%rax),%ymm2
9173  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
9174  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
9175  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
9176  DB  196,226,125,24,88,24                ; vbroadcastss  0x18(%rax),%ymm3
9177  DB  197,236,89,208                      ; vmulps        %ymm0,%ymm2,%ymm2
9178  DB  197,236,88,211                      ; vaddps        %ymm3,%ymm2,%ymm2
9179  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
9180  DB  196,98,125,24,72,28                 ; vbroadcastss  0x1c(%rax),%ymm9
9181  DB  197,228,89,192                      ; vmulps        %ymm0,%ymm3,%ymm0
9182  DB  196,193,124,88,217                  ; vaddps        %ymm9,%ymm0,%ymm3
9183  DB  72,173                              ; lods          %ds:(%rsi),%rax
9184  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
9185  DB  255,224                             ; jmpq          *%rax
9186
9187PUBLIC _sk_xy_to_polar_unit_avx
9188_sk_xy_to_polar_unit_avx LABEL PROC
9189  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
9190  DB  197,60,92,200                       ; vsubps        %ymm0,%ymm8,%ymm9
9191  DB  197,52,84,200                       ; vandps        %ymm0,%ymm9,%ymm9
9192  DB  197,60,92,209                       ; vsubps        %ymm1,%ymm8,%ymm10
9193  DB  197,44,84,209                       ; vandps        %ymm1,%ymm10,%ymm10
9194  DB  196,65,52,93,218                    ; vminps        %ymm10,%ymm9,%ymm11
9195  DB  196,65,52,95,226                    ; vmaxps        %ymm10,%ymm9,%ymm12
9196  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
9197  DB  196,65,36,89,227                    ; vmulps        %ymm11,%ymm11,%ymm12
9198  DB  196,98,125,24,45,126,8,0,0          ; vbroadcastss  0x87e(%rip),%ymm13        # 5958 <_sk_callback_avx+0x421>
9199  DB  196,65,28,89,237                    ; vmulps        %ymm13,%ymm12,%ymm13
9200  DB  196,98,125,24,53,116,8,0,0          ; vbroadcastss  0x874(%rip),%ymm14        # 595c <_sk_callback_avx+0x425>
9201  DB  196,65,20,88,238                    ; vaddps        %ymm14,%ymm13,%ymm13
9202  DB  196,65,28,89,237                    ; vmulps        %ymm13,%ymm12,%ymm13
9203  DB  196,98,125,24,53,101,8,0,0          ; vbroadcastss  0x865(%rip),%ymm14        # 5960 <_sk_callback_avx+0x429>
9204  DB  196,65,20,88,238                    ; vaddps        %ymm14,%ymm13,%ymm13
9205  DB  196,65,28,89,229                    ; vmulps        %ymm13,%ymm12,%ymm12
9206  DB  196,98,125,24,45,86,8,0,0           ; vbroadcastss  0x856(%rip),%ymm13        # 5964 <_sk_callback_avx+0x42d>
9207  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
9208  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
9209  DB  196,65,52,194,202,1                 ; vcmpltps      %ymm10,%ymm9,%ymm9
9210  DB  196,98,125,24,21,65,8,0,0           ; vbroadcastss  0x841(%rip),%ymm10        # 5968 <_sk_callback_avx+0x431>
9211  DB  196,65,44,92,211                    ; vsubps        %ymm11,%ymm10,%ymm10
9212  DB  196,67,37,74,202,144                ; vblendvps     %ymm9,%ymm10,%ymm11,%ymm9
9213  DB  196,193,124,194,192,1               ; vcmpltps      %ymm8,%ymm0,%ymm0
9214  DB  196,98,125,24,21,43,8,0,0           ; vbroadcastss  0x82b(%rip),%ymm10        # 596c <_sk_callback_avx+0x435>
9215  DB  196,65,44,92,209                    ; vsubps        %ymm9,%ymm10,%ymm10
9216  DB  196,195,53,74,194,0                 ; vblendvps     %ymm0,%ymm10,%ymm9,%ymm0
9217  DB  196,65,116,194,200,1                ; vcmpltps      %ymm8,%ymm1,%ymm9
9218  DB  196,98,125,24,21,21,8,0,0           ; vbroadcastss  0x815(%rip),%ymm10        # 5970 <_sk_callback_avx+0x439>
9219  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
9220  DB  196,195,125,74,194,144              ; vblendvps     %ymm9,%ymm10,%ymm0,%ymm0
9221  DB  196,65,124,194,200,3                ; vcmpunordps   %ymm8,%ymm0,%ymm9
9222  DB  196,195,125,74,192,144              ; vblendvps     %ymm9,%ymm8,%ymm0,%ymm0
9223  DB  72,173                              ; lods          %ds:(%rsi),%rax
9224  DB  255,224                             ; jmpq          *%rax
9225
9226PUBLIC _sk_save_xy_avx
9227_sk_save_xy_avx LABEL PROC
9228  DB  72,173                              ; lods          %ds:(%rsi),%rax
9229  DB  196,98,125,24,5,244,7,0,0           ; vbroadcastss  0x7f4(%rip),%ymm8        # 5974 <_sk_callback_avx+0x43d>
9230  DB  196,65,124,88,200                   ; vaddps        %ymm8,%ymm0,%ymm9
9231  DB  196,67,125,8,209,1                  ; vroundps      $0x1,%ymm9,%ymm10
9232  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
9233  DB  196,65,116,88,192                   ; vaddps        %ymm8,%ymm1,%ymm8
9234  DB  196,67,125,8,208,1                  ; vroundps      $0x1,%ymm8,%ymm10
9235  DB  196,65,60,92,194                    ; vsubps        %ymm10,%ymm8,%ymm8
9236  DB  197,252,17,0                        ; vmovups       %ymm0,(%rax)
9237  DB  197,252,17,72,32                    ; vmovups       %ymm1,0x20(%rax)
9238  DB  197,124,17,72,64                    ; vmovups       %ymm9,0x40(%rax)
9239  DB  197,124,17,64,96                    ; vmovups       %ymm8,0x60(%rax)
9240  DB  72,173                              ; lods          %ds:(%rsi),%rax
9241  DB  255,224                             ; jmpq          *%rax
9242
9243PUBLIC _sk_accumulate_avx
9244_sk_accumulate_avx LABEL PROC
9245  DB  72,173                              ; lods          %ds:(%rsi),%rax
9246  DB  197,124,16,128,128,0,0,0            ; vmovups       0x80(%rax),%ymm8
9247  DB  197,60,89,128,160,0,0,0             ; vmulps        0xa0(%rax),%ymm8,%ymm8
9248  DB  197,60,89,200                       ; vmulps        %ymm0,%ymm8,%ymm9
9249  DB  197,180,88,228                      ; vaddps        %ymm4,%ymm9,%ymm4
9250  DB  197,60,89,201                       ; vmulps        %ymm1,%ymm8,%ymm9
9251  DB  197,180,88,237                      ; vaddps        %ymm5,%ymm9,%ymm5
9252  DB  197,60,89,202                       ; vmulps        %ymm2,%ymm8,%ymm9
9253  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
9254  DB  197,60,89,195                       ; vmulps        %ymm3,%ymm8,%ymm8
9255  DB  197,188,88,255                      ; vaddps        %ymm7,%ymm8,%ymm7
9256  DB  72,173                              ; lods          %ds:(%rsi),%rax
9257  DB  255,224                             ; jmpq          *%rax
9258
9259PUBLIC _sk_bilinear_nx_avx
9260_sk_bilinear_nx_avx LABEL PROC
9261  DB  72,173                              ; lods          %ds:(%rsi),%rax
9262  DB  196,226,125,24,5,128,7,0,0          ; vbroadcastss  0x780(%rip),%ymm0        # 5978 <_sk_callback_avx+0x441>
9263  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
9264  DB  196,98,125,24,5,119,7,0,0           ; vbroadcastss  0x777(%rip),%ymm8        # 597c <_sk_callback_avx+0x445>
9265  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
9266  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9267  DB  72,173                              ; lods          %ds:(%rsi),%rax
9268  DB  255,224                             ; jmpq          *%rax
9269
9270PUBLIC _sk_bilinear_px_avx
9271_sk_bilinear_px_avx LABEL PROC
9272  DB  72,173                              ; lods          %ds:(%rsi),%rax
9273  DB  196,226,125,24,5,95,7,0,0           ; vbroadcastss  0x75f(%rip),%ymm0        # 5980 <_sk_callback_avx+0x449>
9274  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
9275  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
9276  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9277  DB  72,173                              ; lods          %ds:(%rsi),%rax
9278  DB  255,224                             ; jmpq          *%rax
9279
9280PUBLIC _sk_bilinear_ny_avx
9281_sk_bilinear_ny_avx LABEL PROC
9282  DB  72,173                              ; lods          %ds:(%rsi),%rax
9283  DB  196,226,125,24,13,67,7,0,0          ; vbroadcastss  0x743(%rip),%ymm1        # 5984 <_sk_callback_avx+0x44d>
9284  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
9285  DB  196,98,125,24,5,57,7,0,0            ; vbroadcastss  0x739(%rip),%ymm8        # 5988 <_sk_callback_avx+0x451>
9286  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
9287  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9288  DB  72,173                              ; lods          %ds:(%rsi),%rax
9289  DB  255,224                             ; jmpq          *%rax
9290
9291PUBLIC _sk_bilinear_py_avx
9292_sk_bilinear_py_avx LABEL PROC
9293  DB  72,173                              ; lods          %ds:(%rsi),%rax
9294  DB  196,226,125,24,13,33,7,0,0          ; vbroadcastss  0x721(%rip),%ymm1        # 598c <_sk_callback_avx+0x455>
9295  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
9296  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
9297  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9298  DB  72,173                              ; lods          %ds:(%rsi),%rax
9299  DB  255,224                             ; jmpq          *%rax
9300
9301PUBLIC _sk_bicubic_n3x_avx
9302_sk_bicubic_n3x_avx LABEL PROC
9303  DB  72,173                              ; lods          %ds:(%rsi),%rax
9304  DB  196,226,125,24,5,4,7,0,0            ; vbroadcastss  0x704(%rip),%ymm0        # 5990 <_sk_callback_avx+0x459>
9305  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
9306  DB  196,98,125,24,5,251,6,0,0           ; vbroadcastss  0x6fb(%rip),%ymm8        # 5994 <_sk_callback_avx+0x45d>
9307  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
9308  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
9309  DB  196,98,125,24,21,236,6,0,0          ; vbroadcastss  0x6ec(%rip),%ymm10        # 5998 <_sk_callback_avx+0x461>
9310  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
9311  DB  196,98,125,24,21,226,6,0,0          ; vbroadcastss  0x6e2(%rip),%ymm10        # 599c <_sk_callback_avx+0x465>
9312  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
9313  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9314  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9315  DB  72,173                              ; lods          %ds:(%rsi),%rax
9316  DB  255,224                             ; jmpq          *%rax
9317
9318PUBLIC _sk_bicubic_n1x_avx
9319_sk_bicubic_n1x_avx LABEL PROC
9320  DB  72,173                              ; lods          %ds:(%rsi),%rax
9321  DB  196,226,125,24,5,197,6,0,0          ; vbroadcastss  0x6c5(%rip),%ymm0        # 59a0 <_sk_callback_avx+0x469>
9322  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
9323  DB  196,98,125,24,5,188,6,0,0           ; vbroadcastss  0x6bc(%rip),%ymm8        # 59a4 <_sk_callback_avx+0x46d>
9324  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
9325  DB  196,98,125,24,13,178,6,0,0          ; vbroadcastss  0x6b2(%rip),%ymm9        # 59a8 <_sk_callback_avx+0x471>
9326  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
9327  DB  196,98,125,24,21,168,6,0,0          ; vbroadcastss  0x6a8(%rip),%ymm10        # 59ac <_sk_callback_avx+0x475>
9328  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9329  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
9330  DB  196,98,125,24,21,153,6,0,0          ; vbroadcastss  0x699(%rip),%ymm10        # 59b0 <_sk_callback_avx+0x479>
9331  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9332  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
9333  DB  196,98,125,24,13,138,6,0,0          ; vbroadcastss  0x68a(%rip),%ymm9        # 59b4 <_sk_callback_avx+0x47d>
9334  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
9335  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9336  DB  72,173                              ; lods          %ds:(%rsi),%rax
9337  DB  255,224                             ; jmpq          *%rax
9338
9339PUBLIC _sk_bicubic_p1x_avx
9340_sk_bicubic_p1x_avx LABEL PROC
9341  DB  72,173                              ; lods          %ds:(%rsi),%rax
9342  DB  196,98,125,24,5,114,6,0,0           ; vbroadcastss  0x672(%rip),%ymm8        # 59b8 <_sk_callback_avx+0x481>
9343  DB  197,188,88,0                        ; vaddps        (%rax),%ymm8,%ymm0
9344  DB  197,124,16,72,64                    ; vmovups       0x40(%rax),%ymm9
9345  DB  196,98,125,24,21,100,6,0,0          ; vbroadcastss  0x664(%rip),%ymm10        # 59bc <_sk_callback_avx+0x485>
9346  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
9347  DB  196,98,125,24,29,90,6,0,0           ; vbroadcastss  0x65a(%rip),%ymm11        # 59c0 <_sk_callback_avx+0x489>
9348  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
9349  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
9350  DB  196,65,44,88,192                    ; vaddps        %ymm8,%ymm10,%ymm8
9351  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9352  DB  196,98,125,24,13,65,6,0,0           ; vbroadcastss  0x641(%rip),%ymm9        # 59c4 <_sk_callback_avx+0x48d>
9353  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
9354  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9355  DB  72,173                              ; lods          %ds:(%rsi),%rax
9356  DB  255,224                             ; jmpq          *%rax
9357
9358PUBLIC _sk_bicubic_p3x_avx
9359_sk_bicubic_p3x_avx LABEL PROC
9360  DB  72,173                              ; lods          %ds:(%rsi),%rax
9361  DB  196,226,125,24,5,41,6,0,0           ; vbroadcastss  0x629(%rip),%ymm0        # 59c8 <_sk_callback_avx+0x491>
9362  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
9363  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
9364  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
9365  DB  196,98,125,24,21,22,6,0,0           ; vbroadcastss  0x616(%rip),%ymm10        # 59cc <_sk_callback_avx+0x495>
9366  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
9367  DB  196,98,125,24,21,12,6,0,0           ; vbroadcastss  0x60c(%rip),%ymm10        # 59d0 <_sk_callback_avx+0x499>
9368  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
9369  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9370  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
9371  DB  72,173                              ; lods          %ds:(%rsi),%rax
9372  DB  255,224                             ; jmpq          *%rax
9373
9374PUBLIC _sk_bicubic_n3y_avx
9375_sk_bicubic_n3y_avx LABEL PROC
9376  DB  72,173                              ; lods          %ds:(%rsi),%rax
9377  DB  196,226,125,24,13,239,5,0,0         ; vbroadcastss  0x5ef(%rip),%ymm1        # 59d4 <_sk_callback_avx+0x49d>
9378  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
9379  DB  196,98,125,24,5,229,5,0,0           ; vbroadcastss  0x5e5(%rip),%ymm8        # 59d8 <_sk_callback_avx+0x4a1>
9380  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
9381  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
9382  DB  196,98,125,24,21,214,5,0,0          ; vbroadcastss  0x5d6(%rip),%ymm10        # 59dc <_sk_callback_avx+0x4a5>
9383  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
9384  DB  196,98,125,24,21,204,5,0,0          ; vbroadcastss  0x5cc(%rip),%ymm10        # 59e0 <_sk_callback_avx+0x4a9>
9385  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
9386  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9387  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9388  DB  72,173                              ; lods          %ds:(%rsi),%rax
9389  DB  255,224                             ; jmpq          *%rax
9390
9391PUBLIC _sk_bicubic_n1y_avx
9392_sk_bicubic_n1y_avx LABEL PROC
9393  DB  72,173                              ; lods          %ds:(%rsi),%rax
9394  DB  196,226,125,24,13,175,5,0,0         ; vbroadcastss  0x5af(%rip),%ymm1        # 59e4 <_sk_callback_avx+0x4ad>
9395  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
9396  DB  196,98,125,24,5,165,5,0,0           ; vbroadcastss  0x5a5(%rip),%ymm8        # 59e8 <_sk_callback_avx+0x4b1>
9397  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
9398  DB  196,98,125,24,13,155,5,0,0          ; vbroadcastss  0x59b(%rip),%ymm9        # 59ec <_sk_callback_avx+0x4b5>
9399  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
9400  DB  196,98,125,24,21,145,5,0,0          ; vbroadcastss  0x591(%rip),%ymm10        # 59f0 <_sk_callback_avx+0x4b9>
9401  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9402  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
9403  DB  196,98,125,24,21,130,5,0,0          ; vbroadcastss  0x582(%rip),%ymm10        # 59f4 <_sk_callback_avx+0x4bd>
9404  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
9405  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
9406  DB  196,98,125,24,13,115,5,0,0          ; vbroadcastss  0x573(%rip),%ymm9        # 59f8 <_sk_callback_avx+0x4c1>
9407  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
9408  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9409  DB  72,173                              ; lods          %ds:(%rsi),%rax
9410  DB  255,224                             ; jmpq          *%rax
9411
9412PUBLIC _sk_bicubic_p1y_avx
9413_sk_bicubic_p1y_avx LABEL PROC
9414  DB  72,173                              ; lods          %ds:(%rsi),%rax
9415  DB  196,98,125,24,5,91,5,0,0            ; vbroadcastss  0x55b(%rip),%ymm8        # 59fc <_sk_callback_avx+0x4c5>
9416  DB  197,188,88,72,32                    ; vaddps        0x20(%rax),%ymm8,%ymm1
9417  DB  197,124,16,72,96                    ; vmovups       0x60(%rax),%ymm9
9418  DB  196,98,125,24,21,76,5,0,0           ; vbroadcastss  0x54c(%rip),%ymm10        # 5a00 <_sk_callback_avx+0x4c9>
9419  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
9420  DB  196,98,125,24,29,66,5,0,0           ; vbroadcastss  0x542(%rip),%ymm11        # 5a04 <_sk_callback_avx+0x4cd>
9421  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
9422  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
9423  DB  196,65,44,88,192                    ; vaddps        %ymm8,%ymm10,%ymm8
9424  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9425  DB  196,98,125,24,13,41,5,0,0           ; vbroadcastss  0x529(%rip),%ymm9        # 5a08 <_sk_callback_avx+0x4d1>
9426  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
9427  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9428  DB  72,173                              ; lods          %ds:(%rsi),%rax
9429  DB  255,224                             ; jmpq          *%rax
9430
9431PUBLIC _sk_bicubic_p3y_avx
9432_sk_bicubic_p3y_avx LABEL PROC
9433  DB  72,173                              ; lods          %ds:(%rsi),%rax
9434  DB  196,226,125,24,13,17,5,0,0          ; vbroadcastss  0x511(%rip),%ymm1        # 5a0c <_sk_callback_avx+0x4d5>
9435  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
9436  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
9437  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
9438  DB  196,98,125,24,21,253,4,0,0          ; vbroadcastss  0x4fd(%rip),%ymm10        # 5a10 <_sk_callback_avx+0x4d9>
9439  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
9440  DB  196,98,125,24,21,243,4,0,0          ; vbroadcastss  0x4f3(%rip),%ymm10        # 5a14 <_sk_callback_avx+0x4dd>
9441  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
9442  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9443  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
9444  DB  72,173                              ; lods          %ds:(%rsi),%rax
9445  DB  255,224                             ; jmpq          *%rax
9446
9447PUBLIC _sk_callback_avx
9448_sk_callback_avx LABEL PROC
9449  DB  65,87                               ; push          %r15
9450  DB  65,86                               ; push          %r14
9451  DB  83                                  ; push          %rbx
9452  DB  72,129,236,160,0,0,0                ; sub           $0xa0,%rsp
9453  DB  197,252,17,188,36,128,0,0,0         ; vmovups       %ymm7,0x80(%rsp)
9454  DB  197,252,17,116,36,96                ; vmovups       %ymm6,0x60(%rsp)
9455  DB  197,252,17,108,36,64                ; vmovups       %ymm5,0x40(%rsp)
9456  DB  197,252,17,100,36,32                ; vmovups       %ymm4,0x20(%rsp)
9457  DB  73,137,207                          ; mov           %rcx,%r15
9458  DB  73,137,214                          ; mov           %rdx,%r14
9459  DB  72,173                              ; lods          %ds:(%rsi),%rax
9460  DB  72,137,195                          ; mov           %rax,%rbx
9461  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
9462  DB  197,252,21,193                      ; vunpckhps     %ymm1,%ymm0,%ymm0
9463  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
9464  DB  197,236,21,211                      ; vunpckhps     %ymm3,%ymm2,%ymm2
9465  DB  197,221,20,217                      ; vunpcklpd     %ymm1,%ymm4,%ymm3
9466  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
9467  DB  197,253,20,226                      ; vunpcklpd     %ymm2,%ymm0,%ymm4
9468  DB  197,253,21,194                      ; vunpckhpd     %ymm2,%ymm0,%ymm0
9469  DB  196,227,101,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm2
9470  DB  196,227,93,24,232,1                 ; vinsertf128   $0x1,%xmm0,%ymm4,%ymm5
9471  DB  196,227,101,6,201,49                ; vperm2f128    $0x31,%ymm1,%ymm3,%ymm1
9472  DB  196,227,93,6,192,49                 ; vperm2f128    $0x31,%ymm0,%ymm4,%ymm0
9473  DB  197,253,17,83,8                     ; vmovupd       %ymm2,0x8(%rbx)
9474  DB  197,253,17,107,40                   ; vmovupd       %ymm5,0x28(%rbx)
9475  DB  197,253,17,75,72                    ; vmovupd       %ymm1,0x48(%rbx)
9476  DB  197,253,17,67,104                   ; vmovupd       %ymm0,0x68(%rbx)
9477  DB  77,133,255                          ; test          %r15,%r15
9478  DB  186,8,0,0,0                         ; mov           $0x8,%edx
9479  DB  65,15,69,215                        ; cmovne        %r15d,%edx
9480  DB  72,137,217                          ; mov           %rbx,%rcx
9481  DB  197,248,119                         ; vzeroupper
9482  DB  255,19                              ; callq         *(%rbx)
9483  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
9484  DB  197,248,16,0                        ; vmovups       (%rax),%xmm0
9485  DB  197,248,16,72,16                    ; vmovups       0x10(%rax),%xmm1
9486  DB  197,248,16,80,32                    ; vmovups       0x20(%rax),%xmm2
9487  DB  197,248,16,88,48                    ; vmovups       0x30(%rax),%xmm3
9488  DB  196,227,101,24,88,112,1             ; vinsertf128   $0x1,0x70(%rax),%ymm3,%ymm3
9489  DB  196,227,109,24,80,96,1              ; vinsertf128   $0x1,0x60(%rax),%ymm2,%ymm2
9490  DB  196,227,117,24,72,80,1              ; vinsertf128   $0x1,0x50(%rax),%ymm1,%ymm1
9491  DB  196,227,125,24,64,64,1              ; vinsertf128   $0x1,0x40(%rax),%ymm0,%ymm0
9492  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
9493  DB  197,252,21,233                      ; vunpckhps     %ymm1,%ymm0,%ymm5
9494  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
9495  DB  197,236,21,219                      ; vunpckhps     %ymm3,%ymm2,%ymm3
9496  DB  197,221,20,193                      ; vunpcklpd     %ymm1,%ymm4,%ymm0
9497  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
9498  DB  197,213,20,211                      ; vunpcklpd     %ymm3,%ymm5,%ymm2
9499  DB  197,213,21,219                      ; vunpckhpd     %ymm3,%ymm5,%ymm3
9500  DB  72,173                              ; lods          %ds:(%rsi),%rax
9501  DB  76,137,242                          ; mov           %r14,%rdx
9502  DB  76,137,249                          ; mov           %r15,%rcx
9503  DB  197,252,16,100,36,32                ; vmovups       0x20(%rsp),%ymm4
9504  DB  197,252,16,108,36,64                ; vmovups       0x40(%rsp),%ymm5
9505  DB  197,252,16,116,36,96                ; vmovups       0x60(%rsp),%ymm6
9506  DB  197,252,16,188,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm7
9507  DB  72,129,196,160,0,0,0                ; add           $0xa0,%rsp
9508  DB  91                                  ; pop           %rbx
9509  DB  65,94                               ; pop           %r14
9510  DB  65,95                               ; pop           %r15
9511  DB  255,224                             ; jmpq          *%rax
9512
9513ALIGN 4
9514  DB  0,0                                 ; add           %al,(%rax)
9515  DB  0,63                                ; add           %bh,(%rdi)
9516  DB  0,0                                 ; add           %al,(%rax)
9517  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
9518  DB  0,0                                 ; add           %al,(%rax)
9519  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
9520  DB  0,0                                 ; add           %al,(%rax)
9521  DB  2,0                                 ; add           (%rax),%al
9522  DB  0,0                                 ; add           %al,(%rax)
9523  DB  0,0                                 ; add           %al,(%rax)
9524  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
9525  DB  252                                 ; cld
9526  DB  190,0,0,128,63                      ; mov           $0x3f800000,%esi
9527  DB  0,0                                 ; add           %al,(%rax)
9528  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9529  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9530  DB  63                                  ; (bad)
9531  DB  0,0                                 ; add           %al,(%rax)
9532  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9533  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9534  DB  63                                  ; (bad)
9535  DB  0,0                                 ; add           %al,(%rax)
9536  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9537  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9538  DB  63                                  ; (bad)
9539  DB  0,0                                 ; add           %al,(%rax)
9540  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9541  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9542  DB  63                                  ; (bad)
9543  DB  0,0                                 ; add           %al,(%rax)
9544  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9545  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9546  DB  63                                  ; (bad)
9547  DB  0,0                                 ; add           %al,(%rax)
9548  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9549  DB  0,128,191,0,0,224                   ; add           %al,-0x1fffff41(%rax)
9550  DB  64,0,0                              ; add           %al,(%rax)
9551  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9552  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
9553  DB  63                                  ; (bad)
9554  DB  145                                 ; xchg          %eax,%ecx
9555  DB  131,158,61,154,153,153,62           ; sbbl          $0x3e,-0x666665c3(%rsi)
9556  DB  92                                  ; pop           %rsp
9557  DB  143                                 ; (bad)
9558  DB  50,63                               ; xor           (%rdi),%bh
9559  DB  10,215                              ; or            %bh,%dl
9560  DB  35,59                               ; and           (%rbx),%edi
9561  DB  174                                 ; scas          %es:(%rdi),%al
9562  DB  71,97                               ; rex.RXB       (bad)
9563  DB  61,41,92,71,65                      ; cmp           $0x41475c29,%eax
9564  DB  206                                 ; (bad)
9565  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
9566  DB  48,63                               ; xor           %bh,(%rdi)
9567  DB  168,87                              ; test          $0x57,%al
9568  DB  202,189,194                         ; lret          $0xc2bd
9569  DB  135,210                             ; xchg          %edx,%edx
9570  DB  62,0,0                              ; add           %al,%ds:(%rax)
9571  DB  128,63,4                            ; cmpb          $0x4,(%rdi)
9572  DB  231,140                             ; out           %eax,$0x8c
9573  DB  59,0                                ; cmp           (%rax),%eax
9574  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
9575  DB  64,0,0                              ; add           %al,(%rax)
9576  DB  0,64,0                              ; add           %al,0x0(%rax)
9577  DB  0,128,64,171,170,42                 ; add           %al,0x2aaaab40(%rax)
9578  DB  62,0,0                              ; add           %al,%ds:(%rax)
9579  DB  0,63                                ; add           %bh,(%rdi)
9580  DB  0,0                                 ; add           %al,(%rax)
9581  DB  0,63                                ; add           %bh,(%rdi)
9582  DB  171                                 ; stos          %eax,%es:(%rdi)
9583  DB  170                                 ; stos          %al,%es:(%rdi)
9584  DB  170                                 ; stos          %al,%es:(%rdi)
9585  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
9586  DB  170                                 ; stos          %al,%es:(%rdi)
9587  DB  42,63                               ; sub           (%rdi),%bh
9588  DB  0,0                                 ; add           %al,(%rax)
9589  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
9590  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
9591  DB  42,62                               ; sub           (%rsi),%bh
9592  DB  171                                 ; stos          %eax,%es:(%rdi)
9593  DB  170                                 ; stos          %al,%es:(%rdi)
9594  DB  170                                 ; stos          %al,%es:(%rdi)
9595  DB  190,129,128,128,59                  ; mov           $0x3b808081,%esi
9596  DB  129,128,128,59,0,248,0,0,8,33       ; addl          $0x21080000,-0x7ffc480(%rax)
9597  DB  132,55                              ; test          %dh,(%rdi)
9598  DB  224,7                               ; loopne        573d <.literal4+0xed>
9599  DB  0,0                                 ; add           %al,(%rax)
9600  DB  33,8                                ; and           %ecx,(%rax)
9601  DB  2,58                                ; add           (%rdx),%bh
9602  DB  31                                  ; (bad)
9603  DB  0,0                                 ; add           %al,(%rax)
9604  DB  0,8                                 ; add           %cl,(%rax)
9605  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
9606  DB  129,128,128,59,128,0,128,55,0,0     ; addl          $0x3780,0x803b80(%rax)
9607  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9608  DB  0,127,67                            ; add           %bh,0x43(%rdi)
9609  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
9610  DB  0,52,255                            ; add           %dh,(%rdi,%rdi,8)
9611  DB  255                                 ; (bad)
9612  DB  127,0                               ; jg            5768 <.literal4+0x118>
9613  DB  0,0                                 ; add           %al,(%rax)
9614  DB  0,63                                ; add           %bh,(%rdi)
9615  DB  119,115                             ; ja            57e1 <.literal4+0x191>
9616  DB  248                                 ; clc
9617  DB  194,117,191                         ; retq          $0xbf75
9618  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
9619  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
9620  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
9621  DB  154                                 ; (bad)
9622  DB  64,254                              ; rex           (bad)
9623  DB  210,221                             ; rcr           %cl,%ch
9624  DB  65,0,0                              ; add           %al,(%r8)
9625  DB  0,75,0                              ; add           %cl,0x0(%rbx)
9626  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
9627  DB  52,255                              ; xor           $0xff,%al
9628  DB  255                                 ; (bad)
9629  DB  127,0                               ; jg            579c <.literal4+0x14c>
9630  DB  0,0                                 ; add           %al,(%rax)
9631  DB  0,63                                ; add           %bh,(%rdi)
9632  DB  119,115                             ; ja            5815 <.literal4+0x1c5>
9633  DB  248                                 ; clc
9634  DB  194,117,191                         ; retq          $0xbf75
9635  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
9636  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
9637  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
9638  DB  154                                 ; (bad)
9639  DB  64,254                              ; rex           (bad)
9640  DB  210,221                             ; rcr           %cl,%ch
9641  DB  65,0,0                              ; add           %al,(%r8)
9642  DB  0,75,0                              ; add           %cl,0x0(%rbx)
9643  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
9644  DB  52,255                              ; xor           $0xff,%al
9645  DB  255                                 ; (bad)
9646  DB  127,0                               ; jg            57d0 <.literal4+0x180>
9647  DB  0,0                                 ; add           %al,(%rax)
9648  DB  0,63                                ; add           %bh,(%rdi)
9649  DB  119,115                             ; ja            5849 <.literal4+0x1f9>
9650  DB  248                                 ; clc
9651  DB  194,117,191                         ; retq          $0xbf75
9652  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
9653  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
9654  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
9655  DB  154                                 ; (bad)
9656  DB  64,254                              ; rex           (bad)
9657  DB  210,221                             ; rcr           %cl,%ch
9658  DB  65,0,0                              ; add           %al,(%r8)
9659  DB  0,75,0                              ; add           %cl,0x0(%rbx)
9660  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
9661  DB  52,255                              ; xor           $0xff,%al
9662  DB  255                                 ; (bad)
9663  DB  127,0                               ; jg            5804 <.literal4+0x1b4>
9664  DB  0,0                                 ; add           %al,(%rax)
9665  DB  0,63                                ; add           %bh,(%rdi)
9666  DB  119,115                             ; ja            587d <.literal4+0x22d>
9667  DB  248                                 ; clc
9668  DB  194,117,191                         ; retq          $0xbf75
9669  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
9670  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
9671  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
9672  DB  154                                 ; (bad)
9673  DB  64,254                              ; rex           (bad)
9674  DB  210,221                             ; rcr           %cl,%ch
9675  DB  65,0,0                              ; add           %al,(%r8)
9676  DB  0,75,0                              ; add           %cl,0x0(%rbx)
9677  DB  0,128,63,0,0,200                    ; add           %al,-0x37ffffc1(%rax)
9678  DB  66,0,0                              ; rex.X         add %al,(%rax)
9679  DB  127,67                              ; jg            587b <.literal4+0x22b>
9680  DB  0,0                                 ; add           %al,(%rax)
9681  DB  0,195                               ; add           %al,%bl
9682  DB  0,0                                 ; add           %al,(%rax)
9683  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
9684  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
9685  DB  59,10                               ; cmp           (%rdx),%ecx
9686  DB  215                                 ; xlat          %ds:(%rbx)
9687  DB  163,59,194,24,17,60,203,61,13       ; movabs        %eax,0xd3dcb3c1118c23b
9688  DB  190,80,128,3,62                     ; mov           $0x3e038050,%esi
9689  DB  31                                  ; (bad)
9690  DB  215                                 ; xlat          %ds:(%rbx)
9691  DB  118,63                              ; jbe           589b <.literal4+0x24b>
9692  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
9693  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
9694  DB  127,67                              ; jg            58af <.literal4+0x25f>
9695  DB  129,128,128,59,0,0,128,63,129,128   ; addl          $0x80813f80,0x3b80(%rax)
9696  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
9697  DB  0,128,63,129,128,128                ; add           %al,-0x7f7f7ec1(%rax)
9698  DB  59,0                                ; cmp           (%rax),%eax
9699  DB  248                                 ; clc
9700  DB  0,0                                 ; add           %al,(%rax)
9701  DB  8,33                                ; or            %ah,(%rcx)
9702  DB  132,55                              ; test          %dh,(%rdi)
9703  DB  224,7                               ; loopne        5891 <.literal4+0x241>
9704  DB  0,0                                 ; add           %al,(%rax)
9705  DB  33,8                                ; and           %ecx,(%rax)
9706  DB  2,58                                ; add           (%rdx),%bh
9707  DB  31                                  ; (bad)
9708  DB  0,0                                 ; add           %al,(%rax)
9709  DB  0,8                                 ; add           %cl,(%rax)
9710  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
9711  DB  0,248                               ; add           %bh,%al
9712  DB  0,0                                 ; add           %al,(%rax)
9713  DB  8,33                                ; or            %ah,(%rcx)
9714  DB  132,55                              ; test          %dh,(%rdi)
9715  DB  224,7                               ; loopne        58ad <.literal4+0x25d>
9716  DB  0,0                                 ; add           %al,(%rax)
9717  DB  33,8                                ; and           %ecx,(%rax)
9718  DB  2,58                                ; add           (%rdx),%bh
9719  DB  31                                  ; (bad)
9720  DB  0,0                                 ; add           %al,(%rax)
9721  DB  0,8                                 ; add           %cl,(%rax)
9722  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
9723  DB  0,0                                 ; add           %al,(%rax)
9724  DB  248                                 ; clc
9725  DB  65,0,0                              ; add           %al,(%r8)
9726  DB  124,66                              ; jl            5902 <.literal4+0x2b2>
9727  DB  0,240                               ; add           %dh,%al
9728  DB  0,0                                 ; add           %al,(%rax)
9729  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
9730  DB  0,0                                 ; add           %al,(%rax)
9731  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
9732  DB  0,0                                 ; add           %al,(%rax)
9733  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
9734  DB  0,0                                 ; add           %al,(%rax)
9735  DB  137,136,136,61,0,240                ; mov           %ecx,-0xfffc278(%rax)
9736  DB  0,0                                 ; add           %al,(%rax)
9737  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
9738  DB  0,0                                 ; add           %al,(%rax)
9739  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
9740  DB  0,0                                 ; add           %al,(%rax)
9741  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
9742  DB  0,0                                 ; add           %al,(%rax)
9743  DB  137,136,136,61,0,0                  ; mov           %ecx,0x3d88(%rax)
9744  DB  112,65                              ; jo            5945 <.literal4+0x2f5>
9745  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
9746  DB  127,67                              ; jg            5953 <.literal4+0x303>
9747  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
9748  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
9749  DB  0,0                                 ; add           %al,(%rax)
9750  DB  0,56                                ; add           %bh,(%rax)
9751  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
9752  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
9753  DB  0,0                                 ; add           %al,(%rax)
9754  DB  0,56                                ; add           %bh,(%rax)
9755  DB  0,0                                 ; add           %al,(%rax)
9756  DB  0,128,0,0,128,56                    ; add           %al,0x38800000(%rax)
9757  DB  0,64,254                            ; add           %al,-0x2(%rax)
9758  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
9759  DB  0,128,55,0,0,128                    ; add           %al,-0x7fffffc9(%rax)
9760  DB  63                                  ; (bad)
9761  DB  0,255                               ; add           %bh,%bh
9762  DB  127,71                              ; jg            5993 <.literal4+0x343>
9763  DB  208                                 ; (bad)
9764  DB  179,89                              ; mov           $0x59,%bl
9765  DB  62,89                               ; ds            pop %rcx
9766  DB  23                                  ; (bad)
9767  DB  55                                  ; (bad)
9768  DB  63                                  ; (bad)
9769  DB  152                                 ; cwtl
9770  DB  221,147,61,111,43,231               ; fstl          -0x18d490c3(%rbx)
9771  DB  187,159,215,202,60                  ; mov           $0x3ccad79f,%ebx
9772  DB  212                                 ; (bad)
9773  DB  100,84                              ; fs            push %rsp
9774  DB  189,169,240,34,62                   ; mov           $0x3e22f0a9,%ebp
9775  DB  0,0                                 ; add           %al,(%rax)
9776  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
9777  DB  0,0                                 ; add           %al,(%rax)
9778  DB  63                                  ; (bad)
9779  DB  0,0                                 ; add           %al,(%rax)
9780  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
9781  DB  0,0                                 ; add           %al,(%rax)
9782  DB  63                                  ; (bad)
9783  DB  0,0                                 ; add           %al,(%rax)
9784  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
9785  DB  0,0                                 ; add           %al,(%rax)
9786  DB  0,63                                ; add           %bh,(%rdi)
9787  DB  0,0                                 ; add           %al,(%rax)
9788  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
9789  DB  0,0                                 ; add           %al,(%rax)
9790  DB  0,63                                ; add           %bh,(%rdi)
9791  DB  0,0                                 ; add           %al,(%rax)
9792  DB  192,191,0,0,128,63,114              ; sarb          $0x72,0x3f800000(%rdi)
9793  DB  28,199                              ; sbb           $0xc7,%al
9794  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
9795  DB  170                                 ; stos          %al,%es:(%rdi)
9796  DB  170                                 ; stos          %al,%es:(%rdi)
9797  DB  190,0,0,0,191                       ; mov           $0xbf000000,%esi
9798  DB  0,0                                 ; add           %al,(%rax)
9799  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
9800  DB  85                                  ; push          %rbp
9801  DB  149                                 ; xchg          %eax,%ebp
9802  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
9803  DB  0,0                                 ; add           %al,(%rax)
9804  DB  0,63                                ; add           %bh,(%rdi)
9805  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
9806  DB  0,63                                ; add           %bh,(%rdi)
9807  DB  85                                  ; push          %rbp
9808  DB  85                                  ; push          %rbp
9809  DB  149                                 ; xchg          %eax,%ebp
9810  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
9811  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
9812  DB  192,63,114                          ; sarb          $0x72,(%rdi)
9813  DB  28,199                              ; sbb           $0xc7,%al
9814  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
9815  DB  170                                 ; stos          %al,%es:(%rdi)
9816  DB  170                                 ; stos          %al,%es:(%rdi)
9817  DB  190,0,0,192,191                     ; mov           $0xbfc00000,%esi
9818  DB  0,0                                 ; add           %al,(%rax)
9819  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
9820  DB  28,199                              ; sbb           $0xc7,%al
9821  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
9822  DB  170                                 ; stos          %al,%es:(%rdi)
9823  DB  170                                 ; stos          %al,%es:(%rdi)
9824  DB  190,0,0,0,191                       ; mov           $0xbf000000,%esi
9825  DB  0,0                                 ; add           %al,(%rax)
9826  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
9827  DB  85                                  ; push          %rbp
9828  DB  149                                 ; xchg          %eax,%ebp
9829  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
9830  DB  0,0                                 ; add           %al,(%rax)
9831  DB  0,63                                ; add           %bh,(%rdi)
9832  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
9833  DB  0,63                                ; add           %bh,(%rdi)
9834  DB  85                                  ; push          %rbp
9835  DB  85                                  ; push          %rbp
9836  DB  149                                 ; xchg          %eax,%ebp
9837  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
9838  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
9839  DB  192,63,114                          ; sarb          $0x72,(%rdi)
9840  DB  28,199                              ; sbb           $0xc7,%al
9841  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
9842  DB  170                                 ; stos          %al,%es:(%rdi)
9843  DB  170                                 ; stos          %al,%es:(%rdi)
9844  DB  190                                 ; .byte         0xbe
9845
9846ALIGN 32
9847  DB  255,0                               ; incl          (%rax)
9848  DB  0,0                                 ; add           %al,(%rax)
9849  DB  255,0                               ; incl          (%rax)
9850  DB  0,0                                 ; add           %al,(%rax)
9851  DB  255,0                               ; incl          (%rax)
9852  DB  0,0                                 ; add           %al,(%rax)
9853  DB  255,0                               ; incl          (%rax)
9854  DB  0,0                                 ; add           %al,(%rax)
9855  DB  255,0                               ; incl          (%rax)
9856  DB  0,0                                 ; add           %al,(%rax)
9857  DB  255,0                               ; incl          (%rax)
9858  DB  0,0                                 ; add           %al,(%rax)
9859  DB  255,0                               ; incl          (%rax)
9860  DB  0,0                                 ; add           %al,(%rax)
9861  DB  255,0                               ; incl          (%rax)
9862  DB  0,0                                 ; add           %al,(%rax)
9863  DB  255,0                               ; incl          (%rax)
9864  DB  0,0                                 ; add           %al,(%rax)
9865  DB  255,0                               ; incl          (%rax)
9866  DB  0,0                                 ; add           %al,(%rax)
9867  DB  255,0                               ; incl          (%rax)
9868  DB  0,0                                 ; add           %al,(%rax)
9869  DB  255,0                               ; incl          (%rax)
9870  DB  0,0                                 ; add           %al,(%rax)
9871  DB  255,0                               ; incl          (%rax)
9872  DB  0,0                                 ; add           %al,(%rax)
9873  DB  255,0                               ; incl          (%rax)
9874  DB  0,0                                 ; add           %al,(%rax)
9875  DB  255,0                               ; incl          (%rax)
9876  DB  0,0                                 ; add           %al,(%rax)
9877  DB  255,0                               ; incl          (%rax)
9878  DB  0,0                                 ; add           %al,(%rax)
9879  DB  255,0                               ; incl          (%rax)
9880  DB  0,0                                 ; add           %al,(%rax)
9881  DB  255,0                               ; incl          (%rax)
9882  DB  0,0                                 ; add           %al,(%rax)
9883  DB  255,0                               ; incl          (%rax)
9884  DB  0,0                                 ; add           %al,(%rax)
9885  DB  255,0                               ; incl          (%rax)
9886  DB  0,0                                 ; add           %al,(%rax)
9887  DB  255,0                               ; incl          (%rax)
9888  DB  0,0                                 ; add           %al,(%rax)
9889  DB  255,0                               ; incl          (%rax)
9890  DB  0,0                                 ; add           %al,(%rax)
9891  DB  255,0                               ; incl          (%rax)
9892  DB  0,0                                 ; add           %al,(%rax)
9893  DB  255,0                               ; incl          (%rax)
9894  DB  0,0                                 ; add           %al,(%rax)
9895  DB  255,0                               ; incl          (%rax)
9896  DB  0,0                                 ; add           %al,(%rax)
9897  DB  255,0                               ; incl          (%rax)
9898  DB  0,0                                 ; add           %al,(%rax)
9899  DB  255,0                               ; incl          (%rax)
9900  DB  0,0                                 ; add           %al,(%rax)
9901  DB  255,0                               ; incl          (%rax)
9902  DB  0,0                                 ; add           %al,(%rax)
9903  DB  255,0                               ; incl          (%rax)
9904  DB  0,0                                 ; add           %al,(%rax)
9905  DB  255,0                               ; incl          (%rax)
9906  DB  0,0                                 ; add           %al,(%rax)
9907  DB  255,0                               ; incl          (%rax)
9908  DB  0,0                                 ; add           %al,(%rax)
9909  DB  255,0                               ; incl          (%rax)
9910  DB  0,0                                 ; add           %al,(%rax)
9911
9912ALIGN 16
9913  DB  255,0                               ; incl          (%rax)
9914  DB  255,0                               ; incl          (%rax)
9915  DB  255,0                               ; incl          (%rax)
9916  DB  255,0                               ; incl          (%rax)
9917  DB  255,0                               ; incl          (%rax)
9918  DB  255,0                               ; incl          (%rax)
9919  DB  255,0                               ; incl          (%rax)
9920  DB  255,0                               ; incl          (%rax)
9921  DB  255,0                               ; incl          (%rax)
9922  DB  255,0                               ; incl          (%rax)
9923  DB  255,0                               ; incl          (%rax)
9924  DB  255,0                               ; incl          (%rax)
9925  DB  255,0                               ; incl          (%rax)
9926  DB  255,0                               ; incl          (%rax)
9927  DB  255,0                               ; incl          (%rax)
9928  DB  255,0                               ; incl          (%rax)
9929ALIGN 32
9930
9931PUBLIC _sk_start_pipeline_sse41
9932_sk_start_pipeline_sse41 LABEL PROC
9933  DB  65,87                               ; push          %r15
9934  DB  65,86                               ; push          %r14
9935  DB  65,85                               ; push          %r13
9936  DB  65,84                               ; push          %r12
9937  DB  86                                  ; push          %rsi
9938  DB  87                                  ; push          %rdi
9939  DB  83                                  ; push          %rbx
9940  DB  72,129,236,160,0,0,0                ; sub           $0xa0,%rsp
9941  DB  68,15,41,188,36,144,0,0,0           ; movaps        %xmm15,0x90(%rsp)
9942  DB  68,15,41,180,36,128,0,0,0           ; movaps        %xmm14,0x80(%rsp)
9943  DB  68,15,41,108,36,112                 ; movaps        %xmm13,0x70(%rsp)
9944  DB  68,15,41,100,36,96                  ; movaps        %xmm12,0x60(%rsp)
9945  DB  68,15,41,92,36,80                   ; movaps        %xmm11,0x50(%rsp)
9946  DB  68,15,41,84,36,64                   ; movaps        %xmm10,0x40(%rsp)
9947  DB  68,15,41,76,36,48                   ; movaps        %xmm9,0x30(%rsp)
9948  DB  68,15,41,68,36,32                   ; movaps        %xmm8,0x20(%rsp)
9949  DB  15,41,124,36,16                     ; movaps        %xmm7,0x10(%rsp)
9950  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
9951  DB  77,137,207                          ; mov           %r9,%r15
9952  DB  77,137,198                          ; mov           %r8,%r14
9953  DB  72,137,203                          ; mov           %rcx,%rbx
9954  DB  72,137,214                          ; mov           %rdx,%rsi
9955  DB  72,173                              ; lods          %ds:(%rsi),%rax
9956  DB  73,137,196                          ; mov           %rax,%r12
9957  DB  73,137,245                          ; mov           %rsi,%r13
9958  DB  72,141,67,4                         ; lea           0x4(%rbx),%rax
9959  DB  76,57,248                           ; cmp           %r15,%rax
9960  DB  118,5                               ; jbe           73 <_sk_start_pipeline_sse41+0x73>
9961  DB  72,137,216                          ; mov           %rbx,%rax
9962  DB  235,52                              ; jmp           a7 <_sk_start_pipeline_sse41+0xa7>
9963  DB  15,87,192                           ; xorps         %xmm0,%xmm0
9964  DB  15,87,201                           ; xorps         %xmm1,%xmm1
9965  DB  15,87,210                           ; xorps         %xmm2,%xmm2
9966  DB  15,87,219                           ; xorps         %xmm3,%xmm3
9967  DB  15,87,228                           ; xorps         %xmm4,%xmm4
9968  DB  15,87,237                           ; xorps         %xmm5,%xmm5
9969  DB  15,87,246                           ; xorps         %xmm6,%xmm6
9970  DB  15,87,255                           ; xorps         %xmm7,%xmm7
9971  DB  72,137,223                          ; mov           %rbx,%rdi
9972  DB  76,137,238                          ; mov           %r13,%rsi
9973  DB  76,137,242                          ; mov           %r14,%rdx
9974  DB  65,255,212                          ; callq         *%r12
9975  DB  72,141,67,4                         ; lea           0x4(%rbx),%rax
9976  DB  72,131,195,8                        ; add           $0x8,%rbx
9977  DB  76,57,251                           ; cmp           %r15,%rbx
9978  DB  72,137,195                          ; mov           %rax,%rbx
9979  DB  118,204                             ; jbe           73 <_sk_start_pipeline_sse41+0x73>
9980  DB  15,40,52,36                         ; movaps        (%rsp),%xmm6
9981  DB  15,40,124,36,16                     ; movaps        0x10(%rsp),%xmm7
9982  DB  68,15,40,68,36,32                   ; movaps        0x20(%rsp),%xmm8
9983  DB  68,15,40,76,36,48                   ; movaps        0x30(%rsp),%xmm9
9984  DB  68,15,40,84,36,64                   ; movaps        0x40(%rsp),%xmm10
9985  DB  68,15,40,92,36,80                   ; movaps        0x50(%rsp),%xmm11
9986  DB  68,15,40,100,36,96                  ; movaps        0x60(%rsp),%xmm12
9987  DB  68,15,40,108,36,112                 ; movaps        0x70(%rsp),%xmm13
9988  DB  68,15,40,180,36,128,0,0,0           ; movaps        0x80(%rsp),%xmm14
9989  DB  68,15,40,188,36,144,0,0,0           ; movaps        0x90(%rsp),%xmm15
9990  DB  72,129,196,160,0,0,0                ; add           $0xa0,%rsp
9991  DB  91                                  ; pop           %rbx
9992  DB  95                                  ; pop           %rdi
9993  DB  94                                  ; pop           %rsi
9994  DB  65,92                               ; pop           %r12
9995  DB  65,93                               ; pop           %r13
9996  DB  65,94                               ; pop           %r14
9997  DB  65,95                               ; pop           %r15
9998  DB  195                                 ; retq
9999
10000PUBLIC _sk_just_return_sse41
10001_sk_just_return_sse41 LABEL PROC
10002  DB  195                                 ; retq
10003
10004PUBLIC _sk_seed_shader_sse41
10005_sk_seed_shader_sse41 LABEL PROC
10006  DB  72,173                              ; lods          %ds:(%rsi),%rax
10007  DB  102,15,110,199                      ; movd          %edi,%xmm0
10008  DB  102,15,112,192,0                    ; pshufd        $0x0,%xmm0,%xmm0
10009  DB  15,91,200                           ; cvtdq2ps      %xmm0,%xmm1
10010  DB  15,40,21,49,58,0,0                  ; movaps        0x3a31(%rip),%xmm2        # 3b40 <_sk_callback_sse41+0xaf>
10011  DB  15,88,202                           ; addps         %xmm2,%xmm1
10012  DB  15,16,2                             ; movups        (%rdx),%xmm0
10013  DB  15,88,193                           ; addps         %xmm1,%xmm0
10014  DB  102,15,110,8                        ; movd          (%rax),%xmm1
10015  DB  102,15,112,201,0                    ; pshufd        $0x0,%xmm1,%xmm1
10016  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
10017  DB  15,88,202                           ; addps         %xmm2,%xmm1
10018  DB  72,173                              ; lods          %ds:(%rsi),%rax
10019  DB  15,40,21,32,58,0,0                  ; movaps        0x3a20(%rip),%xmm2        # 3b50 <_sk_callback_sse41+0xbf>
10020  DB  15,87,219                           ; xorps         %xmm3,%xmm3
10021  DB  15,87,228                           ; xorps         %xmm4,%xmm4
10022  DB  15,87,237                           ; xorps         %xmm5,%xmm5
10023  DB  15,87,246                           ; xorps         %xmm6,%xmm6
10024  DB  15,87,255                           ; xorps         %xmm7,%xmm7
10025  DB  255,224                             ; jmpq          *%rax
10026
10027PUBLIC _sk_dither_sse41
10028_sk_dither_sse41 LABEL PROC
10029  DB  72,173                              ; lods          %ds:(%rsi),%rax
10030  DB  102,68,15,110,199                   ; movd          %edi,%xmm8
10031  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
10032  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
10033  DB  68,15,16,10                         ; movups        (%rdx),%xmm9
10034  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
10035  DB  243,69,15,91,201                    ; cvttps2dq     %xmm9,%xmm9
10036  DB  72,139,8                            ; mov           (%rax),%rcx
10037  DB  102,68,15,110,1                     ; movd          (%rcx),%xmm8
10038  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
10039  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
10040  DB  102,68,15,111,21,229,57,0,0         ; movdqa        0x39e5(%rip),%xmm10        # 3b60 <_sk_callback_sse41+0xcf>
10041  DB  102,69,15,111,216                   ; movdqa        %xmm8,%xmm11
10042  DB  102,69,15,219,218                   ; pand          %xmm10,%xmm11
10043  DB  102,65,15,114,243,5                 ; pslld         $0x5,%xmm11
10044  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
10045  DB  102,65,15,114,242,4                 ; pslld         $0x4,%xmm10
10046  DB  102,68,15,111,37,209,57,0,0         ; movdqa        0x39d1(%rip),%xmm12        # 3b70 <_sk_callback_sse41+0xdf>
10047  DB  102,68,15,111,45,216,57,0,0         ; movdqa        0x39d8(%rip),%xmm13        # 3b80 <_sk_callback_sse41+0xef>
10048  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
10049  DB  102,69,15,219,245                   ; pand          %xmm13,%xmm14
10050  DB  102,65,15,114,246,2                 ; pslld         $0x2,%xmm14
10051  DB  102,69,15,219,233                   ; pand          %xmm9,%xmm13
10052  DB  102,69,15,254,237                   ; paddd         %xmm13,%xmm13
10053  DB  102,69,15,219,196                   ; pand          %xmm12,%xmm8
10054  DB  102,65,15,114,208,1                 ; psrld         $0x1,%xmm8
10055  DB  102,69,15,219,204                   ; pand          %xmm12,%xmm9
10056  DB  102,65,15,114,209,2                 ; psrld         $0x2,%xmm9
10057  DB  102,69,15,235,234                   ; por           %xmm10,%xmm13
10058  DB  102,69,15,235,233                   ; por           %xmm9,%xmm13
10059  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
10060  DB  102,69,15,235,245                   ; por           %xmm13,%xmm14
10061  DB  102,69,15,235,240                   ; por           %xmm8,%xmm14
10062  DB  69,15,91,198                        ; cvtdq2ps      %xmm14,%xmm8
10063  DB  68,15,89,5,147,57,0,0               ; mulps         0x3993(%rip),%xmm8        # 3b90 <_sk_callback_sse41+0xff>
10064  DB  68,15,88,5,155,57,0,0               ; addps         0x399b(%rip),%xmm8        # 3ba0 <_sk_callback_sse41+0x10f>
10065  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
10066  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
10067  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
10068  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
10069  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
10070  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
10071  DB  72,173                              ; lods          %ds:(%rsi),%rax
10072  DB  255,224                             ; jmpq          *%rax
10073
10074PUBLIC _sk_constant_color_sse41
10075_sk_constant_color_sse41 LABEL PROC
10076  DB  72,173                              ; lods          %ds:(%rsi),%rax
10077  DB  243,15,16,0                         ; movss         (%rax),%xmm0
10078  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
10079  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
10080  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
10081  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
10082  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
10083  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
10084  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
10085  DB  72,173                              ; lods          %ds:(%rsi),%rax
10086  DB  255,224                             ; jmpq          *%rax
10087
10088PUBLIC _sk_clear_sse41
10089_sk_clear_sse41 LABEL PROC
10090  DB  72,173                              ; lods          %ds:(%rsi),%rax
10091  DB  15,87,192                           ; xorps         %xmm0,%xmm0
10092  DB  15,87,201                           ; xorps         %xmm1,%xmm1
10093  DB  15,87,210                           ; xorps         %xmm2,%xmm2
10094  DB  15,87,219                           ; xorps         %xmm3,%xmm3
10095  DB  255,224                             ; jmpq          *%rax
10096
10097PUBLIC _sk_srcatop_sse41
10098_sk_srcatop_sse41 LABEL PROC
10099  DB  15,89,199                           ; mulps         %xmm7,%xmm0
10100  DB  68,15,40,5,72,57,0,0                ; movaps        0x3948(%rip),%xmm8        # 3bb0 <_sk_callback_sse41+0x11f>
10101  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
10102  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
10103  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
10104  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
10105  DB  15,89,207                           ; mulps         %xmm7,%xmm1
10106  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
10107  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
10108  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
10109  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10110  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
10111  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10112  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
10113  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10114  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
10115  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
10116  DB  72,173                              ; lods          %ds:(%rsi),%rax
10117  DB  255,224                             ; jmpq          *%rax
10118
10119PUBLIC _sk_dstatop_sse41
10120_sk_dstatop_sse41 LABEL PROC
10121  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
10122  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
10123  DB  68,15,40,13,11,57,0,0               ; movaps        0x390b(%rip),%xmm9        # 3bc0 <_sk_callback_sse41+0x12f>
10124  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
10125  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
10126  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
10127  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
10128  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
10129  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
10130  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
10131  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
10132  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
10133  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
10134  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
10135  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
10136  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10137  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
10138  DB  72,173                              ; lods          %ds:(%rsi),%rax
10139  DB  255,224                             ; jmpq          *%rax
10140
10141PUBLIC _sk_srcin_sse41
10142_sk_srcin_sse41 LABEL PROC
10143  DB  15,89,199                           ; mulps         %xmm7,%xmm0
10144  DB  15,89,207                           ; mulps         %xmm7,%xmm1
10145  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10146  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10147  DB  72,173                              ; lods          %ds:(%rsi),%rax
10148  DB  255,224                             ; jmpq          *%rax
10149
10150PUBLIC _sk_dstin_sse41
10151_sk_dstin_sse41 LABEL PROC
10152  DB  15,40,195                           ; movaps        %xmm3,%xmm0
10153  DB  15,89,196                           ; mulps         %xmm4,%xmm0
10154  DB  15,40,203                           ; movaps        %xmm3,%xmm1
10155  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10156  DB  15,40,211                           ; movaps        %xmm3,%xmm2
10157  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10158  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10159  DB  72,173                              ; lods          %ds:(%rsi),%rax
10160  DB  255,224                             ; jmpq          *%rax
10161
10162PUBLIC _sk_srcout_sse41
10163_sk_srcout_sse41 LABEL PROC
10164  DB  68,15,40,5,175,56,0,0               ; movaps        0x38af(%rip),%xmm8        # 3bd0 <_sk_callback_sse41+0x13f>
10165  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
10166  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
10167  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
10168  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
10169  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
10170  DB  72,173                              ; lods          %ds:(%rsi),%rax
10171  DB  255,224                             ; jmpq          *%rax
10172
10173PUBLIC _sk_dstout_sse41
10174_sk_dstout_sse41 LABEL PROC
10175  DB  68,15,40,5,159,56,0,0               ; movaps        0x389f(%rip),%xmm8        # 3be0 <_sk_callback_sse41+0x14f>
10176  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
10177  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10178  DB  15,89,196                           ; mulps         %xmm4,%xmm0
10179  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
10180  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10181  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
10182  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10183  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
10184  DB  72,173                              ; lods          %ds:(%rsi),%rax
10185  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
10186  DB  255,224                             ; jmpq          *%rax
10187
10188PUBLIC _sk_srcover_sse41
10189_sk_srcover_sse41 LABEL PROC
10190  DB  68,15,40,5,130,56,0,0               ; movaps        0x3882(%rip),%xmm8        # 3bf0 <_sk_callback_sse41+0x15f>
10191  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
10192  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
10193  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
10194  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
10195  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
10196  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
10197  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
10198  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
10199  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10200  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
10201  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
10202  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
10203  DB  72,173                              ; lods          %ds:(%rsi),%rax
10204  DB  255,224                             ; jmpq          *%rax
10205
10206PUBLIC _sk_dstover_sse41
10207_sk_dstover_sse41 LABEL PROC
10208  DB  68,15,40,5,86,56,0,0                ; movaps        0x3856(%rip),%xmm8        # 3c00 <_sk_callback_sse41+0x16f>
10209  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
10210  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
10211  DB  15,88,196                           ; addps         %xmm4,%xmm0
10212  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
10213  DB  15,88,205                           ; addps         %xmm5,%xmm1
10214  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
10215  DB  15,88,214                           ; addps         %xmm6,%xmm2
10216  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
10217  DB  15,88,223                           ; addps         %xmm7,%xmm3
10218  DB  72,173                              ; lods          %ds:(%rsi),%rax
10219  DB  255,224                             ; jmpq          *%rax
10220
10221PUBLIC _sk_modulate_sse41
10222_sk_modulate_sse41 LABEL PROC
10223  DB  15,89,196                           ; mulps         %xmm4,%xmm0
10224  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10225  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10226  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10227  DB  72,173                              ; lods          %ds:(%rsi),%rax
10228  DB  255,224                             ; jmpq          *%rax
10229
10230PUBLIC _sk_multiply_sse41
10231_sk_multiply_sse41 LABEL PROC
10232  DB  68,15,40,5,42,56,0,0                ; movaps        0x382a(%rip),%xmm8        # 3c10 <_sk_callback_sse41+0x17f>
10233  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
10234  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
10235  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
10236  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
10237  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
10238  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
10239  DB  68,15,89,220                        ; mulps         %xmm4,%xmm11
10240  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
10241  DB  15,89,196                           ; mulps         %xmm4,%xmm0
10242  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
10243  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
10244  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
10245  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
10246  DB  68,15,89,221                        ; mulps         %xmm5,%xmm11
10247  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
10248  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10249  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
10250  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
10251  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
10252  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
10253  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
10254  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
10255  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10256  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
10257  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
10258  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
10259  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
10260  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10261  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
10262  DB  72,173                              ; lods          %ds:(%rsi),%rax
10263  DB  255,224                             ; jmpq          *%rax
10264
10265PUBLIC _sk_plus__sse41
10266_sk_plus__sse41 LABEL PROC
10267  DB  15,88,196                           ; addps         %xmm4,%xmm0
10268  DB  15,88,205                           ; addps         %xmm5,%xmm1
10269  DB  15,88,214                           ; addps         %xmm6,%xmm2
10270  DB  15,88,223                           ; addps         %xmm7,%xmm3
10271  DB  72,173                              ; lods          %ds:(%rsi),%rax
10272  DB  255,224                             ; jmpq          *%rax
10273
10274PUBLIC _sk_screen_sse41
10275_sk_screen_sse41 LABEL PROC
10276  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10277  DB  68,15,88,196                        ; addps         %xmm4,%xmm8
10278  DB  15,89,196                           ; mulps         %xmm4,%xmm0
10279  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
10280  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
10281  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
10282  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10283  DB  68,15,92,201                        ; subps         %xmm1,%xmm9
10284  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
10285  DB  68,15,88,214                        ; addps         %xmm6,%xmm10
10286  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10287  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
10288  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
10289  DB  68,15,88,223                        ; addps         %xmm7,%xmm11
10290  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10291  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
10292  DB  72,173                              ; lods          %ds:(%rsi),%rax
10293  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10294  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
10295  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
10296  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
10297  DB  255,224                             ; jmpq          *%rax
10298
10299PUBLIC _sk_xor__sse41
10300_sk_xor__sse41 LABEL PROC
10301  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
10302  DB  15,40,29,91,55,0,0                  ; movaps        0x375b(%rip),%xmm3        # 3c20 <_sk_callback_sse41+0x18f>
10303  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10304  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
10305  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
10306  DB  65,15,92,216                        ; subps         %xmm8,%xmm3
10307  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
10308  DB  68,15,89,212                        ; mulps         %xmm4,%xmm10
10309  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
10310  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
10311  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
10312  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
10313  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
10314  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
10315  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
10316  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
10317  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
10318  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
10319  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10320  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
10321  DB  72,173                              ; lods          %ds:(%rsi),%rax
10322  DB  255,224                             ; jmpq          *%rax
10323
10324PUBLIC _sk_darken_sse41
10325_sk_darken_sse41 LABEL PROC
10326  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
10327  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
10328  DB  15,88,196                           ; addps         %xmm4,%xmm0
10329  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
10330  DB  15,40,203                           ; movaps        %xmm3,%xmm1
10331  DB  15,89,204                           ; mulps         %xmm4,%xmm1
10332  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
10333  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
10334  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
10335  DB  15,88,205                           ; addps         %xmm5,%xmm1
10336  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
10337  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10338  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
10339  DB  69,15,95,193                        ; maxps         %xmm9,%xmm8
10340  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
10341  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
10342  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
10343  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10344  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10345  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10346  DB  65,15,95,209                        ; maxps         %xmm9,%xmm2
10347  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
10348  DB  15,40,21,198,54,0,0                 ; movaps        0x36c6(%rip),%xmm2        # 3c30 <_sk_callback_sse41+0x19f>
10349  DB  15,92,211                           ; subps         %xmm3,%xmm2
10350  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10351  DB  15,88,218                           ; addps         %xmm2,%xmm3
10352  DB  72,173                              ; lods          %ds:(%rsi),%rax
10353  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
10354  DB  255,224                             ; jmpq          *%rax
10355
10356PUBLIC _sk_lighten_sse41
10357_sk_lighten_sse41 LABEL PROC
10358  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
10359  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
10360  DB  15,88,196                           ; addps         %xmm4,%xmm0
10361  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
10362  DB  15,40,203                           ; movaps        %xmm3,%xmm1
10363  DB  15,89,204                           ; mulps         %xmm4,%xmm1
10364  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
10365  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
10366  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
10367  DB  15,88,205                           ; addps         %xmm5,%xmm1
10368  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
10369  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10370  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
10371  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
10372  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
10373  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
10374  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
10375  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10376  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10377  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10378  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
10379  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
10380  DB  15,40,21,107,54,0,0                 ; movaps        0x366b(%rip),%xmm2        # 3c40 <_sk_callback_sse41+0x1af>
10381  DB  15,92,211                           ; subps         %xmm3,%xmm2
10382  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10383  DB  15,88,218                           ; addps         %xmm2,%xmm3
10384  DB  72,173                              ; lods          %ds:(%rsi),%rax
10385  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
10386  DB  255,224                             ; jmpq          *%rax
10387
10388PUBLIC _sk_difference_sse41
10389_sk_difference_sse41 LABEL PROC
10390  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
10391  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
10392  DB  15,88,196                           ; addps         %xmm4,%xmm0
10393  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
10394  DB  15,40,203                           ; movaps        %xmm3,%xmm1
10395  DB  15,89,204                           ; mulps         %xmm4,%xmm1
10396  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
10397  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
10398  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
10399  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
10400  DB  15,88,205                           ; addps         %xmm5,%xmm1
10401  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
10402  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10403  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
10404  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
10405  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
10406  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
10407  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
10408  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
10409  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10410  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10411  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10412  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
10413  DB  15,88,210                           ; addps         %xmm2,%xmm2
10414  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
10415  DB  15,40,21,5,54,0,0                   ; movaps        0x3605(%rip),%xmm2        # 3c50 <_sk_callback_sse41+0x1bf>
10416  DB  15,92,211                           ; subps         %xmm3,%xmm2
10417  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10418  DB  15,88,218                           ; addps         %xmm2,%xmm3
10419  DB  72,173                              ; lods          %ds:(%rsi),%rax
10420  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
10421  DB  255,224                             ; jmpq          *%rax
10422
10423PUBLIC _sk_exclusion_sse41
10424_sk_exclusion_sse41 LABEL PROC
10425  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10426  DB  15,88,196                           ; addps         %xmm4,%xmm0
10427  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
10428  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
10429  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
10430  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
10431  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
10432  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10433  DB  15,88,201                           ; addps         %xmm1,%xmm1
10434  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
10435  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
10436  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
10437  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10438  DB  15,88,210                           ; addps         %xmm2,%xmm2
10439  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
10440  DB  15,40,13,198,53,0,0                 ; movaps        0x35c6(%rip),%xmm1        # 3c60 <_sk_callback_sse41+0x1cf>
10441  DB  15,92,203                           ; subps         %xmm3,%xmm1
10442  DB  15,89,207                           ; mulps         %xmm7,%xmm1
10443  DB  15,88,217                           ; addps         %xmm1,%xmm3
10444  DB  72,173                              ; lods          %ds:(%rsi),%rax
10445  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
10446  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
10447  DB  255,224                             ; jmpq          *%rax
10448
10449PUBLIC _sk_colorburn_sse41
10450_sk_colorburn_sse41 LABEL PROC
10451  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10452  DB  68,15,40,21,181,53,0,0              ; movaps        0x35b5(%rip),%xmm10        # 3c70 <_sk_callback_sse41+0x1df>
10453  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
10454  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
10455  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
10456  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
10457  DB  15,40,199                           ; movaps        %xmm7,%xmm0
10458  DB  15,92,196                           ; subps         %xmm4,%xmm0
10459  DB  15,89,195                           ; mulps         %xmm3,%xmm0
10460  DB  65,15,94,192                        ; divps         %xmm8,%xmm0
10461  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
10462  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
10463  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10464  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
10465  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
10466  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
10467  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
10468  DB  68,15,88,228                        ; addps         %xmm4,%xmm12
10469  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
10470  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10471  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
10472  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
10473  DB  102,69,15,56,20,232                 ; blendvps      %xmm0,%xmm8,%xmm13
10474  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
10475  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
10476  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10477  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
10478  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
10479  DB  102,69,15,56,20,196                 ; blendvps      %xmm0,%xmm12,%xmm8
10480  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
10481  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
10482  DB  15,40,199                           ; movaps        %xmm7,%xmm0
10483  DB  15,92,197                           ; subps         %xmm5,%xmm0
10484  DB  15,89,195                           ; mulps         %xmm3,%xmm0
10485  DB  15,94,193                           ; divps         %xmm1,%xmm0
10486  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10487  DB  68,15,93,232                        ; minps         %xmm0,%xmm13
10488  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
10489  DB  69,15,92,245                        ; subps         %xmm13,%xmm14
10490  DB  15,40,193                           ; movaps        %xmm1,%xmm0
10491  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
10492  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
10493  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
10494  DB  102,68,15,56,20,241                 ; blendvps      %xmm0,%xmm1,%xmm14
10495  DB  68,15,88,229                        ; addps         %xmm5,%xmm12
10496  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
10497  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10498  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
10499  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10500  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
10501  DB  102,65,15,56,20,204                 ; blendvps      %xmm0,%xmm12,%xmm1
10502  DB  15,40,199                           ; movaps        %xmm7,%xmm0
10503  DB  15,92,198                           ; subps         %xmm6,%xmm0
10504  DB  15,89,195                           ; mulps         %xmm3,%xmm0
10505  DB  15,94,194                           ; divps         %xmm2,%xmm0
10506  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
10507  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
10508  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10509  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
10510  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
10511  DB  68,15,194,202,0                     ; cmpeqps       %xmm2,%xmm9
10512  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
10513  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
10514  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
10515  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
10516  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
10517  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
10518  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10519  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
10520  DB  15,40,198                           ; movaps        %xmm6,%xmm0
10521  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
10522  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
10523  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
10524  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
10525  DB  72,173                              ; lods          %ds:(%rsi),%rax
10526  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10527  DB  255,224                             ; jmpq          *%rax
10528
10529PUBLIC _sk_colordodge_sse41
10530_sk_colordodge_sse41 LABEL PROC
10531  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10532  DB  68,15,40,21,147,52,0,0              ; movaps        0x3493(%rip),%xmm10        # 3c80 <_sk_callback_sse41+0x1ef>
10533  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
10534  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
10535  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
10536  DB  69,15,89,224                        ; mulps         %xmm8,%xmm12
10537  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
10538  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
10539  DB  15,40,195                           ; movaps        %xmm3,%xmm0
10540  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
10541  DB  68,15,94,200                        ; divps         %xmm0,%xmm9
10542  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10543  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
10544  DB  69,15,93,241                        ; minps         %xmm9,%xmm14
10545  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10546  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
10547  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
10548  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
10549  DB  102,69,15,56,20,240                 ; blendvps      %xmm0,%xmm8,%xmm14
10550  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
10551  DB  68,15,88,228                        ; addps         %xmm4,%xmm12
10552  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
10553  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
10554  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
10555  DB  69,15,88,198                        ; addps         %xmm14,%xmm8
10556  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10557  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
10558  DB  102,69,15,56,20,196                 ; blendvps      %xmm0,%xmm12,%xmm8
10559  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
10560  DB  68,15,89,229                        ; mulps         %xmm5,%xmm12
10561  DB  15,40,195                           ; movaps        %xmm3,%xmm0
10562  DB  15,92,193                           ; subps         %xmm1,%xmm0
10563  DB  68,15,94,224                        ; divps         %xmm0,%xmm12
10564  DB  69,15,40,243                        ; movaps        %xmm11,%xmm14
10565  DB  68,15,89,241                        ; mulps         %xmm1,%xmm14
10566  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
10567  DB  15,40,193                           ; movaps        %xmm1,%xmm0
10568  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
10569  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
10570  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
10571  DB  102,68,15,56,20,233                 ; blendvps      %xmm0,%xmm1,%xmm13
10572  DB  68,15,88,245                        ; addps         %xmm5,%xmm14
10573  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
10574  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10575  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
10576  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10577  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
10578  DB  102,65,15,56,20,206                 ; blendvps      %xmm0,%xmm14,%xmm1
10579  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
10580  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
10581  DB  15,40,195                           ; movaps        %xmm3,%xmm0
10582  DB  15,92,194                           ; subps         %xmm2,%xmm0
10583  DB  68,15,94,224                        ; divps         %xmm0,%xmm12
10584  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10585  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
10586  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
10587  DB  15,40,194                           ; movaps        %xmm2,%xmm0
10588  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
10589  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
10590  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
10591  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
10592  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
10593  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10594  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
10595  DB  68,15,194,206,0                     ; cmpeqps       %xmm6,%xmm9
10596  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
10597  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
10598  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
10599  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
10600  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
10601  DB  72,173                              ; lods          %ds:(%rsi),%rax
10602  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10603  DB  255,224                             ; jmpq          *%rax
10604
10605PUBLIC _sk_hardlight_sse41
10606_sk_hardlight_sse41 LABEL PROC
10607  DB  72,131,236,24                       ; sub           $0x18,%rsp
10608  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
10609  DB  68,15,40,229                        ; movaps        %xmm5,%xmm12
10610  DB  15,40,244                           ; movaps        %xmm4,%xmm6
10611  DB  15,40,227                           ; movaps        %xmm3,%xmm4
10612  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
10613  DB  68,15,40,21,105,51,0,0              ; movaps        0x3369(%rip),%xmm10        # 3c90 <_sk_callback_sse41+0x1ff>
10614  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
10615  DB  15,92,239                           ; subps         %xmm7,%xmm5
10616  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10617  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
10618  DB  68,15,92,212                        ; subps         %xmm4,%xmm10
10619  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
10620  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
10621  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
10622  DB  68,15,40,252                        ; movaps        %xmm4,%xmm15
10623  DB  69,15,92,249                        ; subps         %xmm9,%xmm15
10624  DB  15,89,223                           ; mulps         %xmm7,%xmm3
10625  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10626  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
10627  DB  15,40,199                           ; movaps        %xmm7,%xmm0
10628  DB  15,92,198                           ; subps         %xmm6,%xmm0
10629  DB  65,15,89,199                        ; mulps         %xmm15,%xmm0
10630  DB  15,88,192                           ; addps         %xmm0,%xmm0
10631  DB  68,15,40,251                        ; movaps        %xmm3,%xmm15
10632  DB  68,15,92,248                        ; subps         %xmm0,%xmm15
10633  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
10634  DB  15,88,192                           ; addps         %xmm0,%xmm0
10635  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
10636  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10637  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
10638  DB  102,69,15,56,20,249                 ; blendvps      %xmm0,%xmm9,%xmm15
10639  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
10640  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
10641  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10642  DB  15,92,193                           ; subps         %xmm1,%xmm0
10643  DB  69,15,40,204                        ; movaps        %xmm12,%xmm9
10644  DB  69,15,92,233                        ; subps         %xmm9,%xmm13
10645  DB  68,15,89,232                        ; mulps         %xmm0,%xmm13
10646  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
10647  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
10648  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
10649  DB  15,40,193                           ; movaps        %xmm1,%xmm0
10650  DB  15,88,192                           ; addps         %xmm0,%xmm0
10651  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
10652  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
10653  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
10654  DB  15,88,201                           ; addps         %xmm1,%xmm1
10655  DB  102,68,15,56,20,225                 ; blendvps      %xmm0,%xmm1,%xmm12
10656  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
10657  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
10658  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
10659  DB  69,15,88,199                        ; addps         %xmm15,%xmm8
10660  DB  65,15,89,205                        ; mulps         %xmm13,%xmm1
10661  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
10662  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
10663  DB  15,89,234                           ; mulps         %xmm2,%xmm5
10664  DB  68,15,40,28,36                      ; movaps        (%rsp),%xmm11
10665  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
10666  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
10667  DB  15,40,194                           ; movaps        %xmm2,%xmm0
10668  DB  15,88,192                           ; addps         %xmm0,%xmm0
10669  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
10670  DB  15,40,236                           ; movaps        %xmm4,%xmm5
10671  DB  15,92,234                           ; subps         %xmm2,%xmm5
10672  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
10673  DB  15,88,210                           ; addps         %xmm2,%xmm2
10674  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
10675  DB  68,15,89,245                        ; mulps         %xmm5,%xmm14
10676  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
10677  DB  65,15,92,222                        ; subps         %xmm14,%xmm3
10678  DB  102,15,56,20,218                    ; blendvps      %xmm0,%xmm2,%xmm3
10679  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
10680  DB  65,15,88,226                        ; addps         %xmm10,%xmm4
10681  DB  72,173                              ; lods          %ds:(%rsi),%rax
10682  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10683  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
10684  DB  15,40,220                           ; movaps        %xmm4,%xmm3
10685  DB  15,40,230                           ; movaps        %xmm6,%xmm4
10686  DB  65,15,40,237                        ; movaps        %xmm13,%xmm5
10687  DB  65,15,40,243                        ; movaps        %xmm11,%xmm6
10688  DB  72,131,196,24                       ; add           $0x18,%rsp
10689  DB  255,224                             ; jmpq          *%rax
10690
10691PUBLIC _sk_overlay_sse41
10692_sk_overlay_sse41 LABEL PROC
10693  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
10694  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
10695  DB  68,15,40,21,75,50,0,0               ; movaps        0x324b(%rip),%xmm10        # 3ca0 <_sk_callback_sse41+0x20f>
10696  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
10697  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
10698  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
10699  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
10700  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
10701  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
10702  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
10703  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
10704  DB  68,15,40,235                        ; movaps        %xmm3,%xmm13
10705  DB  69,15,92,238                        ; subps         %xmm14,%xmm13
10706  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
10707  DB  15,40,207                           ; movaps        %xmm7,%xmm1
10708  DB  15,92,204                           ; subps         %xmm4,%xmm1
10709  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10710  DB  15,88,192                           ; addps         %xmm0,%xmm0
10711  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10712  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
10713  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
10714  DB  68,15,89,231                        ; mulps         %xmm7,%xmm12
10715  DB  65,15,89,205                        ; mulps         %xmm13,%xmm1
10716  DB  15,88,201                           ; addps         %xmm1,%xmm1
10717  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
10718  DB  68,15,92,233                        ; subps         %xmm1,%xmm13
10719  DB  102,69,15,56,20,238                 ; blendvps      %xmm0,%xmm14,%xmm13
10720  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
10721  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
10722  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
10723  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
10724  DB  15,89,205                           ; mulps         %xmm5,%xmm1
10725  DB  15,88,200                           ; addps         %xmm0,%xmm1
10726  DB  68,15,40,235                        ; movaps        %xmm3,%xmm13
10727  DB  69,15,92,233                        ; subps         %xmm9,%xmm13
10728  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
10729  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
10730  DB  68,15,92,245                        ; subps         %xmm5,%xmm14
10731  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10732  DB  15,88,192                           ; addps         %xmm0,%xmm0
10733  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10734  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
10735  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
10736  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
10737  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
10738  DB  69,15,92,238                        ; subps         %xmm14,%xmm13
10739  DB  102,69,15,56,20,233                 ; blendvps      %xmm0,%xmm9,%xmm13
10740  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
10741  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
10742  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
10743  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
10744  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
10745  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
10746  DB  68,15,92,218                        ; subps         %xmm2,%xmm11
10747  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10748  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
10749  DB  68,15,92,238                        ; subps         %xmm6,%xmm13
10750  DB  15,40,198                           ; movaps        %xmm6,%xmm0
10751  DB  15,88,192                           ; addps         %xmm0,%xmm0
10752  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10753  DB  15,88,210                           ; addps         %xmm2,%xmm2
10754  DB  69,15,89,235                        ; mulps         %xmm11,%xmm13
10755  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
10756  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
10757  DB  102,68,15,56,20,226                 ; blendvps      %xmm0,%xmm2,%xmm12
10758  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
10759  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
10760  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
10761  DB  72,173                              ; lods          %ds:(%rsi),%rax
10762  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10763  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
10764  DB  255,224                             ; jmpq          *%rax
10765
10766PUBLIC _sk_softlight_sse41
10767_sk_softlight_sse41 LABEL PROC
10768  DB  72,131,236,72                       ; sub           $0x48,%rsp
10769  DB  15,41,116,36,32                     ; movaps        %xmm6,0x20(%rsp)
10770  DB  15,40,244                           ; movaps        %xmm4,%xmm6
10771  DB  15,41,84,36,48                      ; movaps        %xmm2,0x30(%rsp)
10772  DB  15,41,76,36,16                      ; movaps        %xmm1,0x10(%rsp)
10773  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10774  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
10775  DB  68,15,194,207,1                     ; cmpltps       %xmm7,%xmm9
10776  DB  15,40,198                           ; movaps        %xmm6,%xmm0
10777  DB  15,94,199                           ; divps         %xmm7,%xmm0
10778  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
10779  DB  15,40,13,30,49,0,0                  ; movaps        0x311e(%rip),%xmm1        # 3cb0 <_sk_callback_sse41+0x21f>
10780  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
10781  DB  68,15,92,208                        ; subps         %xmm0,%xmm10
10782  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
10783  DB  68,15,40,248                        ; movaps        %xmm0,%xmm15
10784  DB  15,82,208                           ; rsqrtps       %xmm0,%xmm2
10785  DB  68,15,83,218                        ; rcpps         %xmm2,%xmm11
10786  DB  68,15,92,216                        ; subps         %xmm0,%xmm11
10787  DB  15,88,192                           ; addps         %xmm0,%xmm0
10788  DB  15,88,192                           ; addps         %xmm0,%xmm0
10789  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10790  DB  15,89,210                           ; mulps         %xmm2,%xmm2
10791  DB  15,88,208                           ; addps         %xmm0,%xmm2
10792  DB  68,15,40,45,252,48,0,0              ; movaps        0x30fc(%rip),%xmm13        # 3cc0 <_sk_callback_sse41+0x22f>
10793  DB  69,15,88,245                        ; addps         %xmm13,%xmm14
10794  DB  68,15,89,242                        ; mulps         %xmm2,%xmm14
10795  DB  68,15,40,37,252,48,0,0              ; movaps        0x30fc(%rip),%xmm12        # 3cd0 <_sk_callback_sse41+0x23f>
10796  DB  69,15,89,252                        ; mulps         %xmm12,%xmm15
10797  DB  69,15,88,254                        ; addps         %xmm14,%xmm15
10798  DB  15,40,198                           ; movaps        %xmm6,%xmm0
10799  DB  15,88,192                           ; addps         %xmm0,%xmm0
10800  DB  15,88,192                           ; addps         %xmm0,%xmm0
10801  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10802  DB  102,69,15,56,20,223                 ; blendvps      %xmm0,%xmm15,%xmm11
10803  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10804  DB  15,88,192                           ; addps         %xmm0,%xmm0
10805  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10806  DB  15,92,211                           ; subps         %xmm3,%xmm2
10807  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
10808  DB  68,15,88,211                        ; addps         %xmm3,%xmm10
10809  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
10810  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10811  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
10812  DB  15,40,211                           ; movaps        %xmm3,%xmm2
10813  DB  15,89,214                           ; mulps         %xmm6,%xmm2
10814  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
10815  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
10816  DB  102,69,15,56,20,218                 ; blendvps      %xmm0,%xmm10,%xmm11
10817  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
10818  DB  68,15,94,215                        ; divps         %xmm7,%xmm10
10819  DB  69,15,84,209                        ; andps         %xmm9,%xmm10
10820  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
10821  DB  15,88,192                           ; addps         %xmm0,%xmm0
10822  DB  15,88,192                           ; addps         %xmm0,%xmm0
10823  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10824  DB  15,89,210                           ; mulps         %xmm2,%xmm2
10825  DB  15,88,208                           ; addps         %xmm0,%xmm2
10826  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
10827  DB  65,15,88,197                        ; addps         %xmm13,%xmm0
10828  DB  15,89,194                           ; mulps         %xmm2,%xmm0
10829  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
10830  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
10831  DB  15,88,208                           ; addps         %xmm0,%xmm2
10832  DB  65,15,82,194                        ; rsqrtps       %xmm10,%xmm0
10833  DB  68,15,83,240                        ; rcpps         %xmm0,%xmm14
10834  DB  69,15,92,242                        ; subps         %xmm10,%xmm14
10835  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10836  DB  15,40,229                           ; movaps        %xmm5,%xmm4
10837  DB  15,88,192                           ; addps         %xmm0,%xmm0
10838  DB  15,88,192                           ; addps         %xmm0,%xmm0
10839  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10840  DB  102,68,15,56,20,242                 ; blendvps      %xmm0,%xmm2,%xmm14
10841  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
10842  DB  69,15,92,250                        ; subps         %xmm10,%xmm15
10843  DB  15,40,108,36,16                     ; movaps        0x10(%rsp),%xmm5
10844  DB  15,40,197                           ; movaps        %xmm5,%xmm0
10845  DB  15,88,192                           ; addps         %xmm0,%xmm0
10846  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10847  DB  15,92,211                           ; subps         %xmm3,%xmm2
10848  DB  68,15,89,250                        ; mulps         %xmm2,%xmm15
10849  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10850  DB  68,15,89,242                        ; mulps         %xmm2,%xmm14
10851  DB  15,40,211                           ; movaps        %xmm3,%xmm2
10852  DB  15,41,36,36                         ; movaps        %xmm4,(%rsp)
10853  DB  15,89,212                           ; mulps         %xmm4,%xmm2
10854  DB  68,15,88,242                        ; addps         %xmm2,%xmm14
10855  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
10856  DB  68,15,89,252                        ; mulps         %xmm4,%xmm15
10857  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
10858  DB  102,69,15,56,20,247                 ; blendvps      %xmm0,%xmm15,%xmm14
10859  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
10860  DB  15,40,100,36,32                     ; movaps        0x20(%rsp),%xmm4
10861  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10862  DB  15,94,199                           ; divps         %xmm7,%xmm0
10863  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
10864  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
10865  DB  15,92,200                           ; subps         %xmm0,%xmm1
10866  DB  68,15,88,232                        ; addps         %xmm0,%xmm13
10867  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
10868  DB  15,82,208                           ; rsqrtps       %xmm0,%xmm2
10869  DB  68,15,83,202                        ; rcpps         %xmm2,%xmm9
10870  DB  68,15,92,200                        ; subps         %xmm0,%xmm9
10871  DB  15,88,192                           ; addps         %xmm0,%xmm0
10872  DB  15,88,192                           ; addps         %xmm0,%xmm0
10873  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10874  DB  15,89,210                           ; mulps         %xmm2,%xmm2
10875  DB  15,88,208                           ; addps         %xmm0,%xmm2
10876  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
10877  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
10878  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10879  DB  15,88,192                           ; addps         %xmm0,%xmm0
10880  DB  15,88,192                           ; addps         %xmm0,%xmm0
10881  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
10882  DB  102,69,15,56,20,204                 ; blendvps      %xmm0,%xmm12,%xmm9
10883  DB  68,15,40,100,36,48                  ; movaps        0x30(%rsp),%xmm12
10884  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
10885  DB  15,88,192                           ; addps         %xmm0,%xmm0
10886  DB  15,40,208                           ; movaps        %xmm0,%xmm2
10887  DB  15,92,211                           ; subps         %xmm3,%xmm2
10888  DB  15,89,202                           ; mulps         %xmm2,%xmm1
10889  DB  15,89,215                           ; mulps         %xmm7,%xmm2
10890  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
10891  DB  15,40,211                           ; movaps        %xmm3,%xmm2
10892  DB  15,89,212                           ; mulps         %xmm4,%xmm2
10893  DB  68,15,88,202                        ; addps         %xmm2,%xmm9
10894  DB  15,88,203                           ; addps         %xmm3,%xmm1
10895  DB  15,89,204                           ; mulps         %xmm4,%xmm1
10896  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
10897  DB  102,68,15,56,20,201                 ; blendvps      %xmm0,%xmm1,%xmm9
10898  DB  68,15,92,255                        ; subps         %xmm7,%xmm15
10899  DB  69,15,89,199                        ; mulps         %xmm15,%xmm8
10900  DB  15,40,205                           ; movaps        %xmm5,%xmm1
10901  DB  65,15,89,207                        ; mulps         %xmm15,%xmm1
10902  DB  69,15,89,252                        ; mulps         %xmm12,%xmm15
10903  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
10904  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
10905  DB  15,89,198                           ; mulps         %xmm6,%xmm0
10906  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
10907  DB  69,15,88,195                        ; addps         %xmm11,%xmm8
10908  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
10909  DB  15,40,44,36                         ; movaps        (%rsp),%xmm5
10910  DB  15,89,197                           ; mulps         %xmm5,%xmm0
10911  DB  15,88,200                           ; addps         %xmm0,%xmm1
10912  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
10913  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
10914  DB  15,89,196                           ; mulps         %xmm4,%xmm0
10915  DB  15,40,212                           ; movaps        %xmm4,%xmm2
10916  DB  65,15,88,199                        ; addps         %xmm15,%xmm0
10917  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
10918  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
10919  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
10920  DB  72,173                              ; lods          %ds:(%rsi),%rax
10921  DB  15,40,230                           ; movaps        %xmm6,%xmm4
10922  DB  15,40,242                           ; movaps        %xmm2,%xmm6
10923  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
10924  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
10925  DB  72,131,196,72                       ; add           $0x48,%rsp
10926  DB  255,224                             ; jmpq          *%rax
10927
10928PUBLIC _sk_clamp_0_sse41
10929_sk_clamp_0_sse41 LABEL PROC
10930  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
10931  DB  65,15,95,192                        ; maxps         %xmm8,%xmm0
10932  DB  65,15,95,200                        ; maxps         %xmm8,%xmm1
10933  DB  65,15,95,208                        ; maxps         %xmm8,%xmm2
10934  DB  65,15,95,216                        ; maxps         %xmm8,%xmm3
10935  DB  72,173                              ; lods          %ds:(%rsi),%rax
10936  DB  255,224                             ; jmpq          *%rax
10937
10938PUBLIC _sk_clamp_1_sse41
10939_sk_clamp_1_sse41 LABEL PROC
10940  DB  68,15,40,5,12,47,0,0                ; movaps        0x2f0c(%rip),%xmm8        # 3ce0 <_sk_callback_sse41+0x24f>
10941  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
10942  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
10943  DB  65,15,93,208                        ; minps         %xmm8,%xmm2
10944  DB  65,15,93,216                        ; minps         %xmm8,%xmm3
10945  DB  72,173                              ; lods          %ds:(%rsi),%rax
10946  DB  255,224                             ; jmpq          *%rax
10947
10948PUBLIC _sk_clamp_a_sse41
10949_sk_clamp_a_sse41 LABEL PROC
10950  DB  15,93,29,1,47,0,0                   ; minps         0x2f01(%rip),%xmm3        # 3cf0 <_sk_callback_sse41+0x25f>
10951  DB  15,93,195                           ; minps         %xmm3,%xmm0
10952  DB  15,93,203                           ; minps         %xmm3,%xmm1
10953  DB  15,93,211                           ; minps         %xmm3,%xmm2
10954  DB  72,173                              ; lods          %ds:(%rsi),%rax
10955  DB  255,224                             ; jmpq          *%rax
10956
10957PUBLIC _sk_set_rgb_sse41
10958_sk_set_rgb_sse41 LABEL PROC
10959  DB  72,173                              ; lods          %ds:(%rsi),%rax
10960  DB  243,15,16,0                         ; movss         (%rax),%xmm0
10961  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
10962  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
10963  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
10964  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
10965  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
10966  DB  72,173                              ; lods          %ds:(%rsi),%rax
10967  DB  255,224                             ; jmpq          *%rax
10968
10969PUBLIC _sk_swap_rb_sse41
10970_sk_swap_rb_sse41 LABEL PROC
10971  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
10972  DB  72,173                              ; lods          %ds:(%rsi),%rax
10973  DB  15,40,194                           ; movaps        %xmm2,%xmm0
10974  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
10975  DB  255,224                             ; jmpq          *%rax
10976
10977PUBLIC _sk_swap_sse41
10978_sk_swap_sse41 LABEL PROC
10979  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
10980  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
10981  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
10982  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
10983  DB  72,173                              ; lods          %ds:(%rsi),%rax
10984  DB  15,40,196                           ; movaps        %xmm4,%xmm0
10985  DB  15,40,205                           ; movaps        %xmm5,%xmm1
10986  DB  15,40,214                           ; movaps        %xmm6,%xmm2
10987  DB  15,40,223                           ; movaps        %xmm7,%xmm3
10988  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
10989  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
10990  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
10991  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
10992  DB  255,224                             ; jmpq          *%rax
10993
10994PUBLIC _sk_move_src_dst_sse41
10995_sk_move_src_dst_sse41 LABEL PROC
10996  DB  72,173                              ; lods          %ds:(%rsi),%rax
10997  DB  15,40,224                           ; movaps        %xmm0,%xmm4
10998  DB  15,40,233                           ; movaps        %xmm1,%xmm5
10999  DB  15,40,242                           ; movaps        %xmm2,%xmm6
11000  DB  15,40,251                           ; movaps        %xmm3,%xmm7
11001  DB  255,224                             ; jmpq          *%rax
11002
11003PUBLIC _sk_move_dst_src_sse41
11004_sk_move_dst_src_sse41 LABEL PROC
11005  DB  72,173                              ; lods          %ds:(%rsi),%rax
11006  DB  15,40,196                           ; movaps        %xmm4,%xmm0
11007  DB  15,40,205                           ; movaps        %xmm5,%xmm1
11008  DB  15,40,214                           ; movaps        %xmm6,%xmm2
11009  DB  15,40,223                           ; movaps        %xmm7,%xmm3
11010  DB  255,224                             ; jmpq          *%rax
11011
11012PUBLIC _sk_premul_sse41
11013_sk_premul_sse41 LABEL PROC
11014  DB  15,89,195                           ; mulps         %xmm3,%xmm0
11015  DB  15,89,203                           ; mulps         %xmm3,%xmm1
11016  DB  15,89,211                           ; mulps         %xmm3,%xmm2
11017  DB  72,173                              ; lods          %ds:(%rsi),%rax
11018  DB  255,224                             ; jmpq          *%rax
11019
11020PUBLIC _sk_unpremul_sse41
11021_sk_unpremul_sse41 LABEL PROC
11022  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
11023  DB  68,15,40,13,108,46,0,0              ; movaps        0x2e6c(%rip),%xmm9        # 3d00 <_sk_callback_sse41+0x26f>
11024  DB  68,15,94,203                        ; divps         %xmm3,%xmm9
11025  DB  68,15,194,195,4                     ; cmpneqps      %xmm3,%xmm8
11026  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
11027  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11028  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11029  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11030  DB  72,173                              ; lods          %ds:(%rsi),%rax
11031  DB  255,224                             ; jmpq          *%rax
11032
11033PUBLIC _sk_from_srgb_sse41
11034_sk_from_srgb_sse41 LABEL PROC
11035  DB  68,15,40,29,87,46,0,0               ; movaps        0x2e57(%rip),%xmm11        # 3d10 <_sk_callback_sse41+0x27f>
11036  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
11037  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
11038  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
11039  DB  69,15,89,210                        ; mulps         %xmm10,%xmm10
11040  DB  68,15,40,37,79,46,0,0               ; movaps        0x2e4f(%rip),%xmm12        # 3d20 <_sk_callback_sse41+0x28f>
11041  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
11042  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
11043  DB  68,15,40,45,79,46,0,0               ; movaps        0x2e4f(%rip),%xmm13        # 3d30 <_sk_callback_sse41+0x29f>
11044  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
11045  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
11046  DB  68,15,40,53,79,46,0,0               ; movaps        0x2e4f(%rip),%xmm14        # 3d40 <_sk_callback_sse41+0x2af>
11047  DB  69,15,88,198                        ; addps         %xmm14,%xmm8
11048  DB  68,15,40,61,83,46,0,0               ; movaps        0x2e53(%rip),%xmm15        # 3d50 <_sk_callback_sse41+0x2bf>
11049  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
11050  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
11051  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
11052  DB  69,15,89,211                        ; mulps         %xmm11,%xmm10
11053  DB  15,40,193                           ; movaps        %xmm1,%xmm0
11054  DB  15,89,192                           ; mulps         %xmm0,%xmm0
11055  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
11056  DB  69,15,89,204                        ; mulps         %xmm12,%xmm9
11057  DB  69,15,88,205                        ; addps         %xmm13,%xmm9
11058  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
11059  DB  69,15,88,206                        ; addps         %xmm14,%xmm9
11060  DB  65,15,194,207,1                     ; cmpltps       %xmm15,%xmm1
11061  DB  15,40,193                           ; movaps        %xmm1,%xmm0
11062  DB  102,69,15,56,20,202                 ; blendvps      %xmm0,%xmm10,%xmm9
11063  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
11064  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
11065  DB  69,15,89,210                        ; mulps         %xmm10,%xmm10
11066  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
11067  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
11068  DB  69,15,89,212                        ; mulps         %xmm12,%xmm10
11069  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
11070  DB  65,15,194,215,1                     ; cmpltps       %xmm15,%xmm2
11071  DB  15,40,194                           ; movaps        %xmm2,%xmm0
11072  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
11073  DB  72,173                              ; lods          %ds:(%rsi),%rax
11074  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
11075  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
11076  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
11077  DB  255,224                             ; jmpq          *%rax
11078
11079PUBLIC _sk_to_srgb_sse41
11080_sk_to_srgb_sse41 LABEL PROC
11081  DB  72,131,236,24                       ; sub           $0x18,%rsp
11082  DB  15,41,60,36                         ; movaps        %xmm7,(%rsp)
11083  DB  15,40,254                           ; movaps        %xmm6,%xmm7
11084  DB  15,40,245                           ; movaps        %xmm5,%xmm6
11085  DB  15,40,236                           ; movaps        %xmm4,%xmm5
11086  DB  15,40,227                           ; movaps        %xmm3,%xmm4
11087  DB  15,40,218                           ; movaps        %xmm2,%xmm3
11088  DB  15,40,209                           ; movaps        %xmm1,%xmm2
11089  DB  68,15,82,192                        ; rsqrtps       %xmm0,%xmm8
11090  DB  69,15,83,200                        ; rcpps         %xmm8,%xmm9
11091  DB  69,15,82,208                        ; rsqrtps       %xmm8,%xmm10
11092  DB  68,15,40,29,192,45,0,0              ; movaps        0x2dc0(%rip),%xmm11        # 3d60 <_sk_callback_sse41+0x2cf>
11093  DB  15,40,200                           ; movaps        %xmm0,%xmm1
11094  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
11095  DB  68,15,40,37,193,45,0,0              ; movaps        0x2dc1(%rip),%xmm12        # 3d70 <_sk_callback_sse41+0x2df>
11096  DB  69,15,89,204                        ; mulps         %xmm12,%xmm9
11097  DB  68,15,40,45,197,45,0,0              ; movaps        0x2dc5(%rip),%xmm13        # 3d80 <_sk_callback_sse41+0x2ef>
11098  DB  69,15,88,205                        ; addps         %xmm13,%xmm9
11099  DB  68,15,40,53,201,45,0,0              ; movaps        0x2dc9(%rip),%xmm14        # 3d90 <_sk_callback_sse41+0x2ff>
11100  DB  69,15,89,214                        ; mulps         %xmm14,%xmm10
11101  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
11102  DB  68,15,40,5,201,45,0,0               ; movaps        0x2dc9(%rip),%xmm8        # 3da0 <_sk_callback_sse41+0x30f>
11103  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
11104  DB  69,15,93,202                        ; minps         %xmm10,%xmm9
11105  DB  68,15,40,61,201,45,0,0              ; movaps        0x2dc9(%rip),%xmm15        # 3db0 <_sk_callback_sse41+0x31f>
11106  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
11107  DB  102,68,15,56,20,201                 ; blendvps      %xmm0,%xmm1,%xmm9
11108  DB  15,82,194                           ; rsqrtps       %xmm2,%xmm0
11109  DB  15,83,200                           ; rcpps         %xmm0,%xmm1
11110  DB  15,82,192                           ; rsqrtps       %xmm0,%xmm0
11111  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
11112  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
11113  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
11114  DB  15,88,193                           ; addps         %xmm1,%xmm0
11115  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
11116  DB  68,15,93,208                        ; minps         %xmm0,%xmm10
11117  DB  15,40,202                           ; movaps        %xmm2,%xmm1
11118  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
11119  DB  65,15,194,215,1                     ; cmpltps       %xmm15,%xmm2
11120  DB  15,40,194                           ; movaps        %xmm2,%xmm0
11121  DB  102,68,15,56,20,209                 ; blendvps      %xmm0,%xmm1,%xmm10
11122  DB  15,82,195                           ; rsqrtps       %xmm3,%xmm0
11123  DB  15,83,200                           ; rcpps         %xmm0,%xmm1
11124  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
11125  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
11126  DB  15,82,192                           ; rsqrtps       %xmm0,%xmm0
11127  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
11128  DB  15,88,193                           ; addps         %xmm1,%xmm0
11129  DB  68,15,93,192                        ; minps         %xmm0,%xmm8
11130  DB  68,15,89,219                        ; mulps         %xmm3,%xmm11
11131  DB  65,15,194,223,1                     ; cmpltps       %xmm15,%xmm3
11132  DB  15,40,195                           ; movaps        %xmm3,%xmm0
11133  DB  102,69,15,56,20,195                 ; blendvps      %xmm0,%xmm11,%xmm8
11134  DB  72,173                              ; lods          %ds:(%rsi),%rax
11135  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
11136  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
11137  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
11138  DB  15,40,220                           ; movaps        %xmm4,%xmm3
11139  DB  15,40,229                           ; movaps        %xmm5,%xmm4
11140  DB  15,40,238                           ; movaps        %xmm6,%xmm5
11141  DB  15,40,247                           ; movaps        %xmm7,%xmm6
11142  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
11143  DB  72,131,196,24                       ; add           $0x18,%rsp
11144  DB  255,224                             ; jmpq          *%rax
11145
11146PUBLIC _sk_rgb_to_hsl_sse41
11147_sk_rgb_to_hsl_sse41 LABEL PROC
11148  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
11149  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
11150  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
11151  DB  69,15,95,217                        ; maxps         %xmm9,%xmm11
11152  DB  68,15,95,218                        ; maxps         %xmm2,%xmm11
11153  DB  69,15,40,224                        ; movaps        %xmm8,%xmm12
11154  DB  69,15,93,225                        ; minps         %xmm9,%xmm12
11155  DB  68,15,93,226                        ; minps         %xmm2,%xmm12
11156  DB  65,15,40,203                        ; movaps        %xmm11,%xmm1
11157  DB  65,15,92,204                        ; subps         %xmm12,%xmm1
11158  DB  68,15,40,53,23,45,0,0               ; movaps        0x2d17(%rip),%xmm14        # 3dc0 <_sk_callback_sse41+0x32f>
11159  DB  68,15,94,241                        ; divps         %xmm1,%xmm14
11160  DB  69,15,40,211                        ; movaps        %xmm11,%xmm10
11161  DB  69,15,194,208,0                     ; cmpeqps       %xmm8,%xmm10
11162  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
11163  DB  15,92,194                           ; subps         %xmm2,%xmm0
11164  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
11165  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
11166  DB  68,15,194,250,1                     ; cmpltps       %xmm2,%xmm15
11167  DB  68,15,84,61,254,44,0,0              ; andps         0x2cfe(%rip),%xmm15        # 3dd0 <_sk_callback_sse41+0x33f>
11168  DB  68,15,88,248                        ; addps         %xmm0,%xmm15
11169  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
11170  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
11171  DB  65,15,92,208                        ; subps         %xmm8,%xmm2
11172  DB  65,15,89,214                        ; mulps         %xmm14,%xmm2
11173  DB  68,15,40,45,241,44,0,0              ; movaps        0x2cf1(%rip),%xmm13        # 3de0 <_sk_callback_sse41+0x34f>
11174  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
11175  DB  69,15,92,193                        ; subps         %xmm9,%xmm8
11176  DB  69,15,89,198                        ; mulps         %xmm14,%xmm8
11177  DB  68,15,88,5,237,44,0,0               ; addps         0x2ced(%rip),%xmm8        # 3df0 <_sk_callback_sse41+0x35f>
11178  DB  102,68,15,56,20,194                 ; blendvps      %xmm0,%xmm2,%xmm8
11179  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
11180  DB  102,69,15,56,20,199                 ; blendvps      %xmm0,%xmm15,%xmm8
11181  DB  68,15,89,5,229,44,0,0               ; mulps         0x2ce5(%rip),%xmm8        # 3e00 <_sk_callback_sse41+0x36f>
11182  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
11183  DB  69,15,194,204,4                     ; cmpneqps      %xmm12,%xmm9
11184  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
11185  DB  69,15,92,235                        ; subps         %xmm11,%xmm13
11186  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
11187  DB  15,40,5,217,44,0,0                  ; movaps        0x2cd9(%rip),%xmm0        # 3e10 <_sk_callback_sse41+0x37f>
11188  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
11189  DB  15,89,208                           ; mulps         %xmm0,%xmm2
11190  DB  15,194,194,1                        ; cmpltps       %xmm2,%xmm0
11191  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
11192  DB  102,69,15,56,20,221                 ; blendvps      %xmm0,%xmm13,%xmm11
11193  DB  65,15,94,203                        ; divps         %xmm11,%xmm1
11194  DB  65,15,84,201                        ; andps         %xmm9,%xmm1
11195  DB  72,173                              ; lods          %ds:(%rsi),%rax
11196  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
11197  DB  255,224                             ; jmpq          *%rax
11198
11199PUBLIC _sk_hsl_to_rgb_sse41
11200_sk_hsl_to_rgb_sse41 LABEL PROC
11201  DB  72,131,236,104                      ; sub           $0x68,%rsp
11202  DB  15,41,124,36,80                     ; movaps        %xmm7,0x50(%rsp)
11203  DB  15,41,116,36,64                     ; movaps        %xmm6,0x40(%rsp)
11204  DB  15,41,108,36,48                     ; movaps        %xmm5,0x30(%rsp)
11205  DB  15,41,100,36,32                     ; movaps        %xmm4,0x20(%rsp)
11206  DB  15,41,92,36,16                      ; movaps        %xmm3,0x10(%rsp)
11207  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
11208  DB  68,15,40,13,155,44,0,0              ; movaps        0x2c9b(%rip),%xmm9        # 3e20 <_sk_callback_sse41+0x38f>
11209  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
11210  DB  15,194,194,2                        ; cmpleps       %xmm2,%xmm0
11211  DB  15,40,217                           ; movaps        %xmm1,%xmm3
11212  DB  15,40,233                           ; movaps        %xmm1,%xmm5
11213  DB  15,89,234                           ; mulps         %xmm2,%xmm5
11214  DB  15,92,221                           ; subps         %xmm5,%xmm3
11215  DB  102,15,56,20,235                    ; blendvps      %xmm0,%xmm3,%xmm5
11216  DB  15,88,234                           ; addps         %xmm2,%xmm5
11217  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
11218  DB  15,41,20,36                         ; movaps        %xmm2,(%rsp)
11219  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
11220  DB  68,15,92,197                        ; subps         %xmm5,%xmm8
11221  DB  68,15,40,53,119,44,0,0              ; movaps        0x2c77(%rip),%xmm14        # 3e30 <_sk_callback_sse41+0x39f>
11222  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
11223  DB  102,65,15,58,8,198,1                ; roundps       $0x1,%xmm14,%xmm0
11224  DB  68,15,92,240                        ; subps         %xmm0,%xmm14
11225  DB  68,15,40,29,112,44,0,0              ; movaps        0x2c70(%rip),%xmm11        # 3e40 <_sk_callback_sse41+0x3af>
11226  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
11227  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
11228  DB  15,40,245                           ; movaps        %xmm5,%xmm6
11229  DB  65,15,92,240                        ; subps         %xmm8,%xmm6
11230  DB  15,40,61,105,44,0,0                 ; movaps        0x2c69(%rip),%xmm7        # 3e50 <_sk_callback_sse41+0x3bf>
11231  DB  69,15,40,238                        ; movaps        %xmm14,%xmm13
11232  DB  68,15,89,239                        ; mulps         %xmm7,%xmm13
11233  DB  15,40,29,106,44,0,0                 ; movaps        0x2c6a(%rip),%xmm3        # 3e60 <_sk_callback_sse41+0x3cf>
11234  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
11235  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
11236  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
11237  DB  69,15,88,224                        ; addps         %xmm8,%xmm12
11238  DB  102,69,15,56,20,224                 ; blendvps      %xmm0,%xmm8,%xmm12
11239  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
11240  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
11241  DB  68,15,40,253                        ; movaps        %xmm5,%xmm15
11242  DB  102,69,15,56,20,252                 ; blendvps      %xmm0,%xmm12,%xmm15
11243  DB  68,15,40,37,73,44,0,0               ; movaps        0x2c49(%rip),%xmm12        # 3e70 <_sk_callback_sse41+0x3df>
11244  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
11245  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
11246  DB  68,15,89,238                        ; mulps         %xmm6,%xmm13
11247  DB  69,15,88,232                        ; addps         %xmm8,%xmm13
11248  DB  102,69,15,56,20,239                 ; blendvps      %xmm0,%xmm15,%xmm13
11249  DB  69,15,87,246                        ; xorps         %xmm14,%xmm14
11250  DB  68,15,194,241,0                     ; cmpeqps       %xmm1,%xmm14
11251  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
11252  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
11253  DB  102,65,15,58,8,194,1                ; roundps       $0x1,%xmm10,%xmm0
11254  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
11255  DB  68,15,92,248                        ; subps         %xmm0,%xmm15
11256  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
11257  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
11258  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
11259  DB  15,89,207                           ; mulps         %xmm7,%xmm1
11260  DB  15,40,211                           ; movaps        %xmm3,%xmm2
11261  DB  15,92,209                           ; subps         %xmm1,%xmm2
11262  DB  15,89,214                           ; mulps         %xmm6,%xmm2
11263  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
11264  DB  102,65,15,56,20,208                 ; blendvps      %xmm0,%xmm8,%xmm2
11265  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
11266  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
11267  DB  15,40,229                           ; movaps        %xmm5,%xmm4
11268  DB  102,15,56,20,226                    ; blendvps      %xmm0,%xmm2,%xmm4
11269  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
11270  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
11271  DB  15,89,206                           ; mulps         %xmm6,%xmm1
11272  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
11273  DB  102,15,56,20,204                    ; blendvps      %xmm0,%xmm4,%xmm1
11274  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
11275  DB  15,40,20,36                         ; movaps        (%rsp),%xmm2
11276  DB  102,15,56,20,202                    ; blendvps      %xmm0,%xmm2,%xmm1
11277  DB  68,15,88,21,194,43,0,0              ; addps         0x2bc2(%rip),%xmm10        # 3e80 <_sk_callback_sse41+0x3ef>
11278  DB  102,65,15,58,8,194,1                ; roundps       $0x1,%xmm10,%xmm0
11279  DB  68,15,92,208                        ; subps         %xmm0,%xmm10
11280  DB  69,15,194,218,2                     ; cmpleps       %xmm10,%xmm11
11281  DB  65,15,89,250                        ; mulps         %xmm10,%xmm7
11282  DB  15,92,223                           ; subps         %xmm7,%xmm3
11283  DB  15,89,222                           ; mulps         %xmm6,%xmm3
11284  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
11285  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
11286  DB  102,65,15,56,20,216                 ; blendvps      %xmm0,%xmm8,%xmm3
11287  DB  69,15,194,202,2                     ; cmpleps       %xmm10,%xmm9
11288  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
11289  DB  102,15,56,20,235                    ; blendvps      %xmm0,%xmm3,%xmm5
11290  DB  69,15,194,226,2                     ; cmpleps       %xmm10,%xmm12
11291  DB  15,89,254                           ; mulps         %xmm6,%xmm7
11292  DB  68,15,88,199                        ; addps         %xmm7,%xmm8
11293  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
11294  DB  102,68,15,56,20,197                 ; blendvps      %xmm0,%xmm5,%xmm8
11295  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
11296  DB  102,68,15,56,20,194                 ; blendvps      %xmm0,%xmm2,%xmm8
11297  DB  72,173                              ; lods          %ds:(%rsi),%rax
11298  DB  65,15,40,197                        ; movaps        %xmm13,%xmm0
11299  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
11300  DB  15,40,92,36,16                      ; movaps        0x10(%rsp),%xmm3
11301  DB  15,40,100,36,32                     ; movaps        0x20(%rsp),%xmm4
11302  DB  15,40,108,36,48                     ; movaps        0x30(%rsp),%xmm5
11303  DB  15,40,116,36,64                     ; movaps        0x40(%rsp),%xmm6
11304  DB  15,40,124,36,80                     ; movaps        0x50(%rsp),%xmm7
11305  DB  72,131,196,104                      ; add           $0x68,%rsp
11306  DB  255,224                             ; jmpq          *%rax
11307
11308PUBLIC _sk_scale_1_float_sse41
11309_sk_scale_1_float_sse41 LABEL PROC
11310  DB  72,173                              ; lods          %ds:(%rsi),%rax
11311  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
11312  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11313  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11314  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11315  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11316  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11317  DB  72,173                              ; lods          %ds:(%rsi),%rax
11318  DB  255,224                             ; jmpq          *%rax
11319
11320PUBLIC _sk_scale_u8_sse41
11321_sk_scale_u8_sse41 LABEL PROC
11322  DB  72,173                              ; lods          %ds:(%rsi),%rax
11323  DB  72,139,0                            ; mov           (%rax),%rax
11324  DB  102,68,15,56,49,4,56                ; pmovzxbd      (%rax,%rdi,1),%xmm8
11325  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11326  DB  68,15,89,5,27,43,0,0                ; mulps         0x2b1b(%rip),%xmm8        # 3e90 <_sk_callback_sse41+0x3ff>
11327  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11328  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11329  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11330  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11331  DB  72,173                              ; lods          %ds:(%rsi),%rax
11332  DB  255,224                             ; jmpq          *%rax
11333
11334PUBLIC _sk_lerp_1_float_sse41
11335_sk_lerp_1_float_sse41 LABEL PROC
11336  DB  72,173                              ; lods          %ds:(%rsi),%rax
11337  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
11338  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11339  DB  15,92,196                           ; subps         %xmm4,%xmm0
11340  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11341  DB  15,88,196                           ; addps         %xmm4,%xmm0
11342  DB  15,92,205                           ; subps         %xmm5,%xmm1
11343  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11344  DB  15,88,205                           ; addps         %xmm5,%xmm1
11345  DB  15,92,214                           ; subps         %xmm6,%xmm2
11346  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11347  DB  15,88,214                           ; addps         %xmm6,%xmm2
11348  DB  15,92,223                           ; subps         %xmm7,%xmm3
11349  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11350  DB  15,88,223                           ; addps         %xmm7,%xmm3
11351  DB  72,173                              ; lods          %ds:(%rsi),%rax
11352  DB  255,224                             ; jmpq          *%rax
11353
11354PUBLIC _sk_lerp_u8_sse41
11355_sk_lerp_u8_sse41 LABEL PROC
11356  DB  72,173                              ; lods          %ds:(%rsi),%rax
11357  DB  72,139,0                            ; mov           (%rax),%rax
11358  DB  102,68,15,56,49,4,56                ; pmovzxbd      (%rax,%rdi,1),%xmm8
11359  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11360  DB  68,15,89,5,199,42,0,0               ; mulps         0x2ac7(%rip),%xmm8        # 3ea0 <_sk_callback_sse41+0x40f>
11361  DB  15,92,196                           ; subps         %xmm4,%xmm0
11362  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11363  DB  15,88,196                           ; addps         %xmm4,%xmm0
11364  DB  15,92,205                           ; subps         %xmm5,%xmm1
11365  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11366  DB  15,88,205                           ; addps         %xmm5,%xmm1
11367  DB  15,92,214                           ; subps         %xmm6,%xmm2
11368  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11369  DB  15,88,214                           ; addps         %xmm6,%xmm2
11370  DB  15,92,223                           ; subps         %xmm7,%xmm3
11371  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11372  DB  15,88,223                           ; addps         %xmm7,%xmm3
11373  DB  72,173                              ; lods          %ds:(%rsi),%rax
11374  DB  255,224                             ; jmpq          *%rax
11375
11376PUBLIC _sk_lerp_565_sse41
11377_sk_lerp_565_sse41 LABEL PROC
11378  DB  72,173                              ; lods          %ds:(%rsi),%rax
11379  DB  72,139,0                            ; mov           (%rax),%rax
11380  DB  102,68,15,56,51,4,120               ; pmovzxwd      (%rax,%rdi,2),%xmm8
11381  DB  102,15,111,29,151,42,0,0            ; movdqa        0x2a97(%rip),%xmm3        # 3eb0 <_sk_callback_sse41+0x41f>
11382  DB  102,65,15,219,216                   ; pand          %xmm8,%xmm3
11383  DB  68,15,91,203                        ; cvtdq2ps      %xmm3,%xmm9
11384  DB  68,15,89,13,150,42,0,0              ; mulps         0x2a96(%rip),%xmm9        # 3ec0 <_sk_callback_sse41+0x42f>
11385  DB  102,15,111,29,158,42,0,0            ; movdqa        0x2a9e(%rip),%xmm3        # 3ed0 <_sk_callback_sse41+0x43f>
11386  DB  102,65,15,219,216                   ; pand          %xmm8,%xmm3
11387  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
11388  DB  15,89,29,159,42,0,0                 ; mulps         0x2a9f(%rip),%xmm3        # 3ee0 <_sk_callback_sse41+0x44f>
11389  DB  102,68,15,219,5,166,42,0,0          ; pand          0x2aa6(%rip),%xmm8        # 3ef0 <_sk_callback_sse41+0x45f>
11390  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11391  DB  68,15,89,5,170,42,0,0               ; mulps         0x2aaa(%rip),%xmm8        # 3f00 <_sk_callback_sse41+0x46f>
11392  DB  15,92,196                           ; subps         %xmm4,%xmm0
11393  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
11394  DB  15,88,196                           ; addps         %xmm4,%xmm0
11395  DB  15,92,205                           ; subps         %xmm5,%xmm1
11396  DB  15,89,203                           ; mulps         %xmm3,%xmm1
11397  DB  15,88,205                           ; addps         %xmm5,%xmm1
11398  DB  15,92,214                           ; subps         %xmm6,%xmm2
11399  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11400  DB  15,88,214                           ; addps         %xmm6,%xmm2
11401  DB  72,173                              ; lods          %ds:(%rsi),%rax
11402  DB  15,40,29,148,42,0,0                 ; movaps        0x2a94(%rip),%xmm3        # 3f10 <_sk_callback_sse41+0x47f>
11403  DB  255,224                             ; jmpq          *%rax
11404
11405PUBLIC _sk_load_tables_sse41
11406_sk_load_tables_sse41 LABEL PROC
11407  DB  72,173                              ; lods          %ds:(%rsi),%rax
11408  DB  76,139,0                            ; mov           (%rax),%r8
11409  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
11410  DB  243,69,15,111,4,184                 ; movdqu        (%r8,%rdi,4),%xmm8
11411  DB  102,15,111,5,139,42,0,0             ; movdqa        0x2a8b(%rip),%xmm0        # 3f20 <_sk_callback_sse41+0x48f>
11412  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
11413  DB  102,73,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%r8
11414  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
11415  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11416  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11417  DB  69,15,182,216                       ; movzbl        %r8b,%r11d
11418  DB  73,193,232,30                       ; shr           $0x1e,%r8
11419  DB  243,67,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm0
11420  DB  102,65,15,58,33,4,9,16              ; insertps      $0x10,(%r9,%rcx,1),%xmm0
11421  DB  102,67,15,58,33,4,153,32            ; insertps      $0x20,(%r9,%r11,4),%xmm0
11422  DB  243,67,15,16,12,1                   ; movss         (%r9,%r8,1),%xmm1
11423  DB  102,15,58,33,193,48                 ; insertps      $0x30,%xmm1,%xmm0
11424  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
11425  DB  102,65,15,111,200                   ; movdqa        %xmm8,%xmm1
11426  DB  102,15,56,0,13,70,42,0,0            ; pshufb        0x2a46(%rip),%xmm1        # 3f30 <_sk_callback_sse41+0x49f>
11427  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
11428  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
11429  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11430  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11431  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
11432  DB  73,193,233,30                       ; shr           $0x1e,%r9
11433  DB  243,67,15,16,12,144                 ; movss         (%r8,%r10,4),%xmm1
11434  DB  102,65,15,58,33,12,8,16             ; insertps      $0x10,(%r8,%rcx,1),%xmm1
11435  DB  243,67,15,16,20,152                 ; movss         (%r8,%r11,4),%xmm2
11436  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
11437  DB  243,67,15,16,20,8                   ; movss         (%r8,%r9,1),%xmm2
11438  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
11439  DB  76,139,64,24                        ; mov           0x18(%rax),%r8
11440  DB  102,65,15,111,208                   ; movdqa        %xmm8,%xmm2
11441  DB  102,15,56,0,21,2,42,0,0             ; pshufb        0x2a02(%rip),%xmm2        # 3f40 <_sk_callback_sse41+0x4af>
11442  DB  102,72,15,58,22,209,1               ; pextrq        $0x1,%xmm2,%rcx
11443  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
11444  DB  68,15,182,200                       ; movzbl        %al,%r9d
11445  DB  72,193,232,30                       ; shr           $0x1e,%rax
11446  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11447  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11448  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
11449  DB  102,65,15,58,33,20,0,16             ; insertps      $0x10,(%r8,%rax,1),%xmm2
11450  DB  243,67,15,16,28,144                 ; movss         (%r8,%r10,4),%xmm3
11451  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
11452  DB  243,65,15,16,28,8                   ; movss         (%r8,%rcx,1),%xmm3
11453  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
11454  DB  102,65,15,114,208,24                ; psrld         $0x18,%xmm8
11455  DB  65,15,91,216                        ; cvtdq2ps      %xmm8,%xmm3
11456  DB  15,89,29,191,41,0,0                 ; mulps         0x29bf(%rip),%xmm3        # 3f50 <_sk_callback_sse41+0x4bf>
11457  DB  72,173                              ; lods          %ds:(%rsi),%rax
11458  DB  255,224                             ; jmpq          *%rax
11459
11460PUBLIC _sk_load_tables_u16_be_sse41
11461_sk_load_tables_u16_be_sse41 LABEL PROC
11462  DB  72,173                              ; lods          %ds:(%rsi),%rax
11463  DB  72,139,8                            ; mov           (%rax),%rcx
11464  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
11465  DB  243,15,111,4,249                    ; movdqu        (%rcx,%rdi,8),%xmm0
11466  DB  243,15,111,76,249,16                ; movdqu        0x10(%rcx,%rdi,8),%xmm1
11467  DB  102,68,15,111,200                   ; movdqa        %xmm0,%xmm9
11468  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
11469  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
11470  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
11471  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
11472  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
11473  DB  102,68,15,111,5,146,41,0,0          ; movdqa        0x2992(%rip),%xmm8        # 3f60 <_sk_callback_sse41+0x4cf>
11474  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
11475  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
11476  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
11477  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
11478  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
11479  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11480  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11481  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
11482  DB  73,193,233,30                       ; shr           $0x1e,%r9
11483  DB  243,67,15,16,4,144                  ; movss         (%r8,%r10,4),%xmm0
11484  DB  102,65,15,58,33,4,8,16              ; insertps      $0x10,(%r8,%rcx,1),%xmm0
11485  DB  243,67,15,16,20,152                 ; movss         (%r8,%r11,4),%xmm2
11486  DB  102,15,58,33,194,32                 ; insertps      $0x20,%xmm2,%xmm0
11487  DB  243,67,15,16,20,8                   ; movss         (%r8,%r9,1),%xmm2
11488  DB  102,15,58,33,194,48                 ; insertps      $0x30,%xmm2,%xmm0
11489  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
11490  DB  102,15,56,0,13,69,41,0,0            ; pshufb        0x2945(%rip),%xmm1        # 3f70 <_sk_callback_sse41+0x4df>
11491  DB  102,15,56,51,201                    ; pmovzxwd      %xmm1,%xmm1
11492  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
11493  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
11494  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11495  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11496  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
11497  DB  73,193,233,30                       ; shr           $0x1e,%r9
11498  DB  243,67,15,16,12,144                 ; movss         (%r8,%r10,4),%xmm1
11499  DB  102,65,15,58,33,12,8,16             ; insertps      $0x10,(%r8,%rcx,1),%xmm1
11500  DB  243,67,15,16,20,152                 ; movss         (%r8,%r11,4),%xmm2
11501  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
11502  DB  243,67,15,16,20,8                   ; movss         (%r8,%r9,1),%xmm2
11503  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
11504  DB  76,139,64,24                        ; mov           0x18(%rax),%r8
11505  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
11506  DB  102,65,15,56,51,208                 ; pmovzxwd      %xmm8,%xmm2
11507  DB  102,72,15,58,22,209,1               ; pextrq        $0x1,%xmm2,%rcx
11508  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
11509  DB  68,15,182,200                       ; movzbl        %al,%r9d
11510  DB  72,193,232,30                       ; shr           $0x1e,%rax
11511  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11512  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11513  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
11514  DB  102,65,15,58,33,20,0,16             ; insertps      $0x10,(%r8,%rax,1),%xmm2
11515  DB  243,67,15,16,28,144                 ; movss         (%r8,%r10,4),%xmm3
11516  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
11517  DB  243,65,15,16,28,8                   ; movss         (%r8,%rcx,1),%xmm3
11518  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
11519  DB  102,65,15,112,217,78                ; pshufd        $0x4e,%xmm9,%xmm3
11520  DB  102,68,15,111,195                   ; movdqa        %xmm3,%xmm8
11521  DB  102,65,15,113,240,8                 ; psllw         $0x8,%xmm8
11522  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
11523  DB  102,65,15,235,216                   ; por           %xmm8,%xmm3
11524  DB  102,15,56,51,219                    ; pmovzxwd      %xmm3,%xmm3
11525  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
11526  DB  15,89,29,147,40,0,0                 ; mulps         0x2893(%rip),%xmm3        # 3f80 <_sk_callback_sse41+0x4ef>
11527  DB  72,173                              ; lods          %ds:(%rsi),%rax
11528  DB  255,224                             ; jmpq          *%rax
11529
11530PUBLIC _sk_load_tables_rgb_u16_be_sse41
11531_sk_load_tables_rgb_u16_be_sse41 LABEL PROC
11532  DB  72,173                              ; lods          %ds:(%rsi),%rax
11533  DB  76,141,12,127                       ; lea           (%rdi,%rdi,2),%r9
11534  DB  72,139,8                            ; mov           (%rax),%rcx
11535  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
11536  DB  243,66,15,111,20,73                 ; movdqu        (%rcx,%r9,2),%xmm2
11537  DB  243,66,15,111,68,73,8               ; movdqu        0x8(%rcx,%r9,2),%xmm0
11538  DB  102,15,115,216,4                    ; psrldq        $0x4,%xmm0
11539  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
11540  DB  102,65,15,115,217,6                 ; psrldq        $0x6,%xmm9
11541  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
11542  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
11543  DB  102,68,15,97,200                    ; punpcklwd     %xmm0,%xmm9
11544  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
11545  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
11546  DB  102,68,15,111,5,85,40,0,0           ; movdqa        0x2855(%rip),%xmm8        # 3f90 <_sk_callback_sse41+0x4ff>
11547  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
11548  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
11549  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
11550  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
11551  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
11552  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11553  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11554  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
11555  DB  73,193,233,30                       ; shr           $0x1e,%r9
11556  DB  243,67,15,16,4,144                  ; movss         (%r8,%r10,4),%xmm0
11557  DB  102,65,15,58,33,4,8,16              ; insertps      $0x10,(%r8,%rcx,1),%xmm0
11558  DB  243,67,15,16,28,152                 ; movss         (%r8,%r11,4),%xmm3
11559  DB  102,15,58,33,195,32                 ; insertps      $0x20,%xmm3,%xmm0
11560  DB  243,67,15,16,28,8                   ; movss         (%r8,%r9,1),%xmm3
11561  DB  102,15,58,33,195,48                 ; insertps      $0x30,%xmm3,%xmm0
11562  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
11563  DB  102,15,56,0,13,8,40,0,0             ; pshufb        0x2808(%rip),%xmm1        # 3fa0 <_sk_callback_sse41+0x50f>
11564  DB  102,15,56,51,201                    ; pmovzxwd      %xmm1,%xmm1
11565  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
11566  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
11567  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11568  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11569  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
11570  DB  73,193,233,30                       ; shr           $0x1e,%r9
11571  DB  243,67,15,16,12,144                 ; movss         (%r8,%r10,4),%xmm1
11572  DB  102,65,15,58,33,12,8,16             ; insertps      $0x10,(%r8,%rcx,1),%xmm1
11573  DB  243,67,15,16,28,152                 ; movss         (%r8,%r11,4),%xmm3
11574  DB  102,15,58,33,203,32                 ; insertps      $0x20,%xmm3,%xmm1
11575  DB  243,67,15,16,28,8                   ; movss         (%r8,%r9,1),%xmm3
11576  DB  102,15,58,33,203,48                 ; insertps      $0x30,%xmm3,%xmm1
11577  DB  76,139,64,24                        ; mov           0x18(%rax),%r8
11578  DB  102,65,15,105,209                   ; punpckhwd     %xmm9,%xmm2
11579  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
11580  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
11581  DB  102,72,15,58,22,209,1               ; pextrq        $0x1,%xmm2,%rcx
11582  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
11583  DB  68,15,182,200                       ; movzbl        %al,%r9d
11584  DB  72,193,232,30                       ; shr           $0x1e,%rax
11585  DB  68,15,182,209                       ; movzbl        %cl,%r10d
11586  DB  72,193,233,30                       ; shr           $0x1e,%rcx
11587  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
11588  DB  102,65,15,58,33,20,0,16             ; insertps      $0x10,(%r8,%rax,1),%xmm2
11589  DB  243,67,15,16,28,144                 ; movss         (%r8,%r10,4),%xmm3
11590  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
11591  DB  243,65,15,16,28,8                   ; movss         (%r8,%rcx,1),%xmm3
11592  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
11593  DB  72,173                              ; lods          %ds:(%rsi),%rax
11594  DB  15,40,29,115,39,0,0                 ; movaps        0x2773(%rip),%xmm3        # 3fb0 <_sk_callback_sse41+0x51f>
11595  DB  255,224                             ; jmpq          *%rax
11596
11597PUBLIC _sk_byte_tables_sse41
11598_sk_byte_tables_sse41 LABEL PROC
11599  DB  65,86                               ; push          %r14
11600  DB  83                                  ; push          %rbx
11601  DB  72,173                              ; lods          %ds:(%rsi),%rax
11602  DB  68,15,40,5,116,39,0,0               ; movaps        0x2774(%rip),%xmm8        # 3fc0 <_sk_callback_sse41+0x52f>
11603  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11604  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
11605  DB  102,72,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%rcx
11606  DB  65,137,200                          ; mov           %ecx,%r8d
11607  DB  72,193,233,32                       ; shr           $0x20,%rcx
11608  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
11609  DB  69,137,202                          ; mov           %r9d,%r10d
11610  DB  73,193,233,32                       ; shr           $0x20,%r9
11611  DB  76,139,24                           ; mov           (%rax),%r11
11612  DB  76,139,112,8                        ; mov           0x8(%rax),%r14
11613  DB  102,67,15,58,32,4,19,0              ; pinsrb        $0x0,(%r11,%r10,1),%xmm0
11614  DB  102,67,15,58,32,4,11,1              ; pinsrb        $0x1,(%r11,%r9,1),%xmm0
11615  DB  67,15,182,28,3                      ; movzbl        (%r11,%r8,1),%ebx
11616  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
11617  DB  65,15,182,12,11                     ; movzbl        (%r11,%rcx,1),%ecx
11618  DB  102,15,58,32,193,3                  ; pinsrb        $0x3,%ecx,%xmm0
11619  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
11620  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
11621  DB  68,15,40,13,37,39,0,0               ; movaps        0x2725(%rip),%xmm9        # 3fd0 <_sk_callback_sse41+0x53f>
11622  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
11623  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11624  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
11625  DB  102,72,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%rcx
11626  DB  65,137,200                          ; mov           %ecx,%r8d
11627  DB  72,193,233,32                       ; shr           $0x20,%rcx
11628  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
11629  DB  65,137,217                          ; mov           %ebx,%r9d
11630  DB  72,193,235,32                       ; shr           $0x20,%rbx
11631  DB  102,67,15,58,32,12,14,0             ; pinsrb        $0x0,(%r14,%r9,1),%xmm1
11632  DB  102,65,15,58,32,12,30,1             ; pinsrb        $0x1,(%r14,%rbx,1),%xmm1
11633  DB  67,15,182,28,6                      ; movzbl        (%r14,%r8,1),%ebx
11634  DB  102,15,58,32,203,2                  ; pinsrb        $0x2,%ebx,%xmm1
11635  DB  65,15,182,12,14                     ; movzbl        (%r14,%rcx,1),%ecx
11636  DB  102,15,58,32,201,3                  ; pinsrb        $0x3,%ecx,%xmm1
11637  DB  102,15,56,49,201                    ; pmovzxbd      %xmm1,%xmm1
11638  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
11639  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
11640  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
11641  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11642  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
11643  DB  102,72,15,58,22,211,1               ; pextrq        $0x1,%xmm2,%rbx
11644  DB  65,137,216                          ; mov           %ebx,%r8d
11645  DB  72,193,235,32                       ; shr           $0x20,%rbx
11646  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
11647  DB  65,137,202                          ; mov           %ecx,%r10d
11648  DB  72,193,233,32                       ; shr           $0x20,%rcx
11649  DB  102,67,15,58,32,20,17,0             ; pinsrb        $0x0,(%r9,%r10,1),%xmm2
11650  DB  102,65,15,58,32,20,9,1              ; pinsrb        $0x1,(%r9,%rcx,1),%xmm2
11651  DB  67,15,182,12,1                      ; movzbl        (%r9,%r8,1),%ecx
11652  DB  102,15,58,32,209,2                  ; pinsrb        $0x2,%ecx,%xmm2
11653  DB  65,15,182,12,25                     ; movzbl        (%r9,%rbx,1),%ecx
11654  DB  102,15,58,32,209,3                  ; pinsrb        $0x3,%ecx,%xmm2
11655  DB  102,15,56,49,210                    ; pmovzxbd      %xmm2,%xmm2
11656  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
11657  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
11658  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
11659  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11660  DB  102,15,91,219                       ; cvtps2dq      %xmm3,%xmm3
11661  DB  102,72,15,58,22,217,1               ; pextrq        $0x1,%xmm3,%rcx
11662  DB  65,137,200                          ; mov           %ecx,%r8d
11663  DB  72,193,233,32                       ; shr           $0x20,%rcx
11664  DB  102,72,15,126,219                   ; movq          %xmm3,%rbx
11665  DB  65,137,217                          ; mov           %ebx,%r9d
11666  DB  72,193,235,32                       ; shr           $0x20,%rbx
11667  DB  102,66,15,58,32,28,8,0              ; pinsrb        $0x0,(%rax,%r9,1),%xmm3
11668  DB  102,15,58,32,28,24,1                ; pinsrb        $0x1,(%rax,%rbx,1),%xmm3
11669  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
11670  DB  102,15,58,32,219,2                  ; pinsrb        $0x2,%ebx,%xmm3
11671  DB  15,182,4,8                          ; movzbl        (%rax,%rcx,1),%eax
11672  DB  102,15,58,32,216,3                  ; pinsrb        $0x3,%eax,%xmm3
11673  DB  102,15,56,49,219                    ; pmovzxbd      %xmm3,%xmm3
11674  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
11675  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
11676  DB  72,173                              ; lods          %ds:(%rsi),%rax
11677  DB  91                                  ; pop           %rbx
11678  DB  65,94                               ; pop           %r14
11679  DB  255,224                             ; jmpq          *%rax
11680
11681PUBLIC _sk_byte_tables_rgb_sse41
11682_sk_byte_tables_rgb_sse41 LABEL PROC
11683  DB  65,86                               ; push          %r14
11684  DB  83                                  ; push          %rbx
11685  DB  72,173                              ; lods          %ds:(%rsi),%rax
11686  DB  139,72,24                           ; mov           0x18(%rax),%ecx
11687  DB  255,201                             ; dec           %ecx
11688  DB  102,68,15,110,193                   ; movd          %ecx,%xmm8
11689  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11690  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11691  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11692  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
11693  DB  102,72,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%rcx
11694  DB  65,137,200                          ; mov           %ecx,%r8d
11695  DB  72,193,233,32                       ; shr           $0x20,%rcx
11696  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
11697  DB  69,137,202                          ; mov           %r9d,%r10d
11698  DB  77,137,203                          ; mov           %r9,%r11
11699  DB  73,193,235,32                       ; shr           $0x20,%r11
11700  DB  76,139,48                           ; mov           (%rax),%r14
11701  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
11702  DB  102,67,15,58,32,4,22,0              ; pinsrb        $0x0,(%r14,%r10,1),%xmm0
11703  DB  102,67,15,58,32,4,30,1              ; pinsrb        $0x1,(%r14,%r11,1),%xmm0
11704  DB  67,15,182,28,6                      ; movzbl        (%r14,%r8,1),%ebx
11705  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
11706  DB  65,15,182,12,14                     ; movzbl        (%r14,%rcx,1),%ecx
11707  DB  102,15,58,32,193,3                  ; pinsrb        $0x3,%ecx,%xmm0
11708  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
11709  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
11710  DB  68,15,40,13,173,37,0,0              ; movaps        0x25ad(%rip),%xmm9        # 3fe0 <_sk_callback_sse41+0x54f>
11711  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
11712  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11713  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
11714  DB  102,72,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%rcx
11715  DB  65,137,200                          ; mov           %ecx,%r8d
11716  DB  72,193,233,32                       ; shr           $0x20,%rcx
11717  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
11718  DB  65,137,218                          ; mov           %ebx,%r10d
11719  DB  72,193,235,32                       ; shr           $0x20,%rbx
11720  DB  102,67,15,58,32,12,17,0             ; pinsrb        $0x0,(%r9,%r10,1),%xmm1
11721  DB  102,65,15,58,32,12,25,1             ; pinsrb        $0x1,(%r9,%rbx,1),%xmm1
11722  DB  67,15,182,28,1                      ; movzbl        (%r9,%r8,1),%ebx
11723  DB  102,15,58,32,203,2                  ; pinsrb        $0x2,%ebx,%xmm1
11724  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
11725  DB  102,15,58,32,201,3                  ; pinsrb        $0x3,%ecx,%xmm1
11726  DB  102,15,56,49,201                    ; pmovzxbd      %xmm1,%xmm1
11727  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
11728  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
11729  DB  72,139,64,16                        ; mov           0x10(%rax),%rax
11730  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11731  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
11732  DB  102,72,15,58,22,209,1               ; pextrq        $0x1,%xmm2,%rcx
11733  DB  65,137,200                          ; mov           %ecx,%r8d
11734  DB  72,193,233,32                       ; shr           $0x20,%rcx
11735  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
11736  DB  65,137,217                          ; mov           %ebx,%r9d
11737  DB  72,193,235,32                       ; shr           $0x20,%rbx
11738  DB  102,66,15,58,32,20,8,0              ; pinsrb        $0x0,(%rax,%r9,1),%xmm2
11739  DB  102,15,58,32,20,24,1                ; pinsrb        $0x1,(%rax,%rbx,1),%xmm2
11740  DB  66,15,182,28,0                      ; movzbl        (%rax,%r8,1),%ebx
11741  DB  102,15,58,32,211,2                  ; pinsrb        $0x2,%ebx,%xmm2
11742  DB  15,182,4,8                          ; movzbl        (%rax,%rcx,1),%eax
11743  DB  102,15,58,32,208,3                  ; pinsrb        $0x3,%eax,%xmm2
11744  DB  102,15,56,49,210                    ; pmovzxbd      %xmm2,%xmm2
11745  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
11746  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
11747  DB  72,173                              ; lods          %ds:(%rsi),%rax
11748  DB  91                                  ; pop           %rbx
11749  DB  65,94                               ; pop           %r14
11750  DB  255,224                             ; jmpq          *%rax
11751
11752PUBLIC _sk_table_r_sse41
11753_sk_table_r_sse41 LABEL PROC
11754  DB  72,173                              ; lods          %ds:(%rsi),%rax
11755  DB  76,139,8                            ; mov           (%rax),%r9
11756  DB  139,64,8                            ; mov           0x8(%rax),%eax
11757  DB  255,200                             ; dec           %eax
11758  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
11759  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11760  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11761  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
11762  DB  102,65,15,91,192                    ; cvtps2dq      %xmm8,%xmm0
11763  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
11764  DB  65,137,192                          ; mov           %eax,%r8d
11765  DB  72,193,232,32                       ; shr           $0x20,%rax
11766  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
11767  DB  65,137,202                          ; mov           %ecx,%r10d
11768  DB  72,193,233,32                       ; shr           $0x20,%rcx
11769  DB  243,67,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm0
11770  DB  102,65,15,58,33,4,137,16            ; insertps      $0x10,(%r9,%rcx,4),%xmm0
11771  DB  243,71,15,16,4,129                  ; movss         (%r9,%r8,4),%xmm8
11772  DB  102,65,15,58,33,192,32              ; insertps      $0x20,%xmm8,%xmm0
11773  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
11774  DB  102,65,15,58,33,192,48              ; insertps      $0x30,%xmm8,%xmm0
11775  DB  72,173                              ; lods          %ds:(%rsi),%rax
11776  DB  255,224                             ; jmpq          *%rax
11777
11778PUBLIC _sk_table_g_sse41
11779_sk_table_g_sse41 LABEL PROC
11780  DB  72,173                              ; lods          %ds:(%rsi),%rax
11781  DB  76,139,8                            ; mov           (%rax),%r9
11782  DB  139,64,8                            ; mov           0x8(%rax),%eax
11783  DB  255,200                             ; dec           %eax
11784  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
11785  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11786  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11787  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
11788  DB  102,65,15,91,200                    ; cvtps2dq      %xmm8,%xmm1
11789  DB  102,72,15,58,22,200,1               ; pextrq        $0x1,%xmm1,%rax
11790  DB  65,137,192                          ; mov           %eax,%r8d
11791  DB  72,193,232,32                       ; shr           $0x20,%rax
11792  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
11793  DB  65,137,202                          ; mov           %ecx,%r10d
11794  DB  72,193,233,32                       ; shr           $0x20,%rcx
11795  DB  243,67,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm1
11796  DB  102,65,15,58,33,12,137,16           ; insertps      $0x10,(%r9,%rcx,4),%xmm1
11797  DB  243,71,15,16,4,129                  ; movss         (%r9,%r8,4),%xmm8
11798  DB  102,65,15,58,33,200,32              ; insertps      $0x20,%xmm8,%xmm1
11799  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
11800  DB  102,65,15,58,33,200,48              ; insertps      $0x30,%xmm8,%xmm1
11801  DB  72,173                              ; lods          %ds:(%rsi),%rax
11802  DB  255,224                             ; jmpq          *%rax
11803
11804PUBLIC _sk_table_b_sse41
11805_sk_table_b_sse41 LABEL PROC
11806  DB  72,173                              ; lods          %ds:(%rsi),%rax
11807  DB  76,139,8                            ; mov           (%rax),%r9
11808  DB  139,64,8                            ; mov           0x8(%rax),%eax
11809  DB  255,200                             ; dec           %eax
11810  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
11811  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11812  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11813  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
11814  DB  102,65,15,91,208                    ; cvtps2dq      %xmm8,%xmm2
11815  DB  102,72,15,58,22,208,1               ; pextrq        $0x1,%xmm2,%rax
11816  DB  65,137,192                          ; mov           %eax,%r8d
11817  DB  72,193,232,32                       ; shr           $0x20,%rax
11818  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
11819  DB  65,137,202                          ; mov           %ecx,%r10d
11820  DB  72,193,233,32                       ; shr           $0x20,%rcx
11821  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
11822  DB  102,65,15,58,33,20,137,16           ; insertps      $0x10,(%r9,%rcx,4),%xmm2
11823  DB  243,71,15,16,4,129                  ; movss         (%r9,%r8,4),%xmm8
11824  DB  102,65,15,58,33,208,32              ; insertps      $0x20,%xmm8,%xmm2
11825  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
11826  DB  102,65,15,58,33,208,48              ; insertps      $0x30,%xmm8,%xmm2
11827  DB  72,173                              ; lods          %ds:(%rsi),%rax
11828  DB  255,224                             ; jmpq          *%rax
11829
11830PUBLIC _sk_table_a_sse41
11831_sk_table_a_sse41 LABEL PROC
11832  DB  72,173                              ; lods          %ds:(%rsi),%rax
11833  DB  76,139,8                            ; mov           (%rax),%r9
11834  DB  139,64,8                            ; mov           0x8(%rax),%eax
11835  DB  255,200                             ; dec           %eax
11836  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
11837  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11838  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
11839  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
11840  DB  102,65,15,91,216                    ; cvtps2dq      %xmm8,%xmm3
11841  DB  102,72,15,58,22,216,1               ; pextrq        $0x1,%xmm3,%rax
11842  DB  65,137,192                          ; mov           %eax,%r8d
11843  DB  72,193,232,32                       ; shr           $0x20,%rax
11844  DB  102,72,15,126,217                   ; movq          %xmm3,%rcx
11845  DB  65,137,202                          ; mov           %ecx,%r10d
11846  DB  72,193,233,32                       ; shr           $0x20,%rcx
11847  DB  243,67,15,16,28,145                 ; movss         (%r9,%r10,4),%xmm3
11848  DB  102,65,15,58,33,28,137,16           ; insertps      $0x10,(%r9,%rcx,4),%xmm3
11849  DB  243,71,15,16,4,129                  ; movss         (%r9,%r8,4),%xmm8
11850  DB  102,65,15,58,33,216,32              ; insertps      $0x20,%xmm8,%xmm3
11851  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
11852  DB  102,65,15,58,33,216,48              ; insertps      $0x30,%xmm8,%xmm3
11853  DB  72,173                              ; lods          %ds:(%rsi),%rax
11854  DB  255,224                             ; jmpq          *%rax
11855
11856PUBLIC _sk_parametric_r_sse41
11857_sk_parametric_r_sse41 LABEL PROC
11858  DB  72,173                              ; lods          %ds:(%rsi),%rax
11859  DB  243,68,15,16,64,16                  ; movss         0x10(%rax),%xmm8
11860  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11861  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
11862  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
11863  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
11864  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
11865  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11866  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
11867  DB  65,15,194,192,2                     ; cmpleps       %xmm8,%xmm0
11868  DB  243,68,15,16,64,24                  ; movss         0x18(%rax),%xmm8
11869  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11870  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
11871  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
11872  DB  243,68,15,16,64,8                   ; movss         0x8(%rax),%xmm8
11873  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11874  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
11875  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
11876  DB  69,15,91,194                        ; cvtdq2ps      %xmm10,%xmm8
11877  DB  68,15,89,5,4,35,0,0                 ; mulps         0x2304(%rip),%xmm8        # 3ff0 <_sk_callback_sse41+0x55f>
11878  DB  68,15,84,21,12,35,0,0               ; andps         0x230c(%rip),%xmm10        # 4000 <_sk_callback_sse41+0x56f>
11879  DB  68,15,86,21,20,35,0,0               ; orps          0x2314(%rip),%xmm10        # 4010 <_sk_callback_sse41+0x57f>
11880  DB  68,15,88,5,28,35,0,0                ; addps         0x231c(%rip),%xmm8        # 4020 <_sk_callback_sse41+0x58f>
11881  DB  68,15,40,37,36,35,0,0               ; movaps        0x2324(%rip),%xmm12        # 4030 <_sk_callback_sse41+0x59f>
11882  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
11883  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
11884  DB  68,15,88,21,36,35,0,0               ; addps         0x2324(%rip),%xmm10        # 4040 <_sk_callback_sse41+0x5af>
11885  DB  68,15,40,37,44,35,0,0               ; movaps        0x232c(%rip),%xmm12        # 4050 <_sk_callback_sse41+0x5bf>
11886  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
11887  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
11888  DB  69,15,89,195                        ; mulps         %xmm11,%xmm8
11889  DB  102,69,15,58,8,208,1                ; roundps       $0x1,%xmm8,%xmm10
11890  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
11891  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
11892  DB  68,15,88,5,25,35,0,0                ; addps         0x2319(%rip),%xmm8        # 4060 <_sk_callback_sse41+0x5cf>
11893  DB  68,15,40,21,33,35,0,0               ; movaps        0x2321(%rip),%xmm10        # 4070 <_sk_callback_sse41+0x5df>
11894  DB  69,15,89,211                        ; mulps         %xmm11,%xmm10
11895  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
11896  DB  68,15,40,21,33,35,0,0               ; movaps        0x2321(%rip),%xmm10        # 4080 <_sk_callback_sse41+0x5ef>
11897  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
11898  DB  68,15,40,29,37,35,0,0               ; movaps        0x2325(%rip),%xmm11        # 4090 <_sk_callback_sse41+0x5ff>
11899  DB  69,15,94,218                        ; divps         %xmm10,%xmm11
11900  DB  69,15,88,216                        ; addps         %xmm8,%xmm11
11901  DB  68,15,89,29,37,35,0,0               ; mulps         0x2325(%rip),%xmm11        # 40a0 <_sk_callback_sse41+0x60f>
11902  DB  102,69,15,91,211                    ; cvtps2dq      %xmm11,%xmm10
11903  DB  243,68,15,16,64,20                  ; movss         0x14(%rax),%xmm8
11904  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
11905  DB  69,15,88,194                        ; addps         %xmm10,%xmm8
11906  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
11907  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11908  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
11909  DB  68,15,93,5,12,35,0,0                ; minps         0x230c(%rip),%xmm8        # 40b0 <_sk_callback_sse41+0x61f>
11910  DB  72,173                              ; lods          %ds:(%rsi),%rax
11911  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
11912  DB  255,224                             ; jmpq          *%rax
11913
11914PUBLIC _sk_parametric_g_sse41
11915_sk_parametric_g_sse41 LABEL PROC
11916  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
11917  DB  72,173                              ; lods          %ds:(%rsi),%rax
11918  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
11919  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11920  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
11921  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
11922  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
11923  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
11924  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
11925  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
11926  DB  15,40,193                           ; movaps        %xmm1,%xmm0
11927  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
11928  DB  243,15,16,72,24                     ; movss         0x18(%rax),%xmm1
11929  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
11930  DB  68,15,88,201                        ; addps         %xmm1,%xmm9
11931  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
11932  DB  243,15,16,72,8                      ; movss         0x8(%rax),%xmm1
11933  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
11934  DB  68,15,88,217                        ; addps         %xmm1,%xmm11
11935  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11936  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
11937  DB  68,15,89,37,173,34,0,0              ; mulps         0x22ad(%rip),%xmm12        # 40c0 <_sk_callback_sse41+0x62f>
11938  DB  68,15,84,29,181,34,0,0              ; andps         0x22b5(%rip),%xmm11        # 40d0 <_sk_callback_sse41+0x63f>
11939  DB  68,15,86,29,189,34,0,0              ; orps          0x22bd(%rip),%xmm11        # 40e0 <_sk_callback_sse41+0x64f>
11940  DB  68,15,88,37,197,34,0,0              ; addps         0x22c5(%rip),%xmm12        # 40f0 <_sk_callback_sse41+0x65f>
11941  DB  15,40,13,206,34,0,0                 ; movaps        0x22ce(%rip),%xmm1        # 4100 <_sk_callback_sse41+0x66f>
11942  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
11943  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
11944  DB  68,15,88,29,206,34,0,0              ; addps         0x22ce(%rip),%xmm11        # 4110 <_sk_callback_sse41+0x67f>
11945  DB  15,40,13,215,34,0,0                 ; movaps        0x22d7(%rip),%xmm1        # 4120 <_sk_callback_sse41+0x68f>
11946  DB  65,15,94,203                        ; divps         %xmm11,%xmm1
11947  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
11948  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
11949  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
11950  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
11951  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
11952  DB  68,15,88,37,196,34,0,0              ; addps         0x22c4(%rip),%xmm12        # 4130 <_sk_callback_sse41+0x69f>
11953  DB  15,40,13,205,34,0,0                 ; movaps        0x22cd(%rip),%xmm1        # 4140 <_sk_callback_sse41+0x6af>
11954  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
11955  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
11956  DB  68,15,40,21,205,34,0,0              ; movaps        0x22cd(%rip),%xmm10        # 4150 <_sk_callback_sse41+0x6bf>
11957  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
11958  DB  15,40,13,210,34,0,0                 ; movaps        0x22d2(%rip),%xmm1        # 4160 <_sk_callback_sse41+0x6cf>
11959  DB  65,15,94,202                        ; divps         %xmm10,%xmm1
11960  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
11961  DB  15,89,13,211,34,0,0                 ; mulps         0x22d3(%rip),%xmm1        # 4170 <_sk_callback_sse41+0x6df>
11962  DB  102,68,15,91,209                    ; cvtps2dq      %xmm1,%xmm10
11963  DB  243,15,16,72,20                     ; movss         0x14(%rax),%xmm1
11964  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
11965  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
11966  DB  102,65,15,56,20,201                 ; blendvps      %xmm0,%xmm9,%xmm1
11967  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11968  DB  15,95,200                           ; maxps         %xmm0,%xmm1
11969  DB  15,93,13,190,34,0,0                 ; minps         0x22be(%rip),%xmm1        # 4180 <_sk_callback_sse41+0x6ef>
11970  DB  72,173                              ; lods          %ds:(%rsi),%rax
11971  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
11972  DB  255,224                             ; jmpq          *%rax
11973
11974PUBLIC _sk_parametric_b_sse41
11975_sk_parametric_b_sse41 LABEL PROC
11976  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
11977  DB  72,173                              ; lods          %ds:(%rsi),%rax
11978  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
11979  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11980  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
11981  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
11982  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
11983  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
11984  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
11985  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
11986  DB  15,40,194                           ; movaps        %xmm2,%xmm0
11987  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
11988  DB  243,15,16,80,24                     ; movss         0x18(%rax),%xmm2
11989  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
11990  DB  68,15,88,202                        ; addps         %xmm2,%xmm9
11991  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
11992  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
11993  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
11994  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
11995  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11996  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
11997  DB  68,15,89,37,95,34,0,0               ; mulps         0x225f(%rip),%xmm12        # 4190 <_sk_callback_sse41+0x6ff>
11998  DB  68,15,84,29,103,34,0,0              ; andps         0x2267(%rip),%xmm11        # 41a0 <_sk_callback_sse41+0x70f>
11999  DB  68,15,86,29,111,34,0,0              ; orps          0x226f(%rip),%xmm11        # 41b0 <_sk_callback_sse41+0x71f>
12000  DB  68,15,88,37,119,34,0,0              ; addps         0x2277(%rip),%xmm12        # 41c0 <_sk_callback_sse41+0x72f>
12001  DB  15,40,21,128,34,0,0                 ; movaps        0x2280(%rip),%xmm2        # 41d0 <_sk_callback_sse41+0x73f>
12002  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
12003  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
12004  DB  68,15,88,29,128,34,0,0              ; addps         0x2280(%rip),%xmm11        # 41e0 <_sk_callback_sse41+0x74f>
12005  DB  15,40,21,137,34,0,0                 ; movaps        0x2289(%rip),%xmm2        # 41f0 <_sk_callback_sse41+0x75f>
12006  DB  65,15,94,211                        ; divps         %xmm11,%xmm2
12007  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
12008  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
12009  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
12010  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
12011  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
12012  DB  68,15,88,37,118,34,0,0              ; addps         0x2276(%rip),%xmm12        # 4200 <_sk_callback_sse41+0x76f>
12013  DB  15,40,21,127,34,0,0                 ; movaps        0x227f(%rip),%xmm2        # 4210 <_sk_callback_sse41+0x77f>
12014  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
12015  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
12016  DB  68,15,40,21,127,34,0,0              ; movaps        0x227f(%rip),%xmm10        # 4220 <_sk_callback_sse41+0x78f>
12017  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
12018  DB  15,40,21,132,34,0,0                 ; movaps        0x2284(%rip),%xmm2        # 4230 <_sk_callback_sse41+0x79f>
12019  DB  65,15,94,210                        ; divps         %xmm10,%xmm2
12020  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
12021  DB  15,89,21,133,34,0,0                 ; mulps         0x2285(%rip),%xmm2        # 4240 <_sk_callback_sse41+0x7af>
12022  DB  102,68,15,91,210                    ; cvtps2dq      %xmm2,%xmm10
12023  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
12024  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
12025  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
12026  DB  102,65,15,56,20,209                 ; blendvps      %xmm0,%xmm9,%xmm2
12027  DB  15,87,192                           ; xorps         %xmm0,%xmm0
12028  DB  15,95,208                           ; maxps         %xmm0,%xmm2
12029  DB  15,93,21,112,34,0,0                 ; minps         0x2270(%rip),%xmm2        # 4250 <_sk_callback_sse41+0x7bf>
12030  DB  72,173                              ; lods          %ds:(%rsi),%rax
12031  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12032  DB  255,224                             ; jmpq          *%rax
12033
12034PUBLIC _sk_parametric_a_sse41
12035_sk_parametric_a_sse41 LABEL PROC
12036  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12037  DB  72,173                              ; lods          %ds:(%rsi),%rax
12038  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
12039  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12040  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
12041  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
12042  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
12043  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
12044  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
12045  DB  68,15,89,219                        ; mulps         %xmm3,%xmm11
12046  DB  15,40,195                           ; movaps        %xmm3,%xmm0
12047  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
12048  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
12049  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
12050  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
12051  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
12052  DB  243,15,16,88,8                      ; movss         0x8(%rax),%xmm3
12053  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
12054  DB  68,15,88,219                        ; addps         %xmm3,%xmm11
12055  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12056  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
12057  DB  68,15,89,37,17,34,0,0               ; mulps         0x2211(%rip),%xmm12        # 4260 <_sk_callback_sse41+0x7cf>
12058  DB  68,15,84,29,25,34,0,0               ; andps         0x2219(%rip),%xmm11        # 4270 <_sk_callback_sse41+0x7df>
12059  DB  68,15,86,29,33,34,0,0               ; orps          0x2221(%rip),%xmm11        # 4280 <_sk_callback_sse41+0x7ef>
12060  DB  68,15,88,37,41,34,0,0               ; addps         0x2229(%rip),%xmm12        # 4290 <_sk_callback_sse41+0x7ff>
12061  DB  15,40,29,50,34,0,0                  ; movaps        0x2232(%rip),%xmm3        # 42a0 <_sk_callback_sse41+0x80f>
12062  DB  65,15,89,219                        ; mulps         %xmm11,%xmm3
12063  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
12064  DB  68,15,88,29,50,34,0,0               ; addps         0x2232(%rip),%xmm11        # 42b0 <_sk_callback_sse41+0x81f>
12065  DB  15,40,29,59,34,0,0                  ; movaps        0x223b(%rip),%xmm3        # 42c0 <_sk_callback_sse41+0x82f>
12066  DB  65,15,94,219                        ; divps         %xmm11,%xmm3
12067  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
12068  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
12069  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
12070  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
12071  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
12072  DB  68,15,88,37,40,34,0,0               ; addps         0x2228(%rip),%xmm12        # 42d0 <_sk_callback_sse41+0x83f>
12073  DB  15,40,29,49,34,0,0                  ; movaps        0x2231(%rip),%xmm3        # 42e0 <_sk_callback_sse41+0x84f>
12074  DB  65,15,89,219                        ; mulps         %xmm11,%xmm3
12075  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
12076  DB  68,15,40,21,49,34,0,0               ; movaps        0x2231(%rip),%xmm10        # 42f0 <_sk_callback_sse41+0x85f>
12077  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
12078  DB  15,40,29,54,34,0,0                  ; movaps        0x2236(%rip),%xmm3        # 4300 <_sk_callback_sse41+0x86f>
12079  DB  65,15,94,218                        ; divps         %xmm10,%xmm3
12080  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
12081  DB  15,89,29,55,34,0,0                  ; mulps         0x2237(%rip),%xmm3        # 4310 <_sk_callback_sse41+0x87f>
12082  DB  102,68,15,91,211                    ; cvtps2dq      %xmm3,%xmm10
12083  DB  243,15,16,88,20                     ; movss         0x14(%rax),%xmm3
12084  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
12085  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
12086  DB  102,65,15,56,20,217                 ; blendvps      %xmm0,%xmm9,%xmm3
12087  DB  15,87,192                           ; xorps         %xmm0,%xmm0
12088  DB  15,95,216                           ; maxps         %xmm0,%xmm3
12089  DB  15,93,29,34,34,0,0                  ; minps         0x2222(%rip),%xmm3        # 4320 <_sk_callback_sse41+0x88f>
12090  DB  72,173                              ; lods          %ds:(%rsi),%rax
12091  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12092  DB  255,224                             ; jmpq          *%rax
12093
12094PUBLIC _sk_lab_to_xyz_sse41
12095_sk_lab_to_xyz_sse41 LABEL PROC
12096  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12097  DB  68,15,89,5,30,34,0,0                ; mulps         0x221e(%rip),%xmm8        # 4330 <_sk_callback_sse41+0x89f>
12098  DB  68,15,40,13,38,34,0,0               ; movaps        0x2226(%rip),%xmm9        # 4340 <_sk_callback_sse41+0x8af>
12099  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
12100  DB  15,40,5,43,34,0,0                   ; movaps        0x222b(%rip),%xmm0        # 4350 <_sk_callback_sse41+0x8bf>
12101  DB  15,88,200                           ; addps         %xmm0,%xmm1
12102  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
12103  DB  15,88,208                           ; addps         %xmm0,%xmm2
12104  DB  68,15,88,5,41,34,0,0                ; addps         0x2229(%rip),%xmm8        # 4360 <_sk_callback_sse41+0x8cf>
12105  DB  68,15,89,5,49,34,0,0                ; mulps         0x2231(%rip),%xmm8        # 4370 <_sk_callback_sse41+0x8df>
12106  DB  15,89,13,58,34,0,0                  ; mulps         0x223a(%rip),%xmm1        # 4380 <_sk_callback_sse41+0x8ef>
12107  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
12108  DB  15,89,21,63,34,0,0                  ; mulps         0x223f(%rip),%xmm2        # 4390 <_sk_callback_sse41+0x8ff>
12109  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
12110  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
12111  DB  68,15,40,217                        ; movaps        %xmm1,%xmm11
12112  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
12113  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
12114  DB  68,15,40,13,51,34,0,0               ; movaps        0x2233(%rip),%xmm9        # 43a0 <_sk_callback_sse41+0x90f>
12115  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12116  DB  65,15,194,195,1                     ; cmpltps       %xmm11,%xmm0
12117  DB  15,40,21,51,34,0,0                  ; movaps        0x2233(%rip),%xmm2        # 43b0 <_sk_callback_sse41+0x91f>
12118  DB  15,88,202                           ; addps         %xmm2,%xmm1
12119  DB  68,15,40,37,56,34,0,0               ; movaps        0x2238(%rip),%xmm12        # 43c0 <_sk_callback_sse41+0x92f>
12120  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
12121  DB  102,65,15,56,20,203                 ; blendvps      %xmm0,%xmm11,%xmm1
12122  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
12123  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
12124  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
12125  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12126  DB  65,15,194,195,1                     ; cmpltps       %xmm11,%xmm0
12127  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
12128  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
12129  DB  102,69,15,56,20,195                 ; blendvps      %xmm0,%xmm11,%xmm8
12130  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
12131  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
12132  DB  69,15,89,218                        ; mulps         %xmm10,%xmm11
12133  DB  69,15,194,203,1                     ; cmpltps       %xmm11,%xmm9
12134  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
12135  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
12136  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12137  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
12138  DB  15,89,13,241,33,0,0                 ; mulps         0x21f1(%rip),%xmm1        # 43d0 <_sk_callback_sse41+0x93f>
12139  DB  15,89,21,250,33,0,0                 ; mulps         0x21fa(%rip),%xmm2        # 43e0 <_sk_callback_sse41+0x94f>
12140  DB  72,173                              ; lods          %ds:(%rsi),%rax
12141  DB  15,40,193                           ; movaps        %xmm1,%xmm0
12142  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
12143  DB  255,224                             ; jmpq          *%rax
12144
12145PUBLIC _sk_load_a8_sse41
12146_sk_load_a8_sse41 LABEL PROC
12147  DB  72,173                              ; lods          %ds:(%rsi),%rax
12148  DB  72,139,0                            ; mov           (%rax),%rax
12149  DB  102,15,56,49,4,56                   ; pmovzxbd      (%rax,%rdi,1),%xmm0
12150  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
12151  DB  15,89,29,234,33,0,0                 ; mulps         0x21ea(%rip),%xmm3        # 43f0 <_sk_callback_sse41+0x95f>
12152  DB  72,173                              ; lods          %ds:(%rsi),%rax
12153  DB  15,87,192                           ; xorps         %xmm0,%xmm0
12154  DB  15,87,201                           ; xorps         %xmm1,%xmm1
12155  DB  15,87,210                           ; xorps         %xmm2,%xmm2
12156  DB  255,224                             ; jmpq          *%rax
12157
12158PUBLIC _sk_gather_a8_sse41
12159_sk_gather_a8_sse41 LABEL PROC
12160  DB  72,173                              ; lods          %ds:(%rsi),%rax
12161  DB  76,139,8                            ; mov           (%rax),%r9
12162  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
12163  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
12164  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
12165  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
12166  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
12167  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
12168  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
12169  DB  65,137,192                          ; mov           %eax,%r8d
12170  DB  72,193,232,32                       ; shr           $0x20,%rax
12171  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
12172  DB  65,137,202                          ; mov           %ecx,%r10d
12173  DB  72,193,233,32                       ; shr           $0x20,%rcx
12174  DB  102,67,15,58,32,4,17,0              ; pinsrb        $0x0,(%r9,%r10,1),%xmm0
12175  DB  102,65,15,58,32,4,9,1               ; pinsrb        $0x1,(%r9,%rcx,1),%xmm0
12176  DB  67,15,182,12,1                      ; movzbl        (%r9,%r8,1),%ecx
12177  DB  102,15,58,32,193,2                  ; pinsrb        $0x2,%ecx,%xmm0
12178  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
12179  DB  102,15,58,32,192,3                  ; pinsrb        $0x3,%eax,%xmm0
12180  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
12181  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
12182  DB  15,89,29,126,33,0,0                 ; mulps         0x217e(%rip),%xmm3        # 4400 <_sk_callback_sse41+0x96f>
12183  DB  72,173                              ; lods          %ds:(%rsi),%rax
12184  DB  15,87,192                           ; xorps         %xmm0,%xmm0
12185  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
12186  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
12187  DB  255,224                             ; jmpq          *%rax
12188
12189PUBLIC _sk_store_a8_sse41
12190_sk_store_a8_sse41 LABEL PROC
12191  DB  72,173                              ; lods          %ds:(%rsi),%rax
12192  DB  72,139,0                            ; mov           (%rax),%rax
12193  DB  68,15,40,5,114,33,0,0               ; movaps        0x2172(%rip),%xmm8        # 4410 <_sk_callback_sse41+0x97f>
12194  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
12195  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
12196  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
12197  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
12198  DB  102,68,15,126,4,56                  ; movd          %xmm8,(%rax,%rdi,1)
12199  DB  72,173                              ; lods          %ds:(%rsi),%rax
12200  DB  255,224                             ; jmpq          *%rax
12201
12202PUBLIC _sk_load_g8_sse41
12203_sk_load_g8_sse41 LABEL PROC
12204  DB  72,173                              ; lods          %ds:(%rsi),%rax
12205  DB  72,139,0                            ; mov           (%rax),%rax
12206  DB  102,15,56,49,4,56                   ; pmovzxbd      (%rax,%rdi,1),%xmm0
12207  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12208  DB  15,89,5,79,33,0,0                   ; mulps         0x214f(%rip),%xmm0        # 4420 <_sk_callback_sse41+0x98f>
12209  DB  72,173                              ; lods          %ds:(%rsi),%rax
12210  DB  15,40,29,86,33,0,0                  ; movaps        0x2156(%rip),%xmm3        # 4430 <_sk_callback_sse41+0x99f>
12211  DB  15,40,200                           ; movaps        %xmm0,%xmm1
12212  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12213  DB  255,224                             ; jmpq          *%rax
12214
12215PUBLIC _sk_gather_g8_sse41
12216_sk_gather_g8_sse41 LABEL PROC
12217  DB  72,173                              ; lods          %ds:(%rsi),%rax
12218  DB  76,139,8                            ; mov           (%rax),%r9
12219  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
12220  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
12221  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
12222  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
12223  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
12224  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
12225  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
12226  DB  65,137,192                          ; mov           %eax,%r8d
12227  DB  72,193,232,32                       ; shr           $0x20,%rax
12228  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
12229  DB  65,137,202                          ; mov           %ecx,%r10d
12230  DB  72,193,233,32                       ; shr           $0x20,%rcx
12231  DB  102,67,15,58,32,4,17,0              ; pinsrb        $0x0,(%r9,%r10,1),%xmm0
12232  DB  102,65,15,58,32,4,9,1               ; pinsrb        $0x1,(%r9,%rcx,1),%xmm0
12233  DB  67,15,182,12,1                      ; movzbl        (%r9,%r8,1),%ecx
12234  DB  102,15,58,32,193,2                  ; pinsrb        $0x2,%ecx,%xmm0
12235  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
12236  DB  102,15,58,32,192,3                  ; pinsrb        $0x3,%eax,%xmm0
12237  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
12238  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12239  DB  15,89,5,239,32,0,0                  ; mulps         0x20ef(%rip),%xmm0        # 4440 <_sk_callback_sse41+0x9af>
12240  DB  72,173                              ; lods          %ds:(%rsi),%rax
12241  DB  15,40,29,246,32,0,0                 ; movaps        0x20f6(%rip),%xmm3        # 4450 <_sk_callback_sse41+0x9bf>
12242  DB  15,40,200                           ; movaps        %xmm0,%xmm1
12243  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12244  DB  255,224                             ; jmpq          *%rax
12245
12246PUBLIC _sk_gather_i8_sse41
12247_sk_gather_i8_sse41 LABEL PROC
12248  DB  72,173                              ; lods          %ds:(%rsi),%rax
12249  DB  73,137,192                          ; mov           %rax,%r8
12250  DB  77,133,192                          ; test          %r8,%r8
12251  DB  116,5                               ; je            2371 <_sk_gather_i8_sse41+0xf>
12252  DB  76,137,192                          ; mov           %r8,%rax
12253  DB  235,2                               ; jmp           2373 <_sk_gather_i8_sse41+0x11>
12254  DB  72,173                              ; lods          %ds:(%rsi),%rax
12255  DB  76,139,16                           ; mov           (%rax),%r10
12256  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
12257  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
12258  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
12259  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
12260  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
12261  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
12262  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
12263  DB  65,137,193                          ; mov           %eax,%r9d
12264  DB  72,193,232,32                       ; shr           $0x20,%rax
12265  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
12266  DB  65,137,203                          ; mov           %ecx,%r11d
12267  DB  72,193,233,32                       ; shr           $0x20,%rcx
12268  DB  102,67,15,58,32,4,26,0              ; pinsrb        $0x0,(%r10,%r11,1),%xmm0
12269  DB  102,65,15,58,32,4,10,1              ; pinsrb        $0x1,(%r10,%rcx,1),%xmm0
12270  DB  102,67,15,58,32,4,10,2              ; pinsrb        $0x2,(%r10,%r9,1),%xmm0
12271  DB  102,65,15,58,32,4,2,3               ; pinsrb        $0x3,(%r10,%rax,1),%xmm0
12272  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
12273  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
12274  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
12275  DB  73,139,64,8                         ; mov           0x8(%r8),%rax
12276  DB  65,137,200                          ; mov           %ecx,%r8d
12277  DB  72,193,233,30                       ; shr           $0x1e,%rcx
12278  DB  69,137,202                          ; mov           %r9d,%r10d
12279  DB  73,193,233,30                       ; shr           $0x1e,%r9
12280  DB  102,66,15,110,28,128                ; movd          (%rax,%r8,4),%xmm3
12281  DB  102,15,58,34,28,8,1                 ; pinsrd        $0x1,(%rax,%rcx,1),%xmm3
12282  DB  102,66,15,58,34,28,144,2            ; pinsrd        $0x2,(%rax,%r10,4),%xmm3
12283  DB  102,66,15,58,34,28,8,3              ; pinsrd        $0x3,(%rax,%r9,1),%xmm3
12284  DB  102,15,111,5,77,32,0,0              ; movdqa        0x204d(%rip),%xmm0        # 4460 <_sk_callback_sse41+0x9cf>
12285  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
12286  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12287  DB  68,15,40,5,78,32,0,0                ; movaps        0x204e(%rip),%xmm8        # 4470 <_sk_callback_sse41+0x9df>
12288  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12289  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
12290  DB  102,15,56,0,13,77,32,0,0            ; pshufb        0x204d(%rip),%xmm1        # 4480 <_sk_callback_sse41+0x9ef>
12291  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12292  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12293  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
12294  DB  102,15,56,0,21,73,32,0,0            ; pshufb        0x2049(%rip),%xmm2        # 4490 <_sk_callback_sse41+0x9ff>
12295  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12296  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12297  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
12298  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12299  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
12300  DB  72,173                              ; lods          %ds:(%rsi),%rax
12301  DB  255,224                             ; jmpq          *%rax
12302
12303PUBLIC _sk_load_565_sse41
12304_sk_load_565_sse41 LABEL PROC
12305  DB  72,173                              ; lods          %ds:(%rsi),%rax
12306  DB  72,139,0                            ; mov           (%rax),%rax
12307  DB  102,15,56,51,20,120                 ; pmovzxwd      (%rax,%rdi,2),%xmm2
12308  DB  102,15,111,5,47,32,0,0              ; movdqa        0x202f(%rip),%xmm0        # 44a0 <_sk_callback_sse41+0xa0f>
12309  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
12310  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12311  DB  15,89,5,49,32,0,0                   ; mulps         0x2031(%rip),%xmm0        # 44b0 <_sk_callback_sse41+0xa1f>
12312  DB  102,15,111,13,57,32,0,0             ; movdqa        0x2039(%rip),%xmm1        # 44c0 <_sk_callback_sse41+0xa2f>
12313  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
12314  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12315  DB  15,89,13,59,32,0,0                  ; mulps         0x203b(%rip),%xmm1        # 44d0 <_sk_callback_sse41+0xa3f>
12316  DB  102,15,219,21,67,32,0,0             ; pand          0x2043(%rip),%xmm2        # 44e0 <_sk_callback_sse41+0xa4f>
12317  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12318  DB  15,89,21,73,32,0,0                  ; mulps         0x2049(%rip),%xmm2        # 44f0 <_sk_callback_sse41+0xa5f>
12319  DB  72,173                              ; lods          %ds:(%rsi),%rax
12320  DB  15,40,29,80,32,0,0                  ; movaps        0x2050(%rip),%xmm3        # 4500 <_sk_callback_sse41+0xa6f>
12321  DB  255,224                             ; jmpq          *%rax
12322
12323PUBLIC _sk_gather_565_sse41
12324_sk_gather_565_sse41 LABEL PROC
12325  DB  72,173                              ; lods          %ds:(%rsi),%rax
12326  DB  76,139,8                            ; mov           (%rax),%r9
12327  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
12328  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
12329  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
12330  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
12331  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
12332  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
12333  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
12334  DB  65,137,192                          ; mov           %eax,%r8d
12335  DB  72,193,232,32                       ; shr           $0x20,%rax
12336  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
12337  DB  65,137,202                          ; mov           %ecx,%r10d
12338  DB  72,193,233,32                       ; shr           $0x20,%rcx
12339  DB  102,67,15,196,4,81,0                ; pinsrw        $0x0,(%r9,%r10,2),%xmm0
12340  DB  102,65,15,196,4,73,1                ; pinsrw        $0x1,(%r9,%rcx,2),%xmm0
12341  DB  67,15,183,12,65                     ; movzwl        (%r9,%r8,2),%ecx
12342  DB  102,15,196,193,2                    ; pinsrw        $0x2,%ecx,%xmm0
12343  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
12344  DB  102,15,196,192,3                    ; pinsrw        $0x3,%eax,%xmm0
12345  DB  102,15,56,51,208                    ; pmovzxwd      %xmm0,%xmm2
12346  DB  102,15,111,5,245,31,0,0             ; movdqa        0x1ff5(%rip),%xmm0        # 4510 <_sk_callback_sse41+0xa7f>
12347  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
12348  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12349  DB  15,89,5,247,31,0,0                  ; mulps         0x1ff7(%rip),%xmm0        # 4520 <_sk_callback_sse41+0xa8f>
12350  DB  102,15,111,13,255,31,0,0            ; movdqa        0x1fff(%rip),%xmm1        # 4530 <_sk_callback_sse41+0xa9f>
12351  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
12352  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12353  DB  15,89,13,1,32,0,0                   ; mulps         0x2001(%rip),%xmm1        # 4540 <_sk_callback_sse41+0xaaf>
12354  DB  102,15,219,21,9,32,0,0              ; pand          0x2009(%rip),%xmm2        # 4550 <_sk_callback_sse41+0xabf>
12355  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12356  DB  15,89,21,15,32,0,0                  ; mulps         0x200f(%rip),%xmm2        # 4560 <_sk_callback_sse41+0xacf>
12357  DB  72,173                              ; lods          %ds:(%rsi),%rax
12358  DB  15,40,29,22,32,0,0                  ; movaps        0x2016(%rip),%xmm3        # 4570 <_sk_callback_sse41+0xadf>
12359  DB  255,224                             ; jmpq          *%rax
12360
12361PUBLIC _sk_store_565_sse41
12362_sk_store_565_sse41 LABEL PROC
12363  DB  72,173                              ; lods          %ds:(%rsi),%rax
12364  DB  72,139,0                            ; mov           (%rax),%rax
12365  DB  68,15,40,5,23,32,0,0                ; movaps        0x2017(%rip),%xmm8        # 4580 <_sk_callback_sse41+0xaef>
12366  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12367  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12368  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12369  DB  102,65,15,114,241,11                ; pslld         $0xb,%xmm9
12370  DB  68,15,40,21,12,32,0,0               ; movaps        0x200c(%rip),%xmm10        # 4590 <_sk_callback_sse41+0xaff>
12371  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
12372  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
12373  DB  102,65,15,114,242,5                 ; pslld         $0x5,%xmm10
12374  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
12375  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
12376  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
12377  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
12378  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
12379  DB  102,68,15,214,4,120                 ; movq          %xmm8,(%rax,%rdi,2)
12380  DB  72,173                              ; lods          %ds:(%rsi),%rax
12381  DB  255,224                             ; jmpq          *%rax
12382
12383PUBLIC _sk_load_4444_sse41
12384_sk_load_4444_sse41 LABEL PROC
12385  DB  72,173                              ; lods          %ds:(%rsi),%rax
12386  DB  72,139,0                            ; mov           (%rax),%rax
12387  DB  102,15,56,51,28,120                 ; pmovzxwd      (%rax,%rdi,2),%xmm3
12388  DB  102,15,111,5,215,31,0,0             ; movdqa        0x1fd7(%rip),%xmm0        # 45a0 <_sk_callback_sse41+0xb0f>
12389  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
12390  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12391  DB  15,89,5,217,31,0,0                  ; mulps         0x1fd9(%rip),%xmm0        # 45b0 <_sk_callback_sse41+0xb1f>
12392  DB  102,15,111,13,225,31,0,0            ; movdqa        0x1fe1(%rip),%xmm1        # 45c0 <_sk_callback_sse41+0xb2f>
12393  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
12394  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12395  DB  15,89,13,227,31,0,0                 ; mulps         0x1fe3(%rip),%xmm1        # 45d0 <_sk_callback_sse41+0xb3f>
12396  DB  102,15,111,21,235,31,0,0            ; movdqa        0x1feb(%rip),%xmm2        # 45e0 <_sk_callback_sse41+0xb4f>
12397  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
12398  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12399  DB  15,89,21,237,31,0,0                 ; mulps         0x1fed(%rip),%xmm2        # 45f0 <_sk_callback_sse41+0xb5f>
12400  DB  102,15,219,29,245,31,0,0            ; pand          0x1ff5(%rip),%xmm3        # 4600 <_sk_callback_sse41+0xb6f>
12401  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12402  DB  15,89,29,251,31,0,0                 ; mulps         0x1ffb(%rip),%xmm3        # 4610 <_sk_callback_sse41+0xb7f>
12403  DB  72,173                              ; lods          %ds:(%rsi),%rax
12404  DB  255,224                             ; jmpq          *%rax
12405
12406PUBLIC _sk_gather_4444_sse41
12407_sk_gather_4444_sse41 LABEL PROC
12408  DB  72,173                              ; lods          %ds:(%rsi),%rax
12409  DB  76,139,8                            ; mov           (%rax),%r9
12410  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
12411  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
12412  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
12413  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
12414  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
12415  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
12416  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
12417  DB  65,137,192                          ; mov           %eax,%r8d
12418  DB  72,193,232,32                       ; shr           $0x20,%rax
12419  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
12420  DB  65,137,202                          ; mov           %ecx,%r10d
12421  DB  72,193,233,32                       ; shr           $0x20,%rcx
12422  DB  102,67,15,196,4,81,0                ; pinsrw        $0x0,(%r9,%r10,2),%xmm0
12423  DB  102,65,15,196,4,73,1                ; pinsrw        $0x1,(%r9,%rcx,2),%xmm0
12424  DB  67,15,183,12,65                     ; movzwl        (%r9,%r8,2),%ecx
12425  DB  102,15,196,193,2                    ; pinsrw        $0x2,%ecx,%xmm0
12426  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
12427  DB  102,15,196,192,3                    ; pinsrw        $0x3,%eax,%xmm0
12428  DB  102,15,56,51,216                    ; pmovzxwd      %xmm0,%xmm3
12429  DB  102,15,111,5,158,31,0,0             ; movdqa        0x1f9e(%rip),%xmm0        # 4620 <_sk_callback_sse41+0xb8f>
12430  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
12431  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12432  DB  15,89,5,160,31,0,0                  ; mulps         0x1fa0(%rip),%xmm0        # 4630 <_sk_callback_sse41+0xb9f>
12433  DB  102,15,111,13,168,31,0,0            ; movdqa        0x1fa8(%rip),%xmm1        # 4640 <_sk_callback_sse41+0xbaf>
12434  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
12435  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12436  DB  15,89,13,170,31,0,0                 ; mulps         0x1faa(%rip),%xmm1        # 4650 <_sk_callback_sse41+0xbbf>
12437  DB  102,15,111,21,178,31,0,0            ; movdqa        0x1fb2(%rip),%xmm2        # 4660 <_sk_callback_sse41+0xbcf>
12438  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
12439  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12440  DB  15,89,21,180,31,0,0                 ; mulps         0x1fb4(%rip),%xmm2        # 4670 <_sk_callback_sse41+0xbdf>
12441  DB  102,15,219,29,188,31,0,0            ; pand          0x1fbc(%rip),%xmm3        # 4680 <_sk_callback_sse41+0xbef>
12442  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12443  DB  15,89,29,194,31,0,0                 ; mulps         0x1fc2(%rip),%xmm3        # 4690 <_sk_callback_sse41+0xbff>
12444  DB  72,173                              ; lods          %ds:(%rsi),%rax
12445  DB  255,224                             ; jmpq          *%rax
12446
12447PUBLIC _sk_store_4444_sse41
12448_sk_store_4444_sse41 LABEL PROC
12449  DB  72,173                              ; lods          %ds:(%rsi),%rax
12450  DB  72,139,0                            ; mov           (%rax),%rax
12451  DB  68,15,40,5,193,31,0,0               ; movaps        0x1fc1(%rip),%xmm8        # 46a0 <_sk_callback_sse41+0xc0f>
12452  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12453  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12454  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12455  DB  102,65,15,114,241,12                ; pslld         $0xc,%xmm9
12456  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
12457  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
12458  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
12459  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
12460  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
12461  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
12462  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12463  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12464  DB  102,65,15,114,241,4                 ; pslld         $0x4,%xmm9
12465  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
12466  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
12467  DB  102,69,15,86,193                    ; orpd          %xmm9,%xmm8
12468  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
12469  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
12470  DB  102,68,15,214,4,120                 ; movq          %xmm8,(%rax,%rdi,2)
12471  DB  72,173                              ; lods          %ds:(%rsi),%rax
12472  DB  255,224                             ; jmpq          *%rax
12473
12474PUBLIC _sk_load_8888_sse41
12475_sk_load_8888_sse41 LABEL PROC
12476  DB  72,173                              ; lods          %ds:(%rsi),%rax
12477  DB  72,139,0                            ; mov           (%rax),%rax
12478  DB  15,16,28,184                        ; movups        (%rax,%rdi,4),%xmm3
12479  DB  15,40,5,96,31,0,0                   ; movaps        0x1f60(%rip),%xmm0        # 46b0 <_sk_callback_sse41+0xc1f>
12480  DB  15,84,195                           ; andps         %xmm3,%xmm0
12481  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12482  DB  68,15,40,5,98,31,0,0                ; movaps        0x1f62(%rip),%xmm8        # 46c0 <_sk_callback_sse41+0xc2f>
12483  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12484  DB  15,40,203                           ; movaps        %xmm3,%xmm1
12485  DB  102,15,56,0,13,98,31,0,0            ; pshufb        0x1f62(%rip),%xmm1        # 46d0 <_sk_callback_sse41+0xc3f>
12486  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12487  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12488  DB  15,40,211                           ; movaps        %xmm3,%xmm2
12489  DB  102,15,56,0,21,95,31,0,0            ; pshufb        0x1f5f(%rip),%xmm2        # 46e0 <_sk_callback_sse41+0xc4f>
12490  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12491  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12492  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
12493  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12494  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
12495  DB  72,173                              ; lods          %ds:(%rsi),%rax
12496  DB  255,224                             ; jmpq          *%rax
12497
12498PUBLIC _sk_gather_8888_sse41
12499_sk_gather_8888_sse41 LABEL PROC
12500  DB  72,173                              ; lods          %ds:(%rsi),%rax
12501  DB  76,139,8                            ; mov           (%rax),%r9
12502  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
12503  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
12504  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
12505  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
12506  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
12507  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
12508  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
12509  DB  65,137,192                          ; mov           %eax,%r8d
12510  DB  72,193,232,32                       ; shr           $0x20,%rax
12511  DB  102,72,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%rcx
12512  DB  65,137,202                          ; mov           %ecx,%r10d
12513  DB  72,193,233,32                       ; shr           $0x20,%rcx
12514  DB  102,67,15,110,28,129                ; movd          (%r9,%r8,4),%xmm3
12515  DB  102,65,15,58,34,28,129,1            ; pinsrd        $0x1,(%r9,%rax,4),%xmm3
12516  DB  102,67,15,58,34,28,145,2            ; pinsrd        $0x2,(%r9,%r10,4),%xmm3
12517  DB  102,65,15,58,34,28,137,3            ; pinsrd        $0x3,(%r9,%rcx,4),%xmm3
12518  DB  102,15,111,5,248,30,0,0             ; movdqa        0x1ef8(%rip),%xmm0        # 46f0 <_sk_callback_sse41+0xc5f>
12519  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
12520  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12521  DB  68,15,40,5,249,30,0,0               ; movaps        0x1ef9(%rip),%xmm8        # 4700 <_sk_callback_sse41+0xc6f>
12522  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12523  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
12524  DB  102,15,56,0,13,248,30,0,0           ; pshufb        0x1ef8(%rip),%xmm1        # 4710 <_sk_callback_sse41+0xc7f>
12525  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12526  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12527  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
12528  DB  102,15,56,0,21,244,30,0,0           ; pshufb        0x1ef4(%rip),%xmm2        # 4720 <_sk_callback_sse41+0xc8f>
12529  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12530  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12531  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
12532  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12533  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
12534  DB  72,173                              ; lods          %ds:(%rsi),%rax
12535  DB  255,224                             ; jmpq          *%rax
12536
12537PUBLIC _sk_store_8888_sse41
12538_sk_store_8888_sse41 LABEL PROC
12539  DB  72,173                              ; lods          %ds:(%rsi),%rax
12540  DB  72,139,0                            ; mov           (%rax),%rax
12541  DB  68,15,40,5,224,30,0,0               ; movaps        0x1ee0(%rip),%xmm8        # 4730 <_sk_callback_sse41+0xc9f>
12542  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12543  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12544  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12545  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
12546  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
12547  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
12548  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
12549  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
12550  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
12551  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12552  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12553  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
12554  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
12555  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
12556  DB  102,65,15,114,240,24                ; pslld         $0x18,%xmm8
12557  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
12558  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
12559  DB  243,68,15,127,4,184                 ; movdqu        %xmm8,(%rax,%rdi,4)
12560  DB  72,173                              ; lods          %ds:(%rsi),%rax
12561  DB  255,224                             ; jmpq          *%rax
12562
12563PUBLIC _sk_load_f16_sse41
12564_sk_load_f16_sse41 LABEL PROC
12565  DB  72,173                              ; lods          %ds:(%rsi),%rax
12566  DB  72,139,0                            ; mov           (%rax),%rax
12567  DB  243,15,111,4,248                    ; movdqu        (%rax,%rdi,8),%xmm0
12568  DB  243,15,111,76,248,16                ; movdqu        0x10(%rax,%rdi,8),%xmm1
12569  DB  102,68,15,111,200                   ; movdqa        %xmm0,%xmm9
12570  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
12571  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
12572  DB  102,69,15,111,217                   ; movdqa        %xmm9,%xmm11
12573  DB  102,68,15,97,216                    ; punpcklwd     %xmm0,%xmm11
12574  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
12575  DB  102,65,15,56,51,203                 ; pmovzxwd      %xmm11,%xmm1
12576  DB  102,68,15,111,5,89,30,0,0           ; movdqa        0x1e59(%rip),%xmm8        # 4740 <_sk_callback_sse41+0xcaf>
12577  DB  102,15,111,209                      ; movdqa        %xmm1,%xmm2
12578  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
12579  DB  102,15,239,202                      ; pxor          %xmm2,%xmm1
12580  DB  102,15,111,29,84,30,0,0             ; movdqa        0x1e54(%rip),%xmm3        # 4750 <_sk_callback_sse41+0xcbf>
12581  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
12582  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
12583  DB  102,15,56,63,195                    ; pmaxud        %xmm3,%xmm0
12584  DB  102,15,118,193                      ; pcmpeqd       %xmm1,%xmm0
12585  DB  102,15,114,241,13                   ; pslld         $0xd,%xmm1
12586  DB  102,15,235,202                      ; por           %xmm2,%xmm1
12587  DB  102,68,15,111,21,64,30,0,0          ; movdqa        0x1e40(%rip),%xmm10        # 4760 <_sk_callback_sse41+0xccf>
12588  DB  102,65,15,254,202                   ; paddd         %xmm10,%xmm1
12589  DB  102,15,219,193                      ; pand          %xmm1,%xmm0
12590  DB  102,65,15,115,219,8                 ; psrldq        $0x8,%xmm11
12591  DB  102,69,15,56,51,219                 ; pmovzxwd      %xmm11,%xmm11
12592  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
12593  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
12594  DB  102,68,15,239,218                   ; pxor          %xmm2,%xmm11
12595  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
12596  DB  102,65,15,111,203                   ; movdqa        %xmm11,%xmm1
12597  DB  102,15,56,63,203                    ; pmaxud        %xmm3,%xmm1
12598  DB  102,65,15,118,203                   ; pcmpeqd       %xmm11,%xmm1
12599  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
12600  DB  102,68,15,235,218                   ; por           %xmm2,%xmm11
12601  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
12602  DB  102,65,15,219,203                   ; pand          %xmm11,%xmm1
12603  DB  102,69,15,56,51,217                 ; pmovzxwd      %xmm9,%xmm11
12604  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
12605  DB  102,69,15,219,224                   ; pand          %xmm8,%xmm12
12606  DB  102,69,15,239,220                   ; pxor          %xmm12,%xmm11
12607  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
12608  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
12609  DB  102,15,56,63,211                    ; pmaxud        %xmm3,%xmm2
12610  DB  102,65,15,118,211                   ; pcmpeqd       %xmm11,%xmm2
12611  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
12612  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
12613  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
12614  DB  102,65,15,219,211                   ; pand          %xmm11,%xmm2
12615  DB  102,65,15,115,217,8                 ; psrldq        $0x8,%xmm9
12616  DB  102,69,15,56,51,201                 ; pmovzxwd      %xmm9,%xmm9
12617  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
12618  DB  102,69,15,239,200                   ; pxor          %xmm8,%xmm9
12619  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
12620  DB  102,65,15,56,63,217                 ; pmaxud        %xmm9,%xmm3
12621  DB  102,65,15,118,217                   ; pcmpeqd       %xmm9,%xmm3
12622  DB  102,65,15,114,241,13                ; pslld         $0xd,%xmm9
12623  DB  102,69,15,235,200                   ; por           %xmm8,%xmm9
12624  DB  102,69,15,254,202                   ; paddd         %xmm10,%xmm9
12625  DB  102,65,15,219,217                   ; pand          %xmm9,%xmm3
12626  DB  72,173                              ; lods          %ds:(%rsi),%rax
12627  DB  255,224                             ; jmpq          *%rax
12628
12629PUBLIC _sk_gather_f16_sse41
12630_sk_gather_f16_sse41 LABEL PROC
12631  DB  72,173                              ; lods          %ds:(%rsi),%rax
12632  DB  76,139,8                            ; mov           (%rax),%r9
12633  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
12634  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
12635  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
12636  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
12637  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
12638  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
12639  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
12640  DB  65,137,192                          ; mov           %eax,%r8d
12641  DB  72,193,232,32                       ; shr           $0x20,%rax
12642  DB  102,72,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%rcx
12643  DB  65,137,202                          ; mov           %ecx,%r10d
12644  DB  72,193,233,32                       ; shr           $0x20,%rcx
12645  DB  243,65,15,126,4,201                 ; movq          (%r9,%rcx,8),%xmm0
12646  DB  243,67,15,126,12,209                ; movq          (%r9,%r10,8),%xmm1
12647  DB  102,15,108,200                      ; punpcklqdq    %xmm0,%xmm1
12648  DB  243,65,15,126,4,193                 ; movq          (%r9,%rax,8),%xmm0
12649  DB  243,67,15,126,20,193                ; movq          (%r9,%r8,8),%xmm2
12650  DB  102,15,108,208                      ; punpcklqdq    %xmm0,%xmm2
12651  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
12652  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
12653  DB  102,15,105,209                      ; punpckhwd     %xmm1,%xmm2
12654  DB  102,69,15,111,217                   ; movdqa        %xmm9,%xmm11
12655  DB  102,68,15,97,218                    ; punpcklwd     %xmm2,%xmm11
12656  DB  102,68,15,105,202                   ; punpckhwd     %xmm2,%xmm9
12657  DB  102,65,15,56,51,203                 ; pmovzxwd      %xmm11,%xmm1
12658  DB  102,68,15,111,5,254,28,0,0          ; movdqa        0x1cfe(%rip),%xmm8        # 4770 <_sk_callback_sse41+0xcdf>
12659  DB  102,15,111,209                      ; movdqa        %xmm1,%xmm2
12660  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
12661  DB  102,15,239,202                      ; pxor          %xmm2,%xmm1
12662  DB  102,15,111,29,249,28,0,0            ; movdqa        0x1cf9(%rip),%xmm3        # 4780 <_sk_callback_sse41+0xcef>
12663  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
12664  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
12665  DB  102,15,56,63,195                    ; pmaxud        %xmm3,%xmm0
12666  DB  102,15,118,193                      ; pcmpeqd       %xmm1,%xmm0
12667  DB  102,15,114,241,13                   ; pslld         $0xd,%xmm1
12668  DB  102,15,235,202                      ; por           %xmm2,%xmm1
12669  DB  102,68,15,111,21,229,28,0,0         ; movdqa        0x1ce5(%rip),%xmm10        # 4790 <_sk_callback_sse41+0xcff>
12670  DB  102,65,15,254,202                   ; paddd         %xmm10,%xmm1
12671  DB  102,15,219,193                      ; pand          %xmm1,%xmm0
12672  DB  102,65,15,115,219,8                 ; psrldq        $0x8,%xmm11
12673  DB  102,69,15,56,51,219                 ; pmovzxwd      %xmm11,%xmm11
12674  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
12675  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
12676  DB  102,68,15,239,218                   ; pxor          %xmm2,%xmm11
12677  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
12678  DB  102,65,15,111,203                   ; movdqa        %xmm11,%xmm1
12679  DB  102,15,56,63,203                    ; pmaxud        %xmm3,%xmm1
12680  DB  102,65,15,118,203                   ; pcmpeqd       %xmm11,%xmm1
12681  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
12682  DB  102,68,15,235,218                   ; por           %xmm2,%xmm11
12683  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
12684  DB  102,65,15,219,203                   ; pand          %xmm11,%xmm1
12685  DB  102,69,15,56,51,217                 ; pmovzxwd      %xmm9,%xmm11
12686  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
12687  DB  102,69,15,219,224                   ; pand          %xmm8,%xmm12
12688  DB  102,69,15,239,220                   ; pxor          %xmm12,%xmm11
12689  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
12690  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
12691  DB  102,15,56,63,211                    ; pmaxud        %xmm3,%xmm2
12692  DB  102,65,15,118,211                   ; pcmpeqd       %xmm11,%xmm2
12693  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
12694  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
12695  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
12696  DB  102,65,15,219,211                   ; pand          %xmm11,%xmm2
12697  DB  102,65,15,115,217,8                 ; psrldq        $0x8,%xmm9
12698  DB  102,69,15,56,51,201                 ; pmovzxwd      %xmm9,%xmm9
12699  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
12700  DB  102,69,15,239,200                   ; pxor          %xmm8,%xmm9
12701  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
12702  DB  102,65,15,56,63,217                 ; pmaxud        %xmm9,%xmm3
12703  DB  102,65,15,118,217                   ; pcmpeqd       %xmm9,%xmm3
12704  DB  102,65,15,114,241,13                ; pslld         $0xd,%xmm9
12705  DB  102,69,15,235,200                   ; por           %xmm8,%xmm9
12706  DB  102,69,15,254,202                   ; paddd         %xmm10,%xmm9
12707  DB  102,65,15,219,217                   ; pand          %xmm9,%xmm3
12708  DB  72,173                              ; lods          %ds:(%rsi),%rax
12709  DB  255,224                             ; jmpq          *%rax
12710
12711PUBLIC _sk_store_f16_sse41
12712_sk_store_f16_sse41 LABEL PROC
12713  DB  72,173                              ; lods          %ds:(%rsi),%rax
12714  DB  72,139,0                            ; mov           (%rax),%rax
12715  DB  102,68,15,111,21,27,28,0,0          ; movdqa        0x1c1b(%rip),%xmm10        # 47a0 <_sk_callback_sse41+0xd0f>
12716  DB  102,68,15,111,224                   ; movdqa        %xmm0,%xmm12
12717  DB  102,68,15,111,232                   ; movdqa        %xmm0,%xmm13
12718  DB  102,69,15,219,234                   ; pand          %xmm10,%xmm13
12719  DB  102,69,15,239,229                   ; pxor          %xmm13,%xmm12
12720  DB  102,68,15,111,13,14,28,0,0          ; movdqa        0x1c0e(%rip),%xmm9        # 47b0 <_sk_callback_sse41+0xd1f>
12721  DB  102,65,15,114,213,16                ; psrld         $0x10,%xmm13
12722  DB  102,69,15,111,193                   ; movdqa        %xmm9,%xmm8
12723  DB  102,69,15,102,196                   ; pcmpgtd       %xmm12,%xmm8
12724  DB  102,65,15,114,212,13                ; psrld         $0xd,%xmm12
12725  DB  102,68,15,111,29,255,27,0,0         ; movdqa        0x1bff(%rip),%xmm11        # 47c0 <_sk_callback_sse41+0xd2f>
12726  DB  102,69,15,235,235                   ; por           %xmm11,%xmm13
12727  DB  102,69,15,254,236                   ; paddd         %xmm12,%xmm13
12728  DB  102,69,15,223,197                   ; pandn         %xmm13,%xmm8
12729  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
12730  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
12731  DB  102,68,15,111,241                   ; movdqa        %xmm1,%xmm14
12732  DB  102,69,15,219,242                   ; pand          %xmm10,%xmm14
12733  DB  102,69,15,239,238                   ; pxor          %xmm14,%xmm13
12734  DB  102,65,15,114,214,16                ; psrld         $0x10,%xmm14
12735  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
12736  DB  102,69,15,102,229                   ; pcmpgtd       %xmm13,%xmm12
12737  DB  102,65,15,114,213,13                ; psrld         $0xd,%xmm13
12738  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
12739  DB  102,69,15,254,245                   ; paddd         %xmm13,%xmm14
12740  DB  102,69,15,223,230                   ; pandn         %xmm14,%xmm12
12741  DB  102,69,15,56,43,228                 ; packusdw      %xmm12,%xmm12
12742  DB  102,68,15,111,242                   ; movdqa        %xmm2,%xmm14
12743  DB  102,68,15,111,250                   ; movdqa        %xmm2,%xmm15
12744  DB  102,69,15,219,250                   ; pand          %xmm10,%xmm15
12745  DB  102,69,15,239,247                   ; pxor          %xmm15,%xmm14
12746  DB  102,65,15,114,215,16                ; psrld         $0x10,%xmm15
12747  DB  102,69,15,111,233                   ; movdqa        %xmm9,%xmm13
12748  DB  102,69,15,102,238                   ; pcmpgtd       %xmm14,%xmm13
12749  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
12750  DB  102,69,15,235,251                   ; por           %xmm11,%xmm15
12751  DB  102,69,15,254,254                   ; paddd         %xmm14,%xmm15
12752  DB  102,69,15,223,239                   ; pandn         %xmm15,%xmm13
12753  DB  102,69,15,56,43,237                 ; packusdw      %xmm13,%xmm13
12754  DB  102,68,15,219,211                   ; pand          %xmm3,%xmm10
12755  DB  102,68,15,111,243                   ; movdqa        %xmm3,%xmm14
12756  DB  102,69,15,239,242                   ; pxor          %xmm10,%xmm14
12757  DB  102,65,15,114,210,16                ; psrld         $0x10,%xmm10
12758  DB  102,69,15,102,206                   ; pcmpgtd       %xmm14,%xmm9
12759  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
12760  DB  102,69,15,235,211                   ; por           %xmm11,%xmm10
12761  DB  102,69,15,254,214                   ; paddd         %xmm14,%xmm10
12762  DB  102,69,15,223,202                   ; pandn         %xmm10,%xmm9
12763  DB  102,69,15,56,43,201                 ; packusdw      %xmm9,%xmm9
12764  DB  102,69,15,97,196                    ; punpcklwd     %xmm12,%xmm8
12765  DB  102,69,15,97,233                    ; punpcklwd     %xmm9,%xmm13
12766  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
12767  DB  102,69,15,98,205                    ; punpckldq     %xmm13,%xmm9
12768  DB  243,68,15,127,12,248                ; movdqu        %xmm9,(%rax,%rdi,8)
12769  DB  102,69,15,106,197                   ; punpckhdq     %xmm13,%xmm8
12770  DB  243,68,15,127,68,248,16             ; movdqu        %xmm8,0x10(%rax,%rdi,8)
12771  DB  72,173                              ; lods          %ds:(%rsi),%rax
12772  DB  255,224                             ; jmpq          *%rax
12773
12774PUBLIC _sk_load_u16_be_sse41
12775_sk_load_u16_be_sse41 LABEL PROC
12776  DB  72,173                              ; lods          %ds:(%rsi),%rax
12777  DB  72,139,0                            ; mov           (%rax),%rax
12778  DB  243,15,111,4,248                    ; movdqu        (%rax,%rdi,8),%xmm0
12779  DB  243,15,111,76,248,16                ; movdqu        0x10(%rax,%rdi,8),%xmm1
12780  DB  102,15,111,208                      ; movdqa        %xmm0,%xmm2
12781  DB  102,15,97,209                       ; punpcklwd     %xmm1,%xmm2
12782  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
12783  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
12784  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
12785  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
12786  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
12787  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
12788  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
12789  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
12790  DB  102,15,235,200                      ; por           %xmm0,%xmm1
12791  DB  102,15,56,51,193                    ; pmovzxwd      %xmm1,%xmm0
12792  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12793  DB  68,15,40,5,206,26,0,0               ; movaps        0x1ace(%rip),%xmm8        # 47d0 <_sk_callback_sse41+0xd3f>
12794  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12795  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
12796  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
12797  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
12798  DB  102,15,235,217                      ; por           %xmm1,%xmm3
12799  DB  102,15,56,51,203                    ; pmovzxwd      %xmm3,%xmm1
12800  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12801  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12802  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
12803  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
12804  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
12805  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
12806  DB  102,65,15,235,209                   ; por           %xmm9,%xmm2
12807  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
12808  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12809  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12810  DB  102,68,15,111,203                   ; movdqa        %xmm3,%xmm9
12811  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
12812  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
12813  DB  102,65,15,235,217                   ; por           %xmm9,%xmm3
12814  DB  102,15,56,51,219                    ; pmovzxwd      %xmm3,%xmm3
12815  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
12816  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
12817  DB  72,173                              ; lods          %ds:(%rsi),%rax
12818  DB  255,224                             ; jmpq          *%rax
12819
12820PUBLIC _sk_load_rgb_u16_be_sse41
12821_sk_load_rgb_u16_be_sse41 LABEL PROC
12822  DB  72,173                              ; lods          %ds:(%rsi),%rax
12823  DB  72,139,0                            ; mov           (%rax),%rax
12824  DB  72,141,12,127                       ; lea           (%rdi,%rdi,2),%rcx
12825  DB  243,15,111,20,72                    ; movdqu        (%rax,%rcx,2),%xmm2
12826  DB  243,15,111,68,72,8                  ; movdqu        0x8(%rax,%rcx,2),%xmm0
12827  DB  102,15,115,216,4                    ; psrldq        $0x4,%xmm0
12828  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
12829  DB  102,15,115,217,6                    ; psrldq        $0x6,%xmm1
12830  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
12831  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
12832  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
12833  DB  102,15,111,194                      ; movdqa        %xmm2,%xmm0
12834  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
12835  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
12836  DB  102,15,105,209                      ; punpckhwd     %xmm1,%xmm2
12837  DB  102,15,111,200                      ; movdqa        %xmm0,%xmm1
12838  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
12839  DB  102,15,113,208,8                    ; psrlw         $0x8,%xmm0
12840  DB  102,15,235,193                      ; por           %xmm1,%xmm0
12841  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
12842  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
12843  DB  68,15,40,5,15,26,0,0                ; movaps        0x1a0f(%rip),%xmm8        # 47e0 <_sk_callback_sse41+0xd4f>
12844  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12845  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
12846  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
12847  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
12848  DB  102,15,235,217                      ; por           %xmm1,%xmm3
12849  DB  102,15,56,51,203                    ; pmovzxwd      %xmm3,%xmm1
12850  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12851  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12852  DB  102,15,111,218                      ; movdqa        %xmm2,%xmm3
12853  DB  102,15,113,243,8                    ; psllw         $0x8,%xmm3
12854  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
12855  DB  102,15,235,211                      ; por           %xmm3,%xmm2
12856  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
12857  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
12858  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12859  DB  72,173                              ; lods          %ds:(%rsi),%rax
12860  DB  15,40,29,214,25,0,0                 ; movaps        0x19d6(%rip),%xmm3        # 47f0 <_sk_callback_sse41+0xd5f>
12861  DB  255,224                             ; jmpq          *%rax
12862
12863PUBLIC _sk_store_u16_be_sse41
12864_sk_store_u16_be_sse41 LABEL PROC
12865  DB  72,173                              ; lods          %ds:(%rsi),%rax
12866  DB  72,139,0                            ; mov           (%rax),%rax
12867  DB  68,15,40,13,215,25,0,0              ; movaps        0x19d7(%rip),%xmm9        # 4800 <_sk_callback_sse41+0xd6f>
12868  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12869  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
12870  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
12871  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
12872  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
12873  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
12874  DB  102,65,15,113,208,8                 ; psrlw         $0x8,%xmm8
12875  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
12876  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
12877  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
12878  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
12879  DB  102,69,15,56,43,210                 ; packusdw      %xmm10,%xmm10
12880  DB  102,69,15,111,218                   ; movdqa        %xmm10,%xmm11
12881  DB  102,65,15,113,243,8                 ; psllw         $0x8,%xmm11
12882  DB  102,65,15,113,210,8                 ; psrlw         $0x8,%xmm10
12883  DB  102,69,15,235,211                   ; por           %xmm11,%xmm10
12884  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
12885  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
12886  DB  102,69,15,91,219                    ; cvtps2dq      %xmm11,%xmm11
12887  DB  102,69,15,56,43,219                 ; packusdw      %xmm11,%xmm11
12888  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
12889  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
12890  DB  102,65,15,113,211,8                 ; psrlw         $0x8,%xmm11
12891  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
12892  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
12893  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
12894  DB  102,69,15,56,43,201                 ; packusdw      %xmm9,%xmm9
12895  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
12896  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
12897  DB  102,65,15,113,209,8                 ; psrlw         $0x8,%xmm9
12898  DB  102,69,15,235,204                   ; por           %xmm12,%xmm9
12899  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
12900  DB  102,69,15,97,217                    ; punpcklwd     %xmm9,%xmm11
12901  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
12902  DB  102,69,15,98,203                    ; punpckldq     %xmm11,%xmm9
12903  DB  243,68,15,127,12,248                ; movdqu        %xmm9,(%rax,%rdi,8)
12904  DB  102,69,15,106,195                   ; punpckhdq     %xmm11,%xmm8
12905  DB  243,68,15,127,68,248,16             ; movdqu        %xmm8,0x10(%rax,%rdi,8)
12906  DB  72,173                              ; lods          %ds:(%rsi),%rax
12907  DB  255,224                             ; jmpq          *%rax
12908
12909PUBLIC _sk_load_f32_sse41
12910_sk_load_f32_sse41 LABEL PROC
12911  DB  72,173                              ; lods          %ds:(%rsi),%rax
12912  DB  72,139,0                            ; mov           (%rax),%rax
12913  DB  72,137,249                          ; mov           %rdi,%rcx
12914  DB  72,193,225,4                        ; shl           $0x4,%rcx
12915  DB  68,15,16,4,8                        ; movups        (%rax,%rcx,1),%xmm8
12916  DB  15,16,68,8,16                       ; movups        0x10(%rax,%rcx,1),%xmm0
12917  DB  15,16,92,8,32                       ; movups        0x20(%rax,%rcx,1),%xmm3
12918  DB  68,15,16,76,8,48                    ; movups        0x30(%rax,%rcx,1),%xmm9
12919  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
12920  DB  15,20,208                           ; unpcklps      %xmm0,%xmm2
12921  DB  15,40,203                           ; movaps        %xmm3,%xmm1
12922  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
12923  DB  68,15,21,192                        ; unpckhps      %xmm0,%xmm8
12924  DB  65,15,21,217                        ; unpckhps      %xmm9,%xmm3
12925  DB  15,40,194                           ; movaps        %xmm2,%xmm0
12926  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
12927  DB  15,18,202                           ; movhlps       %xmm2,%xmm1
12928  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
12929  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
12930  DB  65,15,18,216                        ; movhlps       %xmm8,%xmm3
12931  DB  72,173                              ; lods          %ds:(%rsi),%rax
12932  DB  255,224                             ; jmpq          *%rax
12933
12934PUBLIC _sk_store_f32_sse41
12935_sk_store_f32_sse41 LABEL PROC
12936  DB  72,173                              ; lods          %ds:(%rsi),%rax
12937  DB  72,139,0                            ; mov           (%rax),%rax
12938  DB  72,137,249                          ; mov           %rdi,%rcx
12939  DB  72,193,225,4                        ; shl           $0x4,%rcx
12940  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12941  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12942  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
12943  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
12944  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
12945  DB  68,15,20,219                        ; unpcklps      %xmm3,%xmm11
12946  DB  68,15,21,193                        ; unpckhps      %xmm1,%xmm8
12947  DB  68,15,21,211                        ; unpckhps      %xmm3,%xmm10
12948  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
12949  DB  102,69,15,20,227                    ; unpcklpd      %xmm11,%xmm12
12950  DB  69,15,18,217                        ; movhlps       %xmm9,%xmm11
12951  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
12952  DB  102,69,15,20,202                    ; unpcklpd      %xmm10,%xmm9
12953  DB  69,15,18,208                        ; movhlps       %xmm8,%xmm10
12954  DB  102,68,15,17,36,8                   ; movupd        %xmm12,(%rax,%rcx,1)
12955  DB  68,15,17,92,8,16                    ; movups        %xmm11,0x10(%rax,%rcx,1)
12956  DB  102,68,15,17,76,8,32                ; movupd        %xmm9,0x20(%rax,%rcx,1)
12957  DB  68,15,17,84,8,48                    ; movups        %xmm10,0x30(%rax,%rcx,1)
12958  DB  72,173                              ; lods          %ds:(%rsi),%rax
12959  DB  255,224                             ; jmpq          *%rax
12960
12961PUBLIC _sk_clamp_x_sse41
12962_sk_clamp_x_sse41 LABEL PROC
12963  DB  72,173                              ; lods          %ds:(%rsi),%rax
12964  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
12965  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
12966  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
12967  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
12968  DB  102,15,118,192                      ; pcmpeqd       %xmm0,%xmm0
12969  DB  102,65,15,254,193                   ; paddd         %xmm9,%xmm0
12970  DB  68,15,93,192                        ; minps         %xmm0,%xmm8
12971  DB  72,173                              ; lods          %ds:(%rsi),%rax
12972  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12973  DB  255,224                             ; jmpq          *%rax
12974
12975PUBLIC _sk_clamp_y_sse41
12976_sk_clamp_y_sse41 LABEL PROC
12977  DB  72,173                              ; lods          %ds:(%rsi),%rax
12978  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
12979  DB  68,15,95,193                        ; maxps         %xmm1,%xmm8
12980  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
12981  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
12982  DB  102,15,118,201                      ; pcmpeqd       %xmm1,%xmm1
12983  DB  102,65,15,254,201                   ; paddd         %xmm9,%xmm1
12984  DB  68,15,93,193                        ; minps         %xmm1,%xmm8
12985  DB  72,173                              ; lods          %ds:(%rsi),%rax
12986  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
12987  DB  255,224                             ; jmpq          *%rax
12988
12989PUBLIC _sk_repeat_x_sse41
12990_sk_repeat_x_sse41 LABEL PROC
12991  DB  72,173                              ; lods          %ds:(%rsi),%rax
12992  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
12993  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
12994  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12995  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
12996  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
12997  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12998  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
12999  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
13000  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
13001  DB  65,15,93,193                        ; minps         %xmm9,%xmm0
13002  DB  72,173                              ; lods          %ds:(%rsi),%rax
13003  DB  255,224                             ; jmpq          *%rax
13004
13005PUBLIC _sk_repeat_y_sse41
13006_sk_repeat_y_sse41 LABEL PROC
13007  DB  72,173                              ; lods          %ds:(%rsi),%rax
13008  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
13009  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
13010  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
13011  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
13012  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
13013  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
13014  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
13015  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
13016  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
13017  DB  65,15,93,201                        ; minps         %xmm9,%xmm1
13018  DB  72,173                              ; lods          %ds:(%rsi),%rax
13019  DB  255,224                             ; jmpq          *%rax
13020
13021PUBLIC _sk_mirror_x_sse41
13022_sk_mirror_x_sse41 LABEL PROC
13023  DB  72,173                              ; lods          %ds:(%rsi),%rax
13024  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
13025  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
13026  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
13027  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
13028  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
13029  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
13030  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
13031  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
13032  DB  102,69,15,58,8,210,1                ; roundps       $0x1,%xmm10,%xmm10
13033  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
13034  DB  65,15,92,194                        ; subps         %xmm10,%xmm0
13035  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
13036  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
13037  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
13038  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
13039  DB  102,69,15,118,192                   ; pcmpeqd       %xmm8,%xmm8
13040  DB  102,69,15,254,193                   ; paddd         %xmm9,%xmm8
13041  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
13042  DB  72,173                              ; lods          %ds:(%rsi),%rax
13043  DB  255,224                             ; jmpq          *%rax
13044
13045PUBLIC _sk_mirror_y_sse41
13046_sk_mirror_y_sse41 LABEL PROC
13047  DB  72,173                              ; lods          %ds:(%rsi),%rax
13048  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
13049  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
13050  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
13051  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
13052  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
13053  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
13054  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
13055  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
13056  DB  102,69,15,58,8,210,1                ; roundps       $0x1,%xmm10,%xmm10
13057  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
13058  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
13059  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
13060  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
13061  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
13062  DB  65,15,84,200                        ; andps         %xmm8,%xmm1
13063  DB  102,69,15,118,192                   ; pcmpeqd       %xmm8,%xmm8
13064  DB  102,69,15,254,193                   ; paddd         %xmm9,%xmm8
13065  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
13066  DB  72,173                              ; lods          %ds:(%rsi),%rax
13067  DB  255,224                             ; jmpq          *%rax
13068
13069PUBLIC _sk_luminance_to_alpha_sse41
13070_sk_luminance_to_alpha_sse41 LABEL PROC
13071  DB  15,40,218                           ; movaps        %xmm2,%xmm3
13072  DB  15,89,5,245,22,0,0                  ; mulps         0x16f5(%rip),%xmm0        # 4810 <_sk_callback_sse41+0xd7f>
13073  DB  15,89,13,254,22,0,0                 ; mulps         0x16fe(%rip),%xmm1        # 4820 <_sk_callback_sse41+0xd8f>
13074  DB  15,88,200                           ; addps         %xmm0,%xmm1
13075  DB  15,89,29,4,23,0,0                   ; mulps         0x1704(%rip),%xmm3        # 4830 <_sk_callback_sse41+0xd9f>
13076  DB  15,88,217                           ; addps         %xmm1,%xmm3
13077  DB  72,173                              ; lods          %ds:(%rsi),%rax
13078  DB  15,87,192                           ; xorps         %xmm0,%xmm0
13079  DB  15,87,201                           ; xorps         %xmm1,%xmm1
13080  DB  15,87,210                           ; xorps         %xmm2,%xmm2
13081  DB  255,224                             ; jmpq          *%rax
13082
13083PUBLIC _sk_matrix_2x3_sse41
13084_sk_matrix_2x3_sse41 LABEL PROC
13085  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
13086  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13087  DB  72,173                              ; lods          %ds:(%rsi),%rax
13088  DB  243,15,16,0                         ; movss         (%rax),%xmm0
13089  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
13090  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
13091  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
13092  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13093  DB  243,68,15,16,88,16                  ; movss         0x10(%rax),%xmm11
13094  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13095  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13096  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13097  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13098  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
13099  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
13100  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
13101  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13102  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
13103  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13104  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13105  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13106  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
13107  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
13108  DB  72,173                              ; lods          %ds:(%rsi),%rax
13109  DB  255,224                             ; jmpq          *%rax
13110
13111PUBLIC _sk_matrix_3x4_sse41
13112_sk_matrix_3x4_sse41 LABEL PROC
13113  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
13114  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13115  DB  72,173                              ; lods          %ds:(%rsi),%rax
13116  DB  243,15,16,0                         ; movss         (%rax),%xmm0
13117  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
13118  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
13119  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
13120  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13121  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
13122  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13123  DB  243,68,15,16,96,36                  ; movss         0x24(%rax),%xmm12
13124  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13125  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
13126  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
13127  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13128  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13129  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13130  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
13131  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
13132  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
13133  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13134  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
13135  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13136  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
13137  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13138  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
13139  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
13140  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13141  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13142  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
13143  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
13144  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
13145  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13146  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
13147  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13148  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
13149  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13150  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
13151  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
13152  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
13153  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
13154  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
13155  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
13156  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
13157  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13158  DB  72,173                              ; lods          %ds:(%rsi),%rax
13159  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
13160  DB  255,224                             ; jmpq          *%rax
13161
13162PUBLIC _sk_matrix_4x5_sse41
13163_sk_matrix_4x5_sse41 LABEL PROC
13164  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
13165  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13166  DB  72,173                              ; lods          %ds:(%rsi),%rax
13167  DB  243,15,16,0                         ; movss         (%rax),%xmm0
13168  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
13169  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
13170  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
13171  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13172  DB  243,68,15,16,88,32                  ; movss         0x20(%rax),%xmm11
13173  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13174  DB  243,68,15,16,96,48                  ; movss         0x30(%rax),%xmm12
13175  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13176  DB  243,68,15,16,104,64                 ; movss         0x40(%rax),%xmm13
13177  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
13178  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
13179  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
13180  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
13181  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
13182  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13183  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13184  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13185  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
13186  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
13187  DB  243,68,15,16,80,20                  ; movss         0x14(%rax),%xmm10
13188  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13189  DB  243,68,15,16,88,36                  ; movss         0x24(%rax),%xmm11
13190  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13191  DB  243,68,15,16,96,52                  ; movss         0x34(%rax),%xmm12
13192  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13193  DB  243,68,15,16,104,68                 ; movss         0x44(%rax),%xmm13
13194  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
13195  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
13196  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
13197  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
13198  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
13199  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13200  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13201  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
13202  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
13203  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
13204  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13205  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
13206  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13207  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
13208  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13209  DB  243,68,15,16,104,56                 ; movss         0x38(%rax),%xmm13
13210  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
13211  DB  243,68,15,16,112,72                 ; movss         0x48(%rax),%xmm14
13212  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
13213  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
13214  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
13215  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
13216  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
13217  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
13218  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
13219  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
13220  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13221  DB  243,68,15,16,88,12                  ; movss         0xc(%rax),%xmm11
13222  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13223  DB  243,68,15,16,96,28                  ; movss         0x1c(%rax),%xmm12
13224  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13225  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
13226  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
13227  DB  243,68,15,16,112,60                 ; movss         0x3c(%rax),%xmm14
13228  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
13229  DB  243,68,15,16,120,76                 ; movss         0x4c(%rax),%xmm15
13230  DB  69,15,198,255,0                     ; shufps        $0x0,%xmm15,%xmm15
13231  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
13232  DB  69,15,88,247                        ; addps         %xmm15,%xmm14
13233  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
13234  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
13235  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
13236  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
13237  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
13238  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
13239  DB  72,173                              ; lods          %ds:(%rsi),%rax
13240  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
13241  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
13242  DB  255,224                             ; jmpq          *%rax
13243
13244PUBLIC _sk_matrix_perspective_sse41
13245_sk_matrix_perspective_sse41 LABEL PROC
13246  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13247  DB  72,173                              ; lods          %ds:(%rsi),%rax
13248  DB  243,15,16,0                         ; movss         (%rax),%xmm0
13249  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
13250  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
13251  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
13252  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
13253  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13254  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
13255  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
13256  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13257  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
13258  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
13259  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
13260  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
13261  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13262  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
13263  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13264  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
13265  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13266  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
13267  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
13268  DB  243,68,15,16,80,24                  ; movss         0x18(%rax),%xmm10
13269  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13270  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
13271  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13272  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
13273  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13274  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
13275  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
13276  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
13277  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
13278  DB  65,15,83,202                        ; rcpps         %xmm10,%xmm1
13279  DB  15,89,193                           ; mulps         %xmm1,%xmm0
13280  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
13281  DB  72,173                              ; lods          %ds:(%rsi),%rax
13282  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
13283  DB  255,224                             ; jmpq          *%rax
13284
13285PUBLIC _sk_linear_gradient_sse41
13286_sk_linear_gradient_sse41 LABEL PROC
13287  DB  72,173                              ; lods          %ds:(%rsi),%rax
13288  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
13289  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13290  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
13291  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13292  DB  243,68,15,16,96,24                  ; movss         0x18(%rax),%xmm12
13293  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13294  DB  243,68,15,16,104,28                 ; movss         0x1c(%rax),%xmm13
13295  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
13296  DB  72,139,8                            ; mov           (%rax),%rcx
13297  DB  72,133,201                          ; test          %rcx,%rcx
13298  DB  15,132,4,1,0,0                      ; je            35d4 <_sk_linear_gradient_sse41+0x13e>
13299  DB  72,131,236,88                       ; sub           $0x58,%rsp
13300  DB  15,41,36,36                         ; movaps        %xmm4,(%rsp)
13301  DB  15,41,108,36,16                     ; movaps        %xmm5,0x10(%rsp)
13302  DB  15,41,116,36,32                     ; movaps        %xmm6,0x20(%rsp)
13303  DB  15,41,124,36,48                     ; movaps        %xmm7,0x30(%rsp)
13304  DB  72,139,64,8                         ; mov           0x8(%rax),%rax
13305  DB  72,131,192,32                       ; add           $0x20,%rax
13306  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
13307  DB  15,87,219                           ; xorps         %xmm3,%xmm3
13308  DB  15,87,210                           ; xorps         %xmm2,%xmm2
13309  DB  15,87,201                           ; xorps         %xmm1,%xmm1
13310  DB  15,40,233                           ; movaps        %xmm1,%xmm5
13311  DB  15,40,242                           ; movaps        %xmm2,%xmm6
13312  DB  15,40,251                           ; movaps        %xmm3,%xmm7
13313  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
13314  DB  69,15,40,243                        ; movaps        %xmm11,%xmm14
13315  DB  69,15,40,252                        ; movaps        %xmm12,%xmm15
13316  DB  68,15,41,108,36,64                  ; movaps        %xmm13,0x40(%rsp)
13317  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
13318  DB  243,15,16,80,224                    ; movss         -0x20(%rax),%xmm2
13319  DB  243,68,15,16,72,228                 ; movss         -0x1c(%rax),%xmm9
13320  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13321  DB  15,40,224                           ; movaps        %xmm0,%xmm4
13322  DB  15,194,194,1                        ; cmpltps       %xmm2,%xmm0
13323  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
13324  DB  102,68,15,56,20,201                 ; blendvps      %xmm0,%xmm1,%xmm9
13325  DB  243,15,16,72,232                    ; movss         -0x18(%rax),%xmm1
13326  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
13327  DB  102,15,56,20,205                    ; blendvps      %xmm0,%xmm5,%xmm1
13328  DB  243,15,16,80,236                    ; movss         -0x14(%rax),%xmm2
13329  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13330  DB  102,15,56,20,214                    ; blendvps      %xmm0,%xmm6,%xmm2
13331  DB  243,15,16,88,240                    ; movss         -0x10(%rax),%xmm3
13332  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
13333  DB  102,15,56,20,223                    ; blendvps      %xmm0,%xmm7,%xmm3
13334  DB  243,68,15,16,80,244                 ; movss         -0xc(%rax),%xmm10
13335  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
13336  DB  102,69,15,56,20,208                 ; blendvps      %xmm0,%xmm8,%xmm10
13337  DB  243,68,15,16,88,248                 ; movss         -0x8(%rax),%xmm11
13338  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
13339  DB  102,69,15,56,20,222                 ; blendvps      %xmm0,%xmm14,%xmm11
13340  DB  243,68,15,16,96,252                 ; movss         -0x4(%rax),%xmm12
13341  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
13342  DB  102,69,15,56,20,231                 ; blendvps      %xmm0,%xmm15,%xmm12
13343  DB  243,68,15,16,40                     ; movss         (%rax),%xmm13
13344  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
13345  DB  102,68,15,56,20,108,36,64           ; blendvps      %xmm0,0x40(%rsp),%xmm13
13346  DB  15,40,196                           ; movaps        %xmm4,%xmm0
13347  DB  72,131,192,36                       ; add           $0x24,%rax
13348  DB  72,255,201                          ; dec           %rcx
13349  DB  15,133,65,255,255,255               ; jne           34fc <_sk_linear_gradient_sse41+0x66>
13350  DB  15,40,124,36,48                     ; movaps        0x30(%rsp),%xmm7
13351  DB  15,40,116,36,32                     ; movaps        0x20(%rsp),%xmm6
13352  DB  15,40,108,36,16                     ; movaps        0x10(%rsp),%xmm5
13353  DB  15,40,36,36                         ; movaps        (%rsp),%xmm4
13354  DB  72,131,196,88                       ; add           $0x58,%rsp
13355  DB  235,13                              ; jmp           35e1 <_sk_linear_gradient_sse41+0x14b>
13356  DB  15,87,201                           ; xorps         %xmm1,%xmm1
13357  DB  15,87,210                           ; xorps         %xmm2,%xmm2
13358  DB  15,87,219                           ; xorps         %xmm3,%xmm3
13359  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
13360  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
13361  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
13362  DB  15,89,200                           ; mulps         %xmm0,%xmm1
13363  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
13364  DB  15,89,208                           ; mulps         %xmm0,%xmm2
13365  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
13366  DB  15,89,216                           ; mulps         %xmm0,%xmm3
13367  DB  65,15,88,221                        ; addps         %xmm13,%xmm3
13368  DB  72,173                              ; lods          %ds:(%rsi),%rax
13369  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13370  DB  255,224                             ; jmpq          *%rax
13371
13372PUBLIC _sk_linear_gradient_2stops_sse41
13373_sk_linear_gradient_2stops_sse41 LABEL PROC
13374  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13375  DB  72,173                              ; lods          %ds:(%rsi),%rax
13376  DB  243,15,16,0                         ; movss         (%rax),%xmm0
13377  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
13378  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
13379  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
13380  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13381  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13382  DB  15,88,194                           ; addps         %xmm2,%xmm0
13383  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
13384  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
13385  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13386  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
13387  DB  15,88,202                           ; addps         %xmm2,%xmm1
13388  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
13389  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13390  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
13391  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
13392  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
13393  DB  15,88,211                           ; addps         %xmm3,%xmm2
13394  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
13395  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
13396  DB  243,68,15,16,72,28                  ; movss         0x1c(%rax),%xmm9
13397  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
13398  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
13399  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
13400  DB  72,173                              ; lods          %ds:(%rsi),%rax
13401  DB  255,224                             ; jmpq          *%rax
13402
13403PUBLIC _sk_xy_to_polar_unit_sse41
13404_sk_xy_to_polar_unit_sse41 LABEL PROC
13405  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
13406  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
13407  DB  15,87,192                           ; xorps         %xmm0,%xmm0
13408  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
13409  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
13410  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
13411  DB  68,15,92,217                        ; subps         %xmm1,%xmm11
13412  DB  68,15,84,217                        ; andps         %xmm1,%xmm11
13413  DB  68,15,40,224                        ; movaps        %xmm0,%xmm12
13414  DB  69,15,93,227                        ; minps         %xmm11,%xmm12
13415  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
13416  DB  69,15,95,211                        ; maxps         %xmm11,%xmm10
13417  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
13418  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
13419  DB  69,15,89,237                        ; mulps         %xmm13,%xmm13
13420  DB  68,15,40,21,135,17,0,0              ; movaps        0x1187(%rip),%xmm10        # 4840 <_sk_callback_sse41+0xdaf>
13421  DB  69,15,89,213                        ; mulps         %xmm13,%xmm10
13422  DB  68,15,88,21,139,17,0,0              ; addps         0x118b(%rip),%xmm10        # 4850 <_sk_callback_sse41+0xdbf>
13423  DB  69,15,89,213                        ; mulps         %xmm13,%xmm10
13424  DB  68,15,88,21,143,17,0,0              ; addps         0x118f(%rip),%xmm10        # 4860 <_sk_callback_sse41+0xdcf>
13425  DB  69,15,89,213                        ; mulps         %xmm13,%xmm10
13426  DB  68,15,88,21,147,17,0,0              ; addps         0x1193(%rip),%xmm10        # 4870 <_sk_callback_sse41+0xddf>
13427  DB  69,15,89,212                        ; mulps         %xmm12,%xmm10
13428  DB  65,15,194,195,1                     ; cmpltps       %xmm11,%xmm0
13429  DB  68,15,40,29,146,17,0,0              ; movaps        0x1192(%rip),%xmm11        # 4880 <_sk_callback_sse41+0xdef>
13430  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
13431  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
13432  DB  69,15,194,200,1                     ; cmpltps       %xmm8,%xmm9
13433  DB  68,15,40,29,139,17,0,0              ; movaps        0x118b(%rip),%xmm11        # 4890 <_sk_callback_sse41+0xdff>
13434  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
13435  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13436  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
13437  DB  15,40,193                           ; movaps        %xmm1,%xmm0
13438  DB  65,15,194,192,1                     ; cmpltps       %xmm8,%xmm0
13439  DB  68,15,40,13,125,17,0,0              ; movaps        0x117d(%rip),%xmm9        # 48a0 <_sk_callback_sse41+0xe0f>
13440  DB  69,15,92,202                        ; subps         %xmm10,%xmm9
13441  DB  102,69,15,56,20,209                 ; blendvps      %xmm0,%xmm9,%xmm10
13442  DB  69,15,194,194,7                     ; cmpordps      %xmm10,%xmm8
13443  DB  69,15,84,194                        ; andps         %xmm10,%xmm8
13444  DB  72,173                              ; lods          %ds:(%rsi),%rax
13445  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13446  DB  255,224                             ; jmpq          *%rax
13447
13448PUBLIC _sk_save_xy_sse41
13449_sk_save_xy_sse41 LABEL PROC
13450  DB  72,173                              ; lods          %ds:(%rsi),%rax
13451  DB  68,15,40,5,104,17,0,0               ; movaps        0x1168(%rip),%xmm8        # 48b0 <_sk_callback_sse41+0xe1f>
13452  DB  15,17,0                             ; movups        %xmm0,(%rax)
13453  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
13454  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
13455  DB  102,69,15,58,8,209,1                ; roundps       $0x1,%xmm9,%xmm10
13456  DB  69,15,92,202                        ; subps         %xmm10,%xmm9
13457  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
13458  DB  102,69,15,58,8,208,1                ; roundps       $0x1,%xmm8,%xmm10
13459  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
13460  DB  15,17,72,32                         ; movups        %xmm1,0x20(%rax)
13461  DB  68,15,17,72,64                      ; movups        %xmm9,0x40(%rax)
13462  DB  68,15,17,64,96                      ; movups        %xmm8,0x60(%rax)
13463  DB  72,173                              ; lods          %ds:(%rsi),%rax
13464  DB  255,224                             ; jmpq          *%rax
13465
13466PUBLIC _sk_accumulate_sse41
13467_sk_accumulate_sse41 LABEL PROC
13468  DB  72,173                              ; lods          %ds:(%rsi),%rax
13469  DB  68,15,16,128,128,0,0,0              ; movups        0x80(%rax),%xmm8
13470  DB  68,15,16,136,160,0,0,0              ; movups        0xa0(%rax),%xmm9
13471  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
13472  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13473  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
13474  DB  65,15,88,224                        ; addps         %xmm8,%xmm4
13475  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13476  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
13477  DB  65,15,88,232                        ; addps         %xmm8,%xmm5
13478  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13479  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
13480  DB  65,15,88,240                        ; addps         %xmm8,%xmm6
13481  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
13482  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
13483  DB  72,173                              ; lods          %ds:(%rsi),%rax
13484  DB  255,224                             ; jmpq          *%rax
13485
13486PUBLIC _sk_bilinear_nx_sse41
13487_sk_bilinear_nx_sse41 LABEL PROC
13488  DB  72,173                              ; lods          %ds:(%rsi),%rax
13489  DB  15,16,0                             ; movups        (%rax),%xmm0
13490  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
13491  DB  15,88,5,234,16,0,0                  ; addps         0x10ea(%rip),%xmm0        # 48c0 <_sk_callback_sse41+0xe2f>
13492  DB  68,15,40,13,242,16,0,0              ; movaps        0x10f2(%rip),%xmm9        # 48d0 <_sk_callback_sse41+0xe3f>
13493  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13494  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
13495  DB  72,173                              ; lods          %ds:(%rsi),%rax
13496  DB  255,224                             ; jmpq          *%rax
13497
13498PUBLIC _sk_bilinear_px_sse41
13499_sk_bilinear_px_sse41 LABEL PROC
13500  DB  72,173                              ; lods          %ds:(%rsi),%rax
13501  DB  15,16,0                             ; movups        (%rax),%xmm0
13502  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
13503  DB  15,88,5,225,16,0,0                  ; addps         0x10e1(%rip),%xmm0        # 48e0 <_sk_callback_sse41+0xe4f>
13504  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
13505  DB  72,173                              ; lods          %ds:(%rsi),%rax
13506  DB  255,224                             ; jmpq          *%rax
13507
13508PUBLIC _sk_bilinear_ny_sse41
13509_sk_bilinear_ny_sse41 LABEL PROC
13510  DB  72,173                              ; lods          %ds:(%rsi),%rax
13511  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13512  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
13513  DB  15,88,13,211,16,0,0                 ; addps         0x10d3(%rip),%xmm1        # 48f0 <_sk_callback_sse41+0xe5f>
13514  DB  68,15,40,13,219,16,0,0              ; movaps        0x10db(%rip),%xmm9        # 4900 <_sk_callback_sse41+0xe6f>
13515  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13516  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
13517  DB  72,173                              ; lods          %ds:(%rsi),%rax
13518  DB  255,224                             ; jmpq          *%rax
13519
13520PUBLIC _sk_bilinear_py_sse41
13521_sk_bilinear_py_sse41 LABEL PROC
13522  DB  72,173                              ; lods          %ds:(%rsi),%rax
13523  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13524  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
13525  DB  15,88,13,201,16,0,0                 ; addps         0x10c9(%rip),%xmm1        # 4910 <_sk_callback_sse41+0xe7f>
13526  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
13527  DB  72,173                              ; lods          %ds:(%rsi),%rax
13528  DB  255,224                             ; jmpq          *%rax
13529
13530PUBLIC _sk_bicubic_n3x_sse41
13531_sk_bicubic_n3x_sse41 LABEL PROC
13532  DB  72,173                              ; lods          %ds:(%rsi),%rax
13533  DB  15,16,0                             ; movups        (%rax),%xmm0
13534  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
13535  DB  15,88,5,188,16,0,0                  ; addps         0x10bc(%rip),%xmm0        # 4920 <_sk_callback_sse41+0xe8f>
13536  DB  68,15,40,13,196,16,0,0              ; movaps        0x10c4(%rip),%xmm9        # 4930 <_sk_callback_sse41+0xe9f>
13537  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13538  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13539  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
13540  DB  68,15,89,13,192,16,0,0              ; mulps         0x10c0(%rip),%xmm9        # 4940 <_sk_callback_sse41+0xeaf>
13541  DB  68,15,88,13,200,16,0,0              ; addps         0x10c8(%rip),%xmm9        # 4950 <_sk_callback_sse41+0xebf>
13542  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
13543  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
13544  DB  72,173                              ; lods          %ds:(%rsi),%rax
13545  DB  255,224                             ; jmpq          *%rax
13546
13547PUBLIC _sk_bicubic_n1x_sse41
13548_sk_bicubic_n1x_sse41 LABEL PROC
13549  DB  72,173                              ; lods          %ds:(%rsi),%rax
13550  DB  15,16,0                             ; movups        (%rax),%xmm0
13551  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
13552  DB  15,88,5,183,16,0,0                  ; addps         0x10b7(%rip),%xmm0        # 4960 <_sk_callback_sse41+0xecf>
13553  DB  68,15,40,13,191,16,0,0              ; movaps        0x10bf(%rip),%xmm9        # 4970 <_sk_callback_sse41+0xedf>
13554  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13555  DB  68,15,40,5,195,16,0,0               ; movaps        0x10c3(%rip),%xmm8        # 4980 <_sk_callback_sse41+0xeef>
13556  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13557  DB  68,15,88,5,199,16,0,0               ; addps         0x10c7(%rip),%xmm8        # 4990 <_sk_callback_sse41+0xeff>
13558  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13559  DB  68,15,88,5,203,16,0,0               ; addps         0x10cb(%rip),%xmm8        # 49a0 <_sk_callback_sse41+0xf0f>
13560  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13561  DB  68,15,88,5,207,16,0,0               ; addps         0x10cf(%rip),%xmm8        # 49b0 <_sk_callback_sse41+0xf1f>
13562  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
13563  DB  72,173                              ; lods          %ds:(%rsi),%rax
13564  DB  255,224                             ; jmpq          *%rax
13565
13566PUBLIC _sk_bicubic_p1x_sse41
13567_sk_bicubic_p1x_sse41 LABEL PROC
13568  DB  72,173                              ; lods          %ds:(%rsi),%rax
13569  DB  68,15,40,5,201,16,0,0               ; movaps        0x10c9(%rip),%xmm8        # 49c0 <_sk_callback_sse41+0xf2f>
13570  DB  15,16,0                             ; movups        (%rax),%xmm0
13571  DB  68,15,16,72,64                      ; movups        0x40(%rax),%xmm9
13572  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
13573  DB  68,15,40,21,197,16,0,0              ; movaps        0x10c5(%rip),%xmm10        # 49d0 <_sk_callback_sse41+0xf3f>
13574  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13575  DB  68,15,88,21,201,16,0,0              ; addps         0x10c9(%rip),%xmm10        # 49e0 <_sk_callback_sse41+0xf4f>
13576  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13577  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
13578  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13579  DB  68,15,88,21,197,16,0,0              ; addps         0x10c5(%rip),%xmm10        # 49f0 <_sk_callback_sse41+0xf5f>
13580  DB  68,15,17,144,128,0,0,0              ; movups        %xmm10,0x80(%rax)
13581  DB  72,173                              ; lods          %ds:(%rsi),%rax
13582  DB  255,224                             ; jmpq          *%rax
13583
13584PUBLIC _sk_bicubic_p3x_sse41
13585_sk_bicubic_p3x_sse41 LABEL PROC
13586  DB  72,173                              ; lods          %ds:(%rsi),%rax
13587  DB  15,16,0                             ; movups        (%rax),%xmm0
13588  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
13589  DB  15,88,5,184,16,0,0                  ; addps         0x10b8(%rip),%xmm0        # 4a00 <_sk_callback_sse41+0xf6f>
13590  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
13591  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
13592  DB  68,15,89,5,184,16,0,0               ; mulps         0x10b8(%rip),%xmm8        # 4a10 <_sk_callback_sse41+0xf7f>
13593  DB  68,15,88,5,192,16,0,0               ; addps         0x10c0(%rip),%xmm8        # 4a20 <_sk_callback_sse41+0xf8f>
13594  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13595  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
13596  DB  72,173                              ; lods          %ds:(%rsi),%rax
13597  DB  255,224                             ; jmpq          *%rax
13598
13599PUBLIC _sk_bicubic_n3y_sse41
13600_sk_bicubic_n3y_sse41 LABEL PROC
13601  DB  72,173                              ; lods          %ds:(%rsi),%rax
13602  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13603  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
13604  DB  15,88,13,174,16,0,0                 ; addps         0x10ae(%rip),%xmm1        # 4a30 <_sk_callback_sse41+0xf9f>
13605  DB  68,15,40,13,182,16,0,0              ; movaps        0x10b6(%rip),%xmm9        # 4a40 <_sk_callback_sse41+0xfaf>
13606  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13607  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13608  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
13609  DB  68,15,89,13,178,16,0,0              ; mulps         0x10b2(%rip),%xmm9        # 4a50 <_sk_callback_sse41+0xfbf>
13610  DB  68,15,88,13,186,16,0,0              ; addps         0x10ba(%rip),%xmm9        # 4a60 <_sk_callback_sse41+0xfcf>
13611  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
13612  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
13613  DB  72,173                              ; lods          %ds:(%rsi),%rax
13614  DB  255,224                             ; jmpq          *%rax
13615
13616PUBLIC _sk_bicubic_n1y_sse41
13617_sk_bicubic_n1y_sse41 LABEL PROC
13618  DB  72,173                              ; lods          %ds:(%rsi),%rax
13619  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13620  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
13621  DB  15,88,13,168,16,0,0                 ; addps         0x10a8(%rip),%xmm1        # 4a70 <_sk_callback_sse41+0xfdf>
13622  DB  68,15,40,13,176,16,0,0              ; movaps        0x10b0(%rip),%xmm9        # 4a80 <_sk_callback_sse41+0xfef>
13623  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13624  DB  68,15,40,5,180,16,0,0               ; movaps        0x10b4(%rip),%xmm8        # 4a90 <_sk_callback_sse41+0xfff>
13625  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13626  DB  68,15,88,5,184,16,0,0               ; addps         0x10b8(%rip),%xmm8        # 4aa0 <_sk_callback_sse41+0x100f>
13627  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13628  DB  68,15,88,5,188,16,0,0               ; addps         0x10bc(%rip),%xmm8        # 4ab0 <_sk_callback_sse41+0x101f>
13629  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13630  DB  68,15,88,5,192,16,0,0               ; addps         0x10c0(%rip),%xmm8        # 4ac0 <_sk_callback_sse41+0x102f>
13631  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
13632  DB  72,173                              ; lods          %ds:(%rsi),%rax
13633  DB  255,224                             ; jmpq          *%rax
13634
13635PUBLIC _sk_bicubic_p1y_sse41
13636_sk_bicubic_p1y_sse41 LABEL PROC
13637  DB  72,173                              ; lods          %ds:(%rsi),%rax
13638  DB  68,15,40,5,186,16,0,0               ; movaps        0x10ba(%rip),%xmm8        # 4ad0 <_sk_callback_sse41+0x103f>
13639  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13640  DB  68,15,16,72,96                      ; movups        0x60(%rax),%xmm9
13641  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
13642  DB  68,15,40,21,181,16,0,0              ; movaps        0x10b5(%rip),%xmm10        # 4ae0 <_sk_callback_sse41+0x104f>
13643  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13644  DB  68,15,88,21,185,16,0,0              ; addps         0x10b9(%rip),%xmm10        # 4af0 <_sk_callback_sse41+0x105f>
13645  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13646  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
13647  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13648  DB  68,15,88,21,181,16,0,0              ; addps         0x10b5(%rip),%xmm10        # 4b00 <_sk_callback_sse41+0x106f>
13649  DB  68,15,17,144,160,0,0,0              ; movups        %xmm10,0xa0(%rax)
13650  DB  72,173                              ; lods          %ds:(%rsi),%rax
13651  DB  255,224                             ; jmpq          *%rax
13652
13653PUBLIC _sk_bicubic_p3y_sse41
13654_sk_bicubic_p3y_sse41 LABEL PROC
13655  DB  72,173                              ; lods          %ds:(%rsi),%rax
13656  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
13657  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
13658  DB  15,88,13,167,16,0,0                 ; addps         0x10a7(%rip),%xmm1        # 4b10 <_sk_callback_sse41+0x107f>
13659  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
13660  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
13661  DB  68,15,89,5,167,16,0,0               ; mulps         0x10a7(%rip),%xmm8        # 4b20 <_sk_callback_sse41+0x108f>
13662  DB  68,15,88,5,175,16,0,0               ; addps         0x10af(%rip),%xmm8        # 4b30 <_sk_callback_sse41+0x109f>
13663  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13664  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
13665  DB  72,173                              ; lods          %ds:(%rsi),%rax
13666  DB  255,224                             ; jmpq          *%rax
13667
13668PUBLIC _sk_callback_sse41
13669_sk_callback_sse41 LABEL PROC
13670  DB  65,86                               ; push          %r14
13671  DB  83                                  ; push          %rbx
13672  DB  72,131,236,40                       ; sub           $0x28,%rsp
13673  DB  68,15,40,197                        ; movaps        %xmm5,%xmm8
13674  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
13675  DB  73,137,214                          ; mov           %rdx,%r14
13676  DB  72,173                              ; lods          %ds:(%rsi),%rax
13677  DB  72,137,195                          ; mov           %rax,%rbx
13678  DB  15,40,224                           ; movaps        %xmm0,%xmm4
13679  DB  15,20,225                           ; unpcklps      %xmm1,%xmm4
13680  DB  15,40,234                           ; movaps        %xmm2,%xmm5
13681  DB  15,20,235                           ; unpcklps      %xmm3,%xmm5
13682  DB  15,21,193                           ; unpckhps      %xmm1,%xmm0
13683  DB  15,21,211                           ; unpckhps      %xmm3,%xmm2
13684  DB  15,40,204                           ; movaps        %xmm4,%xmm1
13685  DB  102,15,20,205                       ; unpcklpd      %xmm5,%xmm1
13686  DB  15,18,236                           ; movhlps       %xmm4,%xmm5
13687  DB  15,40,216                           ; movaps        %xmm0,%xmm3
13688  DB  102,15,20,218                       ; unpcklpd      %xmm2,%xmm3
13689  DB  15,18,208                           ; movhlps       %xmm0,%xmm2
13690  DB  102,15,17,75,8                      ; movupd        %xmm1,0x8(%rbx)
13691  DB  15,17,107,24                        ; movups        %xmm5,0x18(%rbx)
13692  DB  102,15,17,91,40                     ; movupd        %xmm3,0x28(%rbx)
13693  DB  15,17,83,56                         ; movups        %xmm2,0x38(%rbx)
13694  DB  186,4,0,0,0                         ; mov           $0x4,%edx
13695  DB  72,137,217                          ; mov           %rbx,%rcx
13696  DB  255,19                              ; callq         *(%rbx)
13697  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
13698  DB  15,16,32                            ; movups        (%rax),%xmm4
13699  DB  15,16,64,16                         ; movups        0x10(%rax),%xmm0
13700  DB  15,16,88,32                         ; movups        0x20(%rax),%xmm3
13701  DB  15,16,80,48                         ; movups        0x30(%rax),%xmm2
13702  DB  15,40,236                           ; movaps        %xmm4,%xmm5
13703  DB  15,20,232                           ; unpcklps      %xmm0,%xmm5
13704  DB  15,40,203                           ; movaps        %xmm3,%xmm1
13705  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
13706  DB  15,21,224                           ; unpckhps      %xmm0,%xmm4
13707  DB  15,21,218                           ; unpckhps      %xmm2,%xmm3
13708  DB  15,40,197                           ; movaps        %xmm5,%xmm0
13709  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
13710  DB  15,18,205                           ; movhlps       %xmm5,%xmm1
13711  DB  15,40,212                           ; movaps        %xmm4,%xmm2
13712  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
13713  DB  15,18,220                           ; movhlps       %xmm4,%xmm3
13714  DB  72,173                              ; lods          %ds:(%rsi),%rax
13715  DB  76,137,242                          ; mov           %r14,%rdx
13716  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
13717  DB  65,15,40,232                        ; movaps        %xmm8,%xmm5
13718  DB  72,131,196,40                       ; add           $0x28,%rsp
13719  DB  91                                  ; pop           %rbx
13720  DB  65,94                               ; pop           %r14
13721  DB  255,224                             ; jmpq          *%rax
13722
13723ALIGN 16
13724  DB  0,0                                 ; add           %al,(%rax)
13725  DB  0,63                                ; add           %bh,(%rdi)
13726  DB  0,0                                 ; add           %al,(%rax)
13727  DB  0,63                                ; add           %bh,(%rdi)
13728  DB  0,0                                 ; add           %al,(%rax)
13729  DB  0,63                                ; add           %bh,(%rdi)
13730  DB  0,0                                 ; add           %al,(%rax)
13731  DB  0,63                                ; add           %bh,(%rdi)
13732  DB  0,0                                 ; add           %al,(%rax)
13733  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13734  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13735  DB  63                                  ; (bad)
13736  DB  0,0                                 ; add           %al,(%rax)
13737  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
13738  DB  0,0                                 ; add           %al,(%rax)
13739  DB  0,1                                 ; add           %al,(%rcx)
13740  DB  0,0                                 ; add           %al,(%rax)
13741  DB  0,1                                 ; add           %al,(%rcx)
13742  DB  0,0                                 ; add           %al,(%rax)
13743  DB  0,1                                 ; add           %al,(%rcx)
13744  DB  0,0                                 ; add           %al,(%rax)
13745  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
13746  DB  0,0                                 ; add           %al,(%rax)
13747  DB  4,0                                 ; add           $0x0,%al
13748  DB  0,0                                 ; add           %al,(%rax)
13749  DB  4,0                                 ; add           $0x0,%al
13750  DB  0,0                                 ; add           %al,(%rax)
13751  DB  4,0                                 ; add           $0x0,%al
13752  DB  0,0                                 ; add           %al,(%rax)
13753  DB  2,0                                 ; add           (%rax),%al
13754  DB  0,0                                 ; add           %al,(%rax)
13755  DB  2,0                                 ; add           (%rax),%al
13756  DB  0,0                                 ; add           %al,(%rax)
13757  DB  2,0                                 ; add           (%rax),%al
13758  DB  0,0                                 ; add           %al,(%rax)
13759  DB  2,0                                 ; add           (%rax),%al
13760  DB  0,0                                 ; add           %al,(%rax)
13761  DB  0,0                                 ; add           %al,(%rax)
13762  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
13763  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
13764  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
13765  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
13766  DB  252                                 ; cld
13767  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
13768  DB  0,0                                 ; add           %al,(%rax)
13769  DB  252                                 ; cld
13770  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
13771  DB  0,0                                 ; add           %al,(%rax)
13772  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13773  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13774  DB  63                                  ; (bad)
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,0                            ; cmpb          $0x0,(%rdi)
13781  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13782  DB  63                                  ; (bad)
13783  DB  0,0                                 ; add           %al,(%rax)
13784  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13785  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13786  DB  63                                  ; (bad)
13787  DB  0,0                                 ; add           %al,(%rax)
13788  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13789  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13790  DB  63                                  ; (bad)
13791  DB  0,0                                 ; add           %al,(%rax)
13792  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13793  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13794  DB  63                                  ; (bad)
13795  DB  0,0                                 ; add           %al,(%rax)
13796  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13797  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13798  DB  63                                  ; (bad)
13799  DB  0,0                                 ; add           %al,(%rax)
13800  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13801  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13802  DB  63                                  ; (bad)
13803  DB  0,0                                 ; add           %al,(%rax)
13804  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13805  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13806  DB  63                                  ; (bad)
13807  DB  0,0                                 ; add           %al,(%rax)
13808  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13809  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13810  DB  63                                  ; (bad)
13811  DB  0,0                                 ; add           %al,(%rax)
13812  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13813  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13814  DB  63                                  ; (bad)
13815  DB  0,0                                 ; add           %al,(%rax)
13816  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13817  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13818  DB  63                                  ; (bad)
13819  DB  0,0                                 ; add           %al,(%rax)
13820  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13821  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13822  DB  63                                  ; (bad)
13823  DB  0,0                                 ; add           %al,(%rax)
13824  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13825  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13826  DB  63                                  ; (bad)
13827  DB  0,0                                 ; add           %al,(%rax)
13828  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13829  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13830  DB  63                                  ; (bad)
13831  DB  0,0                                 ; add           %al,(%rax)
13832  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13833  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13834  DB  63                                  ; (bad)
13835  DB  0,0                                 ; add           %al,(%rax)
13836  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13837  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13838  DB  63                                  ; (bad)
13839  DB  0,0                                 ; add           %al,(%rax)
13840  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13841  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13842  DB  63                                  ; (bad)
13843  DB  0,0                                 ; add           %al,(%rax)
13844  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13845  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13846  DB  63                                  ; (bad)
13847  DB  0,0                                 ; add           %al,(%rax)
13848  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13849  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13850  DB  63                                  ; (bad)
13851  DB  0,0                                 ; add           %al,(%rax)
13852  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13853  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13854  DB  63                                  ; (bad)
13855  DB  0,0                                 ; add           %al,(%rax)
13856  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13857  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13858  DB  63                                  ; (bad)
13859  DB  0,0                                 ; add           %al,(%rax)
13860  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13861  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13862  DB  191,0,0,128,191                     ; mov           $0xbf800000,%edi
13863  DB  0,0                                 ; add           %al,(%rax)
13864  DB  128,191,0,0,128,191,0               ; cmpb          $0x0,-0x40800000(%rdi)
13865  DB  0,224                               ; add           %ah,%al
13866  DB  64,0,0                              ; add           %al,(%rax)
13867  DB  224,64                              ; loopne        3d18 <.literal16+0x1d8>
13868  DB  0,0                                 ; add           %al,(%rax)
13869  DB  224,64                              ; loopne        3d1c <.literal16+0x1dc>
13870  DB  0,0                                 ; add           %al,(%rax)
13871  DB  224,64                              ; loopne        3d20 <.literal16+0x1e0>
13872  DB  0,0                                 ; add           %al,(%rax)
13873  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13874  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13875  DB  63                                  ; (bad)
13876  DB  0,0                                 ; add           %al,(%rax)
13877  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13878  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13879  DB  63                                  ; (bad)
13880  DB  0,0                                 ; add           %al,(%rax)
13881  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13882  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13883  DB  63                                  ; (bad)
13884  DB  0,0                                 ; add           %al,(%rax)
13885  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13886  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13887  DB  63                                  ; (bad)
13888  DB  145                                 ; xchg          %eax,%ecx
13889  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
13890  DB  145                                 ; xchg          %eax,%ecx
13891  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
13892  DB  154                                 ; (bad)
13893  DB  153                                 ; cltd
13894  DB  153                                 ; cltd
13895  DB  62,154                              ; ds            (bad)
13896  DB  153                                 ; cltd
13897  DB  153                                 ; cltd
13898  DB  62,154                              ; ds            (bad)
13899  DB  153                                 ; cltd
13900  DB  153                                 ; cltd
13901  DB  62,154                              ; ds            (bad)
13902  DB  153                                 ; cltd
13903  DB  153                                 ; cltd
13904  DB  62,92                               ; ds            pop %rsp
13905  DB  143                                 ; (bad)
13906  DB  50,63                               ; xor           (%rdi),%bh
13907  DB  92                                  ; pop           %rsp
13908  DB  143                                 ; (bad)
13909  DB  50,63                               ; xor           (%rdi),%bh
13910  DB  92                                  ; pop           %rsp
13911  DB  143                                 ; (bad)
13912  DB  50,63                               ; xor           (%rdi),%bh
13913  DB  92                                  ; pop           %rsp
13914  DB  143                                 ; (bad)
13915  DB  50,63                               ; xor           (%rdi),%bh
13916  DB  10,215                              ; or            %bh,%dl
13917  DB  35,59                               ; and           (%rbx),%edi
13918  DB  10,215                              ; or            %bh,%dl
13919  DB  35,59                               ; and           (%rbx),%edi
13920  DB  10,215                              ; or            %bh,%dl
13921  DB  35,59                               ; and           (%rbx),%edi
13922  DB  10,215                              ; or            %bh,%dl
13923  DB  35,59                               ; and           (%rbx),%edi
13924  DB  174                                 ; scas          %es:(%rdi),%al
13925  DB  71,97                               ; rex.RXB       (bad)
13926  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
13927  DB  174                                 ; scas          %es:(%rdi),%al
13928  DB  71,97                               ; rex.RXB       (bad)
13929  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
13930  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
13931  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
13932  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
13933  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
13934  DB  206                                 ; (bad)
13935  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
13936  DB  48,63                               ; xor           %bh,(%rdi)
13937  DB  206                                 ; (bad)
13938  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
13939  DB  48,63                               ; xor           %bh,(%rdi)
13940  DB  206                                 ; (bad)
13941  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
13942  DB  48,63                               ; xor           %bh,(%rdi)
13943  DB  206                                 ; (bad)
13944  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
13945  DB  48,63                               ; xor           %bh,(%rdi)
13946  DB  168,87                              ; test          $0x57,%al
13947  DB  202,189,168                         ; lret          $0xa8bd
13948  DB  87                                  ; push          %rdi
13949  DB  202,189,168                         ; lret          $0xa8bd
13950  DB  87                                  ; push          %rdi
13951  DB  202,189,168                         ; lret          $0xa8bd
13952  DB  87                                  ; push          %rdi
13953  DB  202,189,194                         ; lret          $0xc2bd
13954  DB  135,210                             ; xchg          %edx,%edx
13955  DB  62,194,135,210                      ; ds            retq $0xd287
13956  DB  62,194,135,210                      ; ds            retq $0xd287
13957  DB  62,194,135,210                      ; ds            retq $0xd287
13958  DB  62,0,0                              ; add           %al,%ds:(%rax)
13959  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13960  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13961  DB  63                                  ; (bad)
13962  DB  0,0                                 ; add           %al,(%rax)
13963  DB  128,63,4                            ; cmpb          $0x4,(%rdi)
13964  DB  231,140                             ; out           %eax,$0x8c
13965  DB  59,4,231                            ; cmp           (%rdi,%riz,8),%eax
13966  DB  140,59                              ; mov           %?,(%rbx)
13967  DB  4,231                               ; add           $0xe7,%al
13968  DB  140,59                              ; mov           %?,(%rbx)
13969  DB  4,231                               ; add           $0xe7,%al
13970  DB  140,59                              ; mov           %?,(%rbx)
13971  DB  0,0                                 ; add           %al,(%rax)
13972  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13973  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
13974  DB  63                                  ; (bad)
13975  DB  0,0                                 ; add           %al,(%rax)
13976  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
13977  DB  0,192                               ; add           %al,%al
13978  DB  64,0,0                              ; add           %al,(%rax)
13979  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
13980  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
13981  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
13982  DB  0,64,0                              ; add           %al,0x0(%rax)
13983  DB  0,0                                 ; add           %al,(%rax)
13984  DB  64,0,0                              ; add           %al,(%rax)
13985  DB  0,64,0                              ; add           %al,0x0(%rax)
13986  DB  0,0                                 ; add           %al,(%rax)
13987  DB  64,0,0                              ; add           %al,(%rax)
13988  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
13989  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
13990  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
13991  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
13992  DB  42,62                               ; sub           (%rsi),%bh
13993  DB  171                                 ; stos          %eax,%es:(%rdi)
13994  DB  170                                 ; stos          %al,%es:(%rdi)
13995  DB  42,62                               ; sub           (%rsi),%bh
13996  DB  171                                 ; stos          %eax,%es:(%rdi)
13997  DB  170                                 ; stos          %al,%es:(%rdi)
13998  DB  42,62                               ; sub           (%rsi),%bh
13999  DB  171                                 ; stos          %eax,%es:(%rdi)
14000  DB  170                                 ; stos          %al,%es:(%rdi)
14001  DB  42,62                               ; sub           (%rsi),%bh
14002  DB  0,0                                 ; add           %al,(%rax)
14003  DB  0,63                                ; add           %bh,(%rdi)
14004  DB  0,0                                 ; add           %al,(%rax)
14005  DB  0,63                                ; add           %bh,(%rdi)
14006  DB  0,0                                 ; add           %al,(%rax)
14007  DB  0,63                                ; add           %bh,(%rdi)
14008  DB  0,0                                 ; add           %al,(%rax)
14009  DB  0,63                                ; add           %bh,(%rdi)
14010  DB  0,0                                 ; add           %al,(%rax)
14011  DB  0,63                                ; add           %bh,(%rdi)
14012  DB  0,0                                 ; add           %al,(%rax)
14013  DB  0,63                                ; add           %bh,(%rdi)
14014  DB  0,0                                 ; add           %al,(%rax)
14015  DB  0,63                                ; add           %bh,(%rdi)
14016  DB  0,0                                 ; add           %al,(%rax)
14017  DB  0,63                                ; add           %bh,(%rdi)
14018  DB  171                                 ; stos          %eax,%es:(%rdi)
14019  DB  170                                 ; stos          %al,%es:(%rdi)
14020  DB  170                                 ; stos          %al,%es:(%rdi)
14021  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
14022  DB  170                                 ; stos          %al,%es:(%rdi)
14023  DB  170                                 ; stos          %al,%es:(%rdi)
14024  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
14025  DB  170                                 ; stos          %al,%es:(%rdi)
14026  DB  170                                 ; stos          %al,%es:(%rdi)
14027  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
14028  DB  170                                 ; stos          %al,%es:(%rdi)
14029  DB  170                                 ; stos          %al,%es:(%rdi)
14030  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
14031  DB  170                                 ; stos          %al,%es:(%rdi)
14032  DB  42,63                               ; sub           (%rdi),%bh
14033  DB  171                                 ; stos          %eax,%es:(%rdi)
14034  DB  170                                 ; stos          %al,%es:(%rdi)
14035  DB  42,63                               ; sub           (%rdi),%bh
14036  DB  171                                 ; stos          %eax,%es:(%rdi)
14037  DB  170                                 ; stos          %al,%es:(%rdi)
14038  DB  42,63                               ; sub           (%rdi),%bh
14039  DB  171                                 ; stos          %eax,%es:(%rdi)
14040  DB  170                                 ; stos          %al,%es:(%rdi)
14041  DB  42,63                               ; sub           (%rdi),%bh
14042  DB  0,0                                 ; add           %al,(%rax)
14043  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
14044  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
14045  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
14046  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
14047  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
14048  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
14049  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
14050  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
14051  DB  42,62                               ; sub           (%rsi),%bh
14052  DB  171                                 ; stos          %eax,%es:(%rdi)
14053  DB  170                                 ; stos          %al,%es:(%rdi)
14054  DB  42,62                               ; sub           (%rsi),%bh
14055  DB  171                                 ; stos          %eax,%es:(%rdi)
14056  DB  170                                 ; stos          %al,%es:(%rdi)
14057  DB  42,62                               ; sub           (%rsi),%bh
14058  DB  171                                 ; stos          %eax,%es:(%rdi)
14059  DB  170                                 ; stos          %al,%es:(%rdi)
14060  DB  42,62                               ; sub           (%rsi),%bh
14061  DB  171                                 ; stos          %eax,%es:(%rdi)
14062  DB  170                                 ; stos          %al,%es:(%rdi)
14063  DB  170                                 ; stos          %al,%es:(%rdi)
14064  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
14065  DB  171                                 ; stos          %eax,%es:(%rdi)
14066  DB  170                                 ; stos          %al,%es:(%rdi)
14067  DB  170                                 ; stos          %al,%es:(%rdi)
14068  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
14069  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14070  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14071  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
14072  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14073  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
14074  DB  248                                 ; clc
14075  DB  0,0                                 ; add           %al,(%rax)
14076  DB  0,248                               ; add           %bh,%al
14077  DB  0,0                                 ; add           %al,(%rax)
14078  DB  0,248                               ; add           %bh,%al
14079  DB  0,0                                 ; add           %al,(%rax)
14080  DB  0,248                               ; add           %bh,%al
14081  DB  0,0                                 ; add           %al,(%rax)
14082  DB  8,33                                ; or            %ah,(%rcx)
14083  DB  132,55                              ; test          %dh,(%rdi)
14084  DB  8,33                                ; or            %ah,(%rcx)
14085  DB  132,55                              ; test          %dh,(%rdi)
14086  DB  8,33                                ; or            %ah,(%rcx)
14087  DB  132,55                              ; test          %dh,(%rdi)
14088  DB  8,33                                ; or            %ah,(%rcx)
14089  DB  132,55                              ; test          %dh,(%rdi)
14090  DB  224,7                               ; loopne        3ed9 <.literal16+0x399>
14091  DB  0,0                                 ; add           %al,(%rax)
14092  DB  224,7                               ; loopne        3edd <.literal16+0x39d>
14093  DB  0,0                                 ; add           %al,(%rax)
14094  DB  224,7                               ; loopne        3ee1 <.literal16+0x3a1>
14095  DB  0,0                                 ; add           %al,(%rax)
14096  DB  224,7                               ; loopne        3ee5 <.literal16+0x3a5>
14097  DB  0,0                                 ; add           %al,(%rax)
14098  DB  33,8                                ; and           %ecx,(%rax)
14099  DB  2,58                                ; add           (%rdx),%bh
14100  DB  33,8                                ; and           %ecx,(%rax)
14101  DB  2,58                                ; add           (%rdx),%bh
14102  DB  33,8                                ; and           %ecx,(%rax)
14103  DB  2,58                                ; add           (%rdx),%bh
14104  DB  33,8                                ; and           %ecx,(%rax)
14105  DB  2,58                                ; add           (%rdx),%bh
14106  DB  31                                  ; (bad)
14107  DB  0,0                                 ; add           %al,(%rax)
14108  DB  0,31                                ; add           %bl,(%rdi)
14109  DB  0,0                                 ; add           %al,(%rax)
14110  DB  0,31                                ; add           %bl,(%rdi)
14111  DB  0,0                                 ; add           %al,(%rax)
14112  DB  0,31                                ; add           %bl,(%rdi)
14113  DB  0,0                                 ; add           %al,(%rax)
14114  DB  0,8                                 ; add           %cl,(%rax)
14115  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
14116  DB  8,33                                ; or            %ah,(%rcx)
14117  DB  4,61                                ; add           $0x3d,%al
14118  DB  8,33                                ; or            %ah,(%rcx)
14119  DB  4,61                                ; add           $0x3d,%al
14120  DB  0,0                                 ; add           %al,(%rax)
14121  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14122  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14123  DB  63                                  ; (bad)
14124  DB  0,0                                 ; add           %al,(%rax)
14125  DB  128,63,255                          ; cmpb          $0xff,(%rdi)
14126  DB  0,0                                 ; add           %al,(%rax)
14127  DB  0,255                               ; add           %bh,%bh
14128  DB  0,0                                 ; add           %al,(%rax)
14129  DB  0,255                               ; add           %bh,%bh
14130  DB  0,0                                 ; add           %al,(%rax)
14131  DB  0,255                               ; add           %bh,%bh
14132  DB  0,0                                 ; add           %al,(%rax)
14133  DB  0,1                                 ; add           %al,(%rcx)
14134  DB  255                                 ; (bad)
14135  DB  255                                 ; (bad)
14136  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a003f38 <_sk_callback_sse41+0xa0004a7>
14137  DB  255                                 ; (bad)
14138  DB  255                                 ; (bad)
14139  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3003f40 <_sk_callback_sse41+0x30004af>
14140  DB  255                                 ; (bad)
14141  DB  255                                 ; (bad)
14142  DB  255,6                               ; incl          (%rsi)
14143  DB  255                                 ; (bad)
14144  DB  255                                 ; (bad)
14145  DB  255,10                              ; decl          (%rdx)
14146  DB  255                                 ; (bad)
14147  DB  255                                 ; (bad)
14148  DB  255,14                              ; decl          (%rsi)
14149  DB  255                                 ; (bad)
14150  DB  255                                 ; (bad)
14151  DB  255,129,128,128,59,129              ; incl          -0x7ec47f80(%rcx)
14152  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
14153  DB  129,128,128,59,255,0,255,0,255,0    ; addl          $0xff00ff,0xff3b80(%rax)
14154  DB  255,0                               ; incl          (%rax)
14155  DB  0,0                                 ; add           %al,(%rax)
14156  DB  0,0                                 ; add           %al,(%rax)
14157  DB  0,0                                 ; add           %al,(%rax)
14158  DB  0,0                                 ; add           %al,(%rax)
14159  DB  8,255                               ; or            %bh,%bh
14160  DB  10,255                              ; or            %bh,%bh
14161  DB  12,255                              ; or            $0xff,%al
14162  DB  14                                  ; (bad)
14163  DB  255,0                               ; incl          (%rax)
14164  DB  0,0                                 ; add           %al,(%rax)
14165  DB  0,0                                 ; add           %al,(%rax)
14166  DB  0,0                                 ; add           %al,(%rax)
14167  DB  0,128,0,128,55,128                  ; add           %al,-0x7fc88000(%rax)
14168  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
14169  DB  55                                  ; (bad)
14170  DB  128,0,128                           ; addb          $0x80,(%rax)
14171  DB  55                                  ; (bad)
14172  DB  255,0                               ; incl          (%rax)
14173  DB  255,0                               ; incl          (%rax)
14174  DB  255,0                               ; incl          (%rax)
14175  DB  255,0                               ; incl          (%rax)
14176  DB  0,0                                 ; add           %al,(%rax)
14177  DB  0,0                                 ; add           %al,(%rax)
14178  DB  0,0                                 ; add           %al,(%rax)
14179  DB  0,0                                 ; add           %al,(%rax)
14180  DB  8,128,10,128,12,128                 ; or            %al,-0x7ff37ff6(%rax)
14181  DB  14                                  ; (bad)
14182  DB  128,0,0                             ; addb          $0x0,(%rax)
14183  DB  0,0                                 ; add           %al,(%rax)
14184  DB  0,0                                 ; add           %al,(%rax)
14185  DB  0,0                                 ; add           %al,(%rax)
14186  DB  0,0                                 ; add           %al,(%rax)
14187  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14188  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14189  DB  63                                  ; (bad)
14190  DB  0,0                                 ; add           %al,(%rax)
14191  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14192  DB  0,127,67                            ; add           %bh,0x43(%rdi)
14193  DB  0,0                                 ; add           %al,(%rax)
14194  DB  127,67                              ; jg            400b <.literal16+0x4cb>
14195  DB  0,0                                 ; add           %al,(%rax)
14196  DB  127,67                              ; jg            400f <.literal16+0x4cf>
14197  DB  0,0                                 ; add           %al,(%rax)
14198  DB  127,67                              ; jg            4013 <.literal16+0x4d3>
14199  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14200  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14201  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
14202  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14203  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
14204  DB  0,0                                 ; add           %al,(%rax)
14205  DB  52,0                                ; xor           $0x0,%al
14206  DB  0,0                                 ; add           %al,(%rax)
14207  DB  52,0                                ; xor           $0x0,%al
14208  DB  0,0                                 ; add           %al,(%rax)
14209  DB  52,0                                ; xor           $0x0,%al
14210  DB  0,0                                 ; add           %al,(%rax)
14211  DB  52,255                              ; xor           $0xff,%al
14212  DB  255                                 ; (bad)
14213  DB  127,0                               ; jg            4004 <.literal16+0x4c4>
14214  DB  255                                 ; (bad)
14215  DB  255                                 ; (bad)
14216  DB  127,0                               ; jg            4008 <.literal16+0x4c8>
14217  DB  255                                 ; (bad)
14218  DB  255                                 ; (bad)
14219  DB  127,0                               ; jg            400c <.literal16+0x4cc>
14220  DB  255                                 ; (bad)
14221  DB  255                                 ; (bad)
14222  DB  127,0                               ; jg            4010 <.literal16+0x4d0>
14223  DB  0,0                                 ; add           %al,(%rax)
14224  DB  0,63                                ; add           %bh,(%rdi)
14225  DB  0,0                                 ; add           %al,(%rax)
14226  DB  0,63                                ; add           %bh,(%rdi)
14227  DB  0,0                                 ; add           %al,(%rax)
14228  DB  0,63                                ; add           %bh,(%rdi)
14229  DB  0,0                                 ; add           %al,(%rax)
14230  DB  0,63                                ; add           %bh,(%rdi)
14231  DB  119,115                             ; ja            4095 <.literal16+0x555>
14232  DB  248                                 ; clc
14233  DB  194,119,115                         ; retq          $0x7377
14234  DB  248                                 ; clc
14235  DB  194,119,115                         ; retq          $0x7377
14236  DB  248                                 ; clc
14237  DB  194,119,115                         ; retq          $0x7377
14238  DB  248                                 ; clc
14239  DB  194,117,191                         ; retq          $0xbf75
14240  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14241  DB  63                                  ; (bad)
14242  DB  117,191                             ; jne           3ff9 <.literal16+0x4b9>
14243  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14244  DB  63                                  ; (bad)
14245  DB  249                                 ; stc
14246  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14247  DB  249                                 ; stc
14248  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14249  DB  249                                 ; stc
14250  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14251  DB  249                                 ; stc
14252  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14253  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
14254  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a3803a <_sk_callback_sse41+0xffffffffe9a345a9>
14255  DB  220,63                              ; fdivrl        (%rdi)
14256  DB  81                                  ; push          %rcx
14257  DB  140,242                             ; mov           %?,%edx
14258  DB  66,81                               ; rex.X         push %rcx
14259  DB  140,242                             ; mov           %?,%edx
14260  DB  66,81                               ; rex.X         push %rcx
14261  DB  140,242                             ; mov           %?,%edx
14262  DB  66,81                               ; rex.X         push %rcx
14263  DB  140,242                             ; mov           %?,%edx
14264  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
14265  DB  63                                  ; (bad)
14266  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
14267  DB  63                                  ; (bad)
14268  DB  248                                 ; clc
14269  DB  245                                 ; cmc
14270  DB  154                                 ; (bad)
14271  DB  64,248                              ; rex           clc
14272  DB  245                                 ; cmc
14273  DB  154                                 ; (bad)
14274  DB  64,248                              ; rex           clc
14275  DB  245                                 ; cmc
14276  DB  154                                 ; (bad)
14277  DB  64,248                              ; rex           clc
14278  DB  245                                 ; cmc
14279  DB  154                                 ; (bad)
14280  DB  64,254                              ; rex           (bad)
14281  DB  210,221                             ; rcr           %cl,%ch
14282  DB  65,254                              ; rex.B         (bad)
14283  DB  210,221                             ; rcr           %cl,%ch
14284  DB  65,254                              ; rex.B         (bad)
14285  DB  210,221                             ; rcr           %cl,%ch
14286  DB  65,254                              ; rex.B         (bad)
14287  DB  210,221                             ; rcr           %cl,%ch
14288  DB  65,0,0                              ; add           %al,(%r8)
14289  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14290  DB  0,0                                 ; add           %al,(%rax)
14291  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14292  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14293  DB  0,0                                 ; add           %al,(%rax)
14294  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14295  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14296  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14297  DB  63                                  ; (bad)
14298  DB  0,0                                 ; add           %al,(%rax)
14299  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14300  DB  0,0                                 ; add           %al,(%rax)
14301  DB  52,0                                ; xor           $0x0,%al
14302  DB  0,0                                 ; add           %al,(%rax)
14303  DB  52,0                                ; xor           $0x0,%al
14304  DB  0,0                                 ; add           %al,(%rax)
14305  DB  52,0                                ; xor           $0x0,%al
14306  DB  0,0                                 ; add           %al,(%rax)
14307  DB  52,255                              ; xor           $0xff,%al
14308  DB  255                                 ; (bad)
14309  DB  127,0                               ; jg            40d4 <.literal16+0x594>
14310  DB  255                                 ; (bad)
14311  DB  255                                 ; (bad)
14312  DB  127,0                               ; jg            40d8 <.literal16+0x598>
14313  DB  255                                 ; (bad)
14314  DB  255                                 ; (bad)
14315  DB  127,0                               ; jg            40dc <.literal16+0x59c>
14316  DB  255                                 ; (bad)
14317  DB  255                                 ; (bad)
14318  DB  127,0                               ; jg            40e0 <.literal16+0x5a0>
14319  DB  0,0                                 ; add           %al,(%rax)
14320  DB  0,63                                ; add           %bh,(%rdi)
14321  DB  0,0                                 ; add           %al,(%rax)
14322  DB  0,63                                ; add           %bh,(%rdi)
14323  DB  0,0                                 ; add           %al,(%rax)
14324  DB  0,63                                ; add           %bh,(%rdi)
14325  DB  0,0                                 ; add           %al,(%rax)
14326  DB  0,63                                ; add           %bh,(%rdi)
14327  DB  119,115                             ; ja            4165 <.literal16+0x625>
14328  DB  248                                 ; clc
14329  DB  194,119,115                         ; retq          $0x7377
14330  DB  248                                 ; clc
14331  DB  194,119,115                         ; retq          $0x7377
14332  DB  248                                 ; clc
14333  DB  194,119,115                         ; retq          $0x7377
14334  DB  248                                 ; clc
14335  DB  194,117,191                         ; retq          $0xbf75
14336  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14337  DB  63                                  ; (bad)
14338  DB  117,191                             ; jne           40c9 <.literal16+0x589>
14339  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14340  DB  63                                  ; (bad)
14341  DB  249                                 ; stc
14342  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14343  DB  249                                 ; stc
14344  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14345  DB  249                                 ; stc
14346  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14347  DB  249                                 ; stc
14348  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14349  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
14350  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a3810a <_sk_callback_sse41+0xffffffffe9a34679>
14351  DB  220,63                              ; fdivrl        (%rdi)
14352  DB  81                                  ; push          %rcx
14353  DB  140,242                             ; mov           %?,%edx
14354  DB  66,81                               ; rex.X         push %rcx
14355  DB  140,242                             ; mov           %?,%edx
14356  DB  66,81                               ; rex.X         push %rcx
14357  DB  140,242                             ; mov           %?,%edx
14358  DB  66,81                               ; rex.X         push %rcx
14359  DB  140,242                             ; mov           %?,%edx
14360  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
14361  DB  63                                  ; (bad)
14362  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
14363  DB  63                                  ; (bad)
14364  DB  248                                 ; clc
14365  DB  245                                 ; cmc
14366  DB  154                                 ; (bad)
14367  DB  64,248                              ; rex           clc
14368  DB  245                                 ; cmc
14369  DB  154                                 ; (bad)
14370  DB  64,248                              ; rex           clc
14371  DB  245                                 ; cmc
14372  DB  154                                 ; (bad)
14373  DB  64,248                              ; rex           clc
14374  DB  245                                 ; cmc
14375  DB  154                                 ; (bad)
14376  DB  64,254                              ; rex           (bad)
14377  DB  210,221                             ; rcr           %cl,%ch
14378  DB  65,254                              ; rex.B         (bad)
14379  DB  210,221                             ; rcr           %cl,%ch
14380  DB  65,254                              ; rex.B         (bad)
14381  DB  210,221                             ; rcr           %cl,%ch
14382  DB  65,254                              ; rex.B         (bad)
14383  DB  210,221                             ; rcr           %cl,%ch
14384  DB  65,0,0                              ; add           %al,(%r8)
14385  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14386  DB  0,0                                 ; add           %al,(%rax)
14387  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14388  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14389  DB  0,0                                 ; add           %al,(%rax)
14390  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14391  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14392  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14393  DB  63                                  ; (bad)
14394  DB  0,0                                 ; add           %al,(%rax)
14395  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14396  DB  0,0                                 ; add           %al,(%rax)
14397  DB  52,0                                ; xor           $0x0,%al
14398  DB  0,0                                 ; add           %al,(%rax)
14399  DB  52,0                                ; xor           $0x0,%al
14400  DB  0,0                                 ; add           %al,(%rax)
14401  DB  52,0                                ; xor           $0x0,%al
14402  DB  0,0                                 ; add           %al,(%rax)
14403  DB  52,255                              ; xor           $0xff,%al
14404  DB  255                                 ; (bad)
14405  DB  127,0                               ; jg            41a4 <.literal16+0x664>
14406  DB  255                                 ; (bad)
14407  DB  255                                 ; (bad)
14408  DB  127,0                               ; jg            41a8 <.literal16+0x668>
14409  DB  255                                 ; (bad)
14410  DB  255                                 ; (bad)
14411  DB  127,0                               ; jg            41ac <.literal16+0x66c>
14412  DB  255                                 ; (bad)
14413  DB  255                                 ; (bad)
14414  DB  127,0                               ; jg            41b0 <.literal16+0x670>
14415  DB  0,0                                 ; add           %al,(%rax)
14416  DB  0,63                                ; add           %bh,(%rdi)
14417  DB  0,0                                 ; add           %al,(%rax)
14418  DB  0,63                                ; add           %bh,(%rdi)
14419  DB  0,0                                 ; add           %al,(%rax)
14420  DB  0,63                                ; add           %bh,(%rdi)
14421  DB  0,0                                 ; add           %al,(%rax)
14422  DB  0,63                                ; add           %bh,(%rdi)
14423  DB  119,115                             ; ja            4235 <.literal16+0x6f5>
14424  DB  248                                 ; clc
14425  DB  194,119,115                         ; retq          $0x7377
14426  DB  248                                 ; clc
14427  DB  194,119,115                         ; retq          $0x7377
14428  DB  248                                 ; clc
14429  DB  194,119,115                         ; retq          $0x7377
14430  DB  248                                 ; clc
14431  DB  194,117,191                         ; retq          $0xbf75
14432  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14433  DB  63                                  ; (bad)
14434  DB  117,191                             ; jne           4199 <.literal16+0x659>
14435  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14436  DB  63                                  ; (bad)
14437  DB  249                                 ; stc
14438  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14439  DB  249                                 ; stc
14440  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14441  DB  249                                 ; stc
14442  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14443  DB  249                                 ; stc
14444  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14445  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
14446  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a381da <_sk_callback_sse41+0xffffffffe9a34749>
14447  DB  220,63                              ; fdivrl        (%rdi)
14448  DB  81                                  ; push          %rcx
14449  DB  140,242                             ; mov           %?,%edx
14450  DB  66,81                               ; rex.X         push %rcx
14451  DB  140,242                             ; mov           %?,%edx
14452  DB  66,81                               ; rex.X         push %rcx
14453  DB  140,242                             ; mov           %?,%edx
14454  DB  66,81                               ; rex.X         push %rcx
14455  DB  140,242                             ; mov           %?,%edx
14456  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
14457  DB  63                                  ; (bad)
14458  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
14459  DB  63                                  ; (bad)
14460  DB  248                                 ; clc
14461  DB  245                                 ; cmc
14462  DB  154                                 ; (bad)
14463  DB  64,248                              ; rex           clc
14464  DB  245                                 ; cmc
14465  DB  154                                 ; (bad)
14466  DB  64,248                              ; rex           clc
14467  DB  245                                 ; cmc
14468  DB  154                                 ; (bad)
14469  DB  64,248                              ; rex           clc
14470  DB  245                                 ; cmc
14471  DB  154                                 ; (bad)
14472  DB  64,254                              ; rex           (bad)
14473  DB  210,221                             ; rcr           %cl,%ch
14474  DB  65,254                              ; rex.B         (bad)
14475  DB  210,221                             ; rcr           %cl,%ch
14476  DB  65,254                              ; rex.B         (bad)
14477  DB  210,221                             ; rcr           %cl,%ch
14478  DB  65,254                              ; rex.B         (bad)
14479  DB  210,221                             ; rcr           %cl,%ch
14480  DB  65,0,0                              ; add           %al,(%r8)
14481  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14482  DB  0,0                                 ; add           %al,(%rax)
14483  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14484  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14485  DB  0,0                                 ; add           %al,(%rax)
14486  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14487  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14488  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14489  DB  63                                  ; (bad)
14490  DB  0,0                                 ; add           %al,(%rax)
14491  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14492  DB  0,0                                 ; add           %al,(%rax)
14493  DB  52,0                                ; xor           $0x0,%al
14494  DB  0,0                                 ; add           %al,(%rax)
14495  DB  52,0                                ; xor           $0x0,%al
14496  DB  0,0                                 ; add           %al,(%rax)
14497  DB  52,0                                ; xor           $0x0,%al
14498  DB  0,0                                 ; add           %al,(%rax)
14499  DB  52,255                              ; xor           $0xff,%al
14500  DB  255                                 ; (bad)
14501  DB  127,0                               ; jg            4274 <.literal16+0x734>
14502  DB  255                                 ; (bad)
14503  DB  255                                 ; (bad)
14504  DB  127,0                               ; jg            4278 <.literal16+0x738>
14505  DB  255                                 ; (bad)
14506  DB  255                                 ; (bad)
14507  DB  127,0                               ; jg            427c <.literal16+0x73c>
14508  DB  255                                 ; (bad)
14509  DB  255                                 ; (bad)
14510  DB  127,0                               ; jg            4280 <.literal16+0x740>
14511  DB  0,0                                 ; add           %al,(%rax)
14512  DB  0,63                                ; add           %bh,(%rdi)
14513  DB  0,0                                 ; add           %al,(%rax)
14514  DB  0,63                                ; add           %bh,(%rdi)
14515  DB  0,0                                 ; add           %al,(%rax)
14516  DB  0,63                                ; add           %bh,(%rdi)
14517  DB  0,0                                 ; add           %al,(%rax)
14518  DB  0,63                                ; add           %bh,(%rdi)
14519  DB  119,115                             ; ja            4305 <.literal16+0x7c5>
14520  DB  248                                 ; clc
14521  DB  194,119,115                         ; retq          $0x7377
14522  DB  248                                 ; clc
14523  DB  194,119,115                         ; retq          $0x7377
14524  DB  248                                 ; clc
14525  DB  194,119,115                         ; retq          $0x7377
14526  DB  248                                 ; clc
14527  DB  194,117,191                         ; retq          $0xbf75
14528  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14529  DB  63                                  ; (bad)
14530  DB  117,191                             ; jne           4269 <.literal16+0x729>
14531  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
14532  DB  63                                  ; (bad)
14533  DB  249                                 ; stc
14534  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14535  DB  249                                 ; stc
14536  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14537  DB  249                                 ; stc
14538  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14539  DB  249                                 ; stc
14540  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
14541  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
14542  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a382aa <_sk_callback_sse41+0xffffffffe9a34819>
14543  DB  220,63                              ; fdivrl        (%rdi)
14544  DB  81                                  ; push          %rcx
14545  DB  140,242                             ; mov           %?,%edx
14546  DB  66,81                               ; rex.X         push %rcx
14547  DB  140,242                             ; mov           %?,%edx
14548  DB  66,81                               ; rex.X         push %rcx
14549  DB  140,242                             ; mov           %?,%edx
14550  DB  66,81                               ; rex.X         push %rcx
14551  DB  140,242                             ; mov           %?,%edx
14552  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
14553  DB  63                                  ; (bad)
14554  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
14555  DB  63                                  ; (bad)
14556  DB  248                                 ; clc
14557  DB  245                                 ; cmc
14558  DB  154                                 ; (bad)
14559  DB  64,248                              ; rex           clc
14560  DB  245                                 ; cmc
14561  DB  154                                 ; (bad)
14562  DB  64,248                              ; rex           clc
14563  DB  245                                 ; cmc
14564  DB  154                                 ; (bad)
14565  DB  64,248                              ; rex           clc
14566  DB  245                                 ; cmc
14567  DB  154                                 ; (bad)
14568  DB  64,254                              ; rex           (bad)
14569  DB  210,221                             ; rcr           %cl,%ch
14570  DB  65,254                              ; rex.B         (bad)
14571  DB  210,221                             ; rcr           %cl,%ch
14572  DB  65,254                              ; rex.B         (bad)
14573  DB  210,221                             ; rcr           %cl,%ch
14574  DB  65,254                              ; rex.B         (bad)
14575  DB  210,221                             ; rcr           %cl,%ch
14576  DB  65,0,0                              ; add           %al,(%r8)
14577  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14578  DB  0,0                                 ; add           %al,(%rax)
14579  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14580  DB  0,75,0                              ; add           %cl,0x0(%rbx)
14581  DB  0,0                                 ; add           %al,(%rax)
14582  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
14583  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14584  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14585  DB  63                                  ; (bad)
14586  DB  0,0                                 ; add           %al,(%rax)
14587  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14588  DB  0,200                               ; add           %cl,%al
14589  DB  66,0,0                              ; rex.X         add %al,(%rax)
14590  DB  200,66,0,0                          ; enterq        $0x42,$0x0
14591  DB  200,66,0,0                          ; enterq        $0x42,$0x0
14592  DB  200,66,0,0                          ; enterq        $0x42,$0x0
14593  DB  127,67                              ; jg            4387 <.literal16+0x847>
14594  DB  0,0                                 ; add           %al,(%rax)
14595  DB  127,67                              ; jg            438b <.literal16+0x84b>
14596  DB  0,0                                 ; add           %al,(%rax)
14597  DB  127,67                              ; jg            438f <.literal16+0x84f>
14598  DB  0,0                                 ; add           %al,(%rax)
14599  DB  127,67                              ; jg            4393 <.literal16+0x853>
14600  DB  0,0                                 ; add           %al,(%rax)
14601  DB  0,195                               ; add           %al,%bl
14602  DB  0,0                                 ; add           %al,(%rax)
14603  DB  0,195                               ; add           %al,%bl
14604  DB  0,0                                 ; add           %al,(%rax)
14605  DB  0,195                               ; add           %al,%bl
14606  DB  0,0                                 ; add           %al,(%rax)
14607  DB  0,195                               ; add           %al,%bl
14608  DB  0,0                                 ; add           %al,(%rax)
14609  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
14610  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
14611  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
14612  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
14613  DB  13,60,203,61,13                     ; or            $0xd3dcb3c,%eax
14614  DB  60,203                              ; cmp           $0xcb,%al
14615  DB  61,13,60,203,61                     ; cmp           $0x3dcb3c0d,%eax
14616  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
14617  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
14618  DB  3,59                                ; add           (%rbx),%edi
14619  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
14620  DB  18,3                                ; adc           (%rbx),%al
14621  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
14622  DB  3,59                                ; add           (%rbx),%edi
14623  DB  10,215                              ; or            %bh,%dl
14624  DB  163,59,10,215,163,59,10,215,163     ; movabs        %eax,0xa3d70a3ba3d70a3b
14625  DB  59,10                               ; cmp           (%rdx),%ecx
14626  DB  215                                 ; xlat          %ds:(%rbx)
14627  DB  163,59,194,24,17,60,194,24,17       ; movabs        %eax,0x1118c23c1118c23b
14628  DB  60,194                              ; cmp           $0xc2,%al
14629  DB  24,17                               ; sbb           %dl,(%rcx)
14630  DB  60,194                              ; cmp           $0xc2,%al
14631  DB  24,17                               ; sbb           %dl,(%rcx)
14632  DB  60,203                              ; cmp           $0xcb,%al
14633  DB  61,13,190,203,61                    ; cmp           $0x3dcbbe0d,%eax
14634  DB  13,190,203,61,13                    ; or            $0xd3dcbbe,%eax
14635  DB  190,203,61,13,190                   ; mov           $0xbe0d3dcb,%esi
14636  DB  80                                  ; push          %rax
14637  DB  128,3,62                            ; addb          $0x3e,(%rbx)
14638  DB  80                                  ; push          %rax
14639  DB  128,3,62                            ; addb          $0x3e,(%rbx)
14640  DB  80                                  ; push          %rax
14641  DB  128,3,62                            ; addb          $0x3e,(%rbx)
14642  DB  80                                  ; push          %rax
14643  DB  128,3,62                            ; addb          $0x3e,(%rbx)
14644  DB  31                                  ; (bad)
14645  DB  215                                 ; xlat          %ds:(%rbx)
14646  DB  118,63                              ; jbe           4413 <.literal16+0x8d3>
14647  DB  31                                  ; (bad)
14648  DB  215                                 ; xlat          %ds:(%rbx)
14649  DB  118,63                              ; jbe           4417 <.literal16+0x8d7>
14650  DB  31                                  ; (bad)
14651  DB  215                                 ; xlat          %ds:(%rbx)
14652  DB  118,63                              ; jbe           441b <.literal16+0x8db>
14653  DB  31                                  ; (bad)
14654  DB  215                                 ; xlat          %ds:(%rbx)
14655  DB  118,63                              ; jbe           441f <.literal16+0x8df>
14656  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
14657  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
14658  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
14659  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
14660  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14661  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14662  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
14663  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14664  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
14665  DB  0,127,67                            ; add           %bh,0x43(%rdi)
14666  DB  0,0                                 ; add           %al,(%rax)
14667  DB  127,67                              ; jg            445b <.literal16+0x91b>
14668  DB  0,0                                 ; add           %al,(%rax)
14669  DB  127,67                              ; jg            445f <.literal16+0x91f>
14670  DB  0,0                                 ; add           %al,(%rax)
14671  DB  127,67                              ; jg            4463 <.literal16+0x923>
14672  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14673  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14674  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
14675  DB  0,0                                 ; add           %al,(%rax)
14676  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14677  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14678  DB  63                                  ; (bad)
14679  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14680  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14681  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
14682  DB  0,0                                 ; add           %al,(%rax)
14683  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14684  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14685  DB  63                                  ; (bad)
14686  DB  255,0                               ; incl          (%rax)
14687  DB  0,0                                 ; add           %al,(%rax)
14688  DB  255,0                               ; incl          (%rax)
14689  DB  0,0                                 ; add           %al,(%rax)
14690  DB  255,0                               ; incl          (%rax)
14691  DB  0,0                                 ; add           %al,(%rax)
14692  DB  255,0                               ; incl          (%rax)
14693  DB  0,0                                 ; add           %al,(%rax)
14694  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14695  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14696  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
14697  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
14698  DB  255                                 ; (bad)
14699  DB  255                                 ; (bad)
14700  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3004490 <_sk_callback_sse41+0x30009ff>
14701  DB  255                                 ; (bad)
14702  DB  255                                 ; (bad)
14703  DB  255,6                               ; incl          (%rsi)
14704  DB  255                                 ; (bad)
14705  DB  255                                 ; (bad)
14706  DB  255,10                              ; decl          (%rdx)
14707  DB  255                                 ; (bad)
14708  DB  255                                 ; (bad)
14709  DB  255,14                              ; decl          (%rsi)
14710  DB  255                                 ; (bad)
14711  DB  255                                 ; (bad)
14712  DB  255,0                               ; incl          (%rax)
14713  DB  248                                 ; clc
14714  DB  0,0                                 ; add           %al,(%rax)
14715  DB  0,248                               ; add           %bh,%al
14716  DB  0,0                                 ; add           %al,(%rax)
14717  DB  0,248                               ; add           %bh,%al
14718  DB  0,0                                 ; add           %al,(%rax)
14719  DB  0,248                               ; add           %bh,%al
14720  DB  0,0                                 ; add           %al,(%rax)
14721  DB  8,33                                ; or            %ah,(%rcx)
14722  DB  132,55                              ; test          %dh,(%rdi)
14723  DB  8,33                                ; or            %ah,(%rcx)
14724  DB  132,55                              ; test          %dh,(%rdi)
14725  DB  8,33                                ; or            %ah,(%rcx)
14726  DB  132,55                              ; test          %dh,(%rdi)
14727  DB  8,33                                ; or            %ah,(%rcx)
14728  DB  132,55                              ; test          %dh,(%rdi)
14729  DB  224,7                               ; loopne        44c9 <.literal16+0x989>
14730  DB  0,0                                 ; add           %al,(%rax)
14731  DB  224,7                               ; loopne        44cd <.literal16+0x98d>
14732  DB  0,0                                 ; add           %al,(%rax)
14733  DB  224,7                               ; loopne        44d1 <.literal16+0x991>
14734  DB  0,0                                 ; add           %al,(%rax)
14735  DB  224,7                               ; loopne        44d5 <.literal16+0x995>
14736  DB  0,0                                 ; add           %al,(%rax)
14737  DB  33,8                                ; and           %ecx,(%rax)
14738  DB  2,58                                ; add           (%rdx),%bh
14739  DB  33,8                                ; and           %ecx,(%rax)
14740  DB  2,58                                ; add           (%rdx),%bh
14741  DB  33,8                                ; and           %ecx,(%rax)
14742  DB  2,58                                ; add           (%rdx),%bh
14743  DB  33,8                                ; and           %ecx,(%rax)
14744  DB  2,58                                ; add           (%rdx),%bh
14745  DB  31                                  ; (bad)
14746  DB  0,0                                 ; add           %al,(%rax)
14747  DB  0,31                                ; add           %bl,(%rdi)
14748  DB  0,0                                 ; add           %al,(%rax)
14749  DB  0,31                                ; add           %bl,(%rdi)
14750  DB  0,0                                 ; add           %al,(%rax)
14751  DB  0,31                                ; add           %bl,(%rdi)
14752  DB  0,0                                 ; add           %al,(%rax)
14753  DB  0,8                                 ; add           %cl,(%rax)
14754  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
14755  DB  8,33                                ; or            %ah,(%rcx)
14756  DB  4,61                                ; add           $0x3d,%al
14757  DB  8,33                                ; or            %ah,(%rcx)
14758  DB  4,61                                ; add           $0x3d,%al
14759  DB  0,0                                 ; add           %al,(%rax)
14760  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14761  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14762  DB  63                                  ; (bad)
14763  DB  0,0                                 ; add           %al,(%rax)
14764  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14765  DB  248                                 ; clc
14766  DB  0,0                                 ; add           %al,(%rax)
14767  DB  0,248                               ; add           %bh,%al
14768  DB  0,0                                 ; add           %al,(%rax)
14769  DB  0,248                               ; add           %bh,%al
14770  DB  0,0                                 ; add           %al,(%rax)
14771  DB  0,248                               ; add           %bh,%al
14772  DB  0,0                                 ; add           %al,(%rax)
14773  DB  8,33                                ; or            %ah,(%rcx)
14774  DB  132,55                              ; test          %dh,(%rdi)
14775  DB  8,33                                ; or            %ah,(%rcx)
14776  DB  132,55                              ; test          %dh,(%rdi)
14777  DB  8,33                                ; or            %ah,(%rcx)
14778  DB  132,55                              ; test          %dh,(%rdi)
14779  DB  8,33                                ; or            %ah,(%rcx)
14780  DB  132,55                              ; test          %dh,(%rdi)
14781  DB  224,7                               ; loopne        4539 <.literal16+0x9f9>
14782  DB  0,0                                 ; add           %al,(%rax)
14783  DB  224,7                               ; loopne        453d <.literal16+0x9fd>
14784  DB  0,0                                 ; add           %al,(%rax)
14785  DB  224,7                               ; loopne        4541 <.literal16+0xa01>
14786  DB  0,0                                 ; add           %al,(%rax)
14787  DB  224,7                               ; loopne        4545 <.literal16+0xa05>
14788  DB  0,0                                 ; add           %al,(%rax)
14789  DB  33,8                                ; and           %ecx,(%rax)
14790  DB  2,58                                ; add           (%rdx),%bh
14791  DB  33,8                                ; and           %ecx,(%rax)
14792  DB  2,58                                ; add           (%rdx),%bh
14793  DB  33,8                                ; and           %ecx,(%rax)
14794  DB  2,58                                ; add           (%rdx),%bh
14795  DB  33,8                                ; and           %ecx,(%rax)
14796  DB  2,58                                ; add           (%rdx),%bh
14797  DB  31                                  ; (bad)
14798  DB  0,0                                 ; add           %al,(%rax)
14799  DB  0,31                                ; add           %bl,(%rdi)
14800  DB  0,0                                 ; add           %al,(%rax)
14801  DB  0,31                                ; add           %bl,(%rdi)
14802  DB  0,0                                 ; add           %al,(%rax)
14803  DB  0,31                                ; add           %bl,(%rdi)
14804  DB  0,0                                 ; add           %al,(%rax)
14805  DB  0,8                                 ; add           %cl,(%rax)
14806  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
14807  DB  8,33                                ; or            %ah,(%rcx)
14808  DB  4,61                                ; add           $0x3d,%al
14809  DB  8,33                                ; or            %ah,(%rcx)
14810  DB  4,61                                ; add           $0x3d,%al
14811  DB  0,0                                 ; add           %al,(%rax)
14812  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14813  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
14814  DB  63                                  ; (bad)
14815  DB  0,0                                 ; add           %al,(%rax)
14816  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
14817  DB  0,248                               ; add           %bh,%al
14818  DB  65,0,0                              ; add           %al,(%r8)
14819  DB  248                                 ; clc
14820  DB  65,0,0                              ; add           %al,(%r8)
14821  DB  248                                 ; clc
14822  DB  65,0,0                              ; add           %al,(%r8)
14823  DB  248                                 ; clc
14824  DB  65,0,0                              ; add           %al,(%r8)
14825  DB  124,66                              ; jl            45d6 <.literal16+0xa96>
14826  DB  0,0                                 ; add           %al,(%rax)
14827  DB  124,66                              ; jl            45da <.literal16+0xa9a>
14828  DB  0,0                                 ; add           %al,(%rax)
14829  DB  124,66                              ; jl            45de <.literal16+0xa9e>
14830  DB  0,0                                 ; add           %al,(%rax)
14831  DB  124,66                              ; jl            45e2 <.literal16+0xaa2>
14832  DB  0,240                               ; add           %dh,%al
14833  DB  0,0                                 ; add           %al,(%rax)
14834  DB  0,240                               ; add           %dh,%al
14835  DB  0,0                                 ; add           %al,(%rax)
14836  DB  0,240                               ; add           %dh,%al
14837  DB  0,0                                 ; add           %al,(%rax)
14838  DB  0,240                               ; add           %dh,%al
14839  DB  0,0                                 ; add           %al,(%rax)
14840  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
14841  DB  136,55                              ; mov           %dh,(%rdi)
14842  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
14843  DB  136,55                              ; mov           %dh,(%rdi)
14844  DB  0,15                                ; add           %cl,(%rdi)
14845  DB  0,0                                 ; add           %al,(%rax)
14846  DB  0,15                                ; add           %cl,(%rdi)
14847  DB  0,0                                 ; add           %al,(%rax)
14848  DB  0,15                                ; add           %cl,(%rdi)
14849  DB  0,0                                 ; add           %al,(%rax)
14850  DB  0,15                                ; add           %cl,(%rdi)
14851  DB  0,0                                 ; add           %al,(%rax)
14852  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
14853  DB  136,57                              ; mov           %bh,(%rcx)
14854  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
14855  DB  136,57                              ; mov           %bh,(%rcx)
14856  DB  240,0,0                             ; lock          add %al,(%rax)
14857  DB  0,240                               ; add           %dh,%al
14858  DB  0,0                                 ; add           %al,(%rax)
14859  DB  0,240                               ; add           %dh,%al
14860  DB  0,0                                 ; add           %al,(%rax)
14861  DB  0,240                               ; add           %dh,%al
14862  DB  0,0                                 ; add           %al,(%rax)
14863  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
14864  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
14865  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
14866  DB  0,0                                 ; add           %al,(%rax)
14867  DB  0,15                                ; add           %cl,(%rdi)
14868  DB  0,0                                 ; add           %al,(%rax)
14869  DB  0,15                                ; add           %cl,(%rdi)
14870  DB  0,0                                 ; add           %al,(%rax)
14871  DB  0,15                                ; add           %cl,(%rdi)
14872  DB  0,0                                 ; add           %al,(%rax)
14873  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
14874  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
14875  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
14876  DB  0,240                               ; add           %dh,%al
14877  DB  0,0                                 ; add           %al,(%rax)
14878  DB  0,240                               ; add           %dh,%al
14879  DB  0,0                                 ; add           %al,(%rax)
14880  DB  0,240                               ; add           %dh,%al
14881  DB  0,0                                 ; add           %al,(%rax)
14882  DB  0,240                               ; add           %dh,%al
14883  DB  0,0                                 ; add           %al,(%rax)
14884  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
14885  DB  136,55                              ; mov           %dh,(%rdi)
14886  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
14887  DB  136,55                              ; mov           %dh,(%rdi)
14888  DB  0,15                                ; add           %cl,(%rdi)
14889  DB  0,0                                 ; add           %al,(%rax)
14890  DB  0,15                                ; add           %cl,(%rdi)
14891  DB  0,0                                 ; add           %al,(%rax)
14892  DB  0,15                                ; add           %cl,(%rdi)
14893  DB  0,0                                 ; add           %al,(%rax)
14894  DB  0,15                                ; add           %cl,(%rdi)
14895  DB  0,0                                 ; add           %al,(%rax)
14896  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
14897  DB  136,57                              ; mov           %bh,(%rcx)
14898  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
14899  DB  136,57                              ; mov           %bh,(%rcx)
14900  DB  240,0,0                             ; lock          add %al,(%rax)
14901  DB  0,240                               ; add           %dh,%al
14902  DB  0,0                                 ; add           %al,(%rax)
14903  DB  0,240                               ; add           %dh,%al
14904  DB  0,0                                 ; add           %al,(%rax)
14905  DB  0,240                               ; add           %dh,%al
14906  DB  0,0                                 ; add           %al,(%rax)
14907  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
14908  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
14909  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
14910  DB  0,0                                 ; add           %al,(%rax)
14911  DB  0,15                                ; add           %cl,(%rdi)
14912  DB  0,0                                 ; add           %al,(%rax)
14913  DB  0,15                                ; add           %cl,(%rdi)
14914  DB  0,0                                 ; add           %al,(%rax)
14915  DB  0,15                                ; add           %cl,(%rdi)
14916  DB  0,0                                 ; add           %al,(%rax)
14917  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
14918  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
14919  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
14920  DB  0,0                                 ; add           %al,(%rax)
14921  DB  112,65                              ; jo            46e5 <.literal16+0xba5>
14922  DB  0,0                                 ; add           %al,(%rax)
14923  DB  112,65                              ; jo            46e9 <.literal16+0xba9>
14924  DB  0,0                                 ; add           %al,(%rax)
14925  DB  112,65                              ; jo            46ed <.literal16+0xbad>
14926  DB  0,0                                 ; add           %al,(%rax)
14927  DB  112,65                              ; jo            46f1 <.literal16+0xbb1>
14928  DB  255,0                               ; incl          (%rax)
14929  DB  0,0                                 ; add           %al,(%rax)
14930  DB  255,0                               ; incl          (%rax)
14931  DB  0,0                                 ; add           %al,(%rax)
14932  DB  255,0                               ; incl          (%rax)
14933  DB  0,0                                 ; add           %al,(%rax)
14934  DB  255,0                               ; incl          (%rax)
14935  DB  0,0                                 ; add           %al,(%rax)
14936  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14937  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14938  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
14939  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
14940  DB  255                                 ; (bad)
14941  DB  255                                 ; (bad)
14942  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 30046e0 <_sk_callback_sse41+0x3000c4f>
14943  DB  255                                 ; (bad)
14944  DB  255                                 ; (bad)
14945  DB  255,6                               ; incl          (%rsi)
14946  DB  255                                 ; (bad)
14947  DB  255                                 ; (bad)
14948  DB  255,10                              ; decl          (%rdx)
14949  DB  255                                 ; (bad)
14950  DB  255                                 ; (bad)
14951  DB  255,14                              ; decl          (%rsi)
14952  DB  255                                 ; (bad)
14953  DB  255                                 ; (bad)
14954  DB  255                                 ; (bad)
14955  DB  255,0                               ; incl          (%rax)
14956  DB  0,0                                 ; add           %al,(%rax)
14957  DB  255,0                               ; incl          (%rax)
14958  DB  0,0                                 ; add           %al,(%rax)
14959  DB  255,0                               ; incl          (%rax)
14960  DB  0,0                                 ; add           %al,(%rax)
14961  DB  255,0                               ; incl          (%rax)
14962  DB  0,0                                 ; add           %al,(%rax)
14963  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
14964  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
14965  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
14966  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
14967  DB  255                                 ; (bad)
14968  DB  255                                 ; (bad)
14969  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3004720 <_sk_callback_sse41+0x3000c8f>
14970  DB  255                                 ; (bad)
14971  DB  255                                 ; (bad)
14972  DB  255,6                               ; incl          (%rsi)
14973  DB  255                                 ; (bad)
14974  DB  255                                 ; (bad)
14975  DB  255,10                              ; decl          (%rdx)
14976  DB  255                                 ; (bad)
14977  DB  255                                 ; (bad)
14978  DB  255,14                              ; decl          (%rsi)
14979  DB  255                                 ; (bad)
14980  DB  255                                 ; (bad)
14981  DB  255,0                               ; incl          (%rax)
14982  DB  0,127,67                            ; add           %bh,0x43(%rdi)
14983  DB  0,0                                 ; add           %al,(%rax)
14984  DB  127,67                              ; jg            477b <.literal16+0xc3b>
14985  DB  0,0                                 ; add           %al,(%rax)
14986  DB  127,67                              ; jg            477f <.literal16+0xc3f>
14987  DB  0,0                                 ; add           %al,(%rax)
14988  DB  127,67                              ; jg            4783 <.literal16+0xc43>
14989  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
14990  DB  0,0                                 ; add           %al,(%rax)
14991  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
14992  DB  0,0                                 ; add           %al,(%rax)
14993  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
14994  DB  0,0                                 ; add           %al,(%rax)
14995  DB  4,0                                 ; add           $0x0,%al
14996  DB  0,0                                 ; add           %al,(%rax)
14997  DB  4,0                                 ; add           $0x0,%al
14998  DB  0,0                                 ; add           %al,(%rax)
14999  DB  4,0                                 ; add           $0x0,%al
15000  DB  0,0                                 ; add           %al,(%rax)
15001  DB  0,0                                 ; add           %al,(%rax)
15002  DB  56,0                                ; cmp           %al,(%rax)
15003  DB  0,0                                 ; add           %al,(%rax)
15004  DB  56,0                                ; cmp           %al,(%rax)
15005  DB  0,0                                 ; add           %al,(%rax)
15006  DB  56,0                                ; cmp           %al,(%rax)
15007  DB  0,0                                 ; add           %al,(%rax)
15008  DB  56,0                                ; cmp           %al,(%rax)
15009  DB  128,0,0                             ; addb          $0x0,(%rax)
15010  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
15011  DB  0,0                                 ; add           %al,(%rax)
15012  DB  0,128,0,0,0,4                       ; add           %al,0x4000000(%rax)
15013  DB  0,0                                 ; add           %al,(%rax)
15014  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
15015  DB  0,0                                 ; add           %al,(%rax)
15016  DB  4,0                                 ; add           $0x0,%al
15017  DB  0,0                                 ; add           %al,(%rax)
15018  DB  4,0                                 ; add           $0x0,%al
15019  DB  0,0                                 ; add           %al,(%rax)
15020  DB  0,0                                 ; add           %al,(%rax)
15021  DB  56,0                                ; cmp           %al,(%rax)
15022  DB  0,0                                 ; add           %al,(%rax)
15023  DB  56,0                                ; cmp           %al,(%rax)
15024  DB  0,0                                 ; add           %al,(%rax)
15025  DB  56,0                                ; cmp           %al,(%rax)
15026  DB  0,0                                 ; add           %al,(%rax)
15027  DB  56,0                                ; cmp           %al,(%rax)
15028  DB  0,0                                 ; add           %al,(%rax)
15029  DB  128,0,0                             ; addb          $0x0,(%rax)
15030  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
15031  DB  0,0                                 ; add           %al,(%rax)
15032  DB  0,128,0,0,128,56                    ; add           %al,0x38800000(%rax)
15033  DB  0,0                                 ; add           %al,(%rax)
15034  DB  128,56,0                            ; cmpb          $0x0,(%rax)
15035  DB  0,128,56,0,0,128                    ; add           %al,-0x7fffffc8(%rax)
15036  DB  56,0                                ; cmp           %al,(%rax)
15037  DB  64,254                              ; rex           (bad)
15038  DB  255,0                               ; incl          (%rax)
15039  DB  64,254                              ; rex           (bad)
15040  DB  255,0                               ; incl          (%rax)
15041  DB  64,254                              ; rex           (bad)
15042  DB  255,0                               ; incl          (%rax)
15043  DB  64,254                              ; rex           (bad)
15044  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
15045  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
15046  DB  55                                  ; (bad)
15047  DB  128,0,128                           ; addb          $0x80,(%rax)
15048  DB  55                                  ; (bad)
15049  DB  128,0,128                           ; addb          $0x80,(%rax)
15050  DB  55                                  ; (bad)
15051  DB  128,0,128                           ; addb          $0x80,(%rax)
15052  DB  55                                  ; (bad)
15053  DB  128,0,128                           ; addb          $0x80,(%rax)
15054  DB  55                                  ; (bad)
15055  DB  128,0,128                           ; addb          $0x80,(%rax)
15056  DB  55                                  ; (bad)
15057  DB  0,0                                 ; add           %al,(%rax)
15058  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15059  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
15060  DB  63                                  ; (bad)
15061  DB  0,0                                 ; add           %al,(%rax)
15062  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15063  DB  255                                 ; (bad)
15064  DB  127,71                              ; jg            484b <.literal16+0xd0b>
15065  DB  0,255                               ; add           %bh,%bh
15066  DB  127,71                              ; jg            484f <.literal16+0xd0f>
15067  DB  0,255                               ; add           %bh,%bh
15068  DB  127,71                              ; jg            4853 <.literal16+0xd13>
15069  DB  0,255                               ; add           %bh,%bh
15070  DB  127,71                              ; jg            4857 <.literal16+0xd17>
15071  DB  208                                 ; (bad)
15072  DB  179,89                              ; mov           $0x59,%bl
15073  DB  62,208                              ; ds            (bad)
15074  DB  179,89                              ; mov           $0x59,%bl
15075  DB  62,208                              ; ds            (bad)
15076  DB  179,89                              ; mov           $0x59,%bl
15077  DB  62,208                              ; ds            (bad)
15078  DB  179,89                              ; mov           $0x59,%bl
15079  DB  62,89                               ; ds            pop %rcx
15080  DB  23                                  ; (bad)
15081  DB  55                                  ; (bad)
15082  DB  63                                  ; (bad)
15083  DB  89                                  ; pop           %rcx
15084  DB  23                                  ; (bad)
15085  DB  55                                  ; (bad)
15086  DB  63                                  ; (bad)
15087  DB  89                                  ; pop           %rcx
15088  DB  23                                  ; (bad)
15089  DB  55                                  ; (bad)
15090  DB  63                                  ; (bad)
15091  DB  89                                  ; pop           %rcx
15092  DB  23                                  ; (bad)
15093  DB  55                                  ; (bad)
15094  DB  63                                  ; (bad)
15095  DB  152                                 ; cwtl
15096  DB  221,147,61,152,221,147              ; fstl          -0x6c2267c3(%rbx)
15097  DB  61,152,221,147,61                   ; cmp           $0x3d93dd98,%eax
15098  DB  152                                 ; cwtl
15099  DB  221,147,61,111,43,231               ; fstl          -0x18d490c3(%rbx)
15100  DB  187,111,43,231,187                  ; mov           $0xbbe72b6f,%ebx
15101  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
15102  DB  43,231                              ; sub           %edi,%esp
15103  DB  187,111,43,231,187                  ; mov           $0xbbe72b6f,%ebx
15104  DB  159                                 ; lahf
15105  DB  215                                 ; xlat          %ds:(%rbx)
15106  DB  202,60,159                          ; lret          $0x9f3c
15107  DB  215                                 ; xlat          %ds:(%rbx)
15108  DB  202,60,159                          ; lret          $0x9f3c
15109  DB  215                                 ; xlat          %ds:(%rbx)
15110  DB  202,60,159                          ; lret          $0x9f3c
15111  DB  215                                 ; xlat          %ds:(%rbx)
15112  DB  202,60,212                          ; lret          $0xd43c
15113  DB  100,84                              ; fs            push %rsp
15114  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
15115  DB  212                                 ; (bad)
15116  DB  100,84                              ; fs            push %rsp
15117  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
15118  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
15119  DB  240,34,62                           ; lock          and (%rsi),%bh
15120  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
15121  DB  240,34,62                           ; lock          and (%rsi),%bh
15122  DB  0,0                                 ; add           %al,(%rax)
15123  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
15124  DB  0,128,62,0,0,128                    ; add           %al,-0x7fffffc2(%rax)
15125  DB  62,0,0                              ; add           %al,%ds:(%rax)
15126  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
15127  DB  0,0                                 ; add           %al,(%rax)
15128  DB  63                                  ; (bad)
15129  DB  0,0                                 ; add           %al,(%rax)
15130  DB  0,63                                ; add           %bh,(%rdi)
15131  DB  0,0                                 ; add           %al,(%rax)
15132  DB  0,63                                ; add           %bh,(%rdi)
15133  DB  0,0                                 ; add           %al,(%rax)
15134  DB  0,63                                ; add           %bh,(%rdi)
15135  DB  0,0                                 ; add           %al,(%rax)
15136  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15137  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
15138  DB  63                                  ; (bad)
15139  DB  0,0                                 ; add           %al,(%rax)
15140  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15141  DB  0,0                                 ; add           %al,(%rax)
15142  DB  63                                  ; (bad)
15143  DB  0,0                                 ; add           %al,(%rax)
15144  DB  0,63                                ; add           %bh,(%rdi)
15145  DB  0,0                                 ; add           %al,(%rax)
15146  DB  0,63                                ; add           %bh,(%rdi)
15147  DB  0,0                                 ; add           %al,(%rax)
15148  DB  0,63                                ; add           %bh,(%rdi)
15149  DB  0,0                                 ; add           %al,(%rax)
15150  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
15151  DB  0,0                                 ; add           %al,(%rax)
15152  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
15153  DB  0,0                                 ; add           %al,(%rax)
15154  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15155  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
15156  DB  63                                  ; (bad)
15157  DB  0,0                                 ; add           %al,(%rax)
15158  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15159  DB  0,0                                 ; add           %al,(%rax)
15160  DB  63                                  ; (bad)
15161  DB  0,0                                 ; add           %al,(%rax)
15162  DB  0,63                                ; add           %bh,(%rdi)
15163  DB  0,0                                 ; add           %al,(%rax)
15164  DB  0,63                                ; add           %bh,(%rdi)
15165  DB  0,0                                 ; add           %al,(%rax)
15166  DB  0,63                                ; add           %bh,(%rdi)
15167  DB  0,0                                 ; add           %al,(%rax)
15168  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
15169  DB  0,0                                 ; add           %al,(%rax)
15170  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
15171  DB  0,0                                 ; add           %al,(%rax)
15172  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15173  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
15174  DB  63                                  ; (bad)
15175  DB  0,0                                 ; add           %al,(%rax)
15176  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15177  DB  0,0                                 ; add           %al,(%rax)
15178  DB  63                                  ; (bad)
15179  DB  0,0                                 ; add           %al,(%rax)
15180  DB  0,63                                ; add           %bh,(%rdi)
15181  DB  0,0                                 ; add           %al,(%rax)
15182  DB  0,63                                ; add           %bh,(%rdi)
15183  DB  0,0                                 ; add           %al,(%rax)
15184  DB  0,63                                ; add           %bh,(%rdi)
15185  DB  0,0                                 ; add           %al,(%rax)
15186  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
15187  DB  0,192                               ; add           %al,%al
15188  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
15189  DB  0,0                                 ; add           %al,(%rax)
15190  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15191  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
15192  DB  63                                  ; (bad)
15193  DB  0,0                                 ; add           %al,(%rax)
15194  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
15195  DB  28,199                              ; sbb           $0xc7,%al
15196  DB  62,114,28                           ; jb,pt         4962 <.literal16+0xe22>
15197  DB  199                                 ; (bad)
15198  DB  62,114,28                           ; jb,pt         4966 <.literal16+0xe26>
15199  DB  199                                 ; (bad)
15200  DB  62,114,28                           ; jb,pt         496a <.literal16+0xe2a>
15201  DB  199                                 ; (bad)
15202  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
15203  DB  170                                 ; stos          %al,%es:(%rdi)
15204  DB  170                                 ; stos          %al,%es:(%rdi)
15205  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
15206  DB  171                                 ; stos          %eax,%es:(%rdi)
15207  DB  170                                 ; stos          %al,%es:(%rdi)
15208  DB  170                                 ; stos          %al,%es:(%rdi)
15209  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
15210  DB  0,0                                 ; add           %al,(%rax)
15211  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
15212  DB  0,0                                 ; add           %al,(%rax)
15213  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
15214  DB  0,0                                 ; add           %al,(%rax)
15215  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15216  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
15217  DB  63                                  ; (bad)
15218  DB  0,0                                 ; add           %al,(%rax)
15219  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
15220  DB  85                                  ; push          %rbp
15221  DB  149                                 ; xchg          %eax,%ebp
15222  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
15223  DB  85                                  ; push          %rbp
15224  DB  85                                  ; push          %rbp
15225  DB  149                                 ; xchg          %eax,%ebp
15226  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
15227  DB  0,0                                 ; add           %al,(%rax)
15228  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15229  DB  0,192                               ; add           %al,%al
15230  DB  63                                  ; (bad)
15231  DB  0,0                                 ; add           %al,(%rax)
15232  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15233  DB  0,192                               ; add           %al,%al
15234  DB  63                                  ; (bad)
15235  DB  0,0                                 ; add           %al,(%rax)
15236  DB  0,63                                ; add           %bh,(%rdi)
15237  DB  0,0                                 ; add           %al,(%rax)
15238  DB  0,63                                ; add           %bh,(%rdi)
15239  DB  0,0                                 ; add           %al,(%rax)
15240  DB  0,63                                ; add           %bh,(%rdi)
15241  DB  0,0                                 ; add           %al,(%rax)
15242  DB  0,63                                ; add           %bh,(%rdi)
15243  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
15244  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63d7f5 <_sk_callback_sse41+0x3d639d64>
15245  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
15246  DB  0,63                                ; add           %bh,(%rdi)
15247  DB  0,0                                 ; add           %al,(%rax)
15248  DB  0,63                                ; add           %bh,(%rdi)
15249  DB  0,0                                 ; add           %al,(%rax)
15250  DB  0,63                                ; add           %bh,(%rdi)
15251  DB  0,0                                 ; add           %al,(%rax)
15252  DB  0,63                                ; add           %bh,(%rdi)
15253  DB  85                                  ; push          %rbp
15254  DB  85                                  ; push          %rbp
15255  DB  149                                 ; xchg          %eax,%ebp
15256  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
15257  DB  85                                  ; push          %rbp
15258  DB  85                                  ; push          %rbp
15259  DB  149                                 ; xchg          %eax,%ebp
15260  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
15261  DB  0,0                                 ; add           %al,(%rax)
15262  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15263  DB  0,192                               ; add           %al,%al
15264  DB  63                                  ; (bad)
15265  DB  0,0                                 ; add           %al,(%rax)
15266  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15267  DB  0,192                               ; add           %al,%al
15268  DB  63                                  ; (bad)
15269  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
15270  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63d835 <_sk_callback_sse41+0x3d639da4>
15271  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
15272  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15273  DB  0,192                               ; add           %al,%al
15274  DB  63                                  ; (bad)
15275  DB  0,0                                 ; add           %al,(%rax)
15276  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15277  DB  0,192                               ; add           %al,%al
15278  DB  63                                  ; (bad)
15279  DB  114,28                              ; jb            4a2e <.literal16+0xeee>
15280  DB  199                                 ; (bad)
15281  DB  62,114,28                           ; jb,pt         4a32 <.literal16+0xef2>
15282  DB  199                                 ; (bad)
15283  DB  62,114,28                           ; jb,pt         4a36 <.literal16+0xef6>
15284  DB  199                                 ; (bad)
15285  DB  62,114,28                           ; jb,pt         4a3a <.literal16+0xefa>
15286  DB  199                                 ; (bad)
15287  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
15288  DB  170                                 ; stos          %al,%es:(%rdi)
15289  DB  170                                 ; stos          %al,%es:(%rdi)
15290  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
15291  DB  171                                 ; stos          %eax,%es:(%rdi)
15292  DB  170                                 ; stos          %al,%es:(%rdi)
15293  DB  170                                 ; stos          %al,%es:(%rdi)
15294  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
15295  DB  0,0                                 ; add           %al,(%rax)
15296  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
15297  DB  0,192                               ; add           %al,%al
15298  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
15299  DB  0,0                                 ; add           %al,(%rax)
15300  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15301  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
15302  DB  63                                  ; (bad)
15303  DB  0,0                                 ; add           %al,(%rax)
15304  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
15305  DB  28,199                              ; sbb           $0xc7,%al
15306  DB  62,114,28                           ; jb,pt         4a72 <.literal16+0xf32>
15307  DB  199                                 ; (bad)
15308  DB  62,114,28                           ; jb,pt         4a76 <.literal16+0xf36>
15309  DB  199                                 ; (bad)
15310  DB  62,114,28                           ; jb,pt         4a7a <.literal16+0xf3a>
15311  DB  199                                 ; (bad)
15312  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
15313  DB  170                                 ; stos          %al,%es:(%rdi)
15314  DB  170                                 ; stos          %al,%es:(%rdi)
15315  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
15316  DB  171                                 ; stos          %eax,%es:(%rdi)
15317  DB  170                                 ; stos          %al,%es:(%rdi)
15318  DB  170                                 ; stos          %al,%es:(%rdi)
15319  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
15320  DB  0,0                                 ; add           %al,(%rax)
15321  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
15322  DB  0,0                                 ; add           %al,(%rax)
15323  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
15324  DB  0,0                                 ; add           %al,(%rax)
15325  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
15326  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
15327  DB  63                                  ; (bad)
15328  DB  0,0                                 ; add           %al,(%rax)
15329  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
15330  DB  85                                  ; push          %rbp
15331  DB  149                                 ; xchg          %eax,%ebp
15332  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
15333  DB  85                                  ; push          %rbp
15334  DB  85                                  ; push          %rbp
15335  DB  149                                 ; xchg          %eax,%ebp
15336  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
15337  DB  0,0                                 ; add           %al,(%rax)
15338  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15339  DB  0,192                               ; add           %al,%al
15340  DB  63                                  ; (bad)
15341  DB  0,0                                 ; add           %al,(%rax)
15342  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15343  DB  0,192                               ; add           %al,%al
15344  DB  63                                  ; (bad)
15345  DB  0,0                                 ; add           %al,(%rax)
15346  DB  0,63                                ; add           %bh,(%rdi)
15347  DB  0,0                                 ; add           %al,(%rax)
15348  DB  0,63                                ; add           %bh,(%rdi)
15349  DB  0,0                                 ; add           %al,(%rax)
15350  DB  0,63                                ; add           %bh,(%rdi)
15351  DB  0,0                                 ; add           %al,(%rax)
15352  DB  0,63                                ; add           %bh,(%rdi)
15353  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
15354  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63d905 <_sk_callback_sse41+0x3d639e74>
15355  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
15356  DB  0,63                                ; add           %bh,(%rdi)
15357  DB  0,0                                 ; add           %al,(%rax)
15358  DB  0,63                                ; add           %bh,(%rdi)
15359  DB  0,0                                 ; add           %al,(%rax)
15360  DB  0,63                                ; add           %bh,(%rdi)
15361  DB  0,0                                 ; add           %al,(%rax)
15362  DB  0,63                                ; add           %bh,(%rdi)
15363  DB  85                                  ; push          %rbp
15364  DB  85                                  ; push          %rbp
15365  DB  149                                 ; xchg          %eax,%ebp
15366  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
15367  DB  85                                  ; push          %rbp
15368  DB  85                                  ; push          %rbp
15369  DB  149                                 ; xchg          %eax,%ebp
15370  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
15371  DB  0,0                                 ; add           %al,(%rax)
15372  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15373  DB  0,192                               ; add           %al,%al
15374  DB  63                                  ; (bad)
15375  DB  0,0                                 ; add           %al,(%rax)
15376  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15377  DB  0,192                               ; add           %al,%al
15378  DB  63                                  ; (bad)
15379  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
15380  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63d945 <_sk_callback_sse41+0x3d639eb4>
15381  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
15382  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15383  DB  0,192                               ; add           %al,%al
15384  DB  63                                  ; (bad)
15385  DB  0,0                                 ; add           %al,(%rax)
15386  DB  192,63,0                            ; sarb          $0x0,(%rdi)
15387  DB  0,192                               ; add           %al,%al
15388  DB  63                                  ; (bad)
15389  DB  114,28                              ; jb            4b3e <.literal16+0xffe>
15390  DB  199                                 ; (bad)
15391  DB  62,114,28                           ; jb,pt         4b42 <_sk_callback_sse41+0x10b1>
15392  DB  199                                 ; (bad)
15393  DB  62,114,28                           ; jb,pt         4b46 <_sk_callback_sse41+0x10b5>
15394  DB  199                                 ; (bad)
15395  DB  62,114,28                           ; jb,pt         4b4a <_sk_callback_sse41+0x10b9>
15396  DB  199                                 ; (bad)
15397  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
15398  DB  170                                 ; stos          %al,%es:(%rdi)
15399  DB  170                                 ; stos          %al,%es:(%rdi)
15400  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
15401  DB  171                                 ; stos          %eax,%es:(%rdi)
15402  DB  170                                 ; stos          %al,%es:(%rdi)
15403  DB  170                                 ; stos          %al,%es:(%rdi)
15404  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
15405ALIGN 32
15406
15407PUBLIC _sk_start_pipeline_sse2
15408_sk_start_pipeline_sse2 LABEL PROC
15409  DB  65,87                               ; push          %r15
15410  DB  65,86                               ; push          %r14
15411  DB  65,85                               ; push          %r13
15412  DB  65,84                               ; push          %r12
15413  DB  86                                  ; push          %rsi
15414  DB  87                                  ; push          %rdi
15415  DB  83                                  ; push          %rbx
15416  DB  72,129,236,160,0,0,0                ; sub           $0xa0,%rsp
15417  DB  68,15,41,188,36,144,0,0,0           ; movaps        %xmm15,0x90(%rsp)
15418  DB  68,15,41,180,36,128,0,0,0           ; movaps        %xmm14,0x80(%rsp)
15419  DB  68,15,41,108,36,112                 ; movaps        %xmm13,0x70(%rsp)
15420  DB  68,15,41,100,36,96                  ; movaps        %xmm12,0x60(%rsp)
15421  DB  68,15,41,92,36,80                   ; movaps        %xmm11,0x50(%rsp)
15422  DB  68,15,41,84,36,64                   ; movaps        %xmm10,0x40(%rsp)
15423  DB  68,15,41,76,36,48                   ; movaps        %xmm9,0x30(%rsp)
15424  DB  68,15,41,68,36,32                   ; movaps        %xmm8,0x20(%rsp)
15425  DB  15,41,124,36,16                     ; movaps        %xmm7,0x10(%rsp)
15426  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
15427  DB  77,137,207                          ; mov           %r9,%r15
15428  DB  77,137,198                          ; mov           %r8,%r14
15429  DB  72,137,203                          ; mov           %rcx,%rbx
15430  DB  72,137,214                          ; mov           %rdx,%rsi
15431  DB  72,173                              ; lods          %ds:(%rsi),%rax
15432  DB  73,137,196                          ; mov           %rax,%r12
15433  DB  73,137,245                          ; mov           %rsi,%r13
15434  DB  72,141,67,4                         ; lea           0x4(%rbx),%rax
15435  DB  76,57,248                           ; cmp           %r15,%rax
15436  DB  118,5                               ; jbe           73 <_sk_start_pipeline_sse2+0x73>
15437  DB  72,137,216                          ; mov           %rbx,%rax
15438  DB  235,52                              ; jmp           a7 <_sk_start_pipeline_sse2+0xa7>
15439  DB  15,87,192                           ; xorps         %xmm0,%xmm0
15440  DB  15,87,201                           ; xorps         %xmm1,%xmm1
15441  DB  15,87,210                           ; xorps         %xmm2,%xmm2
15442  DB  15,87,219                           ; xorps         %xmm3,%xmm3
15443  DB  15,87,228                           ; xorps         %xmm4,%xmm4
15444  DB  15,87,237                           ; xorps         %xmm5,%xmm5
15445  DB  15,87,246                           ; xorps         %xmm6,%xmm6
15446  DB  15,87,255                           ; xorps         %xmm7,%xmm7
15447  DB  72,137,223                          ; mov           %rbx,%rdi
15448  DB  76,137,238                          ; mov           %r13,%rsi
15449  DB  76,137,242                          ; mov           %r14,%rdx
15450  DB  65,255,212                          ; callq         *%r12
15451  DB  72,141,67,4                         ; lea           0x4(%rbx),%rax
15452  DB  72,131,195,8                        ; add           $0x8,%rbx
15453  DB  76,57,251                           ; cmp           %r15,%rbx
15454  DB  72,137,195                          ; mov           %rax,%rbx
15455  DB  118,204                             ; jbe           73 <_sk_start_pipeline_sse2+0x73>
15456  DB  15,40,52,36                         ; movaps        (%rsp),%xmm6
15457  DB  15,40,124,36,16                     ; movaps        0x10(%rsp),%xmm7
15458  DB  68,15,40,68,36,32                   ; movaps        0x20(%rsp),%xmm8
15459  DB  68,15,40,76,36,48                   ; movaps        0x30(%rsp),%xmm9
15460  DB  68,15,40,84,36,64                   ; movaps        0x40(%rsp),%xmm10
15461  DB  68,15,40,92,36,80                   ; movaps        0x50(%rsp),%xmm11
15462  DB  68,15,40,100,36,96                  ; movaps        0x60(%rsp),%xmm12
15463  DB  68,15,40,108,36,112                 ; movaps        0x70(%rsp),%xmm13
15464  DB  68,15,40,180,36,128,0,0,0           ; movaps        0x80(%rsp),%xmm14
15465  DB  68,15,40,188,36,144,0,0,0           ; movaps        0x90(%rsp),%xmm15
15466  DB  72,129,196,160,0,0,0                ; add           $0xa0,%rsp
15467  DB  91                                  ; pop           %rbx
15468  DB  95                                  ; pop           %rdi
15469  DB  94                                  ; pop           %rsi
15470  DB  65,92                               ; pop           %r12
15471  DB  65,93                               ; pop           %r13
15472  DB  65,94                               ; pop           %r14
15473  DB  65,95                               ; pop           %r15
15474  DB  195                                 ; retq
15475
15476PUBLIC _sk_just_return_sse2
15477_sk_just_return_sse2 LABEL PROC
15478  DB  195                                 ; retq
15479
15480PUBLIC _sk_seed_shader_sse2
15481_sk_seed_shader_sse2 LABEL PROC
15482  DB  72,173                              ; lods          %ds:(%rsi),%rax
15483  DB  102,15,110,199                      ; movd          %edi,%xmm0
15484  DB  102,15,112,192,0                    ; pshufd        $0x0,%xmm0,%xmm0
15485  DB  15,91,200                           ; cvtdq2ps      %xmm0,%xmm1
15486  DB  15,40,21,161,62,0,0                 ; movaps        0x3ea1(%rip),%xmm2        # 3fb0 <_sk_callback_sse2+0xaf>
15487  DB  15,88,202                           ; addps         %xmm2,%xmm1
15488  DB  15,16,2                             ; movups        (%rdx),%xmm0
15489  DB  15,88,193                           ; addps         %xmm1,%xmm0
15490  DB  102,15,110,8                        ; movd          (%rax),%xmm1
15491  DB  102,15,112,201,0                    ; pshufd        $0x0,%xmm1,%xmm1
15492  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15493  DB  15,88,202                           ; addps         %xmm2,%xmm1
15494  DB  72,173                              ; lods          %ds:(%rsi),%rax
15495  DB  15,40,21,144,62,0,0                 ; movaps        0x3e90(%rip),%xmm2        # 3fc0 <_sk_callback_sse2+0xbf>
15496  DB  15,87,219                           ; xorps         %xmm3,%xmm3
15497  DB  15,87,228                           ; xorps         %xmm4,%xmm4
15498  DB  15,87,237                           ; xorps         %xmm5,%xmm5
15499  DB  15,87,246                           ; xorps         %xmm6,%xmm6
15500  DB  15,87,255                           ; xorps         %xmm7,%xmm7
15501  DB  255,224                             ; jmpq          *%rax
15502
15503PUBLIC _sk_dither_sse2
15504_sk_dither_sse2 LABEL PROC
15505  DB  72,173                              ; lods          %ds:(%rsi),%rax
15506  DB  102,68,15,110,199                   ; movd          %edi,%xmm8
15507  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
15508  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
15509  DB  68,15,16,10                         ; movups        (%rdx),%xmm9
15510  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
15511  DB  243,69,15,91,201                    ; cvttps2dq     %xmm9,%xmm9
15512  DB  72,139,8                            ; mov           (%rax),%rcx
15513  DB  102,68,15,110,1                     ; movd          (%rcx),%xmm8
15514  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
15515  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
15516  DB  102,68,15,111,21,85,62,0,0          ; movdqa        0x3e55(%rip),%xmm10        # 3fd0 <_sk_callback_sse2+0xcf>
15517  DB  102,69,15,111,216                   ; movdqa        %xmm8,%xmm11
15518  DB  102,69,15,219,218                   ; pand          %xmm10,%xmm11
15519  DB  102,65,15,114,243,5                 ; pslld         $0x5,%xmm11
15520  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
15521  DB  102,65,15,114,242,4                 ; pslld         $0x4,%xmm10
15522  DB  102,68,15,111,37,65,62,0,0          ; movdqa        0x3e41(%rip),%xmm12        # 3fe0 <_sk_callback_sse2+0xdf>
15523  DB  102,68,15,111,45,72,62,0,0          ; movdqa        0x3e48(%rip),%xmm13        # 3ff0 <_sk_callback_sse2+0xef>
15524  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
15525  DB  102,69,15,219,245                   ; pand          %xmm13,%xmm14
15526  DB  102,65,15,114,246,2                 ; pslld         $0x2,%xmm14
15527  DB  102,69,15,219,233                   ; pand          %xmm9,%xmm13
15528  DB  102,69,15,254,237                   ; paddd         %xmm13,%xmm13
15529  DB  102,69,15,219,196                   ; pand          %xmm12,%xmm8
15530  DB  102,65,15,114,208,1                 ; psrld         $0x1,%xmm8
15531  DB  102,69,15,219,204                   ; pand          %xmm12,%xmm9
15532  DB  102,65,15,114,209,2                 ; psrld         $0x2,%xmm9
15533  DB  102,69,15,235,234                   ; por           %xmm10,%xmm13
15534  DB  102,69,15,235,233                   ; por           %xmm9,%xmm13
15535  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
15536  DB  102,69,15,235,245                   ; por           %xmm13,%xmm14
15537  DB  102,69,15,235,240                   ; por           %xmm8,%xmm14
15538  DB  69,15,91,198                        ; cvtdq2ps      %xmm14,%xmm8
15539  DB  68,15,89,5,3,62,0,0                 ; mulps         0x3e03(%rip),%xmm8        # 4000 <_sk_callback_sse2+0xff>
15540  DB  68,15,88,5,11,62,0,0                ; addps         0x3e0b(%rip),%xmm8        # 4010 <_sk_callback_sse2+0x10f>
15541  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
15542  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
15543  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15544  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
15545  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
15546  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
15547  DB  72,173                              ; lods          %ds:(%rsi),%rax
15548  DB  255,224                             ; jmpq          *%rax
15549
15550PUBLIC _sk_constant_color_sse2
15551_sk_constant_color_sse2 LABEL PROC
15552  DB  72,173                              ; lods          %ds:(%rsi),%rax
15553  DB  243,15,16,0                         ; movss         (%rax),%xmm0
15554  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
15555  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
15556  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
15557  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
15558  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
15559  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
15560  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
15561  DB  72,173                              ; lods          %ds:(%rsi),%rax
15562  DB  255,224                             ; jmpq          *%rax
15563
15564PUBLIC _sk_clear_sse2
15565_sk_clear_sse2 LABEL PROC
15566  DB  72,173                              ; lods          %ds:(%rsi),%rax
15567  DB  15,87,192                           ; xorps         %xmm0,%xmm0
15568  DB  15,87,201                           ; xorps         %xmm1,%xmm1
15569  DB  15,87,210                           ; xorps         %xmm2,%xmm2
15570  DB  15,87,219                           ; xorps         %xmm3,%xmm3
15571  DB  255,224                             ; jmpq          *%rax
15572
15573PUBLIC _sk_srcatop_sse2
15574_sk_srcatop_sse2 LABEL PROC
15575  DB  15,89,199                           ; mulps         %xmm7,%xmm0
15576  DB  68,15,40,5,184,61,0,0               ; movaps        0x3db8(%rip),%xmm8        # 4020 <_sk_callback_sse2+0x11f>
15577  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
15578  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15579  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
15580  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
15581  DB  15,89,207                           ; mulps         %xmm7,%xmm1
15582  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15583  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15584  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
15585  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15586  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15587  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
15588  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
15589  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15590  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15591  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
15592  DB  72,173                              ; lods          %ds:(%rsi),%rax
15593  DB  255,224                             ; jmpq          *%rax
15594
15595PUBLIC _sk_dstatop_sse2
15596_sk_dstatop_sse2 LABEL PROC
15597  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
15598  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
15599  DB  68,15,40,13,123,61,0,0              ; movaps        0x3d7b(%rip),%xmm9        # 4030 <_sk_callback_sse2+0x12f>
15600  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
15601  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
15602  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
15603  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
15604  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
15605  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
15606  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
15607  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
15608  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
15609  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
15610  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
15611  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
15612  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15613  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
15614  DB  72,173                              ; lods          %ds:(%rsi),%rax
15615  DB  255,224                             ; jmpq          *%rax
15616
15617PUBLIC _sk_srcin_sse2
15618_sk_srcin_sse2 LABEL PROC
15619  DB  15,89,199                           ; mulps         %xmm7,%xmm0
15620  DB  15,89,207                           ; mulps         %xmm7,%xmm1
15621  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15622  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15623  DB  72,173                              ; lods          %ds:(%rsi),%rax
15624  DB  255,224                             ; jmpq          *%rax
15625
15626PUBLIC _sk_dstin_sse2
15627_sk_dstin_sse2 LABEL PROC
15628  DB  15,40,195                           ; movaps        %xmm3,%xmm0
15629  DB  15,89,196                           ; mulps         %xmm4,%xmm0
15630  DB  15,40,203                           ; movaps        %xmm3,%xmm1
15631  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15632  DB  15,40,211                           ; movaps        %xmm3,%xmm2
15633  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15634  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15635  DB  72,173                              ; lods          %ds:(%rsi),%rax
15636  DB  255,224                             ; jmpq          *%rax
15637
15638PUBLIC _sk_srcout_sse2
15639_sk_srcout_sse2 LABEL PROC
15640  DB  68,15,40,5,31,61,0,0                ; movaps        0x3d1f(%rip),%xmm8        # 4040 <_sk_callback_sse2+0x13f>
15641  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
15642  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15643  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15644  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15645  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
15646  DB  72,173                              ; lods          %ds:(%rsi),%rax
15647  DB  255,224                             ; jmpq          *%rax
15648
15649PUBLIC _sk_dstout_sse2
15650_sk_dstout_sse2 LABEL PROC
15651  DB  68,15,40,5,15,61,0,0                ; movaps        0x3d0f(%rip),%xmm8        # 4050 <_sk_callback_sse2+0x14f>
15652  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
15653  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
15654  DB  15,89,196                           ; mulps         %xmm4,%xmm0
15655  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15656  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15657  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15658  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15659  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15660  DB  72,173                              ; lods          %ds:(%rsi),%rax
15661  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
15662  DB  255,224                             ; jmpq          *%rax
15663
15664PUBLIC _sk_srcover_sse2
15665_sk_srcover_sse2 LABEL PROC
15666  DB  68,15,40,5,242,60,0,0               ; movaps        0x3cf2(%rip),%xmm8        # 4060 <_sk_callback_sse2+0x15f>
15667  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
15668  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15669  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
15670  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
15671  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15672  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15673  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
15674  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15675  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
15676  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
15677  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15678  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
15679  DB  72,173                              ; lods          %ds:(%rsi),%rax
15680  DB  255,224                             ; jmpq          *%rax
15681
15682PUBLIC _sk_dstover_sse2
15683_sk_dstover_sse2 LABEL PROC
15684  DB  68,15,40,5,198,60,0,0               ; movaps        0x3cc6(%rip),%xmm8        # 4070 <_sk_callback_sse2+0x16f>
15685  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
15686  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15687  DB  15,88,196                           ; addps         %xmm4,%xmm0
15688  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15689  DB  15,88,205                           ; addps         %xmm5,%xmm1
15690  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15691  DB  15,88,214                           ; addps         %xmm6,%xmm2
15692  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
15693  DB  15,88,223                           ; addps         %xmm7,%xmm3
15694  DB  72,173                              ; lods          %ds:(%rsi),%rax
15695  DB  255,224                             ; jmpq          *%rax
15696
15697PUBLIC _sk_modulate_sse2
15698_sk_modulate_sse2 LABEL PROC
15699  DB  15,89,196                           ; mulps         %xmm4,%xmm0
15700  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15701  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15702  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15703  DB  72,173                              ; lods          %ds:(%rsi),%rax
15704  DB  255,224                             ; jmpq          *%rax
15705
15706PUBLIC _sk_multiply_sse2
15707_sk_multiply_sse2 LABEL PROC
15708  DB  68,15,40,5,154,60,0,0               ; movaps        0x3c9a(%rip),%xmm8        # 4080 <_sk_callback_sse2+0x17f>
15709  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15710  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
15711  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
15712  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
15713  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
15714  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
15715  DB  68,15,89,220                        ; mulps         %xmm4,%xmm11
15716  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
15717  DB  15,89,196                           ; mulps         %xmm4,%xmm0
15718  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
15719  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
15720  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
15721  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
15722  DB  68,15,89,221                        ; mulps         %xmm5,%xmm11
15723  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
15724  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15725  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
15726  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
15727  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
15728  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
15729  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
15730  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
15731  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15732  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
15733  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
15734  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15735  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
15736  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15737  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
15738  DB  72,173                              ; lods          %ds:(%rsi),%rax
15739  DB  255,224                             ; jmpq          *%rax
15740
15741PUBLIC _sk_plus__sse2
15742_sk_plus__sse2 LABEL PROC
15743  DB  15,88,196                           ; addps         %xmm4,%xmm0
15744  DB  15,88,205                           ; addps         %xmm5,%xmm1
15745  DB  15,88,214                           ; addps         %xmm6,%xmm2
15746  DB  15,88,223                           ; addps         %xmm7,%xmm3
15747  DB  72,173                              ; lods          %ds:(%rsi),%rax
15748  DB  255,224                             ; jmpq          *%rax
15749
15750PUBLIC _sk_screen_sse2
15751_sk_screen_sse2 LABEL PROC
15752  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15753  DB  68,15,88,196                        ; addps         %xmm4,%xmm8
15754  DB  15,89,196                           ; mulps         %xmm4,%xmm0
15755  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
15756  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
15757  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
15758  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15759  DB  68,15,92,201                        ; subps         %xmm1,%xmm9
15760  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
15761  DB  68,15,88,214                        ; addps         %xmm6,%xmm10
15762  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15763  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
15764  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
15765  DB  68,15,88,223                        ; addps         %xmm7,%xmm11
15766  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15767  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
15768  DB  72,173                              ; lods          %ds:(%rsi),%rax
15769  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
15770  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
15771  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
15772  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
15773  DB  255,224                             ; jmpq          *%rax
15774
15775PUBLIC _sk_xor__sse2
15776_sk_xor__sse2 LABEL PROC
15777  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
15778  DB  15,40,29,203,59,0,0                 ; movaps        0x3bcb(%rip),%xmm3        # 4090 <_sk_callback_sse2+0x18f>
15779  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15780  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
15781  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
15782  DB  65,15,92,216                        ; subps         %xmm8,%xmm3
15783  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
15784  DB  68,15,89,212                        ; mulps         %xmm4,%xmm10
15785  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
15786  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
15787  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
15788  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
15789  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
15790  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
15791  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
15792  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
15793  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
15794  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15795  DB  15,89,223                           ; mulps         %xmm7,%xmm3
15796  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
15797  DB  72,173                              ; lods          %ds:(%rsi),%rax
15798  DB  255,224                             ; jmpq          *%rax
15799
15800PUBLIC _sk_darken_sse2
15801_sk_darken_sse2 LABEL PROC
15802  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
15803  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15804  DB  15,88,196                           ; addps         %xmm4,%xmm0
15805  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
15806  DB  15,40,203                           ; movaps        %xmm3,%xmm1
15807  DB  15,89,204                           ; mulps         %xmm4,%xmm1
15808  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
15809  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
15810  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15811  DB  15,88,205                           ; addps         %xmm5,%xmm1
15812  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15813  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15814  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15815  DB  69,15,95,193                        ; maxps         %xmm9,%xmm8
15816  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
15817  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
15818  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
15819  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15820  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15821  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
15822  DB  65,15,95,209                        ; maxps         %xmm9,%xmm2
15823  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
15824  DB  15,40,21,54,59,0,0                  ; movaps        0x3b36(%rip),%xmm2        # 40a0 <_sk_callback_sse2+0x19f>
15825  DB  15,92,211                           ; subps         %xmm3,%xmm2
15826  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15827  DB  15,88,218                           ; addps         %xmm2,%xmm3
15828  DB  72,173                              ; lods          %ds:(%rsi),%rax
15829  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15830  DB  255,224                             ; jmpq          *%rax
15831
15832PUBLIC _sk_lighten_sse2
15833_sk_lighten_sse2 LABEL PROC
15834  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
15835  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15836  DB  15,88,196                           ; addps         %xmm4,%xmm0
15837  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
15838  DB  15,40,203                           ; movaps        %xmm3,%xmm1
15839  DB  15,89,204                           ; mulps         %xmm4,%xmm1
15840  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
15841  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
15842  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15843  DB  15,88,205                           ; addps         %xmm5,%xmm1
15844  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15845  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15846  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15847  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
15848  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
15849  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
15850  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
15851  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15852  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15853  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
15854  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
15855  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
15856  DB  15,40,21,219,58,0,0                 ; movaps        0x3adb(%rip),%xmm2        # 40b0 <_sk_callback_sse2+0x1af>
15857  DB  15,92,211                           ; subps         %xmm3,%xmm2
15858  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15859  DB  15,88,218                           ; addps         %xmm2,%xmm3
15860  DB  72,173                              ; lods          %ds:(%rsi),%rax
15861  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15862  DB  255,224                             ; jmpq          *%rax
15863
15864PUBLIC _sk_difference_sse2
15865_sk_difference_sse2 LABEL PROC
15866  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
15867  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15868  DB  15,88,196                           ; addps         %xmm4,%xmm0
15869  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
15870  DB  15,40,203                           ; movaps        %xmm3,%xmm1
15871  DB  15,89,204                           ; mulps         %xmm4,%xmm1
15872  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
15873  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
15874  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
15875  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15876  DB  15,88,205                           ; addps         %xmm5,%xmm1
15877  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
15878  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15879  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
15880  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
15881  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
15882  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
15883  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
15884  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
15885  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15886  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
15887  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
15888  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
15889  DB  15,88,210                           ; addps         %xmm2,%xmm2
15890  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
15891  DB  15,40,21,117,58,0,0                 ; movaps        0x3a75(%rip),%xmm2        # 40c0 <_sk_callback_sse2+0x1bf>
15892  DB  15,92,211                           ; subps         %xmm3,%xmm2
15893  DB  15,89,215                           ; mulps         %xmm7,%xmm2
15894  DB  15,88,218                           ; addps         %xmm2,%xmm3
15895  DB  72,173                              ; lods          %ds:(%rsi),%rax
15896  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15897  DB  255,224                             ; jmpq          *%rax
15898
15899PUBLIC _sk_exclusion_sse2
15900_sk_exclusion_sse2 LABEL PROC
15901  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15902  DB  15,88,196                           ; addps         %xmm4,%xmm0
15903  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
15904  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
15905  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
15906  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
15907  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
15908  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15909  DB  15,88,201                           ; addps         %xmm1,%xmm1
15910  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
15911  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
15912  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
15913  DB  15,89,214                           ; mulps         %xmm6,%xmm2
15914  DB  15,88,210                           ; addps         %xmm2,%xmm2
15915  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
15916  DB  15,40,13,54,58,0,0                  ; movaps        0x3a36(%rip),%xmm1        # 40d0 <_sk_callback_sse2+0x1cf>
15917  DB  15,92,203                           ; subps         %xmm3,%xmm1
15918  DB  15,89,207                           ; mulps         %xmm7,%xmm1
15919  DB  15,88,217                           ; addps         %xmm1,%xmm3
15920  DB  72,173                              ; lods          %ds:(%rsi),%rax
15921  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15922  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
15923  DB  255,224                             ; jmpq          *%rax
15924
15925PUBLIC _sk_colorburn_sse2
15926_sk_colorburn_sse2 LABEL PROC
15927  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15928  DB  68,15,40,21,37,58,0,0               ; movaps        0x3a25(%rip),%xmm10        # 40e0 <_sk_callback_sse2+0x1df>
15929  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
15930  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
15931  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
15932  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
15933  DB  15,40,199                           ; movaps        %xmm7,%xmm0
15934  DB  15,92,196                           ; subps         %xmm4,%xmm0
15935  DB  15,89,195                           ; mulps         %xmm3,%xmm0
15936  DB  65,15,94,192                        ; divps         %xmm8,%xmm0
15937  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
15938  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
15939  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
15940  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
15941  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
15942  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
15943  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
15944  DB  15,88,196                           ; addps         %xmm4,%xmm0
15945  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
15946  DB  69,15,40,224                        ; movaps        %xmm8,%xmm12
15947  DB  69,15,194,227,0                     ; cmpeqps       %xmm11,%xmm12
15948  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
15949  DB  69,15,84,196                        ; andps         %xmm12,%xmm8
15950  DB  69,15,85,229                        ; andnps        %xmm13,%xmm12
15951  DB  69,15,40,234                        ; movaps        %xmm10,%xmm13
15952  DB  68,15,89,236                        ; mulps         %xmm4,%xmm13
15953  DB  69,15,86,224                        ; orps          %xmm8,%xmm12
15954  DB  68,15,40,196                        ; movaps        %xmm4,%xmm8
15955  DB  68,15,194,199,0                     ; cmpeqps       %xmm7,%xmm8
15956  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
15957  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
15958  DB  69,15,85,196                        ; andnps        %xmm12,%xmm8
15959  DB  65,15,86,192                        ; orps          %xmm8,%xmm0
15960  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
15961  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
15962  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
15963  DB  68,15,92,229                        ; subps         %xmm5,%xmm12
15964  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
15965  DB  68,15,94,225                        ; divps         %xmm1,%xmm12
15966  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
15967  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
15968  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
15969  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
15970  DB  68,15,40,233                        ; movaps        %xmm1,%xmm13
15971  DB  69,15,194,235,0                     ; cmpeqps       %xmm11,%xmm13
15972  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
15973  DB  69,15,88,224                        ; addps         %xmm8,%xmm12
15974  DB  65,15,84,205                        ; andps         %xmm13,%xmm1
15975  DB  69,15,85,236                        ; andnps        %xmm12,%xmm13
15976  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
15977  DB  68,15,86,233                        ; orps          %xmm1,%xmm13
15978  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
15979  DB  15,89,205                           ; mulps         %xmm5,%xmm1
15980  DB  68,15,88,233                        ; addps         %xmm1,%xmm13
15981  DB  15,40,205                           ; movaps        %xmm5,%xmm1
15982  DB  15,194,207,0                        ; cmpeqps       %xmm7,%xmm1
15983  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
15984  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
15985  DB  68,15,86,193                        ; orps          %xmm1,%xmm8
15986  DB  15,40,207                           ; movaps        %xmm7,%xmm1
15987  DB  15,92,206                           ; subps         %xmm6,%xmm1
15988  DB  15,89,203                           ; mulps         %xmm3,%xmm1
15989  DB  15,94,202                           ; divps         %xmm2,%xmm1
15990  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
15991  DB  68,15,93,225                        ; minps         %xmm1,%xmm12
15992  DB  15,40,207                           ; movaps        %xmm7,%xmm1
15993  DB  65,15,92,204                        ; subps         %xmm12,%xmm1
15994  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
15995  DB  68,15,194,218,0                     ; cmpeqps       %xmm2,%xmm11
15996  DB  15,89,203                           ; mulps         %xmm3,%xmm1
15997  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
15998  DB  65,15,84,211                        ; andps         %xmm11,%xmm2
15999  DB  68,15,85,217                        ; andnps        %xmm1,%xmm11
16000  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
16001  DB  68,15,86,218                        ; orps          %xmm2,%xmm11
16002  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
16003  DB  15,89,206                           ; mulps         %xmm6,%xmm1
16004  DB  68,15,88,217                        ; addps         %xmm1,%xmm11
16005  DB  15,40,206                           ; movaps        %xmm6,%xmm1
16006  DB  15,194,207,0                        ; cmpeqps       %xmm7,%xmm1
16007  DB  68,15,84,201                        ; andps         %xmm1,%xmm9
16008  DB  65,15,85,203                        ; andnps        %xmm11,%xmm1
16009  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
16010  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
16011  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
16012  DB  72,173                              ; lods          %ds:(%rsi),%rax
16013  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
16014  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
16015  DB  255,224                             ; jmpq          *%rax
16016
16017PUBLIC _sk_colordodge_sse2
16018_sk_colordodge_sse2 LABEL PROC
16019  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
16020  DB  68,15,40,21,219,56,0,0              ; movaps        0x38db(%rip),%xmm10        # 40f0 <_sk_callback_sse2+0x1ef>
16021  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
16022  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
16023  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
16024  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
16025  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
16026  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
16027  DB  15,40,195                           ; movaps        %xmm3,%xmm0
16028  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
16029  DB  68,15,94,192                        ; divps         %xmm0,%xmm8
16030  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
16031  DB  15,40,199                           ; movaps        %xmm7,%xmm0
16032  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
16033  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
16034  DB  68,15,194,243,0                     ; cmpeqps       %xmm3,%xmm14
16035  DB  15,89,195                           ; mulps         %xmm3,%xmm0
16036  DB  65,15,88,196                        ; addps         %xmm12,%xmm0
16037  DB  69,15,84,206                        ; andps         %xmm14,%xmm9
16038  DB  68,15,85,240                        ; andnps        %xmm0,%xmm14
16039  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16040  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
16041  DB  15,88,196                           ; addps         %xmm4,%xmm0
16042  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
16043  DB  69,15,86,241                        ; orps          %xmm9,%xmm14
16044  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
16045  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
16046  DB  69,15,88,241                        ; addps         %xmm9,%xmm14
16047  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
16048  DB  69,15,194,200,0                     ; cmpeqps       %xmm8,%xmm9
16049  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
16050  DB  69,15,85,206                        ; andnps        %xmm14,%xmm9
16051  DB  65,15,86,193                        ; orps          %xmm9,%xmm0
16052  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
16053  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
16054  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
16055  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
16056  DB  69,15,94,204                        ; divps         %xmm12,%xmm9
16057  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
16058  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
16059  DB  69,15,93,233                        ; minps         %xmm9,%xmm13
16060  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
16061  DB  68,15,194,243,0                     ; cmpeqps       %xmm3,%xmm14
16062  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
16063  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
16064  DB  65,15,84,206                        ; andps         %xmm14,%xmm1
16065  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
16066  DB  69,15,40,204                        ; movaps        %xmm12,%xmm9
16067  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
16068  DB  68,15,86,241                        ; orps          %xmm1,%xmm14
16069  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
16070  DB  15,89,205                           ; mulps         %xmm5,%xmm1
16071  DB  68,15,88,241                        ; addps         %xmm1,%xmm14
16072  DB  15,40,205                           ; movaps        %xmm5,%xmm1
16073  DB  65,15,194,200,0                     ; cmpeqps       %xmm8,%xmm1
16074  DB  68,15,84,201                        ; andps         %xmm1,%xmm9
16075  DB  65,15,85,206                        ; andnps        %xmm14,%xmm1
16076  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
16077  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
16078  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
16079  DB  15,40,203                           ; movaps        %xmm3,%xmm1
16080  DB  15,92,202                           ; subps         %xmm2,%xmm1
16081  DB  68,15,94,225                        ; divps         %xmm1,%xmm12
16082  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
16083  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
16084  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
16085  DB  15,40,202                           ; movaps        %xmm2,%xmm1
16086  DB  15,194,203,0                        ; cmpeqps       %xmm3,%xmm1
16087  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
16088  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
16089  DB  15,84,209                           ; andps         %xmm1,%xmm2
16090  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
16091  DB  15,86,202                           ; orps          %xmm2,%xmm1
16092  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
16093  DB  15,89,214                           ; mulps         %xmm6,%xmm2
16094  DB  15,88,202                           ; addps         %xmm2,%xmm1
16095  DB  68,15,194,198,0                     ; cmpeqps       %xmm6,%xmm8
16096  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
16097  DB  69,15,84,216                        ; andps         %xmm8,%xmm11
16098  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
16099  DB  69,15,86,195                        ; orps          %xmm11,%xmm8
16100  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
16101  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
16102  DB  72,173                              ; lods          %ds:(%rsi),%rax
16103  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
16104  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
16105  DB  255,224                             ; jmpq          *%rax
16106
16107PUBLIC _sk_hardlight_sse2
16108_sk_hardlight_sse2 LABEL PROC
16109  DB  72,131,236,24                       ; sub           $0x18,%rsp
16110  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
16111  DB  15,40,245                           ; movaps        %xmm5,%xmm6
16112  DB  15,40,236                           ; movaps        %xmm4,%xmm5
16113  DB  68,15,40,29,141,55,0,0              ; movaps        0x378d(%rip),%xmm11        # 4100 <_sk_callback_sse2+0x1ff>
16114  DB  69,15,40,211                        ; movaps        %xmm11,%xmm10
16115  DB  68,15,92,215                        ; subps         %xmm7,%xmm10
16116  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
16117  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
16118  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
16119  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
16120  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
16121  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
16122  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
16123  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
16124  DB  15,40,227                           ; movaps        %xmm3,%xmm4
16125  DB  15,89,231                           ; mulps         %xmm7,%xmm4
16126  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
16127  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
16128  DB  68,15,40,255                        ; movaps        %xmm7,%xmm15
16129  DB  68,15,92,253                        ; subps         %xmm5,%xmm15
16130  DB  69,15,89,248                        ; mulps         %xmm8,%xmm15
16131  DB  69,15,88,255                        ; addps         %xmm15,%xmm15
16132  DB  68,15,40,228                        ; movaps        %xmm4,%xmm12
16133  DB  69,15,92,231                        ; subps         %xmm15,%xmm12
16134  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16135  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
16136  DB  68,15,194,195,2                     ; cmpleps       %xmm3,%xmm8
16137  DB  15,89,197                           ; mulps         %xmm5,%xmm0
16138  DB  15,88,192                           ; addps         %xmm0,%xmm0
16139  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
16140  DB  69,15,85,196                        ; andnps        %xmm12,%xmm8
16141  DB  68,15,86,192                        ; orps          %xmm0,%xmm8
16142  DB  69,15,40,251                        ; movaps        %xmm11,%xmm15
16143  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
16144  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
16145  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
16146  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
16147  DB  15,89,193                           ; mulps         %xmm1,%xmm0
16148  DB  68,15,89,254                        ; mulps         %xmm6,%xmm15
16149  DB  68,15,88,248                        ; addps         %xmm0,%xmm15
16150  DB  15,40,195                           ; movaps        %xmm3,%xmm0
16151  DB  15,92,193                           ; subps         %xmm1,%xmm0
16152  DB  68,15,92,238                        ; subps         %xmm6,%xmm13
16153  DB  68,15,89,232                        ; mulps         %xmm0,%xmm13
16154  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
16155  DB  15,40,196                           ; movaps        %xmm4,%xmm0
16156  DB  65,15,92,197                        ; subps         %xmm13,%xmm0
16157  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
16158  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
16159  DB  68,15,194,203,2                     ; cmpleps       %xmm3,%xmm9
16160  DB  15,89,206                           ; mulps         %xmm6,%xmm1
16161  DB  15,88,201                           ; addps         %xmm1,%xmm1
16162  DB  65,15,84,201                        ; andps         %xmm9,%xmm1
16163  DB  68,15,85,200                        ; andnps        %xmm0,%xmm9
16164  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
16165  DB  69,15,88,207                        ; addps         %xmm15,%xmm9
16166  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
16167  DB  68,15,40,44,36                      ; movaps        (%rsp),%xmm13
16168  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
16169  DB  69,15,88,226                        ; addps         %xmm10,%xmm12
16170  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
16171  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
16172  DB  68,15,194,211,2                     ; cmpleps       %xmm3,%xmm10
16173  DB  15,40,195                           ; movaps        %xmm3,%xmm0
16174  DB  15,92,194                           ; subps         %xmm2,%xmm0
16175  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
16176  DB  15,88,210                           ; addps         %xmm2,%xmm2
16177  DB  69,15,92,245                        ; subps         %xmm13,%xmm14
16178  DB  68,15,89,240                        ; mulps         %xmm0,%xmm14
16179  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
16180  DB  65,15,92,230                        ; subps         %xmm14,%xmm4
16181  DB  65,15,84,210                        ; andps         %xmm10,%xmm2
16182  DB  68,15,85,212                        ; andnps        %xmm4,%xmm10
16183  DB  68,15,86,210                        ; orps          %xmm2,%xmm10
16184  DB  69,15,88,212                        ; addps         %xmm12,%xmm10
16185  DB  65,15,88,219                        ; addps         %xmm11,%xmm3
16186  DB  72,173                              ; lods          %ds:(%rsi),%rax
16187  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16188  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
16189  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
16190  DB  15,40,229                           ; movaps        %xmm5,%xmm4
16191  DB  15,40,238                           ; movaps        %xmm6,%xmm5
16192  DB  65,15,40,245                        ; movaps        %xmm13,%xmm6
16193  DB  72,131,196,24                       ; add           $0x18,%rsp
16194  DB  255,224                             ; jmpq          *%rax
16195
16196PUBLIC _sk_overlay_sse2
16197_sk_overlay_sse2 LABEL PROC
16198  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
16199  DB  68,15,40,232                        ; movaps        %xmm0,%xmm13
16200  DB  68,15,40,13,88,54,0,0               ; movaps        0x3658(%rip),%xmm9        # 4110 <_sk_callback_sse2+0x20f>
16201  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
16202  DB  68,15,92,215                        ; subps         %xmm7,%xmm10
16203  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
16204  DB  69,15,89,221                        ; mulps         %xmm13,%xmm11
16205  DB  68,15,92,203                        ; subps         %xmm3,%xmm9
16206  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
16207  DB  15,89,196                           ; mulps         %xmm4,%xmm0
16208  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
16209  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
16210  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
16211  DB  68,15,89,236                        ; mulps         %xmm4,%xmm13
16212  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
16213  DB  68,15,92,244                        ; subps         %xmm4,%xmm14
16214  DB  15,40,204                           ; movaps        %xmm4,%xmm1
16215  DB  15,88,201                           ; addps         %xmm1,%xmm1
16216  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
16217  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
16218  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
16219  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
16220  DB  69,15,89,244                        ; mulps         %xmm12,%xmm14
16221  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
16222  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
16223  DB  69,15,92,230                        ; subps         %xmm14,%xmm12
16224  DB  68,15,84,233                        ; andps         %xmm1,%xmm13
16225  DB  65,15,85,204                        ; andnps        %xmm12,%xmm1
16226  DB  65,15,86,205                        ; orps          %xmm13,%xmm1
16227  DB  15,88,193                           ; addps         %xmm1,%xmm0
16228  DB  69,15,40,226                        ; movaps        %xmm10,%xmm12
16229  DB  69,15,89,224                        ; mulps         %xmm8,%xmm12
16230  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
16231  DB  15,89,205                           ; mulps         %xmm5,%xmm1
16232  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
16233  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
16234  DB  69,15,92,224                        ; subps         %xmm8,%xmm12
16235  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
16236  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
16237  DB  68,15,92,237                        ; subps         %xmm5,%xmm13
16238  DB  68,15,40,245                        ; movaps        %xmm5,%xmm14
16239  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
16240  DB  68,15,194,247,2                     ; cmpleps       %xmm7,%xmm14
16241  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
16242  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
16243  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
16244  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
16245  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
16246  DB  69,15,84,198                        ; andps         %xmm14,%xmm8
16247  DB  69,15,85,244                        ; andnps        %xmm12,%xmm14
16248  DB  69,15,86,240                        ; orps          %xmm8,%xmm14
16249  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
16250  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
16251  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
16252  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
16253  DB  69,15,88,194                        ; addps         %xmm10,%xmm8
16254  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
16255  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
16256  DB  15,89,214                           ; mulps         %xmm6,%xmm2
16257  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
16258  DB  68,15,92,230                        ; subps         %xmm6,%xmm12
16259  DB  68,15,40,238                        ; movaps        %xmm6,%xmm13
16260  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
16261  DB  68,15,194,239,2                     ; cmpleps       %xmm7,%xmm13
16262  DB  15,88,210                           ; addps         %xmm2,%xmm2
16263  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
16264  DB  69,15,88,228                        ; addps         %xmm12,%xmm12
16265  DB  69,15,92,220                        ; subps         %xmm12,%xmm11
16266  DB  65,15,84,213                        ; andps         %xmm13,%xmm2
16267  DB  69,15,85,235                        ; andnps        %xmm11,%xmm13
16268  DB  68,15,86,234                        ; orps          %xmm2,%xmm13
16269  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
16270  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
16271  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
16272  DB  72,173                              ; lods          %ds:(%rsi),%rax
16273  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
16274  DB  255,224                             ; jmpq          *%rax
16275
16276PUBLIC _sk_softlight_sse2
16277_sk_softlight_sse2 LABEL PROC
16278  DB  72,131,236,40                       ; sub           $0x28,%rsp
16279  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
16280  DB  15,40,245                           ; movaps        %xmm5,%xmm6
16281  DB  15,40,236                           ; movaps        %xmm4,%xmm5
16282  DB  15,41,84,36,16                      ; movaps        %xmm2,0x10(%rsp)
16283  DB  15,40,209                           ; movaps        %xmm1,%xmm2
16284  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16285  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
16286  DB  68,15,194,231,1                     ; cmpltps       %xmm7,%xmm12
16287  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
16288  DB  68,15,94,215                        ; divps         %xmm7,%xmm10
16289  DB  69,15,84,212                        ; andps         %xmm12,%xmm10
16290  DB  68,15,40,13,18,53,0,0               ; movaps        0x3512(%rip),%xmm9        # 4120 <_sk_callback_sse2+0x21f>
16291  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
16292  DB  69,15,92,250                        ; subps         %xmm10,%xmm15
16293  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
16294  DB  69,15,40,234                        ; movaps        %xmm10,%xmm13
16295  DB  65,15,82,194                        ; rsqrtps       %xmm10,%xmm0
16296  DB  15,83,200                           ; rcpps         %xmm0,%xmm1
16297  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
16298  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
16299  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
16300  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
16301  DB  15,89,192                           ; mulps         %xmm0,%xmm0
16302  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
16303  DB  68,15,40,53,236,52,0,0              ; movaps        0x34ec(%rip),%xmm14        # 4130 <_sk_callback_sse2+0x22f>
16304  DB  69,15,88,222                        ; addps         %xmm14,%xmm11
16305  DB  68,15,89,216                        ; mulps         %xmm0,%xmm11
16306  DB  68,15,40,21,236,52,0,0              ; movaps        0x34ec(%rip),%xmm10        # 4140 <_sk_callback_sse2+0x23f>
16307  DB  69,15,89,234                        ; mulps         %xmm10,%xmm13
16308  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
16309  DB  15,88,228                           ; addps         %xmm4,%xmm4
16310  DB  15,88,228                           ; addps         %xmm4,%xmm4
16311  DB  15,194,231,2                        ; cmpleps       %xmm7,%xmm4
16312  DB  68,15,84,236                        ; andps         %xmm4,%xmm13
16313  DB  15,85,225                           ; andnps        %xmm1,%xmm4
16314  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16315  DB  15,88,192                           ; addps         %xmm0,%xmm0
16316  DB  65,15,86,229                        ; orps          %xmm13,%xmm4
16317  DB  15,40,200                           ; movaps        %xmm0,%xmm1
16318  DB  15,92,203                           ; subps         %xmm3,%xmm1
16319  DB  68,15,89,249                        ; mulps         %xmm1,%xmm15
16320  DB  15,89,207                           ; mulps         %xmm7,%xmm1
16321  DB  15,89,225                           ; mulps         %xmm1,%xmm4
16322  DB  15,40,203                           ; movaps        %xmm3,%xmm1
16323  DB  15,89,205                           ; mulps         %xmm5,%xmm1
16324  DB  15,88,225                           ; addps         %xmm1,%xmm4
16325  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
16326  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
16327  DB  65,15,40,203                        ; movaps        %xmm11,%xmm1
16328  DB  15,89,205                           ; mulps         %xmm5,%xmm1
16329  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
16330  DB  68,15,92,239                        ; subps         %xmm7,%xmm13
16331  DB  69,15,89,197                        ; mulps         %xmm13,%xmm8
16332  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
16333  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
16334  DB  68,15,89,253                        ; mulps         %xmm5,%xmm15
16335  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
16336  DB  68,15,84,248                        ; andps         %xmm0,%xmm15
16337  DB  15,85,196                           ; andnps        %xmm4,%xmm0
16338  DB  65,15,86,199                        ; orps          %xmm15,%xmm0
16339  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
16340  DB  68,15,40,198                        ; movaps        %xmm6,%xmm8
16341  DB  68,15,94,199                        ; divps         %xmm7,%xmm8
16342  DB  69,15,84,196                        ; andps         %xmm12,%xmm8
16343  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
16344  DB  15,88,201                           ; addps         %xmm1,%xmm1
16345  DB  15,88,201                           ; addps         %xmm1,%xmm1
16346  DB  15,40,225                           ; movaps        %xmm1,%xmm4
16347  DB  15,89,228                           ; mulps         %xmm4,%xmm4
16348  DB  15,88,225                           ; addps         %xmm1,%xmm4
16349  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
16350  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
16351  DB  15,89,204                           ; mulps         %xmm4,%xmm1
16352  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
16353  DB  69,15,92,248                        ; subps         %xmm8,%xmm15
16354  DB  65,15,82,224                        ; rsqrtps       %xmm8,%xmm4
16355  DB  15,83,228                           ; rcpps         %xmm4,%xmm4
16356  DB  65,15,92,224                        ; subps         %xmm8,%xmm4
16357  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
16358  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
16359  DB  15,40,206                           ; movaps        %xmm6,%xmm1
16360  DB  15,88,201                           ; addps         %xmm1,%xmm1
16361  DB  15,88,201                           ; addps         %xmm1,%xmm1
16362  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
16363  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
16364  DB  15,85,204                           ; andnps        %xmm4,%xmm1
16365  DB  65,15,86,200                        ; orps          %xmm8,%xmm1
16366  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
16367  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
16368  DB  65,15,40,224                        ; movaps        %xmm8,%xmm4
16369  DB  15,92,227                           ; subps         %xmm3,%xmm4
16370  DB  68,15,89,252                        ; mulps         %xmm4,%xmm15
16371  DB  15,89,231                           ; mulps         %xmm7,%xmm4
16372  DB  15,89,204                           ; mulps         %xmm4,%xmm1
16373  DB  15,40,227                           ; movaps        %xmm3,%xmm4
16374  DB  15,89,230                           ; mulps         %xmm6,%xmm4
16375  DB  15,88,204                           ; addps         %xmm4,%xmm1
16376  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
16377  DB  15,89,230                           ; mulps         %xmm6,%xmm4
16378  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
16379  DB  15,88,212                           ; addps         %xmm4,%xmm2
16380  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
16381  DB  68,15,89,254                        ; mulps         %xmm6,%xmm15
16382  DB  68,15,194,195,2                     ; cmpleps       %xmm3,%xmm8
16383  DB  69,15,84,248                        ; andps         %xmm8,%xmm15
16384  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
16385  DB  69,15,86,199                        ; orps          %xmm15,%xmm8
16386  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
16387  DB  68,15,40,60,36                      ; movaps        (%rsp),%xmm15
16388  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
16389  DB  15,94,207                           ; divps         %xmm7,%xmm1
16390  DB  65,15,84,204                        ; andps         %xmm12,%xmm1
16391  DB  68,15,92,201                        ; subps         %xmm1,%xmm9
16392  DB  68,15,88,241                        ; addps         %xmm1,%xmm14
16393  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
16394  DB  15,82,209                           ; rsqrtps       %xmm1,%xmm2
16395  DB  15,83,210                           ; rcpps         %xmm2,%xmm2
16396  DB  15,92,209                           ; subps         %xmm1,%xmm2
16397  DB  15,88,201                           ; addps         %xmm1,%xmm1
16398  DB  15,88,201                           ; addps         %xmm1,%xmm1
16399  DB  15,40,225                           ; movaps        %xmm1,%xmm4
16400  DB  15,89,228                           ; mulps         %xmm4,%xmm4
16401  DB  15,88,225                           ; addps         %xmm1,%xmm4
16402  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
16403  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
16404  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
16405  DB  15,88,201                           ; addps         %xmm1,%xmm1
16406  DB  15,88,201                           ; addps         %xmm1,%xmm1
16407  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
16408  DB  68,15,84,209                        ; andps         %xmm1,%xmm10
16409  DB  15,85,202                           ; andnps        %xmm2,%xmm1
16410  DB  15,40,84,36,16                      ; movaps        0x10(%rsp),%xmm2
16411  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
16412  DB  15,88,210                           ; addps         %xmm2,%xmm2
16413  DB  65,15,86,202                        ; orps          %xmm10,%xmm1
16414  DB  15,40,226                           ; movaps        %xmm2,%xmm4
16415  DB  15,92,227                           ; subps         %xmm3,%xmm4
16416  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
16417  DB  15,89,231                           ; mulps         %xmm7,%xmm4
16418  DB  15,89,204                           ; mulps         %xmm4,%xmm1
16419  DB  15,40,227                           ; movaps        %xmm3,%xmm4
16420  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
16421  DB  15,88,204                           ; addps         %xmm4,%xmm1
16422  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
16423  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
16424  DB  65,15,88,229                        ; addps         %xmm13,%xmm4
16425  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
16426  DB  69,15,89,207                        ; mulps         %xmm15,%xmm9
16427  DB  69,15,40,215                        ; movaps        %xmm15,%xmm10
16428  DB  15,194,211,2                        ; cmpleps       %xmm3,%xmm2
16429  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
16430  DB  15,85,209                           ; andnps        %xmm1,%xmm2
16431  DB  65,15,86,209                        ; orps          %xmm9,%xmm2
16432  DB  15,88,212                           ; addps         %xmm4,%xmm2
16433  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
16434  DB  65,15,88,219                        ; addps         %xmm11,%xmm3
16435  DB  72,173                              ; lods          %ds:(%rsi),%rax
16436  DB  15,40,229                           ; movaps        %xmm5,%xmm4
16437  DB  15,40,238                           ; movaps        %xmm6,%xmm5
16438  DB  65,15,40,242                        ; movaps        %xmm10,%xmm6
16439  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
16440  DB  72,131,196,40                       ; add           $0x28,%rsp
16441  DB  255,224                             ; jmpq          *%rax
16442
16443PUBLIC _sk_clamp_0_sse2
16444_sk_clamp_0_sse2 LABEL PROC
16445  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16446  DB  65,15,95,192                        ; maxps         %xmm8,%xmm0
16447  DB  65,15,95,200                        ; maxps         %xmm8,%xmm1
16448  DB  65,15,95,208                        ; maxps         %xmm8,%xmm2
16449  DB  65,15,95,216                        ; maxps         %xmm8,%xmm3
16450  DB  72,173                              ; lods          %ds:(%rsi),%rax
16451  DB  255,224                             ; jmpq          *%rax
16452
16453PUBLIC _sk_clamp_1_sse2
16454_sk_clamp_1_sse2 LABEL PROC
16455  DB  68,15,40,5,248,50,0,0               ; movaps        0x32f8(%rip),%xmm8        # 4150 <_sk_callback_sse2+0x24f>
16456  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
16457  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
16458  DB  65,15,93,208                        ; minps         %xmm8,%xmm2
16459  DB  65,15,93,216                        ; minps         %xmm8,%xmm3
16460  DB  72,173                              ; lods          %ds:(%rsi),%rax
16461  DB  255,224                             ; jmpq          *%rax
16462
16463PUBLIC _sk_clamp_a_sse2
16464_sk_clamp_a_sse2 LABEL PROC
16465  DB  15,93,29,237,50,0,0                 ; minps         0x32ed(%rip),%xmm3        # 4160 <_sk_callback_sse2+0x25f>
16466  DB  15,93,195                           ; minps         %xmm3,%xmm0
16467  DB  15,93,203                           ; minps         %xmm3,%xmm1
16468  DB  15,93,211                           ; minps         %xmm3,%xmm2
16469  DB  72,173                              ; lods          %ds:(%rsi),%rax
16470  DB  255,224                             ; jmpq          *%rax
16471
16472PUBLIC _sk_set_rgb_sse2
16473_sk_set_rgb_sse2 LABEL PROC
16474  DB  72,173                              ; lods          %ds:(%rsi),%rax
16475  DB  243,15,16,0                         ; movss         (%rax),%xmm0
16476  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
16477  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
16478  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
16479  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
16480  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16481  DB  72,173                              ; lods          %ds:(%rsi),%rax
16482  DB  255,224                             ; jmpq          *%rax
16483
16484PUBLIC _sk_swap_rb_sse2
16485_sk_swap_rb_sse2 LABEL PROC
16486  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16487  DB  72,173                              ; lods          %ds:(%rsi),%rax
16488  DB  15,40,194                           ; movaps        %xmm2,%xmm0
16489  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
16490  DB  255,224                             ; jmpq          *%rax
16491
16492PUBLIC _sk_swap_sse2
16493_sk_swap_sse2 LABEL PROC
16494  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
16495  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
16496  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
16497  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
16498  DB  72,173                              ; lods          %ds:(%rsi),%rax
16499  DB  15,40,196                           ; movaps        %xmm4,%xmm0
16500  DB  15,40,205                           ; movaps        %xmm5,%xmm1
16501  DB  15,40,214                           ; movaps        %xmm6,%xmm2
16502  DB  15,40,223                           ; movaps        %xmm7,%xmm3
16503  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
16504  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
16505  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
16506  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
16507  DB  255,224                             ; jmpq          *%rax
16508
16509PUBLIC _sk_move_src_dst_sse2
16510_sk_move_src_dst_sse2 LABEL PROC
16511  DB  72,173                              ; lods          %ds:(%rsi),%rax
16512  DB  15,40,224                           ; movaps        %xmm0,%xmm4
16513  DB  15,40,233                           ; movaps        %xmm1,%xmm5
16514  DB  15,40,242                           ; movaps        %xmm2,%xmm6
16515  DB  15,40,251                           ; movaps        %xmm3,%xmm7
16516  DB  255,224                             ; jmpq          *%rax
16517
16518PUBLIC _sk_move_dst_src_sse2
16519_sk_move_dst_src_sse2 LABEL PROC
16520  DB  72,173                              ; lods          %ds:(%rsi),%rax
16521  DB  15,40,196                           ; movaps        %xmm4,%xmm0
16522  DB  15,40,205                           ; movaps        %xmm5,%xmm1
16523  DB  15,40,214                           ; movaps        %xmm6,%xmm2
16524  DB  15,40,223                           ; movaps        %xmm7,%xmm3
16525  DB  255,224                             ; jmpq          *%rax
16526
16527PUBLIC _sk_premul_sse2
16528_sk_premul_sse2 LABEL PROC
16529  DB  15,89,195                           ; mulps         %xmm3,%xmm0
16530  DB  15,89,203                           ; mulps         %xmm3,%xmm1
16531  DB  15,89,211                           ; mulps         %xmm3,%xmm2
16532  DB  72,173                              ; lods          %ds:(%rsi),%rax
16533  DB  255,224                             ; jmpq          *%rax
16534
16535PUBLIC _sk_unpremul_sse2
16536_sk_unpremul_sse2 LABEL PROC
16537  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16538  DB  68,15,40,13,88,50,0,0               ; movaps        0x3258(%rip),%xmm9        # 4170 <_sk_callback_sse2+0x26f>
16539  DB  68,15,94,203                        ; divps         %xmm3,%xmm9
16540  DB  68,15,194,195,4                     ; cmpneqps      %xmm3,%xmm8
16541  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
16542  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16543  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16544  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16545  DB  72,173                              ; lods          %ds:(%rsi),%rax
16546  DB  255,224                             ; jmpq          *%rax
16547
16548PUBLIC _sk_from_srgb_sse2
16549_sk_from_srgb_sse2 LABEL PROC
16550  DB  68,15,40,5,67,50,0,0                ; movaps        0x3243(%rip),%xmm8        # 4180 <_sk_callback_sse2+0x27f>
16551  DB  68,15,40,232                        ; movaps        %xmm0,%xmm13
16552  DB  69,15,89,232                        ; mulps         %xmm8,%xmm13
16553  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
16554  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
16555  DB  68,15,40,13,59,50,0,0               ; movaps        0x323b(%rip),%xmm9        # 4190 <_sk_callback_sse2+0x28f>
16556  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
16557  DB  69,15,89,241                        ; mulps         %xmm9,%xmm14
16558  DB  68,15,40,21,59,50,0,0               ; movaps        0x323b(%rip),%xmm10        # 41a0 <_sk_callback_sse2+0x29f>
16559  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
16560  DB  69,15,89,243                        ; mulps         %xmm11,%xmm14
16561  DB  68,15,40,29,59,50,0,0               ; movaps        0x323b(%rip),%xmm11        # 41b0 <_sk_callback_sse2+0x2af>
16562  DB  69,15,88,243                        ; addps         %xmm11,%xmm14
16563  DB  68,15,40,37,63,50,0,0               ; movaps        0x323f(%rip),%xmm12        # 41c0 <_sk_callback_sse2+0x2bf>
16564  DB  65,15,194,196,1                     ; cmpltps       %xmm12,%xmm0
16565  DB  68,15,84,232                        ; andps         %xmm0,%xmm13
16566  DB  65,15,85,198                        ; andnps        %xmm14,%xmm0
16567  DB  65,15,86,197                        ; orps          %xmm13,%xmm0
16568  DB  68,15,40,233                        ; movaps        %xmm1,%xmm13
16569  DB  69,15,89,232                        ; mulps         %xmm8,%xmm13
16570  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
16571  DB  69,15,89,246                        ; mulps         %xmm14,%xmm14
16572  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
16573  DB  69,15,89,249                        ; mulps         %xmm9,%xmm15
16574  DB  69,15,88,250                        ; addps         %xmm10,%xmm15
16575  DB  69,15,89,254                        ; mulps         %xmm14,%xmm15
16576  DB  69,15,88,251                        ; addps         %xmm11,%xmm15
16577  DB  65,15,194,204,1                     ; cmpltps       %xmm12,%xmm1
16578  DB  68,15,84,233                        ; andps         %xmm1,%xmm13
16579  DB  65,15,85,207                        ; andnps        %xmm15,%xmm1
16580  DB  65,15,86,205                        ; orps          %xmm13,%xmm1
16581  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
16582  DB  68,15,40,234                        ; movaps        %xmm2,%xmm13
16583  DB  69,15,89,237                        ; mulps         %xmm13,%xmm13
16584  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
16585  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
16586  DB  69,15,89,205                        ; mulps         %xmm13,%xmm9
16587  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
16588  DB  65,15,194,212,1                     ; cmpltps       %xmm12,%xmm2
16589  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
16590  DB  65,15,85,209                        ; andnps        %xmm9,%xmm2
16591  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
16592  DB  72,173                              ; lods          %ds:(%rsi),%rax
16593  DB  255,224                             ; jmpq          *%rax
16594
16595PUBLIC _sk_to_srgb_sse2
16596_sk_to_srgb_sse2 LABEL PROC
16597  DB  68,15,82,192                        ; rsqrtps       %xmm0,%xmm8
16598  DB  69,15,83,200                        ; rcpps         %xmm8,%xmm9
16599  DB  69,15,82,232                        ; rsqrtps       %xmm8,%xmm13
16600  DB  68,15,40,5,196,49,0,0               ; movaps        0x31c4(%rip),%xmm8        # 41d0 <_sk_callback_sse2+0x2cf>
16601  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
16602  DB  69,15,89,240                        ; mulps         %xmm8,%xmm14
16603  DB  68,15,40,21,196,49,0,0              ; movaps        0x31c4(%rip),%xmm10        # 41e0 <_sk_callback_sse2+0x2df>
16604  DB  69,15,89,202                        ; mulps         %xmm10,%xmm9
16605  DB  68,15,40,29,200,49,0,0              ; movaps        0x31c8(%rip),%xmm11        # 41f0 <_sk_callback_sse2+0x2ef>
16606  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
16607  DB  68,15,40,37,204,49,0,0              ; movaps        0x31cc(%rip),%xmm12        # 4200 <_sk_callback_sse2+0x2ff>
16608  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
16609  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
16610  DB  68,15,40,13,204,49,0,0              ; movaps        0x31cc(%rip),%xmm9        # 4210 <_sk_callback_sse2+0x30f>
16611  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
16612  DB  69,15,93,253                        ; minps         %xmm13,%xmm15
16613  DB  68,15,40,45,204,49,0,0              ; movaps        0x31cc(%rip),%xmm13        # 4220 <_sk_callback_sse2+0x31f>
16614  DB  65,15,194,197,1                     ; cmpltps       %xmm13,%xmm0
16615  DB  68,15,84,240                        ; andps         %xmm0,%xmm14
16616  DB  65,15,85,199                        ; andnps        %xmm15,%xmm0
16617  DB  65,15,86,198                        ; orps          %xmm14,%xmm0
16618  DB  68,15,82,241                        ; rsqrtps       %xmm1,%xmm14
16619  DB  69,15,83,254                        ; rcpps         %xmm14,%xmm15
16620  DB  69,15,82,246                        ; rsqrtps       %xmm14,%xmm14
16621  DB  69,15,89,250                        ; mulps         %xmm10,%xmm15
16622  DB  69,15,88,251                        ; addps         %xmm11,%xmm15
16623  DB  69,15,89,244                        ; mulps         %xmm12,%xmm14
16624  DB  69,15,88,247                        ; addps         %xmm15,%xmm14
16625  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
16626  DB  69,15,93,254                        ; minps         %xmm14,%xmm15
16627  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
16628  DB  69,15,89,240                        ; mulps         %xmm8,%xmm14
16629  DB  65,15,194,205,1                     ; cmpltps       %xmm13,%xmm1
16630  DB  68,15,84,241                        ; andps         %xmm1,%xmm14
16631  DB  65,15,85,207                        ; andnps        %xmm15,%xmm1
16632  DB  65,15,86,206                        ; orps          %xmm14,%xmm1
16633  DB  68,15,82,242                        ; rsqrtps       %xmm2,%xmm14
16634  DB  69,15,83,254                        ; rcpps         %xmm14,%xmm15
16635  DB  69,15,89,250                        ; mulps         %xmm10,%xmm15
16636  DB  69,15,88,251                        ; addps         %xmm11,%xmm15
16637  DB  69,15,82,214                        ; rsqrtps       %xmm14,%xmm10
16638  DB  69,15,89,212                        ; mulps         %xmm12,%xmm10
16639  DB  69,15,88,215                        ; addps         %xmm15,%xmm10
16640  DB  69,15,93,202                        ; minps         %xmm10,%xmm9
16641  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
16642  DB  65,15,194,213,1                     ; cmpltps       %xmm13,%xmm2
16643  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
16644  DB  65,15,85,209                        ; andnps        %xmm9,%xmm2
16645  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
16646  DB  72,173                              ; lods          %ds:(%rsi),%rax
16647  DB  255,224                             ; jmpq          *%rax
16648
16649PUBLIC _sk_rgb_to_hsl_sse2
16650_sk_rgb_to_hsl_sse2 LABEL PROC
16651  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
16652  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16653  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
16654  DB  69,15,95,209                        ; maxps         %xmm9,%xmm10
16655  DB  68,15,95,210                        ; maxps         %xmm2,%xmm10
16656  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
16657  DB  69,15,93,217                        ; minps         %xmm9,%xmm11
16658  DB  68,15,93,218                        ; minps         %xmm2,%xmm11
16659  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
16660  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
16661  DB  68,15,40,45,37,49,0,0               ; movaps        0x3125(%rip),%xmm13        # 4230 <_sk_callback_sse2+0x32f>
16662  DB  68,15,94,233                        ; divps         %xmm1,%xmm13
16663  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
16664  DB  65,15,194,192,0                     ; cmpeqps       %xmm8,%xmm0
16665  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
16666  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
16667  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
16668  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
16669  DB  68,15,194,242,1                     ; cmpltps       %xmm2,%xmm14
16670  DB  68,15,84,53,11,49,0,0               ; andps         0x310b(%rip),%xmm14        # 4240 <_sk_callback_sse2+0x33f>
16671  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
16672  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
16673  DB  69,15,194,249,0                     ; cmpeqps       %xmm9,%xmm15
16674  DB  65,15,92,208                        ; subps         %xmm8,%xmm2
16675  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
16676  DB  68,15,40,37,254,48,0,0              ; movaps        0x30fe(%rip),%xmm12        # 4250 <_sk_callback_sse2+0x34f>
16677  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
16678  DB  69,15,92,193                        ; subps         %xmm9,%xmm8
16679  DB  69,15,89,197                        ; mulps         %xmm13,%xmm8
16680  DB  68,15,88,5,250,48,0,0               ; addps         0x30fa(%rip),%xmm8        # 4260 <_sk_callback_sse2+0x35f>
16681  DB  65,15,84,215                        ; andps         %xmm15,%xmm2
16682  DB  69,15,85,248                        ; andnps        %xmm8,%xmm15
16683  DB  68,15,86,250                        ; orps          %xmm2,%xmm15
16684  DB  68,15,84,240                        ; andps         %xmm0,%xmm14
16685  DB  65,15,85,199                        ; andnps        %xmm15,%xmm0
16686  DB  65,15,86,198                        ; orps          %xmm14,%xmm0
16687  DB  15,89,5,235,48,0,0                  ; mulps         0x30eb(%rip),%xmm0        # 4270 <_sk_callback_sse2+0x36f>
16688  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
16689  DB  69,15,194,195,4                     ; cmpneqps      %xmm11,%xmm8
16690  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
16691  DB  69,15,92,226                        ; subps         %xmm10,%xmm12
16692  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16693  DB  68,15,40,13,222,48,0,0              ; movaps        0x30de(%rip),%xmm9        # 4280 <_sk_callback_sse2+0x37f>
16694  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
16695  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
16696  DB  68,15,194,202,1                     ; cmpltps       %xmm2,%xmm9
16697  DB  69,15,92,227                        ; subps         %xmm11,%xmm12
16698  DB  69,15,84,225                        ; andps         %xmm9,%xmm12
16699  DB  69,15,85,202                        ; andnps        %xmm10,%xmm9
16700  DB  69,15,86,204                        ; orps          %xmm12,%xmm9
16701  DB  65,15,94,201                        ; divps         %xmm9,%xmm1
16702  DB  65,15,84,200                        ; andps         %xmm8,%xmm1
16703  DB  72,173                              ; lods          %ds:(%rsi),%rax
16704  DB  255,224                             ; jmpq          *%rax
16705
16706PUBLIC _sk_hsl_to_rgb_sse2
16707_sk_hsl_to_rgb_sse2 LABEL PROC
16708  DB  72,131,236,120                      ; sub           $0x78,%rsp
16709  DB  15,41,124,36,96                     ; movaps        %xmm7,0x60(%rsp)
16710  DB  15,41,116,36,80                     ; movaps        %xmm6,0x50(%rsp)
16711  DB  15,41,108,36,64                     ; movaps        %xmm5,0x40(%rsp)
16712  DB  15,41,100,36,48                     ; movaps        %xmm4,0x30(%rsp)
16713  DB  15,41,92,36,32                      ; movaps        %xmm3,0x20(%rsp)
16714  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
16715  DB  15,40,240                           ; movaps        %xmm0,%xmm6
16716  DB  68,15,40,13,153,48,0,0              ; movaps        0x3099(%rip),%xmm9        # 4290 <_sk_callback_sse2+0x38f>
16717  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
16718  DB  69,15,194,211,2                     ; cmpleps       %xmm11,%xmm10
16719  DB  15,40,193                           ; movaps        %xmm1,%xmm0
16720  DB  15,87,219                           ; xorps         %xmm3,%xmm3
16721  DB  15,194,217,0                        ; cmpeqps       %xmm1,%xmm3
16722  DB  15,40,251                           ; movaps        %xmm3,%xmm7
16723  DB  15,41,60,36                         ; movaps        %xmm7,(%rsp)
16724  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
16725  DB  15,92,193                           ; subps         %xmm1,%xmm0
16726  DB  65,15,84,194                        ; andps         %xmm10,%xmm0
16727  DB  68,15,85,209                        ; andnps        %xmm1,%xmm10
16728  DB  68,15,86,208                        ; orps          %xmm0,%xmm10
16729  DB  68,15,41,92,36,16                   ; movaps        %xmm11,0x10(%rsp)
16730  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16731  DB  69,15,88,219                        ; addps         %xmm11,%xmm11
16732  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
16733  DB  15,40,5,99,48,0,0                   ; movaps        0x3063(%rip),%xmm0        # 42a0 <_sk_callback_sse2+0x39f>
16734  DB  15,88,198                           ; addps         %xmm6,%xmm0
16735  DB  243,15,91,200                       ; cvttps2dq     %xmm0,%xmm1
16736  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
16737  DB  15,40,216                           ; movaps        %xmm0,%xmm3
16738  DB  15,194,217,1                        ; cmpltps       %xmm1,%xmm3
16739  DB  15,84,29,91,48,0,0                  ; andps         0x305b(%rip),%xmm3        # 42b0 <_sk_callback_sse2+0x3af>
16740  DB  15,92,203                           ; subps         %xmm3,%xmm1
16741  DB  15,92,193                           ; subps         %xmm1,%xmm0
16742  DB  68,15,40,45,93,48,0,0               ; movaps        0x305d(%rip),%xmm13        # 42c0 <_sk_callback_sse2+0x3bf>
16743  DB  69,15,40,197                        ; movaps        %xmm13,%xmm8
16744  DB  68,15,194,192,2                     ; cmpleps       %xmm0,%xmm8
16745  DB  69,15,40,242                        ; movaps        %xmm10,%xmm14
16746  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
16747  DB  65,15,40,217                        ; movaps        %xmm9,%xmm3
16748  DB  15,194,216,2                        ; cmpleps       %xmm0,%xmm3
16749  DB  15,40,21,109,48,0,0                 ; movaps        0x306d(%rip),%xmm2        # 42f0 <_sk_callback_sse2+0x3ef>
16750  DB  68,15,40,250                        ; movaps        %xmm2,%xmm15
16751  DB  68,15,194,248,2                     ; cmpleps       %xmm0,%xmm15
16752  DB  15,40,13,61,48,0,0                  ; movaps        0x303d(%rip),%xmm1        # 42d0 <_sk_callback_sse2+0x3cf>
16753  DB  15,89,193                           ; mulps         %xmm1,%xmm0
16754  DB  15,40,45,67,48,0,0                  ; movaps        0x3043(%rip),%xmm5        # 42e0 <_sk_callback_sse2+0x3df>
16755  DB  15,40,229                           ; movaps        %xmm5,%xmm4
16756  DB  15,92,224                           ; subps         %xmm0,%xmm4
16757  DB  65,15,89,230                        ; mulps         %xmm14,%xmm4
16758  DB  65,15,88,227                        ; addps         %xmm11,%xmm4
16759  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
16760  DB  69,15,84,224                        ; andps         %xmm8,%xmm12
16761  DB  68,15,85,196                        ; andnps        %xmm4,%xmm8
16762  DB  69,15,86,196                        ; orps          %xmm12,%xmm8
16763  DB  68,15,84,195                        ; andps         %xmm3,%xmm8
16764  DB  65,15,85,218                        ; andnps        %xmm10,%xmm3
16765  DB  65,15,86,216                        ; orps          %xmm8,%xmm3
16766  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
16767  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
16768  DB  65,15,84,223                        ; andps         %xmm15,%xmm3
16769  DB  68,15,85,248                        ; andnps        %xmm0,%xmm15
16770  DB  68,15,86,251                        ; orps          %xmm3,%xmm15
16771  DB  68,15,40,199                        ; movaps        %xmm7,%xmm8
16772  DB  69,15,85,199                        ; andnps        %xmm15,%xmm8
16773  DB  243,15,91,198                       ; cvttps2dq     %xmm6,%xmm0
16774  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
16775  DB  15,40,222                           ; movaps        %xmm6,%xmm3
16776  DB  15,194,216,1                        ; cmpltps       %xmm0,%xmm3
16777  DB  15,84,29,184,47,0,0                 ; andps         0x2fb8(%rip),%xmm3        # 42b0 <_sk_callback_sse2+0x3af>
16778  DB  15,92,195                           ; subps         %xmm3,%xmm0
16779  DB  68,15,40,230                        ; movaps        %xmm6,%xmm12
16780  DB  68,15,92,224                        ; subps         %xmm0,%xmm12
16781  DB  69,15,40,253                        ; movaps        %xmm13,%xmm15
16782  DB  69,15,194,252,2                     ; cmpleps       %xmm12,%xmm15
16783  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
16784  DB  65,15,194,228,2                     ; cmpleps       %xmm12,%xmm4
16785  DB  15,40,218                           ; movaps        %xmm2,%xmm3
16786  DB  65,15,194,220,2                     ; cmpleps       %xmm12,%xmm3
16787  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
16788  DB  15,40,197                           ; movaps        %xmm5,%xmm0
16789  DB  65,15,92,196                        ; subps         %xmm12,%xmm0
16790  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
16791  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
16792  DB  65,15,40,251                        ; movaps        %xmm11,%xmm7
16793  DB  65,15,84,255                        ; andps         %xmm15,%xmm7
16794  DB  68,15,85,248                        ; andnps        %xmm0,%xmm15
16795  DB  68,15,86,255                        ; orps          %xmm7,%xmm15
16796  DB  68,15,84,252                        ; andps         %xmm4,%xmm15
16797  DB  65,15,85,226                        ; andnps        %xmm10,%xmm4
16798  DB  65,15,86,231                        ; orps          %xmm15,%xmm4
16799  DB  69,15,89,230                        ; mulps         %xmm14,%xmm12
16800  DB  69,15,88,227                        ; addps         %xmm11,%xmm12
16801  DB  15,84,227                           ; andps         %xmm3,%xmm4
16802  DB  65,15,85,220                        ; andnps        %xmm12,%xmm3
16803  DB  15,86,220                           ; orps          %xmm4,%xmm3
16804  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
16805  DB  15,40,231                           ; movaps        %xmm7,%xmm4
16806  DB  15,85,227                           ; andnps        %xmm3,%xmm4
16807  DB  15,88,53,145,47,0,0                 ; addps         0x2f91(%rip),%xmm6        # 4300 <_sk_callback_sse2+0x3ff>
16808  DB  243,15,91,198                       ; cvttps2dq     %xmm6,%xmm0
16809  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
16810  DB  15,40,222                           ; movaps        %xmm6,%xmm3
16811  DB  15,194,216,1                        ; cmpltps       %xmm0,%xmm3
16812  DB  15,84,29,44,47,0,0                  ; andps         0x2f2c(%rip),%xmm3        # 42b0 <_sk_callback_sse2+0x3af>
16813  DB  15,92,195                           ; subps         %xmm3,%xmm0
16814  DB  15,92,240                           ; subps         %xmm0,%xmm6
16815  DB  15,89,206                           ; mulps         %xmm6,%xmm1
16816  DB  15,92,233                           ; subps         %xmm1,%xmm5
16817  DB  65,15,89,238                        ; mulps         %xmm14,%xmm5
16818  DB  65,15,89,206                        ; mulps         %xmm14,%xmm1
16819  DB  65,15,88,235                        ; addps         %xmm11,%xmm5
16820  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
16821  DB  68,15,194,238,2                     ; cmpleps       %xmm6,%xmm13
16822  DB  69,15,84,221                        ; andps         %xmm13,%xmm11
16823  DB  68,15,85,237                        ; andnps        %xmm5,%xmm13
16824  DB  69,15,86,235                        ; orps          %xmm11,%xmm13
16825  DB  68,15,194,206,2                     ; cmpleps       %xmm6,%xmm9
16826  DB  69,15,84,233                        ; andps         %xmm9,%xmm13
16827  DB  69,15,85,202                        ; andnps        %xmm10,%xmm9
16828  DB  69,15,86,205                        ; orps          %xmm13,%xmm9
16829  DB  15,194,214,2                        ; cmpleps       %xmm6,%xmm2
16830  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
16831  DB  15,85,209                           ; andnps        %xmm1,%xmm2
16832  DB  65,15,86,209                        ; orps          %xmm9,%xmm2
16833  DB  15,40,68,36,16                      ; movaps        0x10(%rsp),%xmm0
16834  DB  15,40,207                           ; movaps        %xmm7,%xmm1
16835  DB  15,84,193                           ; andps         %xmm1,%xmm0
16836  DB  15,85,202                           ; andnps        %xmm2,%xmm1
16837  DB  68,15,86,192                        ; orps          %xmm0,%xmm8
16838  DB  15,86,224                           ; orps          %xmm0,%xmm4
16839  DB  15,86,193                           ; orps          %xmm1,%xmm0
16840  DB  15,40,208                           ; movaps        %xmm0,%xmm2
16841  DB  72,173                              ; lods          %ds:(%rsi),%rax
16842  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16843  DB  15,40,204                           ; movaps        %xmm4,%xmm1
16844  DB  15,40,92,36,32                      ; movaps        0x20(%rsp),%xmm3
16845  DB  15,40,100,36,48                     ; movaps        0x30(%rsp),%xmm4
16846  DB  15,40,108,36,64                     ; movaps        0x40(%rsp),%xmm5
16847  DB  15,40,116,36,80                     ; movaps        0x50(%rsp),%xmm6
16848  DB  15,40,124,36,96                     ; movaps        0x60(%rsp),%xmm7
16849  DB  72,131,196,120                      ; add           $0x78,%rsp
16850  DB  255,224                             ; jmpq          *%rax
16851
16852PUBLIC _sk_scale_1_float_sse2
16853_sk_scale_1_float_sse2 LABEL PROC
16854  DB  72,173                              ; lods          %ds:(%rsi),%rax
16855  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
16856  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
16857  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16858  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16859  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16860  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16861  DB  72,173                              ; lods          %ds:(%rsi),%rax
16862  DB  255,224                             ; jmpq          *%rax
16863
16864PUBLIC _sk_scale_u8_sse2
16865_sk_scale_u8_sse2 LABEL PROC
16866  DB  72,173                              ; lods          %ds:(%rsi),%rax
16867  DB  72,139,0                            ; mov           (%rax),%rax
16868  DB  102,68,15,110,4,56                  ; movd          (%rax,%rdi,1),%xmm8
16869  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
16870  DB  102,69,15,96,193                    ; punpcklbw     %xmm9,%xmm8
16871  DB  102,69,15,97,193                    ; punpcklwd     %xmm9,%xmm8
16872  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
16873  DB  68,15,89,5,182,46,0,0               ; mulps         0x2eb6(%rip),%xmm8        # 4310 <_sk_callback_sse2+0x40f>
16874  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16875  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16876  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16877  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16878  DB  72,173                              ; lods          %ds:(%rsi),%rax
16879  DB  255,224                             ; jmpq          *%rax
16880
16881PUBLIC _sk_lerp_1_float_sse2
16882_sk_lerp_1_float_sse2 LABEL PROC
16883  DB  72,173                              ; lods          %ds:(%rsi),%rax
16884  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
16885  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
16886  DB  15,92,196                           ; subps         %xmm4,%xmm0
16887  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16888  DB  15,88,196                           ; addps         %xmm4,%xmm0
16889  DB  15,92,205                           ; subps         %xmm5,%xmm1
16890  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16891  DB  15,88,205                           ; addps         %xmm5,%xmm1
16892  DB  15,92,214                           ; subps         %xmm6,%xmm2
16893  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16894  DB  15,88,214                           ; addps         %xmm6,%xmm2
16895  DB  15,92,223                           ; subps         %xmm7,%xmm3
16896  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16897  DB  15,88,223                           ; addps         %xmm7,%xmm3
16898  DB  72,173                              ; lods          %ds:(%rsi),%rax
16899  DB  255,224                             ; jmpq          *%rax
16900
16901PUBLIC _sk_lerp_u8_sse2
16902_sk_lerp_u8_sse2 LABEL PROC
16903  DB  72,173                              ; lods          %ds:(%rsi),%rax
16904  DB  72,139,0                            ; mov           (%rax),%rax
16905  DB  102,68,15,110,4,56                  ; movd          (%rax,%rdi,1),%xmm8
16906  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
16907  DB  102,69,15,96,193                    ; punpcklbw     %xmm9,%xmm8
16908  DB  102,69,15,97,193                    ; punpcklwd     %xmm9,%xmm8
16909  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
16910  DB  68,15,89,5,84,46,0,0                ; mulps         0x2e54(%rip),%xmm8        # 4320 <_sk_callback_sse2+0x41f>
16911  DB  15,92,196                           ; subps         %xmm4,%xmm0
16912  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16913  DB  15,88,196                           ; addps         %xmm4,%xmm0
16914  DB  15,92,205                           ; subps         %xmm5,%xmm1
16915  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16916  DB  15,88,205                           ; addps         %xmm5,%xmm1
16917  DB  15,92,214                           ; subps         %xmm6,%xmm2
16918  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16919  DB  15,88,214                           ; addps         %xmm6,%xmm2
16920  DB  15,92,223                           ; subps         %xmm7,%xmm3
16921  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16922  DB  15,88,223                           ; addps         %xmm7,%xmm3
16923  DB  72,173                              ; lods          %ds:(%rsi),%rax
16924  DB  255,224                             ; jmpq          *%rax
16925
16926PUBLIC _sk_lerp_565_sse2
16927_sk_lerp_565_sse2 LABEL PROC
16928  DB  72,173                              ; lods          %ds:(%rsi),%rax
16929  DB  72,139,0                            ; mov           (%rax),%rax
16930  DB  243,68,15,126,4,120                 ; movq          (%rax,%rdi,2),%xmm8
16931  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
16932  DB  102,68,15,97,195                    ; punpcklwd     %xmm3,%xmm8
16933  DB  102,15,111,29,28,46,0,0             ; movdqa        0x2e1c(%rip),%xmm3        # 4330 <_sk_callback_sse2+0x42f>
16934  DB  102,65,15,219,216                   ; pand          %xmm8,%xmm3
16935  DB  68,15,91,203                        ; cvtdq2ps      %xmm3,%xmm9
16936  DB  68,15,89,13,27,46,0,0               ; mulps         0x2e1b(%rip),%xmm9        # 4340 <_sk_callback_sse2+0x43f>
16937  DB  102,15,111,29,35,46,0,0             ; movdqa        0x2e23(%rip),%xmm3        # 4350 <_sk_callback_sse2+0x44f>
16938  DB  102,65,15,219,216                   ; pand          %xmm8,%xmm3
16939  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
16940  DB  15,89,29,36,46,0,0                  ; mulps         0x2e24(%rip),%xmm3        # 4360 <_sk_callback_sse2+0x45f>
16941  DB  102,68,15,219,5,43,46,0,0           ; pand          0x2e2b(%rip),%xmm8        # 4370 <_sk_callback_sse2+0x46f>
16942  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
16943  DB  68,15,89,5,47,46,0,0                ; mulps         0x2e2f(%rip),%xmm8        # 4380 <_sk_callback_sse2+0x47f>
16944  DB  15,92,196                           ; subps         %xmm4,%xmm0
16945  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
16946  DB  15,88,196                           ; addps         %xmm4,%xmm0
16947  DB  15,92,205                           ; subps         %xmm5,%xmm1
16948  DB  15,89,203                           ; mulps         %xmm3,%xmm1
16949  DB  15,88,205                           ; addps         %xmm5,%xmm1
16950  DB  15,92,214                           ; subps         %xmm6,%xmm2
16951  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16952  DB  15,88,214                           ; addps         %xmm6,%xmm2
16953  DB  72,173                              ; lods          %ds:(%rsi),%rax
16954  DB  15,40,29,25,46,0,0                  ; movaps        0x2e19(%rip),%xmm3        # 4390 <_sk_callback_sse2+0x48f>
16955  DB  255,224                             ; jmpq          *%rax
16956
16957PUBLIC _sk_load_tables_sse2
16958_sk_load_tables_sse2 LABEL PROC
16959  DB  72,173                              ; lods          %ds:(%rsi),%rax
16960  DB  76,139,0                            ; mov           (%rax),%r8
16961  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
16962  DB  243,69,15,111,12,184                ; movdqu        (%r8,%rdi,4),%xmm9
16963  DB  102,68,15,111,5,15,46,0,0           ; movdqa        0x2e0f(%rip),%xmm8        # 43a0 <_sk_callback_sse2+0x49f>
16964  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
16965  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
16966  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
16967  DB  102,73,15,126,200                   ; movq          %xmm1,%r8
16968  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
16969  DB  68,15,182,209                       ; movzbl        %cl,%r10d
16970  DB  72,193,233,30                       ; shr           $0x1e,%rcx
16971  DB  69,15,182,216                       ; movzbl        %r8b,%r11d
16972  DB  73,193,232,30                       ; shr           $0x1e,%r8
16973  DB  243,65,15,16,12,9                   ; movss         (%r9,%rcx,1),%xmm1
16974  DB  243,67,15,16,4,1                    ; movss         (%r9,%r8,1),%xmm0
16975  DB  15,20,200                           ; unpcklps      %xmm0,%xmm1
16976  DB  243,67,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm0
16977  DB  243,67,15,16,20,153                 ; movss         (%r9,%r11,4),%xmm2
16978  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
16979  DB  15,20,193                           ; unpcklps      %xmm1,%xmm0
16980  DB  76,139,64,16                        ; mov           0x10(%rax),%r8
16981  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
16982  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
16983  DB  102,65,15,219,200                   ; pand          %xmm8,%xmm1
16984  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
16985  DB  102,73,15,126,209                   ; movq          %xmm2,%r9
16986  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
16987  DB  68,15,182,209                       ; movzbl        %cl,%r10d
16988  DB  72,193,233,30                       ; shr           $0x1e,%rcx
16989  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
16990  DB  73,193,233,30                       ; shr           $0x1e,%r9
16991  DB  243,65,15,16,20,8                   ; movss         (%r8,%rcx,1),%xmm2
16992  DB  243,67,15,16,12,8                   ; movss         (%r8,%r9,1),%xmm1
16993  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
16994  DB  243,67,15,16,12,144                 ; movss         (%r8,%r10,4),%xmm1
16995  DB  243,67,15,16,28,152                 ; movss         (%r8,%r11,4),%xmm3
16996  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
16997  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
16998  DB  76,139,64,24                        ; mov           0x18(%rax),%r8
16999  DB  102,65,15,111,209                   ; movdqa        %xmm9,%xmm2
17000  DB  102,15,114,210,16                   ; psrld         $0x10,%xmm2
17001  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
17002  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
17003  DB  102,72,15,126,217                   ; movq          %xmm3,%rcx
17004  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
17005  DB  68,15,182,200                       ; movzbl        %al,%r9d
17006  DB  72,193,232,30                       ; shr           $0x1e,%rax
17007  DB  68,15,182,209                       ; movzbl        %cl,%r10d
17008  DB  72,193,233,30                       ; shr           $0x1e,%rcx
17009  DB  243,69,15,16,4,0                    ; movss         (%r8,%rax,1),%xmm8
17010  DB  243,65,15,16,20,8                   ; movss         (%r8,%rcx,1),%xmm2
17011  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
17012  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
17013  DB  243,67,15,16,28,144                 ; movss         (%r8,%r10,4),%xmm3
17014  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
17015  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
17016  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
17017  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
17018  DB  15,89,29,28,45,0,0                  ; mulps         0x2d1c(%rip),%xmm3        # 43b0 <_sk_callback_sse2+0x4af>
17019  DB  72,173                              ; lods          %ds:(%rsi),%rax
17020  DB  255,224                             ; jmpq          *%rax
17021
17022PUBLIC _sk_load_tables_u16_be_sse2
17023_sk_load_tables_u16_be_sse2 LABEL PROC
17024  DB  72,173                              ; lods          %ds:(%rsi),%rax
17025  DB  72,139,8                            ; mov           (%rax),%rcx
17026  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
17027  DB  243,15,111,4,249                    ; movdqu        (%rcx,%rdi,8),%xmm0
17028  DB  243,15,111,76,249,16                ; movdqu        0x10(%rcx,%rdi,8),%xmm1
17029  DB  102,68,15,111,200                   ; movdqa        %xmm0,%xmm9
17030  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
17031  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
17032  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
17033  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
17034  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
17035  DB  102,68,15,111,21,239,44,0,0         ; movdqa        0x2cef(%rip),%xmm10        # 43c0 <_sk_callback_sse2+0x4bf>
17036  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
17037  DB  102,65,15,219,194                   ; pand          %xmm10,%xmm0
17038  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
17039  DB  102,65,15,97,192                    ; punpcklwd     %xmm8,%xmm0
17040  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
17041  DB  102,72,15,126,217                   ; movq          %xmm3,%rcx
17042  DB  68,15,182,201                       ; movzbl        %cl,%r9d
17043  DB  72,193,233,32                       ; shr           $0x20,%rcx
17044  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
17045  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
17046  DB  73,193,234,30                       ; shr           $0x1e,%r10
17047  DB  243,67,15,16,28,16                  ; movss         (%r8,%r10,1),%xmm3
17048  DB  243,65,15,16,4,136                  ; movss         (%r8,%rcx,4),%xmm0
17049  DB  15,20,216                           ; unpcklps      %xmm0,%xmm3
17050  DB  243,67,15,16,4,152                  ; movss         (%r8,%r11,4),%xmm0
17051  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
17052  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
17053  DB  15,20,195                           ; unpcklps      %xmm3,%xmm0
17054  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
17055  DB  102,15,115,217,8                    ; psrldq        $0x8,%xmm1
17056  DB  102,65,15,219,202                   ; pand          %xmm10,%xmm1
17057  DB  102,65,15,97,200                    ; punpcklwd     %xmm8,%xmm1
17058  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
17059  DB  102,73,15,126,208                   ; movq          %xmm2,%r8
17060  DB  69,15,182,200                       ; movzbl        %r8b,%r9d
17061  DB  73,193,232,32                       ; shr           $0x20,%r8
17062  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
17063  DB  68,15,182,217                       ; movzbl        %cl,%r11d
17064  DB  72,193,233,30                       ; shr           $0x1e,%rcx
17065  DB  243,65,15,16,20,10                  ; movss         (%r10,%rcx,1),%xmm2
17066  DB  243,67,15,16,12,130                 ; movss         (%r10,%r8,4),%xmm1
17067  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
17068  DB  243,67,15,16,12,154                 ; movss         (%r10,%r11,4),%xmm1
17069  DB  243,67,15,16,28,138                 ; movss         (%r10,%r9,4),%xmm3
17070  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
17071  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
17072  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
17073  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
17074  DB  102,69,15,97,208                    ; punpcklwd     %xmm8,%xmm10
17075  DB  102,65,15,112,210,78                ; pshufd        $0x4e,%xmm10,%xmm2
17076  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
17077  DB  68,15,182,193                       ; movzbl        %cl,%r8d
17078  DB  72,193,233,32                       ; shr           $0x20,%rcx
17079  DB  102,76,15,126,208                   ; movq          %xmm10,%rax
17080  DB  68,15,182,208                       ; movzbl        %al,%r10d
17081  DB  72,193,232,30                       ; shr           $0x1e,%rax
17082  DB  243,69,15,16,20,1                   ; movss         (%r9,%rax,1),%xmm10
17083  DB  243,65,15,16,20,137                 ; movss         (%r9,%rcx,4),%xmm2
17084  DB  68,15,20,210                        ; unpcklps      %xmm2,%xmm10
17085  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
17086  DB  243,67,15,16,28,129                 ; movss         (%r9,%r8,4),%xmm3
17087  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
17088  DB  65,15,20,210                        ; unpcklps      %xmm10,%xmm2
17089  DB  102,65,15,112,217,78                ; pshufd        $0x4e,%xmm9,%xmm3
17090  DB  102,68,15,111,203                   ; movdqa        %xmm3,%xmm9
17091  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
17092  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
17093  DB  102,65,15,235,217                   ; por           %xmm9,%xmm3
17094  DB  102,65,15,97,216                    ; punpcklwd     %xmm8,%xmm3
17095  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
17096  DB  15,89,29,222,43,0,0                 ; mulps         0x2bde(%rip),%xmm3        # 43d0 <_sk_callback_sse2+0x4cf>
17097  DB  72,173                              ; lods          %ds:(%rsi),%rax
17098  DB  255,224                             ; jmpq          *%rax
17099
17100PUBLIC _sk_load_tables_rgb_u16_be_sse2
17101_sk_load_tables_rgb_u16_be_sse2 LABEL PROC
17102  DB  72,173                              ; lods          %ds:(%rsi),%rax
17103  DB  76,141,12,127                       ; lea           (%rdi,%rdi,2),%r9
17104  DB  72,139,8                            ; mov           (%rax),%rcx
17105  DB  76,139,64,8                         ; mov           0x8(%rax),%r8
17106  DB  243,70,15,111,28,73                 ; movdqu        (%rcx,%r9,2),%xmm11
17107  DB  243,66,15,111,68,73,8               ; movdqu        0x8(%rcx,%r9,2),%xmm0
17108  DB  102,15,115,216,4                    ; psrldq        $0x4,%xmm0
17109  DB  102,69,15,111,211                   ; movdqa        %xmm11,%xmm10
17110  DB  102,65,15,115,218,6                 ; psrldq        $0x6,%xmm10
17111  DB  102,68,15,97,216                    ; punpcklwd     %xmm0,%xmm11
17112  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
17113  DB  102,68,15,97,208                    ; punpcklwd     %xmm0,%xmm10
17114  DB  102,65,15,111,195                   ; movdqa        %xmm11,%xmm0
17115  DB  102,65,15,97,194                    ; punpcklwd     %xmm10,%xmm0
17116  DB  102,68,15,111,5,158,43,0,0          ; movdqa        0x2b9e(%rip),%xmm8        # 43e0 <_sk_callback_sse2+0x4df>
17117  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
17118  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
17119  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
17120  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
17121  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
17122  DB  102,72,15,126,217                   ; movq          %xmm3,%rcx
17123  DB  68,15,182,201                       ; movzbl        %cl,%r9d
17124  DB  72,193,233,32                       ; shr           $0x20,%rcx
17125  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
17126  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
17127  DB  73,193,234,30                       ; shr           $0x1e,%r10
17128  DB  243,67,15,16,28,16                  ; movss         (%r8,%r10,1),%xmm3
17129  DB  243,65,15,16,4,136                  ; movss         (%r8,%rcx,4),%xmm0
17130  DB  15,20,216                           ; unpcklps      %xmm0,%xmm3
17131  DB  243,67,15,16,4,152                  ; movss         (%r8,%r11,4),%xmm0
17132  DB  243,67,15,16,20,136                 ; movss         (%r8,%r9,4),%xmm2
17133  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
17134  DB  15,20,195                           ; unpcklps      %xmm3,%xmm0
17135  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
17136  DB  102,65,15,219,200                   ; pand          %xmm8,%xmm1
17137  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
17138  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
17139  DB  102,73,15,126,208                   ; movq          %xmm2,%r8
17140  DB  69,15,182,200                       ; movzbl        %r8b,%r9d
17141  DB  73,193,232,32                       ; shr           $0x20,%r8
17142  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
17143  DB  68,15,182,217                       ; movzbl        %cl,%r11d
17144  DB  72,193,233,30                       ; shr           $0x1e,%rcx
17145  DB  243,65,15,16,20,10                  ; movss         (%r10,%rcx,1),%xmm2
17146  DB  243,67,15,16,12,130                 ; movss         (%r10,%r8,4),%xmm1
17147  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
17148  DB  243,67,15,16,12,154                 ; movss         (%r10,%r11,4),%xmm1
17149  DB  243,67,15,16,28,138                 ; movss         (%r10,%r9,4),%xmm3
17150  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
17151  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
17152  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
17153  DB  102,69,15,105,218                   ; punpckhwd     %xmm10,%xmm11
17154  DB  102,69,15,219,216                   ; pand          %xmm8,%xmm11
17155  DB  102,69,15,97,217                    ; punpcklwd     %xmm9,%xmm11
17156  DB  102,65,15,112,211,78                ; pshufd        $0x4e,%xmm11,%xmm2
17157  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
17158  DB  68,15,182,193                       ; movzbl        %cl,%r8d
17159  DB  72,193,233,32                       ; shr           $0x20,%rcx
17160  DB  102,76,15,126,216                   ; movq          %xmm11,%rax
17161  DB  68,15,182,208                       ; movzbl        %al,%r10d
17162  DB  72,193,232,30                       ; shr           $0x1e,%rax
17163  DB  243,69,15,16,4,1                    ; movss         (%r9,%rax,1),%xmm8
17164  DB  243,65,15,16,20,137                 ; movss         (%r9,%rcx,4),%xmm2
17165  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
17166  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
17167  DB  243,67,15,16,28,129                 ; movss         (%r9,%r8,4),%xmm3
17168  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
17169  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
17170  DB  72,173                              ; lods          %ds:(%rsi),%rax
17171  DB  15,40,29,173,42,0,0                 ; movaps        0x2aad(%rip),%xmm3        # 43f0 <_sk_callback_sse2+0x4ef>
17172  DB  255,224                             ; jmpq          *%rax
17173
17174PUBLIC _sk_byte_tables_sse2
17175_sk_byte_tables_sse2 LABEL PROC
17176  DB  65,86                               ; push          %r14
17177  DB  83                                  ; push          %rbx
17178  DB  72,173                              ; lods          %ds:(%rsi),%rax
17179  DB  68,15,40,5,174,42,0,0               ; movaps        0x2aae(%rip),%xmm8        # 4400 <_sk_callback_sse2+0x4ff>
17180  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
17181  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
17182  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17183  DB  65,137,200                          ; mov           %ecx,%r8d
17184  DB  72,193,233,32                       ; shr           $0x20,%rcx
17185  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
17186  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
17187  DB  69,137,202                          ; mov           %r9d,%r10d
17188  DB  77,137,203                          ; mov           %r9,%r11
17189  DB  73,193,235,32                       ; shr           $0x20,%r11
17190  DB  76,139,48                           ; mov           (%rax),%r14
17191  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
17192  DB  71,15,182,20,22                     ; movzbl        (%r14,%r10,1),%r10d
17193  DB  67,15,182,28,30                     ; movzbl        (%r14,%r11,1),%ebx
17194  DB  193,227,8                           ; shl           $0x8,%ebx
17195  DB  68,9,211                            ; or            %r10d,%ebx
17196  DB  71,15,182,4,6                       ; movzbl        (%r14,%r8,1),%r8d
17197  DB  65,15,182,12,14                     ; movzbl        (%r14,%rcx,1),%ecx
17198  DB  193,225,8                           ; shl           $0x8,%ecx
17199  DB  68,9,193                            ; or            %r8d,%ecx
17200  DB  102,15,196,193,0                    ; pinsrw        $0x0,%ecx,%xmm0
17201  DB  102,15,196,195,1                    ; pinsrw        $0x1,%ebx,%xmm0
17202  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
17203  DB  102,65,15,96,193                    ; punpcklbw     %xmm9,%xmm0
17204  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
17205  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17206  DB  68,15,40,21,75,42,0,0               ; movaps        0x2a4b(%rip),%xmm10        # 4410 <_sk_callback_sse2+0x50f>
17207  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
17208  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
17209  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
17210  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
17211  DB  65,137,200                          ; mov           %ecx,%r8d
17212  DB  72,193,233,32                       ; shr           $0x20,%rcx
17213  DB  102,15,112,201,78                   ; pshufd        $0x4e,%xmm1,%xmm1
17214  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
17215  DB  65,137,218                          ; mov           %ebx,%r10d
17216  DB  72,193,235,32                       ; shr           $0x20,%rbx
17217  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
17218  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
17219  DB  193,227,8                           ; shl           $0x8,%ebx
17220  DB  68,9,211                            ; or            %r10d,%ebx
17221  DB  71,15,182,4,1                       ; movzbl        (%r9,%r8,1),%r8d
17222  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
17223  DB  193,225,8                           ; shl           $0x8,%ecx
17224  DB  68,9,193                            ; or            %r8d,%ecx
17225  DB  102,15,196,201,0                    ; pinsrw        $0x0,%ecx,%xmm1
17226  DB  102,15,196,203,1                    ; pinsrw        $0x1,%ebx,%xmm1
17227  DB  102,65,15,96,201                    ; punpcklbw     %xmm9,%xmm1
17228  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
17229  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
17230  DB  65,15,89,202                        ; mulps         %xmm10,%xmm1
17231  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
17232  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
17233  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
17234  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
17235  DB  65,137,216                          ; mov           %ebx,%r8d
17236  DB  72,193,235,32                       ; shr           $0x20,%rbx
17237  DB  102,15,112,210,78                   ; pshufd        $0x4e,%xmm2,%xmm2
17238  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
17239  DB  65,137,202                          ; mov           %ecx,%r10d
17240  DB  72,193,233,32                       ; shr           $0x20,%rcx
17241  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
17242  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
17243  DB  193,225,8                           ; shl           $0x8,%ecx
17244  DB  68,9,209                            ; or            %r10d,%ecx
17245  DB  71,15,182,4,1                       ; movzbl        (%r9,%r8,1),%r8d
17246  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
17247  DB  193,227,8                           ; shl           $0x8,%ebx
17248  DB  68,9,195                            ; or            %r8d,%ebx
17249  DB  102,15,196,211,0                    ; pinsrw        $0x0,%ebx,%xmm2
17250  DB  102,15,196,209,1                    ; pinsrw        $0x1,%ecx,%xmm2
17251  DB  102,65,15,96,209                    ; punpcklbw     %xmm9,%xmm2
17252  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
17253  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
17254  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
17255  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
17256  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
17257  DB  102,15,91,219                       ; cvtps2dq      %xmm3,%xmm3
17258  DB  102,72,15,126,217                   ; movq          %xmm3,%rcx
17259  DB  65,137,200                          ; mov           %ecx,%r8d
17260  DB  72,193,233,32                       ; shr           $0x20,%rcx
17261  DB  102,15,112,219,78                   ; pshufd        $0x4e,%xmm3,%xmm3
17262  DB  102,72,15,126,219                   ; movq          %xmm3,%rbx
17263  DB  65,137,217                          ; mov           %ebx,%r9d
17264  DB  72,193,235,32                       ; shr           $0x20,%rbx
17265  DB  70,15,182,12,8                      ; movzbl        (%rax,%r9,1),%r9d
17266  DB  15,182,28,24                        ; movzbl        (%rax,%rbx,1),%ebx
17267  DB  193,227,8                           ; shl           $0x8,%ebx
17268  DB  68,9,203                            ; or            %r9d,%ebx
17269  DB  70,15,182,4,0                       ; movzbl        (%rax,%r8,1),%r8d
17270  DB  15,182,4,8                          ; movzbl        (%rax,%rcx,1),%eax
17271  DB  193,224,8                           ; shl           $0x8,%eax
17272  DB  68,9,192                            ; or            %r8d,%eax
17273  DB  102,15,196,216,0                    ; pinsrw        $0x0,%eax,%xmm3
17274  DB  102,15,196,219,1                    ; pinsrw        $0x1,%ebx,%xmm3
17275  DB  102,65,15,96,217                    ; punpcklbw     %xmm9,%xmm3
17276  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
17277  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
17278  DB  65,15,89,218                        ; mulps         %xmm10,%xmm3
17279  DB  72,173                              ; lods          %ds:(%rsi),%rax
17280  DB  91                                  ; pop           %rbx
17281  DB  65,94                               ; pop           %r14
17282  DB  255,224                             ; jmpq          *%rax
17283
17284PUBLIC _sk_byte_tables_rgb_sse2
17285_sk_byte_tables_rgb_sse2 LABEL PROC
17286  DB  65,86                               ; push          %r14
17287  DB  83                                  ; push          %rbx
17288  DB  72,173                              ; lods          %ds:(%rsi),%rax
17289  DB  139,72,24                           ; mov           0x18(%rax),%ecx
17290  DB  255,201                             ; dec           %ecx
17291  DB  102,68,15,110,193                   ; movd          %ecx,%xmm8
17292  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
17293  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
17294  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
17295  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
17296  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17297  DB  65,137,200                          ; mov           %ecx,%r8d
17298  DB  72,193,233,32                       ; shr           $0x20,%rcx
17299  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
17300  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
17301  DB  69,137,202                          ; mov           %r9d,%r10d
17302  DB  77,137,203                          ; mov           %r9,%r11
17303  DB  73,193,235,32                       ; shr           $0x20,%r11
17304  DB  76,139,48                           ; mov           (%rax),%r14
17305  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
17306  DB  71,15,182,20,22                     ; movzbl        (%r14,%r10,1),%r10d
17307  DB  67,15,182,28,30                     ; movzbl        (%r14,%r11,1),%ebx
17308  DB  193,227,8                           ; shl           $0x8,%ebx
17309  DB  68,9,211                            ; or            %r10d,%ebx
17310  DB  71,15,182,4,6                       ; movzbl        (%r14,%r8,1),%r8d
17311  DB  65,15,182,12,14                     ; movzbl        (%r14,%rcx,1),%ecx
17312  DB  193,225,8                           ; shl           $0x8,%ecx
17313  DB  68,9,193                            ; or            %r8d,%ecx
17314  DB  102,15,196,193,0                    ; pinsrw        $0x0,%ecx,%xmm0
17315  DB  102,15,196,195,1                    ; pinsrw        $0x1,%ebx,%xmm0
17316  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
17317  DB  102,65,15,96,193                    ; punpcklbw     %xmm9,%xmm0
17318  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
17319  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17320  DB  68,15,40,21,158,40,0,0              ; movaps        0x289e(%rip),%xmm10        # 4420 <_sk_callback_sse2+0x51f>
17321  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
17322  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
17323  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
17324  DB  102,72,15,126,201                   ; movq          %xmm1,%rcx
17325  DB  65,137,200                          ; mov           %ecx,%r8d
17326  DB  72,193,233,32                       ; shr           $0x20,%rcx
17327  DB  102,15,112,201,78                   ; pshufd        $0x4e,%xmm1,%xmm1
17328  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
17329  DB  65,137,218                          ; mov           %ebx,%r10d
17330  DB  72,193,235,32                       ; shr           $0x20,%rbx
17331  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
17332  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
17333  DB  193,227,8                           ; shl           $0x8,%ebx
17334  DB  68,9,211                            ; or            %r10d,%ebx
17335  DB  71,15,182,4,1                       ; movzbl        (%r9,%r8,1),%r8d
17336  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
17337  DB  193,225,8                           ; shl           $0x8,%ecx
17338  DB  68,9,193                            ; or            %r8d,%ecx
17339  DB  102,15,196,201,0                    ; pinsrw        $0x0,%ecx,%xmm1
17340  DB  102,15,196,203,1                    ; pinsrw        $0x1,%ebx,%xmm1
17341  DB  102,65,15,96,201                    ; punpcklbw     %xmm9,%xmm1
17342  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
17343  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
17344  DB  65,15,89,202                        ; mulps         %xmm10,%xmm1
17345  DB  72,139,64,16                        ; mov           0x10(%rax),%rax
17346  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
17347  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
17348  DB  102,72,15,126,209                   ; movq          %xmm2,%rcx
17349  DB  65,137,200                          ; mov           %ecx,%r8d
17350  DB  72,193,233,32                       ; shr           $0x20,%rcx
17351  DB  102,15,112,210,78                   ; pshufd        $0x4e,%xmm2,%xmm2
17352  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
17353  DB  65,137,217                          ; mov           %ebx,%r9d
17354  DB  72,193,235,32                       ; shr           $0x20,%rbx
17355  DB  70,15,182,12,8                      ; movzbl        (%rax,%r9,1),%r9d
17356  DB  15,182,28,24                        ; movzbl        (%rax,%rbx,1),%ebx
17357  DB  193,227,8                           ; shl           $0x8,%ebx
17358  DB  68,9,203                            ; or            %r9d,%ebx
17359  DB  70,15,182,4,0                       ; movzbl        (%rax,%r8,1),%r8d
17360  DB  15,182,4,8                          ; movzbl        (%rax,%rcx,1),%eax
17361  DB  193,224,8                           ; shl           $0x8,%eax
17362  DB  68,9,192                            ; or            %r8d,%eax
17363  DB  102,15,196,208,0                    ; pinsrw        $0x0,%eax,%xmm2
17364  DB  102,15,196,211,1                    ; pinsrw        $0x1,%ebx,%xmm2
17365  DB  102,65,15,96,209                    ; punpcklbw     %xmm9,%xmm2
17366  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
17367  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
17368  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
17369  DB  72,173                              ; lods          %ds:(%rsi),%rax
17370  DB  91                                  ; pop           %rbx
17371  DB  65,94                               ; pop           %r14
17372  DB  255,224                             ; jmpq          *%rax
17373
17374PUBLIC _sk_table_r_sse2
17375_sk_table_r_sse2 LABEL PROC
17376  DB  72,173                              ; lods          %ds:(%rsi),%rax
17377  DB  76,139,8                            ; mov           (%rax),%r9
17378  DB  139,64,8                            ; mov           0x8(%rax),%eax
17379  DB  255,200                             ; dec           %eax
17380  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
17381  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
17382  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
17383  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
17384  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
17385  DB  102,65,15,112,192,78                ; pshufd        $0x4e,%xmm8,%xmm0
17386  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
17387  DB  65,137,192                          ; mov           %eax,%r8d
17388  DB  72,193,232,32                       ; shr           $0x20,%rax
17389  DB  102,76,15,126,193                   ; movq          %xmm8,%rcx
17390  DB  65,137,202                          ; mov           %ecx,%r10d
17391  DB  72,193,233,32                       ; shr           $0x20,%rcx
17392  DB  243,69,15,16,4,137                  ; movss         (%r9,%rcx,4),%xmm8
17393  DB  243,65,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm0
17394  DB  68,15,20,192                        ; unpcklps      %xmm0,%xmm8
17395  DB  243,67,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm0
17396  DB  243,71,15,16,12,129                 ; movss         (%r9,%r8,4),%xmm9
17397  DB  65,15,20,193                        ; unpcklps      %xmm9,%xmm0
17398  DB  65,15,20,192                        ; unpcklps      %xmm8,%xmm0
17399  DB  72,173                              ; lods          %ds:(%rsi),%rax
17400  DB  255,224                             ; jmpq          *%rax
17401
17402PUBLIC _sk_table_g_sse2
17403_sk_table_g_sse2 LABEL PROC
17404  DB  72,173                              ; lods          %ds:(%rsi),%rax
17405  DB  76,139,8                            ; mov           (%rax),%r9
17406  DB  139,64,8                            ; mov           0x8(%rax),%eax
17407  DB  255,200                             ; dec           %eax
17408  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
17409  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
17410  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
17411  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
17412  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
17413  DB  102,65,15,112,200,78                ; pshufd        $0x4e,%xmm8,%xmm1
17414  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
17415  DB  65,137,192                          ; mov           %eax,%r8d
17416  DB  72,193,232,32                       ; shr           $0x20,%rax
17417  DB  102,76,15,126,193                   ; movq          %xmm8,%rcx
17418  DB  65,137,202                          ; mov           %ecx,%r10d
17419  DB  72,193,233,32                       ; shr           $0x20,%rcx
17420  DB  243,69,15,16,4,137                  ; movss         (%r9,%rcx,4),%xmm8
17421  DB  243,65,15,16,12,129                 ; movss         (%r9,%rax,4),%xmm1
17422  DB  68,15,20,193                        ; unpcklps      %xmm1,%xmm8
17423  DB  243,67,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm1
17424  DB  243,71,15,16,12,129                 ; movss         (%r9,%r8,4),%xmm9
17425  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
17426  DB  65,15,20,200                        ; unpcklps      %xmm8,%xmm1
17427  DB  72,173                              ; lods          %ds:(%rsi),%rax
17428  DB  255,224                             ; jmpq          *%rax
17429
17430PUBLIC _sk_table_b_sse2
17431_sk_table_b_sse2 LABEL PROC
17432  DB  72,173                              ; lods          %ds:(%rsi),%rax
17433  DB  76,139,8                            ; mov           (%rax),%r9
17434  DB  139,64,8                            ; mov           0x8(%rax),%eax
17435  DB  255,200                             ; dec           %eax
17436  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
17437  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
17438  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
17439  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
17440  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
17441  DB  102,65,15,112,208,78                ; pshufd        $0x4e,%xmm8,%xmm2
17442  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
17443  DB  65,137,192                          ; mov           %eax,%r8d
17444  DB  72,193,232,32                       ; shr           $0x20,%rax
17445  DB  102,76,15,126,193                   ; movq          %xmm8,%rcx
17446  DB  65,137,202                          ; mov           %ecx,%r10d
17447  DB  72,193,233,32                       ; shr           $0x20,%rcx
17448  DB  243,69,15,16,4,137                  ; movss         (%r9,%rcx,4),%xmm8
17449  DB  243,65,15,16,20,129                 ; movss         (%r9,%rax,4),%xmm2
17450  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
17451  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
17452  DB  243,71,15,16,12,129                 ; movss         (%r9,%r8,4),%xmm9
17453  DB  65,15,20,209                        ; unpcklps      %xmm9,%xmm2
17454  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
17455  DB  72,173                              ; lods          %ds:(%rsi),%rax
17456  DB  255,224                             ; jmpq          *%rax
17457
17458PUBLIC _sk_table_a_sse2
17459_sk_table_a_sse2 LABEL PROC
17460  DB  72,173                              ; lods          %ds:(%rsi),%rax
17461  DB  76,139,8                            ; mov           (%rax),%r9
17462  DB  139,64,8                            ; mov           0x8(%rax),%eax
17463  DB  255,200                             ; dec           %eax
17464  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
17465  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
17466  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
17467  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
17468  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
17469  DB  102,65,15,112,216,78                ; pshufd        $0x4e,%xmm8,%xmm3
17470  DB  102,72,15,126,216                   ; movq          %xmm3,%rax
17471  DB  65,137,192                          ; mov           %eax,%r8d
17472  DB  72,193,232,32                       ; shr           $0x20,%rax
17473  DB  102,76,15,126,193                   ; movq          %xmm8,%rcx
17474  DB  65,137,202                          ; mov           %ecx,%r10d
17475  DB  72,193,233,32                       ; shr           $0x20,%rcx
17476  DB  243,69,15,16,4,137                  ; movss         (%r9,%rcx,4),%xmm8
17477  DB  243,65,15,16,28,129                 ; movss         (%r9,%rax,4),%xmm3
17478  DB  68,15,20,195                        ; unpcklps      %xmm3,%xmm8
17479  DB  243,67,15,16,28,145                 ; movss         (%r9,%r10,4),%xmm3
17480  DB  243,71,15,16,12,129                 ; movss         (%r9,%r8,4),%xmm9
17481  DB  65,15,20,217                        ; unpcklps      %xmm9,%xmm3
17482  DB  65,15,20,216                        ; unpcklps      %xmm8,%xmm3
17483  DB  72,173                              ; lods          %ds:(%rsi),%rax
17484  DB  255,224                             ; jmpq          *%rax
17485
17486PUBLIC _sk_parametric_r_sse2
17487_sk_parametric_r_sse2 LABEL PROC
17488  DB  72,173                              ; lods          %ds:(%rsi),%rax
17489  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
17490  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17491  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
17492  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
17493  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
17494  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
17495  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
17496  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
17497  DB  65,15,194,193,2                     ; cmpleps       %xmm9,%xmm0
17498  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
17499  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17500  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
17501  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
17502  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
17503  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17504  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
17505  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
17506  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
17507  DB  68,15,89,13,221,37,0,0              ; mulps         0x25dd(%rip),%xmm9        # 4430 <_sk_callback_sse2+0x52f>
17508  DB  68,15,84,21,229,37,0,0              ; andps         0x25e5(%rip),%xmm10        # 4440 <_sk_callback_sse2+0x53f>
17509  DB  68,15,86,21,237,37,0,0              ; orps          0x25ed(%rip),%xmm10        # 4450 <_sk_callback_sse2+0x54f>
17510  DB  68,15,88,13,245,37,0,0              ; addps         0x25f5(%rip),%xmm9        # 4460 <_sk_callback_sse2+0x55f>
17511  DB  68,15,40,37,253,37,0,0              ; movaps        0x25fd(%rip),%xmm12        # 4470 <_sk_callback_sse2+0x56f>
17512  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
17513  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17514  DB  68,15,88,21,253,37,0,0              ; addps         0x25fd(%rip),%xmm10        # 4480 <_sk_callback_sse2+0x57f>
17515  DB  68,15,40,37,5,38,0,0                ; movaps        0x2605(%rip),%xmm12        # 4490 <_sk_callback_sse2+0x58f>
17516  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
17517  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17518  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
17519  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
17520  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
17521  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17522  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
17523  DB  68,15,40,21,239,37,0,0              ; movaps        0x25ef(%rip),%xmm10        # 44a0 <_sk_callback_sse2+0x59f>
17524  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
17525  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
17526  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17527  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17528  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
17529  DB  68,15,88,13,227,37,0,0              ; addps         0x25e3(%rip),%xmm9        # 44b0 <_sk_callback_sse2+0x5af>
17530  DB  68,15,40,37,235,37,0,0              ; movaps        0x25eb(%rip),%xmm12        # 44c0 <_sk_callback_sse2+0x5bf>
17531  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
17532  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17533  DB  68,15,40,37,235,37,0,0              ; movaps        0x25eb(%rip),%xmm12        # 44d0 <_sk_callback_sse2+0x5cf>
17534  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17535  DB  68,15,40,45,239,37,0,0              ; movaps        0x25ef(%rip),%xmm13        # 44e0 <_sk_callback_sse2+0x5df>
17536  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
17537  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
17538  DB  68,15,89,45,239,37,0,0              ; mulps         0x25ef(%rip),%xmm13        # 44f0 <_sk_callback_sse2+0x5ef>
17539  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
17540  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
17541  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
17542  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
17543  DB  68,15,84,192                        ; andps         %xmm0,%xmm8
17544  DB  65,15,85,196                        ; andnps        %xmm12,%xmm0
17545  DB  65,15,86,192                        ; orps          %xmm8,%xmm0
17546  DB  65,15,95,195                        ; maxps         %xmm11,%xmm0
17547  DB  65,15,93,194                        ; minps         %xmm10,%xmm0
17548  DB  72,173                              ; lods          %ds:(%rsi),%rax
17549  DB  255,224                             ; jmpq          *%rax
17550
17551PUBLIC _sk_parametric_g_sse2
17552_sk_parametric_g_sse2 LABEL PROC
17553  DB  72,173                              ; lods          %ds:(%rsi),%rax
17554  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
17555  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17556  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
17557  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
17558  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
17559  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
17560  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
17561  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
17562  DB  65,15,194,201,2                     ; cmpleps       %xmm9,%xmm1
17563  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
17564  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17565  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
17566  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
17567  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
17568  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17569  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
17570  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
17571  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
17572  DB  68,15,89,13,111,37,0,0              ; mulps         0x256f(%rip),%xmm9        # 4500 <_sk_callback_sse2+0x5ff>
17573  DB  68,15,84,21,119,37,0,0              ; andps         0x2577(%rip),%xmm10        # 4510 <_sk_callback_sse2+0x60f>
17574  DB  68,15,86,21,127,37,0,0              ; orps          0x257f(%rip),%xmm10        # 4520 <_sk_callback_sse2+0x61f>
17575  DB  68,15,88,13,135,37,0,0              ; addps         0x2587(%rip),%xmm9        # 4530 <_sk_callback_sse2+0x62f>
17576  DB  68,15,40,37,143,37,0,0              ; movaps        0x258f(%rip),%xmm12        # 4540 <_sk_callback_sse2+0x63f>
17577  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
17578  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17579  DB  68,15,88,21,143,37,0,0              ; addps         0x258f(%rip),%xmm10        # 4550 <_sk_callback_sse2+0x64f>
17580  DB  68,15,40,37,151,37,0,0              ; movaps        0x2597(%rip),%xmm12        # 4560 <_sk_callback_sse2+0x65f>
17581  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
17582  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17583  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
17584  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
17585  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
17586  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17587  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
17588  DB  68,15,40,21,129,37,0,0              ; movaps        0x2581(%rip),%xmm10        # 4570 <_sk_callback_sse2+0x66f>
17589  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
17590  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
17591  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17592  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17593  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
17594  DB  68,15,88,13,117,37,0,0              ; addps         0x2575(%rip),%xmm9        # 4580 <_sk_callback_sse2+0x67f>
17595  DB  68,15,40,37,125,37,0,0              ; movaps        0x257d(%rip),%xmm12        # 4590 <_sk_callback_sse2+0x68f>
17596  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
17597  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17598  DB  68,15,40,37,125,37,0,0              ; movaps        0x257d(%rip),%xmm12        # 45a0 <_sk_callback_sse2+0x69f>
17599  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17600  DB  68,15,40,45,129,37,0,0              ; movaps        0x2581(%rip),%xmm13        # 45b0 <_sk_callback_sse2+0x6af>
17601  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
17602  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
17603  DB  68,15,89,45,129,37,0,0              ; mulps         0x2581(%rip),%xmm13        # 45c0 <_sk_callback_sse2+0x6bf>
17604  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
17605  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
17606  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
17607  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
17608  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
17609  DB  65,15,85,204                        ; andnps        %xmm12,%xmm1
17610  DB  65,15,86,200                        ; orps          %xmm8,%xmm1
17611  DB  65,15,95,203                        ; maxps         %xmm11,%xmm1
17612  DB  65,15,93,202                        ; minps         %xmm10,%xmm1
17613  DB  72,173                              ; lods          %ds:(%rsi),%rax
17614  DB  255,224                             ; jmpq          *%rax
17615
17616PUBLIC _sk_parametric_b_sse2
17617_sk_parametric_b_sse2 LABEL PROC
17618  DB  72,173                              ; lods          %ds:(%rsi),%rax
17619  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
17620  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17621  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
17622  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
17623  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
17624  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
17625  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
17626  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
17627  DB  65,15,194,209,2                     ; cmpleps       %xmm9,%xmm2
17628  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
17629  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17630  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
17631  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
17632  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
17633  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17634  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
17635  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
17636  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
17637  DB  68,15,89,13,1,37,0,0                ; mulps         0x2501(%rip),%xmm9        # 45d0 <_sk_callback_sse2+0x6cf>
17638  DB  68,15,84,21,9,37,0,0                ; andps         0x2509(%rip),%xmm10        # 45e0 <_sk_callback_sse2+0x6df>
17639  DB  68,15,86,21,17,37,0,0               ; orps          0x2511(%rip),%xmm10        # 45f0 <_sk_callback_sse2+0x6ef>
17640  DB  68,15,88,13,25,37,0,0               ; addps         0x2519(%rip),%xmm9        # 4600 <_sk_callback_sse2+0x6ff>
17641  DB  68,15,40,37,33,37,0,0               ; movaps        0x2521(%rip),%xmm12        # 4610 <_sk_callback_sse2+0x70f>
17642  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
17643  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17644  DB  68,15,88,21,33,37,0,0               ; addps         0x2521(%rip),%xmm10        # 4620 <_sk_callback_sse2+0x71f>
17645  DB  68,15,40,37,41,37,0,0               ; movaps        0x2529(%rip),%xmm12        # 4630 <_sk_callback_sse2+0x72f>
17646  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
17647  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17648  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
17649  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
17650  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
17651  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17652  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
17653  DB  68,15,40,21,19,37,0,0               ; movaps        0x2513(%rip),%xmm10        # 4640 <_sk_callback_sse2+0x73f>
17654  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
17655  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
17656  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17657  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17658  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
17659  DB  68,15,88,13,7,37,0,0                ; addps         0x2507(%rip),%xmm9        # 4650 <_sk_callback_sse2+0x74f>
17660  DB  68,15,40,37,15,37,0,0               ; movaps        0x250f(%rip),%xmm12        # 4660 <_sk_callback_sse2+0x75f>
17661  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
17662  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17663  DB  68,15,40,37,15,37,0,0               ; movaps        0x250f(%rip),%xmm12        # 4670 <_sk_callback_sse2+0x76f>
17664  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17665  DB  68,15,40,45,19,37,0,0               ; movaps        0x2513(%rip),%xmm13        # 4680 <_sk_callback_sse2+0x77f>
17666  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
17667  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
17668  DB  68,15,89,45,19,37,0,0               ; mulps         0x2513(%rip),%xmm13        # 4690 <_sk_callback_sse2+0x78f>
17669  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
17670  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
17671  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
17672  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
17673  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
17674  DB  65,15,85,212                        ; andnps        %xmm12,%xmm2
17675  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
17676  DB  65,15,95,211                        ; maxps         %xmm11,%xmm2
17677  DB  65,15,93,210                        ; minps         %xmm10,%xmm2
17678  DB  72,173                              ; lods          %ds:(%rsi),%rax
17679  DB  255,224                             ; jmpq          *%rax
17680
17681PUBLIC _sk_parametric_a_sse2
17682_sk_parametric_a_sse2 LABEL PROC
17683  DB  72,173                              ; lods          %ds:(%rsi),%rax
17684  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
17685  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17686  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
17687  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
17688  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
17689  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
17690  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
17691  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
17692  DB  65,15,194,217,2                     ; cmpleps       %xmm9,%xmm3
17693  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
17694  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17695  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
17696  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
17697  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
17698  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
17699  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
17700  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
17701  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
17702  DB  68,15,89,13,147,36,0,0              ; mulps         0x2493(%rip),%xmm9        # 46a0 <_sk_callback_sse2+0x79f>
17703  DB  68,15,84,21,155,36,0,0              ; andps         0x249b(%rip),%xmm10        # 46b0 <_sk_callback_sse2+0x7af>
17704  DB  68,15,86,21,163,36,0,0              ; orps          0x24a3(%rip),%xmm10        # 46c0 <_sk_callback_sse2+0x7bf>
17705  DB  68,15,88,13,171,36,0,0              ; addps         0x24ab(%rip),%xmm9        # 46d0 <_sk_callback_sse2+0x7cf>
17706  DB  68,15,40,37,179,36,0,0              ; movaps        0x24b3(%rip),%xmm12        # 46e0 <_sk_callback_sse2+0x7df>
17707  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
17708  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17709  DB  68,15,88,21,179,36,0,0              ; addps         0x24b3(%rip),%xmm10        # 46f0 <_sk_callback_sse2+0x7ef>
17710  DB  68,15,40,37,187,36,0,0              ; movaps        0x24bb(%rip),%xmm12        # 4700 <_sk_callback_sse2+0x7ff>
17711  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
17712  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17713  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
17714  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
17715  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
17716  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17717  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
17718  DB  68,15,40,21,165,36,0,0              ; movaps        0x24a5(%rip),%xmm10        # 4710 <_sk_callback_sse2+0x80f>
17719  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
17720  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
17721  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17722  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
17723  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
17724  DB  68,15,88,13,153,36,0,0              ; addps         0x2499(%rip),%xmm9        # 4720 <_sk_callback_sse2+0x81f>
17725  DB  68,15,40,37,161,36,0,0              ; movaps        0x24a1(%rip),%xmm12        # 4730 <_sk_callback_sse2+0x82f>
17726  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
17727  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
17728  DB  68,15,40,37,161,36,0,0              ; movaps        0x24a1(%rip),%xmm12        # 4740 <_sk_callback_sse2+0x83f>
17729  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
17730  DB  68,15,40,45,165,36,0,0              ; movaps        0x24a5(%rip),%xmm13        # 4750 <_sk_callback_sse2+0x84f>
17731  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
17732  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
17733  DB  68,15,89,45,165,36,0,0              ; mulps         0x24a5(%rip),%xmm13        # 4760 <_sk_callback_sse2+0x85f>
17734  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
17735  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
17736  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
17737  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
17738  DB  68,15,84,195                        ; andps         %xmm3,%xmm8
17739  DB  65,15,85,220                        ; andnps        %xmm12,%xmm3
17740  DB  65,15,86,216                        ; orps          %xmm8,%xmm3
17741  DB  65,15,95,219                        ; maxps         %xmm11,%xmm3
17742  DB  65,15,93,218                        ; minps         %xmm10,%xmm3
17743  DB  72,173                              ; lods          %ds:(%rsi),%rax
17744  DB  255,224                             ; jmpq          *%rax
17745
17746PUBLIC _sk_lab_to_xyz_sse2
17747_sk_lab_to_xyz_sse2 LABEL PROC
17748  DB  15,89,5,130,36,0,0                  ; mulps         0x2482(%rip),%xmm0        # 4770 <_sk_callback_sse2+0x86f>
17749  DB  68,15,40,5,138,36,0,0               ; movaps        0x248a(%rip),%xmm8        # 4780 <_sk_callback_sse2+0x87f>
17750  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
17751  DB  68,15,40,13,142,36,0,0              ; movaps        0x248e(%rip),%xmm9        # 4790 <_sk_callback_sse2+0x88f>
17752  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
17753  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
17754  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
17755  DB  15,88,5,139,36,0,0                  ; addps         0x248b(%rip),%xmm0        # 47a0 <_sk_callback_sse2+0x89f>
17756  DB  15,89,5,148,36,0,0                  ; mulps         0x2494(%rip),%xmm0        # 47b0 <_sk_callback_sse2+0x8af>
17757  DB  15,89,13,157,36,0,0                 ; mulps         0x249d(%rip),%xmm1        # 47c0 <_sk_callback_sse2+0x8bf>
17758  DB  15,88,200                           ; addps         %xmm0,%xmm1
17759  DB  15,89,21,163,36,0,0                 ; mulps         0x24a3(%rip),%xmm2        # 47d0 <_sk_callback_sse2+0x8cf>
17760  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
17761  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
17762  DB  68,15,40,225                        ; movaps        %xmm1,%xmm12
17763  DB  69,15,89,228                        ; mulps         %xmm12,%xmm12
17764  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
17765  DB  15,40,21,152,36,0,0                 ; movaps        0x2498(%rip),%xmm2        # 47e0 <_sk_callback_sse2+0x8df>
17766  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
17767  DB  69,15,194,196,1                     ; cmpltps       %xmm12,%xmm8
17768  DB  68,15,40,21,151,36,0,0              ; movaps        0x2497(%rip),%xmm10        # 47f0 <_sk_callback_sse2+0x8ef>
17769  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
17770  DB  68,15,40,29,155,36,0,0              ; movaps        0x249b(%rip),%xmm11        # 4800 <_sk_callback_sse2+0x8ff>
17771  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
17772  DB  69,15,84,224                        ; andps         %xmm8,%xmm12
17773  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
17774  DB  69,15,86,196                        ; orps          %xmm12,%xmm8
17775  DB  68,15,40,224                        ; movaps        %xmm0,%xmm12
17776  DB  69,15,89,228                        ; mulps         %xmm12,%xmm12
17777  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
17778  DB  15,40,202                           ; movaps        %xmm2,%xmm1
17779  DB  65,15,194,204,1                     ; cmpltps       %xmm12,%xmm1
17780  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
17781  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
17782  DB  68,15,84,225                        ; andps         %xmm1,%xmm12
17783  DB  15,85,200                           ; andnps        %xmm0,%xmm1
17784  DB  65,15,86,204                        ; orps          %xmm12,%xmm1
17785  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
17786  DB  15,89,192                           ; mulps         %xmm0,%xmm0
17787  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
17788  DB  15,194,208,1                        ; cmpltps       %xmm0,%xmm2
17789  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
17790  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
17791  DB  15,84,194                           ; andps         %xmm2,%xmm0
17792  DB  65,15,85,209                        ; andnps        %xmm9,%xmm2
17793  DB  15,86,208                           ; orps          %xmm0,%xmm2
17794  DB  68,15,89,5,75,36,0,0                ; mulps         0x244b(%rip),%xmm8        # 4810 <_sk_callback_sse2+0x90f>
17795  DB  15,89,21,84,36,0,0                  ; mulps         0x2454(%rip),%xmm2        # 4820 <_sk_callback_sse2+0x91f>
17796  DB  72,173                              ; lods          %ds:(%rsi),%rax
17797  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
17798  DB  255,224                             ; jmpq          *%rax
17799
17800PUBLIC _sk_load_a8_sse2
17801_sk_load_a8_sse2 LABEL PROC
17802  DB  72,173                              ; lods          %ds:(%rsi),%rax
17803  DB  72,139,0                            ; mov           (%rax),%rax
17804  DB  102,15,110,4,56                     ; movd          (%rax,%rdi,1),%xmm0
17805  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17806  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
17807  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
17808  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
17809  DB  15,89,29,60,36,0,0                  ; mulps         0x243c(%rip),%xmm3        # 4830 <_sk_callback_sse2+0x92f>
17810  DB  72,173                              ; lods          %ds:(%rsi),%rax
17811  DB  15,87,192                           ; xorps         %xmm0,%xmm0
17812  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17813  DB  15,87,210                           ; xorps         %xmm2,%xmm2
17814  DB  255,224                             ; jmpq          *%rax
17815
17816PUBLIC _sk_gather_a8_sse2
17817_sk_gather_a8_sse2 LABEL PROC
17818  DB  72,173                              ; lods          %ds:(%rsi),%rax
17819  DB  76,139,8                            ; mov           (%rax),%r9
17820  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
17821  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
17822  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
17823  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
17824  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
17825  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
17826  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
17827  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
17828  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
17829  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
17830  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
17831  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
17832  DB  65,137,192                          ; mov           %eax,%r8d
17833  DB  72,193,232,32                       ; shr           $0x20,%rax
17834  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
17835  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17836  DB  65,137,202                          ; mov           %ecx,%r10d
17837  DB  72,193,233,32                       ; shr           $0x20,%rcx
17838  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
17839  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
17840  DB  193,225,8                           ; shl           $0x8,%ecx
17841  DB  68,9,209                            ; or            %r10d,%ecx
17842  DB  71,15,182,4,1                       ; movzbl        (%r9,%r8,1),%r8d
17843  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
17844  DB  193,224,8                           ; shl           $0x8,%eax
17845  DB  68,9,192                            ; or            %r8d,%eax
17846  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
17847  DB  102,15,196,193,1                    ; pinsrw        $0x1,%ecx,%xmm0
17848  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17849  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
17850  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
17851  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
17852  DB  15,89,29,171,35,0,0                 ; mulps         0x23ab(%rip),%xmm3        # 4840 <_sk_callback_sse2+0x93f>
17853  DB  72,173                              ; lods          %ds:(%rsi),%rax
17854  DB  15,87,192                           ; xorps         %xmm0,%xmm0
17855  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17856  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
17857  DB  255,224                             ; jmpq          *%rax
17858
17859PUBLIC _sk_store_a8_sse2
17860_sk_store_a8_sse2 LABEL PROC
17861  DB  72,173                              ; lods          %ds:(%rsi),%rax
17862  DB  72,139,0                            ; mov           (%rax),%rax
17863  DB  68,15,40,5,159,35,0,0               ; movaps        0x239f(%rip),%xmm8        # 4850 <_sk_callback_sse2+0x94f>
17864  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
17865  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
17866  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
17867  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
17868  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
17869  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
17870  DB  102,68,15,126,4,56                  ; movd          %xmm8,(%rax,%rdi,1)
17871  DB  72,173                              ; lods          %ds:(%rsi),%rax
17872  DB  255,224                             ; jmpq          *%rax
17873
17874PUBLIC _sk_load_g8_sse2
17875_sk_load_g8_sse2 LABEL PROC
17876  DB  72,173                              ; lods          %ds:(%rsi),%rax
17877  DB  72,139,0                            ; mov           (%rax),%rax
17878  DB  102,15,110,4,56                     ; movd          (%rax,%rdi,1),%xmm0
17879  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17880  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
17881  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
17882  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17883  DB  15,89,5,102,35,0,0                  ; mulps         0x2366(%rip),%xmm0        # 4860 <_sk_callback_sse2+0x95f>
17884  DB  72,173                              ; lods          %ds:(%rsi),%rax
17885  DB  15,40,29,109,35,0,0                 ; movaps        0x236d(%rip),%xmm3        # 4870 <_sk_callback_sse2+0x96f>
17886  DB  15,40,200                           ; movaps        %xmm0,%xmm1
17887  DB  15,40,208                           ; movaps        %xmm0,%xmm2
17888  DB  255,224                             ; jmpq          *%rax
17889
17890PUBLIC _sk_gather_g8_sse2
17891_sk_gather_g8_sse2 LABEL PROC
17892  DB  72,173                              ; lods          %ds:(%rsi),%rax
17893  DB  76,139,8                            ; mov           (%rax),%r9
17894  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
17895  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
17896  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
17897  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
17898  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
17899  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
17900  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
17901  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
17902  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
17903  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
17904  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
17905  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
17906  DB  65,137,192                          ; mov           %eax,%r8d
17907  DB  72,193,232,32                       ; shr           $0x20,%rax
17908  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
17909  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17910  DB  65,137,202                          ; mov           %ecx,%r10d
17911  DB  72,193,233,32                       ; shr           $0x20,%rcx
17912  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
17913  DB  65,15,182,12,9                      ; movzbl        (%r9,%rcx,1),%ecx
17914  DB  193,225,8                           ; shl           $0x8,%ecx
17915  DB  68,9,209                            ; or            %r10d,%ecx
17916  DB  71,15,182,4,1                       ; movzbl        (%r9,%r8,1),%r8d
17917  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
17918  DB  193,224,8                           ; shl           $0x8,%eax
17919  DB  68,9,192                            ; or            %r8d,%eax
17920  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
17921  DB  102,15,196,193,1                    ; pinsrw        $0x1,%ecx,%xmm0
17922  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17923  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
17924  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
17925  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17926  DB  15,89,5,226,34,0,0                  ; mulps         0x22e2(%rip),%xmm0        # 4880 <_sk_callback_sse2+0x97f>
17927  DB  72,173                              ; lods          %ds:(%rsi),%rax
17928  DB  15,40,29,233,34,0,0                 ; movaps        0x22e9(%rip),%xmm3        # 4890 <_sk_callback_sse2+0x98f>
17929  DB  15,40,200                           ; movaps        %xmm0,%xmm1
17930  DB  15,40,208                           ; movaps        %xmm0,%xmm2
17931  DB  255,224                             ; jmpq          *%rax
17932
17933PUBLIC _sk_gather_i8_sse2
17934_sk_gather_i8_sse2 LABEL PROC
17935  DB  72,173                              ; lods          %ds:(%rsi),%rax
17936  DB  73,137,192                          ; mov           %rax,%r8
17937  DB  77,133,192                          ; test          %r8,%r8
17938  DB  116,5                               ; je            25be <_sk_gather_i8_sse2+0xf>
17939  DB  76,137,192                          ; mov           %r8,%rax
17940  DB  235,2                               ; jmp           25c0 <_sk_gather_i8_sse2+0x11>
17941  DB  72,173                              ; lods          %ds:(%rsi),%rax
17942  DB  76,139,16                           ; mov           (%rax),%r10
17943  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
17944  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
17945  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
17946  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
17947  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
17948  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
17949  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
17950  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
17951  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
17952  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
17953  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
17954  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
17955  DB  65,137,193                          ; mov           %eax,%r9d
17956  DB  72,193,232,32                       ; shr           $0x20,%rax
17957  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
17958  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17959  DB  65,137,203                          ; mov           %ecx,%r11d
17960  DB  72,193,233,32                       ; shr           $0x20,%rcx
17961  DB  71,15,182,28,26                     ; movzbl        (%r10,%r11,1),%r11d
17962  DB  65,15,182,12,10                     ; movzbl        (%r10,%rcx,1),%ecx
17963  DB  193,225,8                           ; shl           $0x8,%ecx
17964  DB  68,9,217                            ; or            %r11d,%ecx
17965  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
17966  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
17967  DB  193,224,8                           ; shl           $0x8,%eax
17968  DB  68,9,200                            ; or            %r9d,%eax
17969  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
17970  DB  102,15,196,193,1                    ; pinsrw        $0x1,%ecx,%xmm0
17971  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
17972  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
17973  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
17974  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
17975  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
17976  DB  68,15,182,200                       ; movzbl        %al,%r9d
17977  DB  72,193,232,32                       ; shr           $0x20,%rax
17978  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
17979  DB  77,139,64,8                         ; mov           0x8(%r8),%r8
17980  DB  68,15,182,209                       ; movzbl        %cl,%r10d
17981  DB  72,193,233,30                       ; shr           $0x1e,%rcx
17982  DB  102,65,15,110,4,8                   ; movd          (%r8,%rcx,1),%xmm0
17983  DB  102,65,15,110,12,128                ; movd          (%r8,%rax,4),%xmm1
17984  DB  102,15,98,193                       ; punpckldq     %xmm1,%xmm0
17985  DB  102,71,15,110,12,144                ; movd          (%r8,%r10,4),%xmm9
17986  DB  102,67,15,110,12,136                ; movd          (%r8,%r9,4),%xmm1
17987  DB  102,68,15,98,201                    ; punpckldq     %xmm1,%xmm9
17988  DB  102,68,15,98,200                    ; punpckldq     %xmm0,%xmm9
17989  DB  102,15,111,21,8,34,0,0              ; movdqa        0x2208(%rip),%xmm2        # 48a0 <_sk_callback_sse2+0x99f>
17990  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
17991  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
17992  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
17993  DB  68,15,40,5,4,34,0,0                 ; movaps        0x2204(%rip),%xmm8        # 48b0 <_sk_callback_sse2+0x9af>
17994  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
17995  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
17996  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
17997  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
17998  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
17999  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18000  DB  102,65,15,111,217                   ; movdqa        %xmm9,%xmm3
18001  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
18002  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
18003  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
18004  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
18005  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
18006  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
18007  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
18008  DB  72,173                              ; lods          %ds:(%rsi),%rax
18009  DB  255,224                             ; jmpq          *%rax
18010
18011PUBLIC _sk_load_565_sse2
18012_sk_load_565_sse2 LABEL PROC
18013  DB  72,173                              ; lods          %ds:(%rsi),%rax
18014  DB  72,139,0                            ; mov           (%rax),%rax
18015  DB  243,15,126,20,120                   ; movq          (%rax,%rdi,2),%xmm2
18016  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
18017  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
18018  DB  102,15,111,5,186,33,0,0             ; movdqa        0x21ba(%rip),%xmm0        # 48c0 <_sk_callback_sse2+0x9bf>
18019  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
18020  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
18021  DB  15,89,5,188,33,0,0                  ; mulps         0x21bc(%rip),%xmm0        # 48d0 <_sk_callback_sse2+0x9cf>
18022  DB  102,15,111,13,196,33,0,0            ; movdqa        0x21c4(%rip),%xmm1        # 48e0 <_sk_callback_sse2+0x9df>
18023  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
18024  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
18025  DB  15,89,13,198,33,0,0                 ; mulps         0x21c6(%rip),%xmm1        # 48f0 <_sk_callback_sse2+0x9ef>
18026  DB  102,15,219,21,206,33,0,0            ; pand          0x21ce(%rip),%xmm2        # 4900 <_sk_callback_sse2+0x9ff>
18027  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
18028  DB  15,89,21,212,33,0,0                 ; mulps         0x21d4(%rip),%xmm2        # 4910 <_sk_callback_sse2+0xa0f>
18029  DB  72,173                              ; lods          %ds:(%rsi),%rax
18030  DB  15,40,29,219,33,0,0                 ; movaps        0x21db(%rip),%xmm3        # 4920 <_sk_callback_sse2+0xa1f>
18031  DB  255,224                             ; jmpq          *%rax
18032
18033PUBLIC _sk_gather_565_sse2
18034_sk_gather_565_sse2 LABEL PROC
18035  DB  72,173                              ; lods          %ds:(%rsi),%rax
18036  DB  76,139,8                            ; mov           (%rax),%r9
18037  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
18038  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
18039  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
18040  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
18041  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
18042  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
18043  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
18044  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
18045  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
18046  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
18047  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
18048  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
18049  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
18050  DB  65,137,192                          ; mov           %eax,%r8d
18051  DB  72,193,232,32                       ; shr           $0x20,%rax
18052  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
18053  DB  65,137,202                          ; mov           %ecx,%r10d
18054  DB  72,193,233,32                       ; shr           $0x20,%rcx
18055  DB  102,67,15,196,20,81,0               ; pinsrw        $0x0,(%r9,%r10,2),%xmm2
18056  DB  102,65,15,196,20,73,1               ; pinsrw        $0x1,(%r9,%rcx,2),%xmm2
18057  DB  67,15,183,12,65                     ; movzwl        (%r9,%r8,2),%ecx
18058  DB  102,15,196,209,2                    ; pinsrw        $0x2,%ecx,%xmm2
18059  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
18060  DB  102,15,196,208,3                    ; pinsrw        $0x3,%eax,%xmm2
18061  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
18062  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
18063  DB  102,15,111,5,100,33,0,0             ; movdqa        0x2164(%rip),%xmm0        # 4930 <_sk_callback_sse2+0xa2f>
18064  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
18065  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
18066  DB  15,89,5,102,33,0,0                  ; mulps         0x2166(%rip),%xmm0        # 4940 <_sk_callback_sse2+0xa3f>
18067  DB  102,15,111,13,110,33,0,0            ; movdqa        0x216e(%rip),%xmm1        # 4950 <_sk_callback_sse2+0xa4f>
18068  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
18069  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
18070  DB  15,89,13,112,33,0,0                 ; mulps         0x2170(%rip),%xmm1        # 4960 <_sk_callback_sse2+0xa5f>
18071  DB  102,15,219,21,120,33,0,0            ; pand          0x2178(%rip),%xmm2        # 4970 <_sk_callback_sse2+0xa6f>
18072  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
18073  DB  15,89,21,126,33,0,0                 ; mulps         0x217e(%rip),%xmm2        # 4980 <_sk_callback_sse2+0xa7f>
18074  DB  72,173                              ; lods          %ds:(%rsi),%rax
18075  DB  15,40,29,133,33,0,0                 ; movaps        0x2185(%rip),%xmm3        # 4990 <_sk_callback_sse2+0xa8f>
18076  DB  255,224                             ; jmpq          *%rax
18077
18078PUBLIC _sk_store_565_sse2
18079_sk_store_565_sse2 LABEL PROC
18080  DB  72,173                              ; lods          %ds:(%rsi),%rax
18081  DB  72,139,0                            ; mov           (%rax),%rax
18082  DB  68,15,40,5,134,33,0,0               ; movaps        0x2186(%rip),%xmm8        # 49a0 <_sk_callback_sse2+0xa9f>
18083  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
18084  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
18085  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
18086  DB  102,65,15,114,241,11                ; pslld         $0xb,%xmm9
18087  DB  68,15,40,21,123,33,0,0              ; movaps        0x217b(%rip),%xmm10        # 49b0 <_sk_callback_sse2+0xaaf>
18088  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
18089  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
18090  DB  102,65,15,114,242,5                 ; pslld         $0x5,%xmm10
18091  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
18092  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
18093  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
18094  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
18095  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
18096  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
18097  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
18098  DB  102,68,15,214,4,120                 ; movq          %xmm8,(%rax,%rdi,2)
18099  DB  72,173                              ; lods          %ds:(%rsi),%rax
18100  DB  255,224                             ; jmpq          *%rax
18101
18102PUBLIC _sk_load_4444_sse2
18103_sk_load_4444_sse2 LABEL PROC
18104  DB  72,173                              ; lods          %ds:(%rsi),%rax
18105  DB  72,139,0                            ; mov           (%rax),%rax
18106  DB  243,15,126,28,120                   ; movq          (%rax,%rdi,2),%xmm3
18107  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
18108  DB  102,15,97,216                       ; punpcklwd     %xmm0,%xmm3
18109  DB  102,15,111,5,52,33,0,0              ; movdqa        0x2134(%rip),%xmm0        # 49c0 <_sk_callback_sse2+0xabf>
18110  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
18111  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
18112  DB  15,89,5,54,33,0,0                   ; mulps         0x2136(%rip),%xmm0        # 49d0 <_sk_callback_sse2+0xacf>
18113  DB  102,15,111,13,62,33,0,0             ; movdqa        0x213e(%rip),%xmm1        # 49e0 <_sk_callback_sse2+0xadf>
18114  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
18115  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
18116  DB  15,89,13,64,33,0,0                  ; mulps         0x2140(%rip),%xmm1        # 49f0 <_sk_callback_sse2+0xaef>
18117  DB  102,15,111,21,72,33,0,0             ; movdqa        0x2148(%rip),%xmm2        # 4a00 <_sk_callback_sse2+0xaff>
18118  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
18119  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
18120  DB  15,89,21,74,33,0,0                  ; mulps         0x214a(%rip),%xmm2        # 4a10 <_sk_callback_sse2+0xb0f>
18121  DB  102,15,219,29,82,33,0,0             ; pand          0x2152(%rip),%xmm3        # 4a20 <_sk_callback_sse2+0xb1f>
18122  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
18123  DB  15,89,29,88,33,0,0                  ; mulps         0x2158(%rip),%xmm3        # 4a30 <_sk_callback_sse2+0xb2f>
18124  DB  72,173                              ; lods          %ds:(%rsi),%rax
18125  DB  255,224                             ; jmpq          *%rax
18126
18127PUBLIC _sk_gather_4444_sse2
18128_sk_gather_4444_sse2 LABEL PROC
18129  DB  72,173                              ; lods          %ds:(%rsi),%rax
18130  DB  76,139,8                            ; mov           (%rax),%r9
18131  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
18132  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
18133  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
18134  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
18135  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
18136  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
18137  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
18138  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
18139  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
18140  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
18141  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
18142  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
18143  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
18144  DB  65,137,192                          ; mov           %eax,%r8d
18145  DB  72,193,232,32                       ; shr           $0x20,%rax
18146  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
18147  DB  65,137,202                          ; mov           %ecx,%r10d
18148  DB  72,193,233,32                       ; shr           $0x20,%rcx
18149  DB  102,67,15,196,28,81,0               ; pinsrw        $0x0,(%r9,%r10,2),%xmm3
18150  DB  102,65,15,196,28,73,1               ; pinsrw        $0x1,(%r9,%rcx,2),%xmm3
18151  DB  67,15,183,12,65                     ; movzwl        (%r9,%r8,2),%ecx
18152  DB  102,15,196,217,2                    ; pinsrw        $0x2,%ecx,%xmm3
18153  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
18154  DB  102,15,196,216,3                    ; pinsrw        $0x3,%eax,%xmm3
18155  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
18156  DB  102,15,97,216                       ; punpcklwd     %xmm0,%xmm3
18157  DB  102,15,111,5,223,32,0,0             ; movdqa        0x20df(%rip),%xmm0        # 4a40 <_sk_callback_sse2+0xb3f>
18158  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
18159  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
18160  DB  15,89,5,225,32,0,0                  ; mulps         0x20e1(%rip),%xmm0        # 4a50 <_sk_callback_sse2+0xb4f>
18161  DB  102,15,111,13,233,32,0,0            ; movdqa        0x20e9(%rip),%xmm1        # 4a60 <_sk_callback_sse2+0xb5f>
18162  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
18163  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
18164  DB  15,89,13,235,32,0,0                 ; mulps         0x20eb(%rip),%xmm1        # 4a70 <_sk_callback_sse2+0xb6f>
18165  DB  102,15,111,21,243,32,0,0            ; movdqa        0x20f3(%rip),%xmm2        # 4a80 <_sk_callback_sse2+0xb7f>
18166  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
18167  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
18168  DB  15,89,21,245,32,0,0                 ; mulps         0x20f5(%rip),%xmm2        # 4a90 <_sk_callback_sse2+0xb8f>
18169  DB  102,15,219,29,253,32,0,0            ; pand          0x20fd(%rip),%xmm3        # 4aa0 <_sk_callback_sse2+0xb9f>
18170  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
18171  DB  15,89,29,3,33,0,0                   ; mulps         0x2103(%rip),%xmm3        # 4ab0 <_sk_callback_sse2+0xbaf>
18172  DB  72,173                              ; lods          %ds:(%rsi),%rax
18173  DB  255,224                             ; jmpq          *%rax
18174
18175PUBLIC _sk_store_4444_sse2
18176_sk_store_4444_sse2 LABEL PROC
18177  DB  72,173                              ; lods          %ds:(%rsi),%rax
18178  DB  72,139,0                            ; mov           (%rax),%rax
18179  DB  68,15,40,5,2,33,0,0                 ; movaps        0x2102(%rip),%xmm8        # 4ac0 <_sk_callback_sse2+0xbbf>
18180  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
18181  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
18182  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
18183  DB  102,65,15,114,241,12                ; pslld         $0xc,%xmm9
18184  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
18185  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
18186  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
18187  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
18188  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
18189  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
18190  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
18191  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
18192  DB  102,65,15,114,241,4                 ; pslld         $0x4,%xmm9
18193  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
18194  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
18195  DB  102,69,15,86,193                    ; orpd          %xmm9,%xmm8
18196  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
18197  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
18198  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
18199  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
18200  DB  102,68,15,214,4,120                 ; movq          %xmm8,(%rax,%rdi,2)
18201  DB  72,173                              ; lods          %ds:(%rsi),%rax
18202  DB  255,224                             ; jmpq          *%rax
18203
18204PUBLIC _sk_load_8888_sse2
18205_sk_load_8888_sse2 LABEL PROC
18206  DB  72,173                              ; lods          %ds:(%rsi),%rax
18207  DB  72,139,0                            ; mov           (%rax),%rax
18208  DB  68,15,16,12,184                     ; movups        (%rax,%rdi,4),%xmm9
18209  DB  15,40,21,149,32,0,0                 ; movaps        0x2095(%rip),%xmm2        # 4ad0 <_sk_callback_sse2+0xbcf>
18210  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
18211  DB  15,84,194                           ; andps         %xmm2,%xmm0
18212  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
18213  DB  68,15,40,5,147,32,0,0               ; movaps        0x2093(%rip),%xmm8        # 4ae0 <_sk_callback_sse2+0xbdf>
18214  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18215  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
18216  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
18217  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
18218  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
18219  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18220  DB  65,15,40,217                        ; movaps        %xmm9,%xmm3
18221  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
18222  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
18223  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
18224  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
18225  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
18226  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
18227  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
18228  DB  72,173                              ; lods          %ds:(%rsi),%rax
18229  DB  255,224                             ; jmpq          *%rax
18230
18231PUBLIC _sk_gather_8888_sse2
18232_sk_gather_8888_sse2 LABEL PROC
18233  DB  72,173                              ; lods          %ds:(%rsi),%rax
18234  DB  76,139,8                            ; mov           (%rax),%r9
18235  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
18236  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
18237  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
18238  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
18239  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
18240  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
18241  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
18242  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
18243  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
18244  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
18245  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
18246  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
18247  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
18248  DB  65,137,192                          ; mov           %eax,%r8d
18249  DB  72,193,232,32                       ; shr           $0x20,%rax
18250  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
18251  DB  65,137,202                          ; mov           %ecx,%r10d
18252  DB  72,193,233,32                       ; shr           $0x20,%rcx
18253  DB  102,65,15,110,4,137                 ; movd          (%r9,%rcx,4),%xmm0
18254  DB  102,65,15,110,12,129                ; movd          (%r9,%rax,4),%xmm1
18255  DB  102,15,98,193                       ; punpckldq     %xmm1,%xmm0
18256  DB  102,71,15,110,12,145                ; movd          (%r9,%r10,4),%xmm9
18257  DB  102,67,15,110,12,129                ; movd          (%r9,%r8,4),%xmm1
18258  DB  102,68,15,98,201                    ; punpckldq     %xmm1,%xmm9
18259  DB  102,68,15,98,200                    ; punpckldq     %xmm0,%xmm9
18260  DB  102,15,111,21,228,31,0,0            ; movdqa        0x1fe4(%rip),%xmm2        # 4af0 <_sk_callback_sse2+0xbef>
18261  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
18262  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
18263  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
18264  DB  68,15,40,5,224,31,0,0               ; movaps        0x1fe0(%rip),%xmm8        # 4b00 <_sk_callback_sse2+0xbff>
18265  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18266  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
18267  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
18268  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
18269  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
18270  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18271  DB  102,65,15,111,217                   ; movdqa        %xmm9,%xmm3
18272  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
18273  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
18274  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
18275  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
18276  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
18277  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
18278  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
18279  DB  72,173                              ; lods          %ds:(%rsi),%rax
18280  DB  255,224                             ; jmpq          *%rax
18281
18282PUBLIC _sk_store_8888_sse2
18283_sk_store_8888_sse2 LABEL PROC
18284  DB  72,173                              ; lods          %ds:(%rsi),%rax
18285  DB  72,139,0                            ; mov           (%rax),%rax
18286  DB  68,15,40,5,163,31,0,0               ; movaps        0x1fa3(%rip),%xmm8        # 4b10 <_sk_callback_sse2+0xc0f>
18287  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
18288  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
18289  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
18290  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
18291  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
18292  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
18293  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
18294  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
18295  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
18296  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
18297  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
18298  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
18299  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
18300  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
18301  DB  102,65,15,114,240,24                ; pslld         $0x18,%xmm8
18302  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
18303  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
18304  DB  243,68,15,127,4,184                 ; movdqu        %xmm8,(%rax,%rdi,4)
18305  DB  72,173                              ; lods          %ds:(%rsi),%rax
18306  DB  255,224                             ; jmpq          *%rax
18307
18308PUBLIC _sk_load_f16_sse2
18309_sk_load_f16_sse2 LABEL PROC
18310  DB  72,173                              ; lods          %ds:(%rsi),%rax
18311  DB  72,139,0                            ; mov           (%rax),%rax
18312  DB  243,15,111,4,248                    ; movdqu        (%rax,%rdi,8),%xmm0
18313  DB  243,15,111,76,248,16                ; movdqu        0x10(%rax,%rdi,8),%xmm1
18314  DB  102,68,15,111,192                   ; movdqa        %xmm0,%xmm8
18315  DB  102,68,15,97,193                    ; punpcklwd     %xmm1,%xmm8
18316  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
18317  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
18318  DB  102,68,15,97,240                    ; punpcklwd     %xmm0,%xmm14
18319  DB  102,68,15,105,192                   ; punpckhwd     %xmm0,%xmm8
18320  DB  102,69,15,239,210                   ; pxor          %xmm10,%xmm10
18321  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
18322  DB  102,65,15,97,202                    ; punpcklwd     %xmm10,%xmm1
18323  DB  102,68,15,111,13,19,31,0,0          ; movdqa        0x1f13(%rip),%xmm9        # 4b20 <_sk_callback_sse2+0xc1f>
18324  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
18325  DB  102,65,15,219,193                   ; pand          %xmm9,%xmm0
18326  DB  102,15,239,200                      ; pxor          %xmm0,%xmm1
18327  DB  102,15,114,240,16                   ; pslld         $0x10,%xmm0
18328  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
18329  DB  102,65,15,114,245,13                ; pslld         $0xd,%xmm13
18330  DB  102,68,15,235,232                   ; por           %xmm0,%xmm13
18331  DB  102,68,15,111,29,248,30,0,0         ; movdqa        0x1ef8(%rip),%xmm11        # 4b30 <_sk_callback_sse2+0xc2f>
18332  DB  102,69,15,254,235                   ; paddd         %xmm11,%xmm13
18333  DB  102,68,15,111,37,250,30,0,0         ; movdqa        0x1efa(%rip),%xmm12        # 4b40 <_sk_callback_sse2+0xc3f>
18334  DB  102,65,15,239,204                   ; pxor          %xmm12,%xmm1
18335  DB  102,15,111,29,253,30,0,0            ; movdqa        0x1efd(%rip),%xmm3        # 4b50 <_sk_callback_sse2+0xc4f>
18336  DB  102,15,111,195                      ; movdqa        %xmm3,%xmm0
18337  DB  102,15,102,193                      ; pcmpgtd       %xmm1,%xmm0
18338  DB  102,65,15,223,197                   ; pandn         %xmm13,%xmm0
18339  DB  102,65,15,115,222,8                 ; psrldq        $0x8,%xmm14
18340  DB  102,69,15,97,242                    ; punpcklwd     %xmm10,%xmm14
18341  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
18342  DB  102,65,15,219,201                   ; pand          %xmm9,%xmm1
18343  DB  102,68,15,239,241                   ; pxor          %xmm1,%xmm14
18344  DB  102,15,114,241,16                   ; pslld         $0x10,%xmm1
18345  DB  102,65,15,111,214                   ; movdqa        %xmm14,%xmm2
18346  DB  102,15,114,242,13                   ; pslld         $0xd,%xmm2
18347  DB  102,15,235,209                      ; por           %xmm1,%xmm2
18348  DB  102,65,15,254,211                   ; paddd         %xmm11,%xmm2
18349  DB  102,69,15,239,244                   ; pxor          %xmm12,%xmm14
18350  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
18351  DB  102,65,15,102,206                   ; pcmpgtd       %xmm14,%xmm1
18352  DB  102,15,223,202                      ; pandn         %xmm2,%xmm1
18353  DB  102,69,15,111,232                   ; movdqa        %xmm8,%xmm13
18354  DB  102,69,15,97,234                    ; punpcklwd     %xmm10,%xmm13
18355  DB  102,65,15,111,213                   ; movdqa        %xmm13,%xmm2
18356  DB  102,65,15,219,209                   ; pand          %xmm9,%xmm2
18357  DB  102,68,15,239,234                   ; pxor          %xmm2,%xmm13
18358  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
18359  DB  102,69,15,111,245                   ; movdqa        %xmm13,%xmm14
18360  DB  102,65,15,114,246,13                ; pslld         $0xd,%xmm14
18361  DB  102,68,15,235,242                   ; por           %xmm2,%xmm14
18362  DB  102,69,15,254,243                   ; paddd         %xmm11,%xmm14
18363  DB  102,69,15,239,236                   ; pxor          %xmm12,%xmm13
18364  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
18365  DB  102,65,15,102,213                   ; pcmpgtd       %xmm13,%xmm2
18366  DB  102,65,15,223,214                   ; pandn         %xmm14,%xmm2
18367  DB  102,65,15,115,216,8                 ; psrldq        $0x8,%xmm8
18368  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
18369  DB  102,69,15,219,200                   ; pand          %xmm8,%xmm9
18370  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
18371  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
18372  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
18373  DB  102,65,15,114,242,13                ; pslld         $0xd,%xmm10
18374  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
18375  DB  102,69,15,254,211                   ; paddd         %xmm11,%xmm10
18376  DB  102,69,15,239,196                   ; pxor          %xmm12,%xmm8
18377  DB  102,65,15,102,216                   ; pcmpgtd       %xmm8,%xmm3
18378  DB  102,65,15,223,218                   ; pandn         %xmm10,%xmm3
18379  DB  72,173                              ; lods          %ds:(%rsi),%rax
18380  DB  255,224                             ; jmpq          *%rax
18381
18382PUBLIC _sk_gather_f16_sse2
18383_sk_gather_f16_sse2 LABEL PROC
18384  DB  72,173                              ; lods          %ds:(%rsi),%rax
18385  DB  76,139,8                            ; mov           (%rax),%r9
18386  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
18387  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
18388  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
18389  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
18390  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
18391  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
18392  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
18393  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
18394  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
18395  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
18396  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
18397  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
18398  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
18399  DB  65,137,192                          ; mov           %eax,%r8d
18400  DB  72,193,232,32                       ; shr           $0x20,%rax
18401  DB  102,72,15,126,193                   ; movq          %xmm0,%rcx
18402  DB  65,137,202                          ; mov           %ecx,%r10d
18403  DB  72,193,233,32                       ; shr           $0x20,%rcx
18404  DB  243,65,15,126,4,201                 ; movq          (%r9,%rcx,8),%xmm0
18405  DB  243,67,15,126,12,209                ; movq          (%r9,%r10,8),%xmm1
18406  DB  102,15,108,200                      ; punpcklqdq    %xmm0,%xmm1
18407  DB  243,65,15,126,4,193                 ; movq          (%r9,%rax,8),%xmm0
18408  DB  243,67,15,126,20,193                ; movq          (%r9,%r8,8),%xmm2
18409  DB  102,15,108,208                      ; punpcklqdq    %xmm0,%xmm2
18410  DB  102,68,15,111,193                   ; movdqa        %xmm1,%xmm8
18411  DB  102,68,15,97,194                    ; punpcklwd     %xmm2,%xmm8
18412  DB  102,15,105,202                      ; punpckhwd     %xmm2,%xmm1
18413  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
18414  DB  102,68,15,97,241                    ; punpcklwd     %xmm1,%xmm14
18415  DB  102,68,15,105,193                   ; punpckhwd     %xmm1,%xmm8
18416  DB  102,69,15,239,210                   ; pxor          %xmm10,%xmm10
18417  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
18418  DB  102,65,15,97,202                    ; punpcklwd     %xmm10,%xmm1
18419  DB  102,68,15,111,13,139,29,0,0         ; movdqa        0x1d8b(%rip),%xmm9        # 4b60 <_sk_callback_sse2+0xc5f>
18420  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
18421  DB  102,65,15,219,193                   ; pand          %xmm9,%xmm0
18422  DB  102,15,239,200                      ; pxor          %xmm0,%xmm1
18423  DB  102,15,114,240,16                   ; pslld         $0x10,%xmm0
18424  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
18425  DB  102,65,15,114,245,13                ; pslld         $0xd,%xmm13
18426  DB  102,68,15,235,232                   ; por           %xmm0,%xmm13
18427  DB  102,68,15,111,29,112,29,0,0         ; movdqa        0x1d70(%rip),%xmm11        # 4b70 <_sk_callback_sse2+0xc6f>
18428  DB  102,69,15,254,235                   ; paddd         %xmm11,%xmm13
18429  DB  102,68,15,111,37,114,29,0,0         ; movdqa        0x1d72(%rip),%xmm12        # 4b80 <_sk_callback_sse2+0xc7f>
18430  DB  102,65,15,239,204                   ; pxor          %xmm12,%xmm1
18431  DB  102,15,111,29,117,29,0,0            ; movdqa        0x1d75(%rip),%xmm3        # 4b90 <_sk_callback_sse2+0xc8f>
18432  DB  102,15,111,195                      ; movdqa        %xmm3,%xmm0
18433  DB  102,15,102,193                      ; pcmpgtd       %xmm1,%xmm0
18434  DB  102,65,15,223,197                   ; pandn         %xmm13,%xmm0
18435  DB  102,65,15,115,222,8                 ; psrldq        $0x8,%xmm14
18436  DB  102,69,15,97,242                    ; punpcklwd     %xmm10,%xmm14
18437  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
18438  DB  102,65,15,219,201                   ; pand          %xmm9,%xmm1
18439  DB  102,68,15,239,241                   ; pxor          %xmm1,%xmm14
18440  DB  102,15,114,241,16                   ; pslld         $0x10,%xmm1
18441  DB  102,65,15,111,214                   ; movdqa        %xmm14,%xmm2
18442  DB  102,15,114,242,13                   ; pslld         $0xd,%xmm2
18443  DB  102,15,235,209                      ; por           %xmm1,%xmm2
18444  DB  102,65,15,254,211                   ; paddd         %xmm11,%xmm2
18445  DB  102,69,15,239,244                   ; pxor          %xmm12,%xmm14
18446  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
18447  DB  102,65,15,102,206                   ; pcmpgtd       %xmm14,%xmm1
18448  DB  102,15,223,202                      ; pandn         %xmm2,%xmm1
18449  DB  102,69,15,111,232                   ; movdqa        %xmm8,%xmm13
18450  DB  102,69,15,97,234                    ; punpcklwd     %xmm10,%xmm13
18451  DB  102,65,15,111,213                   ; movdqa        %xmm13,%xmm2
18452  DB  102,65,15,219,209                   ; pand          %xmm9,%xmm2
18453  DB  102,68,15,239,234                   ; pxor          %xmm2,%xmm13
18454  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
18455  DB  102,69,15,111,245                   ; movdqa        %xmm13,%xmm14
18456  DB  102,65,15,114,246,13                ; pslld         $0xd,%xmm14
18457  DB  102,68,15,235,242                   ; por           %xmm2,%xmm14
18458  DB  102,69,15,254,243                   ; paddd         %xmm11,%xmm14
18459  DB  102,69,15,239,236                   ; pxor          %xmm12,%xmm13
18460  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
18461  DB  102,65,15,102,213                   ; pcmpgtd       %xmm13,%xmm2
18462  DB  102,65,15,223,214                   ; pandn         %xmm14,%xmm2
18463  DB  102,65,15,115,216,8                 ; psrldq        $0x8,%xmm8
18464  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
18465  DB  102,69,15,219,200                   ; pand          %xmm8,%xmm9
18466  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
18467  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
18468  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
18469  DB  102,65,15,114,242,13                ; pslld         $0xd,%xmm10
18470  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
18471  DB  102,69,15,254,211                   ; paddd         %xmm11,%xmm10
18472  DB  102,69,15,239,196                   ; pxor          %xmm12,%xmm8
18473  DB  102,65,15,102,216                   ; pcmpgtd       %xmm8,%xmm3
18474  DB  102,65,15,223,218                   ; pandn         %xmm10,%xmm3
18475  DB  72,173                              ; lods          %ds:(%rsi),%rax
18476  DB  255,224                             ; jmpq          *%rax
18477
18478PUBLIC _sk_store_f16_sse2
18479_sk_store_f16_sse2 LABEL PROC
18480  DB  72,173                              ; lods          %ds:(%rsi),%rax
18481  DB  72,139,0                            ; mov           (%rax),%rax
18482  DB  102,68,15,111,21,157,28,0,0         ; movdqa        0x1c9d(%rip),%xmm10        # 4ba0 <_sk_callback_sse2+0xc9f>
18483  DB  102,68,15,111,224                   ; movdqa        %xmm0,%xmm12
18484  DB  102,68,15,111,232                   ; movdqa        %xmm0,%xmm13
18485  DB  102,69,15,219,234                   ; pand          %xmm10,%xmm13
18486  DB  102,69,15,239,229                   ; pxor          %xmm13,%xmm12
18487  DB  102,68,15,111,13,144,28,0,0         ; movdqa        0x1c90(%rip),%xmm9        # 4bb0 <_sk_callback_sse2+0xcaf>
18488  DB  102,65,15,114,213,16                ; psrld         $0x10,%xmm13
18489  DB  102,69,15,111,193                   ; movdqa        %xmm9,%xmm8
18490  DB  102,69,15,102,196                   ; pcmpgtd       %xmm12,%xmm8
18491  DB  102,65,15,114,212,13                ; psrld         $0xd,%xmm12
18492  DB  102,68,15,111,29,129,28,0,0         ; movdqa        0x1c81(%rip),%xmm11        # 4bc0 <_sk_callback_sse2+0xcbf>
18493  DB  102,69,15,235,235                   ; por           %xmm11,%xmm13
18494  DB  102,69,15,254,236                   ; paddd         %xmm12,%xmm13
18495  DB  102,65,15,114,245,16                ; pslld         $0x10,%xmm13
18496  DB  102,65,15,114,229,16                ; psrad         $0x10,%xmm13
18497  DB  102,69,15,223,197                   ; pandn         %xmm13,%xmm8
18498  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
18499  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
18500  DB  102,68,15,111,241                   ; movdqa        %xmm1,%xmm14
18501  DB  102,69,15,219,242                   ; pand          %xmm10,%xmm14
18502  DB  102,69,15,239,238                   ; pxor          %xmm14,%xmm13
18503  DB  102,65,15,114,214,16                ; psrld         $0x10,%xmm14
18504  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
18505  DB  102,69,15,102,229                   ; pcmpgtd       %xmm13,%xmm12
18506  DB  102,65,15,114,213,13                ; psrld         $0xd,%xmm13
18507  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
18508  DB  102,69,15,254,245                   ; paddd         %xmm13,%xmm14
18509  DB  102,65,15,114,246,16                ; pslld         $0x10,%xmm14
18510  DB  102,65,15,114,230,16                ; psrad         $0x10,%xmm14
18511  DB  102,69,15,223,230                   ; pandn         %xmm14,%xmm12
18512  DB  102,69,15,107,228                   ; packssdw      %xmm12,%xmm12
18513  DB  102,68,15,111,242                   ; movdqa        %xmm2,%xmm14
18514  DB  102,68,15,111,250                   ; movdqa        %xmm2,%xmm15
18515  DB  102,69,15,219,250                   ; pand          %xmm10,%xmm15
18516  DB  102,69,15,239,247                   ; pxor          %xmm15,%xmm14
18517  DB  102,65,15,114,215,16                ; psrld         $0x10,%xmm15
18518  DB  102,69,15,111,233                   ; movdqa        %xmm9,%xmm13
18519  DB  102,69,15,102,238                   ; pcmpgtd       %xmm14,%xmm13
18520  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
18521  DB  102,69,15,235,251                   ; por           %xmm11,%xmm15
18522  DB  102,69,15,254,254                   ; paddd         %xmm14,%xmm15
18523  DB  102,65,15,114,247,16                ; pslld         $0x10,%xmm15
18524  DB  102,65,15,114,231,16                ; psrad         $0x10,%xmm15
18525  DB  102,69,15,223,239                   ; pandn         %xmm15,%xmm13
18526  DB  102,69,15,107,237                   ; packssdw      %xmm13,%xmm13
18527  DB  102,68,15,219,211                   ; pand          %xmm3,%xmm10
18528  DB  102,68,15,111,243                   ; movdqa        %xmm3,%xmm14
18529  DB  102,69,15,239,242                   ; pxor          %xmm10,%xmm14
18530  DB  102,65,15,114,210,16                ; psrld         $0x10,%xmm10
18531  DB  102,69,15,102,206                   ; pcmpgtd       %xmm14,%xmm9
18532  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
18533  DB  102,69,15,235,211                   ; por           %xmm11,%xmm10
18534  DB  102,69,15,254,214                   ; paddd         %xmm14,%xmm10
18535  DB  102,65,15,114,242,16                ; pslld         $0x10,%xmm10
18536  DB  102,65,15,114,226,16                ; psrad         $0x10,%xmm10
18537  DB  102,69,15,223,202                   ; pandn         %xmm10,%xmm9
18538  DB  102,69,15,107,201                   ; packssdw      %xmm9,%xmm9
18539  DB  102,69,15,97,196                    ; punpcklwd     %xmm12,%xmm8
18540  DB  102,69,15,97,233                    ; punpcklwd     %xmm9,%xmm13
18541  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
18542  DB  102,69,15,98,205                    ; punpckldq     %xmm13,%xmm9
18543  DB  243,68,15,127,12,248                ; movdqu        %xmm9,(%rax,%rdi,8)
18544  DB  102,69,15,106,197                   ; punpckhdq     %xmm13,%xmm8
18545  DB  243,68,15,127,68,248,16             ; movdqu        %xmm8,0x10(%rax,%rdi,8)
18546  DB  72,173                              ; lods          %ds:(%rsi),%rax
18547  DB  255,224                             ; jmpq          *%rax
18548
18549PUBLIC _sk_load_u16_be_sse2
18550_sk_load_u16_be_sse2 LABEL PROC
18551  DB  72,173                              ; lods          %ds:(%rsi),%rax
18552  DB  72,139,0                            ; mov           (%rax),%rax
18553  DB  243,15,111,4,248                    ; movdqu        (%rax,%rdi,8),%xmm0
18554  DB  243,15,111,76,248,16                ; movdqu        0x10(%rax,%rdi,8),%xmm1
18555  DB  102,15,111,208                      ; movdqa        %xmm0,%xmm2
18556  DB  102,15,97,209                       ; punpcklwd     %xmm1,%xmm2
18557  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
18558  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
18559  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
18560  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
18561  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
18562  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
18563  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
18564  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
18565  DB  102,15,235,200                      ; por           %xmm0,%xmm1
18566  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
18567  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
18568  DB  15,91,193                           ; cvtdq2ps      %xmm1,%xmm0
18569  DB  68,15,40,5,31,27,0,0                ; movaps        0x1b1f(%rip),%xmm8        # 4bd0 <_sk_callback_sse2+0xccf>
18570  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18571  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
18572  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
18573  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
18574  DB  102,15,235,217                      ; por           %xmm1,%xmm3
18575  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
18576  DB  15,91,203                           ; cvtdq2ps      %xmm3,%xmm1
18577  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18578  DB  102,68,15,111,210                   ; movdqa        %xmm2,%xmm10
18579  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
18580  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
18581  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
18582  DB  102,65,15,235,210                   ; por           %xmm10,%xmm2
18583  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
18584  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
18585  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
18586  DB  102,68,15,111,211                   ; movdqa        %xmm3,%xmm10
18587  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
18588  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
18589  DB  102,65,15,235,218                   ; por           %xmm10,%xmm3
18590  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
18591  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
18592  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
18593  DB  72,173                              ; lods          %ds:(%rsi),%rax
18594  DB  255,224                             ; jmpq          *%rax
18595
18596PUBLIC _sk_load_rgb_u16_be_sse2
18597_sk_load_rgb_u16_be_sse2 LABEL PROC
18598  DB  72,173                              ; lods          %ds:(%rsi),%rax
18599  DB  72,139,0                            ; mov           (%rax),%rax
18600  DB  72,141,12,127                       ; lea           (%rdi,%rdi,2),%rcx
18601  DB  243,15,111,20,72                    ; movdqu        (%rax,%rcx,2),%xmm2
18602  DB  243,15,111,68,72,8                  ; movdqu        0x8(%rax,%rcx,2),%xmm0
18603  DB  102,15,115,216,4                    ; psrldq        $0x4,%xmm0
18604  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
18605  DB  102,15,115,217,6                    ; psrldq        $0x6,%xmm1
18606  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
18607  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
18608  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
18609  DB  102,15,111,194                      ; movdqa        %xmm2,%xmm0
18610  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
18611  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
18612  DB  102,15,105,209                      ; punpckhwd     %xmm1,%xmm2
18613  DB  102,15,111,200                      ; movdqa        %xmm0,%xmm1
18614  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
18615  DB  102,15,113,208,8                    ; psrlw         $0x8,%xmm0
18616  DB  102,15,235,193                      ; por           %xmm1,%xmm0
18617  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
18618  DB  102,65,15,97,192                    ; punpcklwd     %xmm8,%xmm0
18619  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
18620  DB  68,15,40,13,91,26,0,0               ; movaps        0x1a5b(%rip),%xmm9        # 4be0 <_sk_callback_sse2+0xcdf>
18621  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
18622  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
18623  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
18624  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
18625  DB  102,15,235,217                      ; por           %xmm1,%xmm3
18626  DB  102,65,15,97,216                    ; punpcklwd     %xmm8,%xmm3
18627  DB  15,91,203                           ; cvtdq2ps      %xmm3,%xmm1
18628  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
18629  DB  102,15,111,218                      ; movdqa        %xmm2,%xmm3
18630  DB  102,15,113,243,8                    ; psllw         $0x8,%xmm3
18631  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
18632  DB  102,15,235,211                      ; por           %xmm3,%xmm2
18633  DB  102,65,15,97,208                    ; punpcklwd     %xmm8,%xmm2
18634  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
18635  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
18636  DB  72,173                              ; lods          %ds:(%rsi),%rax
18637  DB  15,40,29,34,26,0,0                  ; movaps        0x1a22(%rip),%xmm3        # 4bf0 <_sk_callback_sse2+0xcef>
18638  DB  255,224                             ; jmpq          *%rax
18639
18640PUBLIC _sk_store_u16_be_sse2
18641_sk_store_u16_be_sse2 LABEL PROC
18642  DB  72,173                              ; lods          %ds:(%rsi),%rax
18643  DB  72,139,0                            ; mov           (%rax),%rax
18644  DB  68,15,40,13,35,26,0,0               ; movaps        0x1a23(%rip),%xmm9        # 4c00 <_sk_callback_sse2+0xcff>
18645  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18646  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
18647  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
18648  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
18649  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
18650  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
18651  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
18652  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
18653  DB  102,65,15,113,208,8                 ; psrlw         $0x8,%xmm8
18654  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
18655  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
18656  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18657  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
18658  DB  102,65,15,114,242,16                ; pslld         $0x10,%xmm10
18659  DB  102,65,15,114,226,16                ; psrad         $0x10,%xmm10
18660  DB  102,69,15,107,210                   ; packssdw      %xmm10,%xmm10
18661  DB  102,69,15,111,218                   ; movdqa        %xmm10,%xmm11
18662  DB  102,65,15,113,243,8                 ; psllw         $0x8,%xmm11
18663  DB  102,65,15,113,210,8                 ; psrlw         $0x8,%xmm10
18664  DB  102,69,15,235,211                   ; por           %xmm11,%xmm10
18665  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
18666  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
18667  DB  102,69,15,91,219                    ; cvtps2dq      %xmm11,%xmm11
18668  DB  102,65,15,114,243,16                ; pslld         $0x10,%xmm11
18669  DB  102,65,15,114,227,16                ; psrad         $0x10,%xmm11
18670  DB  102,69,15,107,219                   ; packssdw      %xmm11,%xmm11
18671  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
18672  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
18673  DB  102,65,15,113,211,8                 ; psrlw         $0x8,%xmm11
18674  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
18675  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
18676  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
18677  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
18678  DB  102,65,15,114,225,16                ; psrad         $0x10,%xmm9
18679  DB  102,69,15,107,201                   ; packssdw      %xmm9,%xmm9
18680  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
18681  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
18682  DB  102,65,15,113,209,8                 ; psrlw         $0x8,%xmm9
18683  DB  102,69,15,235,204                   ; por           %xmm12,%xmm9
18684  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
18685  DB  102,69,15,97,217                    ; punpcklwd     %xmm9,%xmm11
18686  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
18687  DB  102,69,15,98,203                    ; punpckldq     %xmm11,%xmm9
18688  DB  243,68,15,127,12,248                ; movdqu        %xmm9,(%rax,%rdi,8)
18689  DB  102,69,15,106,195                   ; punpckhdq     %xmm11,%xmm8
18690  DB  243,68,15,127,68,248,16             ; movdqu        %xmm8,0x10(%rax,%rdi,8)
18691  DB  72,173                              ; lods          %ds:(%rsi),%rax
18692  DB  255,224                             ; jmpq          *%rax
18693
18694PUBLIC _sk_load_f32_sse2
18695_sk_load_f32_sse2 LABEL PROC
18696  DB  72,173                              ; lods          %ds:(%rsi),%rax
18697  DB  72,139,0                            ; mov           (%rax),%rax
18698  DB  72,137,249                          ; mov           %rdi,%rcx
18699  DB  72,193,225,4                        ; shl           $0x4,%rcx
18700  DB  68,15,16,4,8                        ; movups        (%rax,%rcx,1),%xmm8
18701  DB  15,16,68,8,16                       ; movups        0x10(%rax,%rcx,1),%xmm0
18702  DB  15,16,92,8,32                       ; movups        0x20(%rax,%rcx,1),%xmm3
18703  DB  68,15,16,76,8,48                    ; movups        0x30(%rax,%rcx,1),%xmm9
18704  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
18705  DB  15,20,208                           ; unpcklps      %xmm0,%xmm2
18706  DB  15,40,203                           ; movaps        %xmm3,%xmm1
18707  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
18708  DB  68,15,21,192                        ; unpckhps      %xmm0,%xmm8
18709  DB  65,15,21,217                        ; unpckhps      %xmm9,%xmm3
18710  DB  15,40,194                           ; movaps        %xmm2,%xmm0
18711  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
18712  DB  15,18,202                           ; movhlps       %xmm2,%xmm1
18713  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
18714  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
18715  DB  65,15,18,216                        ; movhlps       %xmm8,%xmm3
18716  DB  72,173                              ; lods          %ds:(%rsi),%rax
18717  DB  255,224                             ; jmpq          *%rax
18718
18719PUBLIC _sk_store_f32_sse2
18720_sk_store_f32_sse2 LABEL PROC
18721  DB  72,173                              ; lods          %ds:(%rsi),%rax
18722  DB  72,139,0                            ; mov           (%rax),%rax
18723  DB  72,137,249                          ; mov           %rdi,%rcx
18724  DB  72,193,225,4                        ; shl           $0x4,%rcx
18725  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18726  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
18727  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
18728  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
18729  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
18730  DB  68,15,20,219                        ; unpcklps      %xmm3,%xmm11
18731  DB  68,15,21,193                        ; unpckhps      %xmm1,%xmm8
18732  DB  68,15,21,211                        ; unpckhps      %xmm3,%xmm10
18733  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
18734  DB  102,69,15,20,227                    ; unpcklpd      %xmm11,%xmm12
18735  DB  69,15,18,217                        ; movhlps       %xmm9,%xmm11
18736  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18737  DB  102,69,15,20,202                    ; unpcklpd      %xmm10,%xmm9
18738  DB  69,15,18,208                        ; movhlps       %xmm8,%xmm10
18739  DB  102,68,15,17,36,8                   ; movupd        %xmm12,(%rax,%rcx,1)
18740  DB  68,15,17,92,8,16                    ; movups        %xmm11,0x10(%rax,%rcx,1)
18741  DB  102,68,15,17,76,8,32                ; movupd        %xmm9,0x20(%rax,%rcx,1)
18742  DB  68,15,17,84,8,48                    ; movups        %xmm10,0x30(%rax,%rcx,1)
18743  DB  72,173                              ; lods          %ds:(%rsi),%rax
18744  DB  255,224                             ; jmpq          *%rax
18745
18746PUBLIC _sk_clamp_x_sse2
18747_sk_clamp_x_sse2 LABEL PROC
18748  DB  72,173                              ; lods          %ds:(%rsi),%rax
18749  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
18750  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
18751  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
18752  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18753  DB  102,15,118,192                      ; pcmpeqd       %xmm0,%xmm0
18754  DB  102,65,15,254,193                   ; paddd         %xmm9,%xmm0
18755  DB  68,15,93,192                        ; minps         %xmm0,%xmm8
18756  DB  72,173                              ; lods          %ds:(%rsi),%rax
18757  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
18758  DB  255,224                             ; jmpq          *%rax
18759
18760PUBLIC _sk_clamp_y_sse2
18761_sk_clamp_y_sse2 LABEL PROC
18762  DB  72,173                              ; lods          %ds:(%rsi),%rax
18763  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
18764  DB  68,15,95,193                        ; maxps         %xmm1,%xmm8
18765  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
18766  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18767  DB  102,15,118,201                      ; pcmpeqd       %xmm1,%xmm1
18768  DB  102,65,15,254,201                   ; paddd         %xmm9,%xmm1
18769  DB  68,15,93,193                        ; minps         %xmm1,%xmm8
18770  DB  72,173                              ; lods          %ds:(%rsi),%rax
18771  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
18772  DB  255,224                             ; jmpq          *%rax
18773
18774PUBLIC _sk_repeat_x_sse2
18775_sk_repeat_x_sse2 LABEL PROC
18776  DB  72,173                              ; lods          %ds:(%rsi),%rax
18777  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
18778  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
18779  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
18780  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
18781  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
18782  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
18783  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
18784  DB  68,15,84,13,13,24,0,0               ; andps         0x180d(%rip),%xmm9        # 4c10 <_sk_callback_sse2+0xd0f>
18785  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
18786  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
18787  DB  65,15,92,194                        ; subps         %xmm10,%xmm0
18788  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
18789  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
18790  DB  65,15,93,193                        ; minps         %xmm9,%xmm0
18791  DB  72,173                              ; lods          %ds:(%rsi),%rax
18792  DB  255,224                             ; jmpq          *%rax
18793
18794PUBLIC _sk_repeat_y_sse2
18795_sk_repeat_y_sse2 LABEL PROC
18796  DB  72,173                              ; lods          %ds:(%rsi),%rax
18797  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
18798  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
18799  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
18800  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
18801  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
18802  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
18803  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
18804  DB  68,15,84,13,213,23,0,0              ; andps         0x17d5(%rip),%xmm9        # 4c20 <_sk_callback_sse2+0xd1f>
18805  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
18806  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
18807  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
18808  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
18809  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
18810  DB  65,15,93,201                        ; minps         %xmm9,%xmm1
18811  DB  72,173                              ; lods          %ds:(%rsi),%rax
18812  DB  255,224                             ; jmpq          *%rax
18813
18814PUBLIC _sk_mirror_x_sse2
18815_sk_mirror_x_sse2 LABEL PROC
18816  DB  72,173                              ; lods          %ds:(%rsi),%rax
18817  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
18818  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18819  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18820  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
18821  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
18822  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
18823  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
18824  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
18825  DB  243,69,15,91,218                    ; cvttps2dq     %xmm10,%xmm11
18826  DB  69,15,91,219                        ; cvtdq2ps      %xmm11,%xmm11
18827  DB  69,15,194,211,1                     ; cmpltps       %xmm11,%xmm10
18828  DB  68,15,84,21,139,23,0,0              ; andps         0x178b(%rip),%xmm10        # 4c30 <_sk_callback_sse2+0xd2f>
18829  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
18830  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
18831  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
18832  DB  65,15,92,195                        ; subps         %xmm11,%xmm0
18833  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
18834  DB  68,15,92,224                        ; subps         %xmm0,%xmm12
18835  DB  65,15,84,196                        ; andps         %xmm12,%xmm0
18836  DB  102,69,15,118,192                   ; pcmpeqd       %xmm8,%xmm8
18837  DB  102,69,15,254,193                   ; paddd         %xmm9,%xmm8
18838  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
18839  DB  72,173                              ; lods          %ds:(%rsi),%rax
18840  DB  255,224                             ; jmpq          *%rax
18841
18842PUBLIC _sk_mirror_y_sse2
18843_sk_mirror_y_sse2 LABEL PROC
18844  DB  72,173                              ; lods          %ds:(%rsi),%rax
18845  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
18846  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18847  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
18848  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
18849  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
18850  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
18851  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
18852  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
18853  DB  243,69,15,91,218                    ; cvttps2dq     %xmm10,%xmm11
18854  DB  69,15,91,219                        ; cvtdq2ps      %xmm11,%xmm11
18855  DB  69,15,194,211,1                     ; cmpltps       %xmm11,%xmm10
18856  DB  68,15,84,21,49,23,0,0               ; andps         0x1731(%rip),%xmm10        # 4c40 <_sk_callback_sse2+0xd3f>
18857  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
18858  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
18859  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
18860  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
18861  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
18862  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
18863  DB  65,15,84,204                        ; andps         %xmm12,%xmm1
18864  DB  102,69,15,118,192                   ; pcmpeqd       %xmm8,%xmm8
18865  DB  102,69,15,254,193                   ; paddd         %xmm9,%xmm8
18866  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
18867  DB  72,173                              ; lods          %ds:(%rsi),%rax
18868  DB  255,224                             ; jmpq          *%rax
18869
18870PUBLIC _sk_luminance_to_alpha_sse2
18871_sk_luminance_to_alpha_sse2 LABEL PROC
18872  DB  15,40,218                           ; movaps        %xmm2,%xmm3
18873  DB  15,89,5,9,23,0,0                    ; mulps         0x1709(%rip),%xmm0        # 4c50 <_sk_callback_sse2+0xd4f>
18874  DB  15,89,13,18,23,0,0                  ; mulps         0x1712(%rip),%xmm1        # 4c60 <_sk_callback_sse2+0xd5f>
18875  DB  15,88,200                           ; addps         %xmm0,%xmm1
18876  DB  15,89,29,24,23,0,0                  ; mulps         0x1718(%rip),%xmm3        # 4c70 <_sk_callback_sse2+0xd6f>
18877  DB  15,88,217                           ; addps         %xmm1,%xmm3
18878  DB  72,173                              ; lods          %ds:(%rsi),%rax
18879  DB  15,87,192                           ; xorps         %xmm0,%xmm0
18880  DB  15,87,201                           ; xorps         %xmm1,%xmm1
18881  DB  15,87,210                           ; xorps         %xmm2,%xmm2
18882  DB  255,224                             ; jmpq          *%rax
18883
18884PUBLIC _sk_matrix_2x3_sse2
18885_sk_matrix_2x3_sse2 LABEL PROC
18886  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
18887  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18888  DB  72,173                              ; lods          %ds:(%rsi),%rax
18889  DB  243,15,16,0                         ; movss         (%rax),%xmm0
18890  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
18891  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
18892  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
18893  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18894  DB  243,68,15,16,88,16                  ; movss         0x10(%rax),%xmm11
18895  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18896  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18897  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18898  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18899  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
18900  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
18901  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
18902  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18903  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
18904  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18905  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18906  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18907  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18908  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
18909  DB  72,173                              ; lods          %ds:(%rsi),%rax
18910  DB  255,224                             ; jmpq          *%rax
18911
18912PUBLIC _sk_matrix_3x4_sse2
18913_sk_matrix_3x4_sse2 LABEL PROC
18914  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
18915  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18916  DB  72,173                              ; lods          %ds:(%rsi),%rax
18917  DB  243,15,16,0                         ; movss         (%rax),%xmm0
18918  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
18919  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
18920  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
18921  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18922  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
18923  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18924  DB  243,68,15,16,96,36                  ; movss         0x24(%rax),%xmm12
18925  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18926  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
18927  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18928  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18929  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18930  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18931  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
18932  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
18933  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
18934  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18935  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
18936  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18937  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
18938  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18939  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
18940  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18941  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18942  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18943  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18944  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
18945  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
18946  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18947  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
18948  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18949  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
18950  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18951  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
18952  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18953  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
18954  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
18955  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
18956  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18957  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
18958  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18959  DB  72,173                              ; lods          %ds:(%rsi),%rax
18960  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
18961  DB  255,224                             ; jmpq          *%rax
18962
18963PUBLIC _sk_matrix_4x5_sse2
18964_sk_matrix_4x5_sse2 LABEL PROC
18965  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
18966  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18967  DB  72,173                              ; lods          %ds:(%rsi),%rax
18968  DB  243,15,16,0                         ; movss         (%rax),%xmm0
18969  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
18970  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
18971  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
18972  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18973  DB  243,68,15,16,88,32                  ; movss         0x20(%rax),%xmm11
18974  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18975  DB  243,68,15,16,96,48                  ; movss         0x30(%rax),%xmm12
18976  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18977  DB  243,68,15,16,104,64                 ; movss         0x40(%rax),%xmm13
18978  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18979  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
18980  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
18981  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
18982  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
18983  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
18984  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
18985  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18986  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
18987  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
18988  DB  243,68,15,16,80,20                  ; movss         0x14(%rax),%xmm10
18989  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18990  DB  243,68,15,16,88,36                  ; movss         0x24(%rax),%xmm11
18991  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
18992  DB  243,68,15,16,96,52                  ; movss         0x34(%rax),%xmm12
18993  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
18994  DB  243,68,15,16,104,68                 ; movss         0x44(%rax),%xmm13
18995  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
18996  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
18997  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
18998  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
18999  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
19000  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
19001  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
19002  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
19003  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
19004  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
19005  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
19006  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
19007  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
19008  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
19009  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
19010  DB  243,68,15,16,104,56                 ; movss         0x38(%rax),%xmm13
19011  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
19012  DB  243,68,15,16,112,72                 ; movss         0x48(%rax),%xmm14
19013  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
19014  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
19015  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
19016  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
19017  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
19018  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
19019  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
19020  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
19021  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
19022  DB  243,68,15,16,88,12                  ; movss         0xc(%rax),%xmm11
19023  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
19024  DB  243,68,15,16,96,28                  ; movss         0x1c(%rax),%xmm12
19025  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
19026  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
19027  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
19028  DB  243,68,15,16,112,60                 ; movss         0x3c(%rax),%xmm14
19029  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
19030  DB  243,68,15,16,120,76                 ; movss         0x4c(%rax),%xmm15
19031  DB  69,15,198,255,0                     ; shufps        $0x0,%xmm15,%xmm15
19032  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
19033  DB  69,15,88,247                        ; addps         %xmm15,%xmm14
19034  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
19035  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
19036  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
19037  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
19038  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
19039  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
19040  DB  72,173                              ; lods          %ds:(%rsi),%rax
19041  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
19042  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
19043  DB  255,224                             ; jmpq          *%rax
19044
19045PUBLIC _sk_matrix_perspective_sse2
19046_sk_matrix_perspective_sse2 LABEL PROC
19047  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
19048  DB  72,173                              ; lods          %ds:(%rsi),%rax
19049  DB  243,15,16,0                         ; movss         (%rax),%xmm0
19050  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
19051  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
19052  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
19053  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
19054  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
19055  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
19056  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
19057  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
19058  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
19059  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
19060  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
19061  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
19062  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
19063  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
19064  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
19065  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
19066  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
19067  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
19068  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
19069  DB  243,68,15,16,80,24                  ; movss         0x18(%rax),%xmm10
19070  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
19071  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
19072  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
19073  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
19074  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
19075  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
19076  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
19077  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
19078  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
19079  DB  65,15,83,202                        ; rcpps         %xmm10,%xmm1
19080  DB  15,89,193                           ; mulps         %xmm1,%xmm0
19081  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
19082  DB  72,173                              ; lods          %ds:(%rsi),%rax
19083  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
19084  DB  255,224                             ; jmpq          *%rax
19085
19086PUBLIC _sk_linear_gradient_sse2
19087_sk_linear_gradient_sse2 LABEL PROC
19088  DB  72,173                              ; lods          %ds:(%rsi),%rax
19089  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
19090  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
19091  DB  243,68,15,16,80,20                  ; movss         0x14(%rax),%xmm10
19092  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
19093  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
19094  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
19095  DB  243,68,15,16,96,28                  ; movss         0x1c(%rax),%xmm12
19096  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
19097  DB  72,139,8                            ; mov           (%rax),%rcx
19098  DB  72,133,201                          ; test          %rcx,%rcx
19099  DB  15,132,15,1,0,0                     ; je            3a0b <_sk_linear_gradient_sse2+0x149>
19100  DB  72,139,64,8                         ; mov           0x8(%rax),%rax
19101  DB  72,131,192,32                       ; add           $0x20,%rax
19102  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
19103  DB  15,87,219                           ; xorps         %xmm3,%xmm3
19104  DB  15,87,210                           ; xorps         %xmm2,%xmm2
19105  DB  15,87,201                           ; xorps         %xmm1,%xmm1
19106  DB  243,68,15,16,112,224                ; movss         -0x20(%rax),%xmm14
19107  DB  243,68,15,16,104,228                ; movss         -0x1c(%rax),%xmm13
19108  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
19109  DB  69,15,40,252                        ; movaps        %xmm12,%xmm15
19110  DB  68,15,40,224                        ; movaps        %xmm0,%xmm12
19111  DB  69,15,194,230,1                     ; cmpltps       %xmm14,%xmm12
19112  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
19113  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
19114  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
19115  DB  69,15,84,196                        ; andps         %xmm12,%xmm8
19116  DB  69,15,86,198                        ; orps          %xmm14,%xmm8
19117  DB  243,68,15,16,104,232                ; movss         -0x18(%rax),%xmm13
19118  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
19119  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
19120  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
19121  DB  65,15,84,204                        ; andps         %xmm12,%xmm1
19122  DB  65,15,86,206                        ; orps          %xmm14,%xmm1
19123  DB  243,68,15,16,104,236                ; movss         -0x14(%rax),%xmm13
19124  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
19125  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
19126  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
19127  DB  65,15,84,212                        ; andps         %xmm12,%xmm2
19128  DB  65,15,86,214                        ; orps          %xmm14,%xmm2
19129  DB  243,68,15,16,104,240                ; movss         -0x10(%rax),%xmm13
19130  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
19131  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
19132  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
19133  DB  65,15,84,220                        ; andps         %xmm12,%xmm3
19134  DB  65,15,86,222                        ; orps          %xmm14,%xmm3
19135  DB  243,68,15,16,104,244                ; movss         -0xc(%rax),%xmm13
19136  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
19137  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
19138  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
19139  DB  69,15,84,204                        ; andps         %xmm12,%xmm9
19140  DB  69,15,86,206                        ; orps          %xmm14,%xmm9
19141  DB  243,68,15,16,104,248                ; movss         -0x8(%rax),%xmm13
19142  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
19143  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
19144  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
19145  DB  69,15,84,212                        ; andps         %xmm12,%xmm10
19146  DB  69,15,86,214                        ; orps          %xmm14,%xmm10
19147  DB  243,68,15,16,104,252                ; movss         -0x4(%rax),%xmm13
19148  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
19149  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
19150  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
19151  DB  69,15,84,220                        ; andps         %xmm12,%xmm11
19152  DB  69,15,86,222                        ; orps          %xmm14,%xmm11
19153  DB  243,68,15,16,40                     ; movss         (%rax),%xmm13
19154  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
19155  DB  69,15,84,252                        ; andps         %xmm12,%xmm15
19156  DB  69,15,85,229                        ; andnps        %xmm13,%xmm12
19157  DB  69,15,86,231                        ; orps          %xmm15,%xmm12
19158  DB  72,131,192,36                       ; add           $0x24,%rax
19159  DB  72,255,201                          ; dec           %rcx
19160  DB  15,133,8,255,255,255                ; jne           3911 <_sk_linear_gradient_sse2+0x4f>
19161  DB  235,13                              ; jmp           3a18 <_sk_linear_gradient_sse2+0x156>
19162  DB  15,87,201                           ; xorps         %xmm1,%xmm1
19163  DB  15,87,210                           ; xorps         %xmm2,%xmm2
19164  DB  15,87,219                           ; xorps         %xmm3,%xmm3
19165  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
19166  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
19167  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
19168  DB  15,89,200                           ; mulps         %xmm0,%xmm1
19169  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
19170  DB  15,89,208                           ; mulps         %xmm0,%xmm2
19171  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
19172  DB  15,89,216                           ; mulps         %xmm0,%xmm3
19173  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
19174  DB  72,173                              ; lods          %ds:(%rsi),%rax
19175  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
19176  DB  255,224                             ; jmpq          *%rax
19177
19178PUBLIC _sk_linear_gradient_2stops_sse2
19179_sk_linear_gradient_2stops_sse2 LABEL PROC
19180  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
19181  DB  72,173                              ; lods          %ds:(%rsi),%rax
19182  DB  243,15,16,0                         ; movss         (%rax),%xmm0
19183  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
19184  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
19185  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
19186  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
19187  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
19188  DB  15,88,194                           ; addps         %xmm2,%xmm0
19189  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
19190  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
19191  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
19192  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
19193  DB  15,88,202                           ; addps         %xmm2,%xmm1
19194  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
19195  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
19196  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
19197  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
19198  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
19199  DB  15,88,211                           ; addps         %xmm3,%xmm2
19200  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
19201  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
19202  DB  243,68,15,16,72,28                  ; movss         0x1c(%rax),%xmm9
19203  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
19204  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
19205  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
19206  DB  72,173                              ; lods          %ds:(%rsi),%rax
19207  DB  255,224                             ; jmpq          *%rax
19208
19209PUBLIC _sk_xy_to_polar_unit_sse2
19210_sk_xy_to_polar_unit_sse2 LABEL PROC
19211  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
19212  DB  15,87,192                           ; xorps         %xmm0,%xmm0
19213  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
19214  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
19215  DB  69,15,84,200                        ; andps         %xmm8,%xmm9
19216  DB  69,15,87,210                        ; xorps         %xmm10,%xmm10
19217  DB  68,15,92,209                        ; subps         %xmm1,%xmm10
19218  DB  68,15,84,209                        ; andps         %xmm1,%xmm10
19219  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
19220  DB  69,15,93,218                        ; minps         %xmm10,%xmm11
19221  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
19222  DB  69,15,95,226                        ; maxps         %xmm10,%xmm12
19223  DB  69,15,94,220                        ; divps         %xmm12,%xmm11
19224  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
19225  DB  69,15,89,228                        ; mulps         %xmm12,%xmm12
19226  DB  68,15,40,45,144,17,0,0              ; movaps        0x1190(%rip),%xmm13        # 4c80 <_sk_callback_sse2+0xd7f>
19227  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
19228  DB  68,15,88,45,148,17,0,0              ; addps         0x1194(%rip),%xmm13        # 4c90 <_sk_callback_sse2+0xd8f>
19229  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
19230  DB  68,15,88,45,152,17,0,0              ; addps         0x1198(%rip),%xmm13        # 4ca0 <_sk_callback_sse2+0xd9f>
19231  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
19232  DB  68,15,88,45,156,17,0,0              ; addps         0x119c(%rip),%xmm13        # 4cb0 <_sk_callback_sse2+0xdaf>
19233  DB  69,15,89,235                        ; mulps         %xmm11,%xmm13
19234  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
19235  DB  68,15,40,21,155,17,0,0              ; movaps        0x119b(%rip),%xmm10        # 4cc0 <_sk_callback_sse2+0xdbf>
19236  DB  69,15,92,213                        ; subps         %xmm13,%xmm10
19237  DB  69,15,84,209                        ; andps         %xmm9,%xmm10
19238  DB  69,15,85,205                        ; andnps        %xmm13,%xmm9
19239  DB  69,15,86,202                        ; orps          %xmm10,%xmm9
19240  DB  68,15,194,192,1                     ; cmpltps       %xmm0,%xmm8
19241  DB  68,15,40,21,142,17,0,0              ; movaps        0x118e(%rip),%xmm10        # 4cd0 <_sk_callback_sse2+0xdcf>
19242  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
19243  DB  69,15,84,208                        ; andps         %xmm8,%xmm10
19244  DB  69,15,85,193                        ; andnps        %xmm9,%xmm8
19245  DB  69,15,86,194                        ; orps          %xmm10,%xmm8
19246  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
19247  DB  68,15,194,200,1                     ; cmpltps       %xmm0,%xmm9
19248  DB  68,15,40,21,125,17,0,0              ; movaps        0x117d(%rip),%xmm10        # 4ce0 <_sk_callback_sse2+0xddf>
19249  DB  69,15,92,208                        ; subps         %xmm8,%xmm10
19250  DB  69,15,84,209                        ; andps         %xmm9,%xmm10
19251  DB  69,15,85,200                        ; andnps        %xmm8,%xmm9
19252  DB  69,15,86,202                        ; orps          %xmm10,%xmm9
19253  DB  65,15,194,193,7                     ; cmpordps      %xmm9,%xmm0
19254  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
19255  DB  72,173                              ; lods          %ds:(%rsi),%rax
19256  DB  255,224                             ; jmpq          *%rax
19257
19258PUBLIC _sk_save_xy_sse2
19259_sk_save_xy_sse2 LABEL PROC
19260  DB  72,173                              ; lods          %ds:(%rsi),%rax
19261  DB  68,15,40,5,102,17,0,0               ; movaps        0x1166(%rip),%xmm8        # 4cf0 <_sk_callback_sse2+0xdef>
19262  DB  15,17,0                             ; movups        %xmm0,(%rax)
19263  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
19264  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
19265  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
19266  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
19267  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
19268  DB  69,15,194,218,1                     ; cmpltps       %xmm10,%xmm11
19269  DB  68,15,40,37,81,17,0,0               ; movaps        0x1151(%rip),%xmm12        # 4d00 <_sk_callback_sse2+0xdff>
19270  DB  69,15,84,220                        ; andps         %xmm12,%xmm11
19271  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
19272  DB  69,15,92,202                        ; subps         %xmm10,%xmm9
19273  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
19274  DB  243,69,15,91,208                    ; cvttps2dq     %xmm8,%xmm10
19275  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
19276  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
19277  DB  69,15,194,218,1                     ; cmpltps       %xmm10,%xmm11
19278  DB  69,15,84,220                        ; andps         %xmm12,%xmm11
19279  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
19280  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
19281  DB  15,17,72,32                         ; movups        %xmm1,0x20(%rax)
19282  DB  68,15,17,72,64                      ; movups        %xmm9,0x40(%rax)
19283  DB  68,15,17,64,96                      ; movups        %xmm8,0x60(%rax)
19284  DB  72,173                              ; lods          %ds:(%rsi),%rax
19285  DB  255,224                             ; jmpq          *%rax
19286
19287PUBLIC _sk_accumulate_sse2
19288_sk_accumulate_sse2 LABEL PROC
19289  DB  72,173                              ; lods          %ds:(%rsi),%rax
19290  DB  68,15,16,128,128,0,0,0              ; movups        0x80(%rax),%xmm8
19291  DB  68,15,16,136,160,0,0,0              ; movups        0xa0(%rax),%xmm9
19292  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
19293  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
19294  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
19295  DB  65,15,88,224                        ; addps         %xmm8,%xmm4
19296  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
19297  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
19298  DB  65,15,88,232                        ; addps         %xmm8,%xmm5
19299  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
19300  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
19301  DB  65,15,88,240                        ; addps         %xmm8,%xmm6
19302  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
19303  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
19304  DB  72,173                              ; lods          %ds:(%rsi),%rax
19305  DB  255,224                             ; jmpq          *%rax
19306
19307PUBLIC _sk_bilinear_nx_sse2
19308_sk_bilinear_nx_sse2 LABEL PROC
19309  DB  72,173                              ; lods          %ds:(%rsi),%rax
19310  DB  15,16,0                             ; movups        (%rax),%xmm0
19311  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
19312  DB  15,88,5,202,16,0,0                  ; addps         0x10ca(%rip),%xmm0        # 4d10 <_sk_callback_sse2+0xe0f>
19313  DB  68,15,40,13,210,16,0,0              ; movaps        0x10d2(%rip),%xmm9        # 4d20 <_sk_callback_sse2+0xe1f>
19314  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
19315  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
19316  DB  72,173                              ; lods          %ds:(%rsi),%rax
19317  DB  255,224                             ; jmpq          *%rax
19318
19319PUBLIC _sk_bilinear_px_sse2
19320_sk_bilinear_px_sse2 LABEL PROC
19321  DB  72,173                              ; lods          %ds:(%rsi),%rax
19322  DB  15,16,0                             ; movups        (%rax),%xmm0
19323  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
19324  DB  15,88,5,193,16,0,0                  ; addps         0x10c1(%rip),%xmm0        # 4d30 <_sk_callback_sse2+0xe2f>
19325  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
19326  DB  72,173                              ; lods          %ds:(%rsi),%rax
19327  DB  255,224                             ; jmpq          *%rax
19328
19329PUBLIC _sk_bilinear_ny_sse2
19330_sk_bilinear_ny_sse2 LABEL PROC
19331  DB  72,173                              ; lods          %ds:(%rsi),%rax
19332  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
19333  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
19334  DB  15,88,13,179,16,0,0                 ; addps         0x10b3(%rip),%xmm1        # 4d40 <_sk_callback_sse2+0xe3f>
19335  DB  68,15,40,13,187,16,0,0              ; movaps        0x10bb(%rip),%xmm9        # 4d50 <_sk_callback_sse2+0xe4f>
19336  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
19337  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
19338  DB  72,173                              ; lods          %ds:(%rsi),%rax
19339  DB  255,224                             ; jmpq          *%rax
19340
19341PUBLIC _sk_bilinear_py_sse2
19342_sk_bilinear_py_sse2 LABEL PROC
19343  DB  72,173                              ; lods          %ds:(%rsi),%rax
19344  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
19345  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
19346  DB  15,88,13,169,16,0,0                 ; addps         0x10a9(%rip),%xmm1        # 4d60 <_sk_callback_sse2+0xe5f>
19347  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
19348  DB  72,173                              ; lods          %ds:(%rsi),%rax
19349  DB  255,224                             ; jmpq          *%rax
19350
19351PUBLIC _sk_bicubic_n3x_sse2
19352_sk_bicubic_n3x_sse2 LABEL PROC
19353  DB  72,173                              ; lods          %ds:(%rsi),%rax
19354  DB  15,16,0                             ; movups        (%rax),%xmm0
19355  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
19356  DB  15,88,5,156,16,0,0                  ; addps         0x109c(%rip),%xmm0        # 4d70 <_sk_callback_sse2+0xe6f>
19357  DB  68,15,40,13,164,16,0,0              ; movaps        0x10a4(%rip),%xmm9        # 4d80 <_sk_callback_sse2+0xe7f>
19358  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
19359  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
19360  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
19361  DB  68,15,89,13,160,16,0,0              ; mulps         0x10a0(%rip),%xmm9        # 4d90 <_sk_callback_sse2+0xe8f>
19362  DB  68,15,88,13,168,16,0,0              ; addps         0x10a8(%rip),%xmm9        # 4da0 <_sk_callback_sse2+0xe9f>
19363  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
19364  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
19365  DB  72,173                              ; lods          %ds:(%rsi),%rax
19366  DB  255,224                             ; jmpq          *%rax
19367
19368PUBLIC _sk_bicubic_n1x_sse2
19369_sk_bicubic_n1x_sse2 LABEL PROC
19370  DB  72,173                              ; lods          %ds:(%rsi),%rax
19371  DB  15,16,0                             ; movups        (%rax),%xmm0
19372  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
19373  DB  15,88,5,151,16,0,0                  ; addps         0x1097(%rip),%xmm0        # 4db0 <_sk_callback_sse2+0xeaf>
19374  DB  68,15,40,13,159,16,0,0              ; movaps        0x109f(%rip),%xmm9        # 4dc0 <_sk_callback_sse2+0xebf>
19375  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
19376  DB  68,15,40,5,163,16,0,0               ; movaps        0x10a3(%rip),%xmm8        # 4dd0 <_sk_callback_sse2+0xecf>
19377  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
19378  DB  68,15,88,5,167,16,0,0               ; addps         0x10a7(%rip),%xmm8        # 4de0 <_sk_callback_sse2+0xedf>
19379  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
19380  DB  68,15,88,5,171,16,0,0               ; addps         0x10ab(%rip),%xmm8        # 4df0 <_sk_callback_sse2+0xeef>
19381  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
19382  DB  68,15,88,5,175,16,0,0               ; addps         0x10af(%rip),%xmm8        # 4e00 <_sk_callback_sse2+0xeff>
19383  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
19384  DB  72,173                              ; lods          %ds:(%rsi),%rax
19385  DB  255,224                             ; jmpq          *%rax
19386
19387PUBLIC _sk_bicubic_p1x_sse2
19388_sk_bicubic_p1x_sse2 LABEL PROC
19389  DB  72,173                              ; lods          %ds:(%rsi),%rax
19390  DB  68,15,40,5,169,16,0,0               ; movaps        0x10a9(%rip),%xmm8        # 4e10 <_sk_callback_sse2+0xf0f>
19391  DB  15,16,0                             ; movups        (%rax),%xmm0
19392  DB  68,15,16,72,64                      ; movups        0x40(%rax),%xmm9
19393  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
19394  DB  68,15,40,21,165,16,0,0              ; movaps        0x10a5(%rip),%xmm10        # 4e20 <_sk_callback_sse2+0xf1f>
19395  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
19396  DB  68,15,88,21,169,16,0,0              ; addps         0x10a9(%rip),%xmm10        # 4e30 <_sk_callback_sse2+0xf2f>
19397  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
19398  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
19399  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
19400  DB  68,15,88,21,165,16,0,0              ; addps         0x10a5(%rip),%xmm10        # 4e40 <_sk_callback_sse2+0xf3f>
19401  DB  68,15,17,144,128,0,0,0              ; movups        %xmm10,0x80(%rax)
19402  DB  72,173                              ; lods          %ds:(%rsi),%rax
19403  DB  255,224                             ; jmpq          *%rax
19404
19405PUBLIC _sk_bicubic_p3x_sse2
19406_sk_bicubic_p3x_sse2 LABEL PROC
19407  DB  72,173                              ; lods          %ds:(%rsi),%rax
19408  DB  15,16,0                             ; movups        (%rax),%xmm0
19409  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
19410  DB  15,88,5,152,16,0,0                  ; addps         0x1098(%rip),%xmm0        # 4e50 <_sk_callback_sse2+0xf4f>
19411  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
19412  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
19413  DB  68,15,89,5,152,16,0,0               ; mulps         0x1098(%rip),%xmm8        # 4e60 <_sk_callback_sse2+0xf5f>
19414  DB  68,15,88,5,160,16,0,0               ; addps         0x10a0(%rip),%xmm8        # 4e70 <_sk_callback_sse2+0xf6f>
19415  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
19416  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
19417  DB  72,173                              ; lods          %ds:(%rsi),%rax
19418  DB  255,224                             ; jmpq          *%rax
19419
19420PUBLIC _sk_bicubic_n3y_sse2
19421_sk_bicubic_n3y_sse2 LABEL PROC
19422  DB  72,173                              ; lods          %ds:(%rsi),%rax
19423  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
19424  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
19425  DB  15,88,13,142,16,0,0                 ; addps         0x108e(%rip),%xmm1        # 4e80 <_sk_callback_sse2+0xf7f>
19426  DB  68,15,40,13,150,16,0,0              ; movaps        0x1096(%rip),%xmm9        # 4e90 <_sk_callback_sse2+0xf8f>
19427  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
19428  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
19429  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
19430  DB  68,15,89,13,146,16,0,0              ; mulps         0x1092(%rip),%xmm9        # 4ea0 <_sk_callback_sse2+0xf9f>
19431  DB  68,15,88,13,154,16,0,0              ; addps         0x109a(%rip),%xmm9        # 4eb0 <_sk_callback_sse2+0xfaf>
19432  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
19433  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
19434  DB  72,173                              ; lods          %ds:(%rsi),%rax
19435  DB  255,224                             ; jmpq          *%rax
19436
19437PUBLIC _sk_bicubic_n1y_sse2
19438_sk_bicubic_n1y_sse2 LABEL PROC
19439  DB  72,173                              ; lods          %ds:(%rsi),%rax
19440  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
19441  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
19442  DB  15,88,13,136,16,0,0                 ; addps         0x1088(%rip),%xmm1        # 4ec0 <_sk_callback_sse2+0xfbf>
19443  DB  68,15,40,13,144,16,0,0              ; movaps        0x1090(%rip),%xmm9        # 4ed0 <_sk_callback_sse2+0xfcf>
19444  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
19445  DB  68,15,40,5,148,16,0,0               ; movaps        0x1094(%rip),%xmm8        # 4ee0 <_sk_callback_sse2+0xfdf>
19446  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
19447  DB  68,15,88,5,152,16,0,0               ; addps         0x1098(%rip),%xmm8        # 4ef0 <_sk_callback_sse2+0xfef>
19448  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
19449  DB  68,15,88,5,156,16,0,0               ; addps         0x109c(%rip),%xmm8        # 4f00 <_sk_callback_sse2+0xfff>
19450  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
19451  DB  68,15,88,5,160,16,0,0               ; addps         0x10a0(%rip),%xmm8        # 4f10 <_sk_callback_sse2+0x100f>
19452  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
19453  DB  72,173                              ; lods          %ds:(%rsi),%rax
19454  DB  255,224                             ; jmpq          *%rax
19455
19456PUBLIC _sk_bicubic_p1y_sse2
19457_sk_bicubic_p1y_sse2 LABEL PROC
19458  DB  72,173                              ; lods          %ds:(%rsi),%rax
19459  DB  68,15,40,5,154,16,0,0               ; movaps        0x109a(%rip),%xmm8        # 4f20 <_sk_callback_sse2+0x101f>
19460  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
19461  DB  68,15,16,72,96                      ; movups        0x60(%rax),%xmm9
19462  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
19463  DB  68,15,40,21,149,16,0,0              ; movaps        0x1095(%rip),%xmm10        # 4f30 <_sk_callback_sse2+0x102f>
19464  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
19465  DB  68,15,88,21,153,16,0,0              ; addps         0x1099(%rip),%xmm10        # 4f40 <_sk_callback_sse2+0x103f>
19466  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
19467  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
19468  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
19469  DB  68,15,88,21,149,16,0,0              ; addps         0x1095(%rip),%xmm10        # 4f50 <_sk_callback_sse2+0x104f>
19470  DB  68,15,17,144,160,0,0,0              ; movups        %xmm10,0xa0(%rax)
19471  DB  72,173                              ; lods          %ds:(%rsi),%rax
19472  DB  255,224                             ; jmpq          *%rax
19473
19474PUBLIC _sk_bicubic_p3y_sse2
19475_sk_bicubic_p3y_sse2 LABEL PROC
19476  DB  72,173                              ; lods          %ds:(%rsi),%rax
19477  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
19478  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
19479  DB  15,88,13,135,16,0,0                 ; addps         0x1087(%rip),%xmm1        # 4f60 <_sk_callback_sse2+0x105f>
19480  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
19481  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
19482  DB  68,15,89,5,135,16,0,0               ; mulps         0x1087(%rip),%xmm8        # 4f70 <_sk_callback_sse2+0x106f>
19483  DB  68,15,88,5,143,16,0,0               ; addps         0x108f(%rip),%xmm8        # 4f80 <_sk_callback_sse2+0x107f>
19484  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
19485  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
19486  DB  72,173                              ; lods          %ds:(%rsi),%rax
19487  DB  255,224                             ; jmpq          *%rax
19488
19489PUBLIC _sk_callback_sse2
19490_sk_callback_sse2 LABEL PROC
19491  DB  65,86                               ; push          %r14
19492  DB  83                                  ; push          %rbx
19493  DB  72,131,236,40                       ; sub           $0x28,%rsp
19494  DB  68,15,40,197                        ; movaps        %xmm5,%xmm8
19495  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
19496  DB  73,137,214                          ; mov           %rdx,%r14
19497  DB  72,173                              ; lods          %ds:(%rsi),%rax
19498  DB  72,137,195                          ; mov           %rax,%rbx
19499  DB  15,40,224                           ; movaps        %xmm0,%xmm4
19500  DB  15,20,225                           ; unpcklps      %xmm1,%xmm4
19501  DB  15,40,234                           ; movaps        %xmm2,%xmm5
19502  DB  15,20,235                           ; unpcklps      %xmm3,%xmm5
19503  DB  15,21,193                           ; unpckhps      %xmm1,%xmm0
19504  DB  15,21,211                           ; unpckhps      %xmm3,%xmm2
19505  DB  15,40,204                           ; movaps        %xmm4,%xmm1
19506  DB  102,15,20,205                       ; unpcklpd      %xmm5,%xmm1
19507  DB  15,18,236                           ; movhlps       %xmm4,%xmm5
19508  DB  15,40,216                           ; movaps        %xmm0,%xmm3
19509  DB  102,15,20,218                       ; unpcklpd      %xmm2,%xmm3
19510  DB  15,18,208                           ; movhlps       %xmm0,%xmm2
19511  DB  102,15,17,75,8                      ; movupd        %xmm1,0x8(%rbx)
19512  DB  15,17,107,24                        ; movups        %xmm5,0x18(%rbx)
19513  DB  102,15,17,91,40                     ; movupd        %xmm3,0x28(%rbx)
19514  DB  15,17,83,56                         ; movups        %xmm2,0x38(%rbx)
19515  DB  186,4,0,0,0                         ; mov           $0x4,%edx
19516  DB  72,137,217                          ; mov           %rbx,%rcx
19517  DB  255,19                              ; callq         *(%rbx)
19518  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
19519  DB  15,16,32                            ; movups        (%rax),%xmm4
19520  DB  15,16,64,16                         ; movups        0x10(%rax),%xmm0
19521  DB  15,16,88,32                         ; movups        0x20(%rax),%xmm3
19522  DB  15,16,80,48                         ; movups        0x30(%rax),%xmm2
19523  DB  15,40,236                           ; movaps        %xmm4,%xmm5
19524  DB  15,20,232                           ; unpcklps      %xmm0,%xmm5
19525  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19526  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
19527  DB  15,21,224                           ; unpckhps      %xmm0,%xmm4
19528  DB  15,21,218                           ; unpckhps      %xmm2,%xmm3
19529  DB  15,40,197                           ; movaps        %xmm5,%xmm0
19530  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
19531  DB  15,18,205                           ; movhlps       %xmm5,%xmm1
19532  DB  15,40,212                           ; movaps        %xmm4,%xmm2
19533  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
19534  DB  15,18,220                           ; movhlps       %xmm4,%xmm3
19535  DB  72,173                              ; lods          %ds:(%rsi),%rax
19536  DB  76,137,242                          ; mov           %r14,%rdx
19537  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
19538  DB  65,15,40,232                        ; movaps        %xmm8,%xmm5
19539  DB  72,131,196,40                       ; add           $0x28,%rsp
19540  DB  91                                  ; pop           %rbx
19541  DB  65,94                               ; pop           %r14
19542  DB  255,224                             ; jmpq          *%rax
19543
19544ALIGN 16
19545  DB  0,0                                 ; add           %al,(%rax)
19546  DB  0,63                                ; add           %bh,(%rdi)
19547  DB  0,0                                 ; add           %al,(%rax)
19548  DB  0,63                                ; add           %bh,(%rdi)
19549  DB  0,0                                 ; add           %al,(%rax)
19550  DB  0,63                                ; add           %bh,(%rdi)
19551  DB  0,0                                 ; add           %al,(%rax)
19552  DB  0,63                                ; add           %bh,(%rdi)
19553  DB  0,0                                 ; add           %al,(%rax)
19554  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19555  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19556  DB  63                                  ; (bad)
19557  DB  0,0                                 ; add           %al,(%rax)
19558  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
19559  DB  0,0                                 ; add           %al,(%rax)
19560  DB  0,1                                 ; add           %al,(%rcx)
19561  DB  0,0                                 ; add           %al,(%rax)
19562  DB  0,1                                 ; add           %al,(%rcx)
19563  DB  0,0                                 ; add           %al,(%rax)
19564  DB  0,1                                 ; add           %al,(%rcx)
19565  DB  0,0                                 ; add           %al,(%rax)
19566  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
19567  DB  0,0                                 ; add           %al,(%rax)
19568  DB  4,0                                 ; add           $0x0,%al
19569  DB  0,0                                 ; add           %al,(%rax)
19570  DB  4,0                                 ; add           $0x0,%al
19571  DB  0,0                                 ; add           %al,(%rax)
19572  DB  4,0                                 ; add           $0x0,%al
19573  DB  0,0                                 ; add           %al,(%rax)
19574  DB  2,0                                 ; add           (%rax),%al
19575  DB  0,0                                 ; add           %al,(%rax)
19576  DB  2,0                                 ; add           (%rax),%al
19577  DB  0,0                                 ; add           %al,(%rax)
19578  DB  2,0                                 ; add           (%rax),%al
19579  DB  0,0                                 ; add           %al,(%rax)
19580  DB  2,0                                 ; add           (%rax),%al
19581  DB  0,0                                 ; add           %al,(%rax)
19582  DB  0,0                                 ; add           %al,(%rax)
19583  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
19584  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
19585  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
19586  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
19587  DB  252                                 ; cld
19588  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
19589  DB  0,0                                 ; add           %al,(%rax)
19590  DB  252                                 ; cld
19591  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
19592  DB  0,0                                 ; add           %al,(%rax)
19593  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19594  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19595  DB  63                                  ; (bad)
19596  DB  0,0                                 ; add           %al,(%rax)
19597  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19598  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19599  DB  63                                  ; (bad)
19600  DB  0,0                                 ; add           %al,(%rax)
19601  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19602  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19603  DB  63                                  ; (bad)
19604  DB  0,0                                 ; add           %al,(%rax)
19605  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19606  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19607  DB  63                                  ; (bad)
19608  DB  0,0                                 ; add           %al,(%rax)
19609  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19610  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19611  DB  63                                  ; (bad)
19612  DB  0,0                                 ; add           %al,(%rax)
19613  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19614  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19615  DB  63                                  ; (bad)
19616  DB  0,0                                 ; add           %al,(%rax)
19617  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19618  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19619  DB  63                                  ; (bad)
19620  DB  0,0                                 ; add           %al,(%rax)
19621  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19622  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19623  DB  63                                  ; (bad)
19624  DB  0,0                                 ; add           %al,(%rax)
19625  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19626  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19627  DB  63                                  ; (bad)
19628  DB  0,0                                 ; add           %al,(%rax)
19629  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19630  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19631  DB  63                                  ; (bad)
19632  DB  0,0                                 ; add           %al,(%rax)
19633  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19634  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19635  DB  63                                  ; (bad)
19636  DB  0,0                                 ; add           %al,(%rax)
19637  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19638  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19639  DB  63                                  ; (bad)
19640  DB  0,0                                 ; add           %al,(%rax)
19641  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19642  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19643  DB  63                                  ; (bad)
19644  DB  0,0                                 ; add           %al,(%rax)
19645  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19646  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19647  DB  63                                  ; (bad)
19648  DB  0,0                                 ; add           %al,(%rax)
19649  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19650  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19651  DB  63                                  ; (bad)
19652  DB  0,0                                 ; add           %al,(%rax)
19653  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19654  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19655  DB  63                                  ; (bad)
19656  DB  0,0                                 ; add           %al,(%rax)
19657  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19658  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19659  DB  63                                  ; (bad)
19660  DB  0,0                                 ; add           %al,(%rax)
19661  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19662  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19663  DB  63                                  ; (bad)
19664  DB  0,0                                 ; add           %al,(%rax)
19665  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19666  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19667  DB  63                                  ; (bad)
19668  DB  0,0                                 ; add           %al,(%rax)
19669  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19670  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19671  DB  63                                  ; (bad)
19672  DB  0,0                                 ; add           %al,(%rax)
19673  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19674  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19675  DB  63                                  ; (bad)
19676  DB  0,0                                 ; add           %al,(%rax)
19677  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19678  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19679  DB  63                                  ; (bad)
19680  DB  0,0                                 ; add           %al,(%rax)
19681  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19682  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19683  DB  191,0,0,128,191                     ; mov           $0xbf800000,%edi
19684  DB  0,0                                 ; add           %al,(%rax)
19685  DB  128,191,0,0,128,191,0               ; cmpb          $0x0,-0x40800000(%rdi)
19686  DB  0,224                               ; add           %ah,%al
19687  DB  64,0,0                              ; add           %al,(%rax)
19688  DB  224,64                              ; loopne        4188 <.literal16+0x1d8>
19689  DB  0,0                                 ; add           %al,(%rax)
19690  DB  224,64                              ; loopne        418c <.literal16+0x1dc>
19691  DB  0,0                                 ; add           %al,(%rax)
19692  DB  224,64                              ; loopne        4190 <.literal16+0x1e0>
19693  DB  0,0                                 ; add           %al,(%rax)
19694  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19695  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19696  DB  63                                  ; (bad)
19697  DB  0,0                                 ; add           %al,(%rax)
19698  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19699  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19700  DB  63                                  ; (bad)
19701  DB  0,0                                 ; add           %al,(%rax)
19702  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19703  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19704  DB  63                                  ; (bad)
19705  DB  0,0                                 ; add           %al,(%rax)
19706  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19707  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19708  DB  63                                  ; (bad)
19709  DB  145                                 ; xchg          %eax,%ecx
19710  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
19711  DB  145                                 ; xchg          %eax,%ecx
19712  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
19713  DB  154                                 ; (bad)
19714  DB  153                                 ; cltd
19715  DB  153                                 ; cltd
19716  DB  62,154                              ; ds            (bad)
19717  DB  153                                 ; cltd
19718  DB  153                                 ; cltd
19719  DB  62,154                              ; ds            (bad)
19720  DB  153                                 ; cltd
19721  DB  153                                 ; cltd
19722  DB  62,154                              ; ds            (bad)
19723  DB  153                                 ; cltd
19724  DB  153                                 ; cltd
19725  DB  62,92                               ; ds            pop %rsp
19726  DB  143                                 ; (bad)
19727  DB  50,63                               ; xor           (%rdi),%bh
19728  DB  92                                  ; pop           %rsp
19729  DB  143                                 ; (bad)
19730  DB  50,63                               ; xor           (%rdi),%bh
19731  DB  92                                  ; pop           %rsp
19732  DB  143                                 ; (bad)
19733  DB  50,63                               ; xor           (%rdi),%bh
19734  DB  92                                  ; pop           %rsp
19735  DB  143                                 ; (bad)
19736  DB  50,63                               ; xor           (%rdi),%bh
19737  DB  10,215                              ; or            %bh,%dl
19738  DB  35,59                               ; and           (%rbx),%edi
19739  DB  10,215                              ; or            %bh,%dl
19740  DB  35,59                               ; and           (%rbx),%edi
19741  DB  10,215                              ; or            %bh,%dl
19742  DB  35,59                               ; and           (%rbx),%edi
19743  DB  10,215                              ; or            %bh,%dl
19744  DB  35,59                               ; and           (%rbx),%edi
19745  DB  174                                 ; scas          %es:(%rdi),%al
19746  DB  71,97                               ; rex.RXB       (bad)
19747  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
19748  DB  174                                 ; scas          %es:(%rdi),%al
19749  DB  71,97                               ; rex.RXB       (bad)
19750  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
19751  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
19752  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
19753  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
19754  DB  41,92,71,65                         ; sub           %ebx,0x41(%rdi,%rax,2)
19755  DB  206                                 ; (bad)
19756  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
19757  DB  48,63                               ; xor           %bh,(%rdi)
19758  DB  206                                 ; (bad)
19759  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
19760  DB  48,63                               ; xor           %bh,(%rdi)
19761  DB  206                                 ; (bad)
19762  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
19763  DB  48,63                               ; xor           %bh,(%rdi)
19764  DB  206                                 ; (bad)
19765  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
19766  DB  48,63                               ; xor           %bh,(%rdi)
19767  DB  168,87                              ; test          $0x57,%al
19768  DB  202,189,168                         ; lret          $0xa8bd
19769  DB  87                                  ; push          %rdi
19770  DB  202,189,168                         ; lret          $0xa8bd
19771  DB  87                                  ; push          %rdi
19772  DB  202,189,168                         ; lret          $0xa8bd
19773  DB  87                                  ; push          %rdi
19774  DB  202,189,194                         ; lret          $0xc2bd
19775  DB  135,210                             ; xchg          %edx,%edx
19776  DB  62,194,135,210                      ; ds            retq $0xd287
19777  DB  62,194,135,210                      ; ds            retq $0xd287
19778  DB  62,194,135,210                      ; ds            retq $0xd287
19779  DB  62,0,0                              ; add           %al,%ds:(%rax)
19780  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19781  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19782  DB  63                                  ; (bad)
19783  DB  0,0                                 ; add           %al,(%rax)
19784  DB  128,63,4                            ; cmpb          $0x4,(%rdi)
19785  DB  231,140                             ; out           %eax,$0x8c
19786  DB  59,4,231                            ; cmp           (%rdi,%riz,8),%eax
19787  DB  140,59                              ; mov           %?,(%rbx)
19788  DB  4,231                               ; add           $0xe7,%al
19789  DB  140,59                              ; mov           %?,(%rbx)
19790  DB  4,231                               ; add           $0xe7,%al
19791  DB  140,59                              ; mov           %?,(%rbx)
19792  DB  0,0                                 ; add           %al,(%rax)
19793  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19794  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19795  DB  63                                  ; (bad)
19796  DB  0,0                                 ; add           %al,(%rax)
19797  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19798  DB  0,192                               ; add           %al,%al
19799  DB  64,0,0                              ; add           %al,(%rax)
19800  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19801  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19802  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19803  DB  0,64,0                              ; add           %al,0x0(%rax)
19804  DB  0,0                                 ; add           %al,(%rax)
19805  DB  64,0,0                              ; add           %al,(%rax)
19806  DB  0,64,0                              ; add           %al,0x0(%rax)
19807  DB  0,0                                 ; add           %al,(%rax)
19808  DB  64,0,0                              ; add           %al,(%rax)
19809  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19810  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19811  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19812  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
19813  DB  42,62                               ; sub           (%rsi),%bh
19814  DB  171                                 ; stos          %eax,%es:(%rdi)
19815  DB  170                                 ; stos          %al,%es:(%rdi)
19816  DB  42,62                               ; sub           (%rsi),%bh
19817  DB  171                                 ; stos          %eax,%es:(%rdi)
19818  DB  170                                 ; stos          %al,%es:(%rdi)
19819  DB  42,62                               ; sub           (%rsi),%bh
19820  DB  171                                 ; stos          %eax,%es:(%rdi)
19821  DB  170                                 ; stos          %al,%es:(%rdi)
19822  DB  42,62                               ; sub           (%rsi),%bh
19823  DB  0,0                                 ; add           %al,(%rax)
19824  DB  0,63                                ; add           %bh,(%rdi)
19825  DB  0,0                                 ; add           %al,(%rax)
19826  DB  0,63                                ; add           %bh,(%rdi)
19827  DB  0,0                                 ; add           %al,(%rax)
19828  DB  0,63                                ; add           %bh,(%rdi)
19829  DB  0,0                                 ; add           %al,(%rax)
19830  DB  0,63                                ; add           %bh,(%rdi)
19831  DB  0,0                                 ; add           %al,(%rax)
19832  DB  0,63                                ; add           %bh,(%rdi)
19833  DB  0,0                                 ; add           %al,(%rax)
19834  DB  0,63                                ; add           %bh,(%rdi)
19835  DB  0,0                                 ; add           %al,(%rax)
19836  DB  0,63                                ; add           %bh,(%rdi)
19837  DB  0,0                                 ; add           %al,(%rax)
19838  DB  0,63                                ; add           %bh,(%rdi)
19839  DB  171                                 ; stos          %eax,%es:(%rdi)
19840  DB  170                                 ; stos          %al,%es:(%rdi)
19841  DB  170                                 ; stos          %al,%es:(%rdi)
19842  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
19843  DB  170                                 ; stos          %al,%es:(%rdi)
19844  DB  170                                 ; stos          %al,%es:(%rdi)
19845  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
19846  DB  170                                 ; stos          %al,%es:(%rdi)
19847  DB  170                                 ; stos          %al,%es:(%rdi)
19848  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
19849  DB  170                                 ; stos          %al,%es:(%rdi)
19850  DB  170                                 ; stos          %al,%es:(%rdi)
19851  DB  62,0,0                              ; add           %al,%ds:(%rax)
19852  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19853  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19854  DB  63                                  ; (bad)
19855  DB  0,0                                 ; add           %al,(%rax)
19856  DB  128,63,171                          ; cmpb          $0xab,(%rdi)
19857  DB  170                                 ; stos          %al,%es:(%rdi)
19858  DB  42,63                               ; sub           (%rdi),%bh
19859  DB  171                                 ; stos          %eax,%es:(%rdi)
19860  DB  170                                 ; stos          %al,%es:(%rdi)
19861  DB  42,63                               ; sub           (%rdi),%bh
19862  DB  171                                 ; stos          %eax,%es:(%rdi)
19863  DB  170                                 ; stos          %al,%es:(%rdi)
19864  DB  42,63                               ; sub           (%rdi),%bh
19865  DB  171                                 ; stos          %eax,%es:(%rdi)
19866  DB  170                                 ; stos          %al,%es:(%rdi)
19867  DB  42,63                               ; sub           (%rdi),%bh
19868  DB  0,0                                 ; add           %al,(%rax)
19869  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19870  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19871  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19872  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
19873  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19874  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19875  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
19876  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
19877  DB  42,62                               ; sub           (%rsi),%bh
19878  DB  171                                 ; stos          %eax,%es:(%rdi)
19879  DB  170                                 ; stos          %al,%es:(%rdi)
19880  DB  42,62                               ; sub           (%rsi),%bh
19881  DB  171                                 ; stos          %eax,%es:(%rdi)
19882  DB  170                                 ; stos          %al,%es:(%rdi)
19883  DB  42,62                               ; sub           (%rsi),%bh
19884  DB  171                                 ; stos          %eax,%es:(%rdi)
19885  DB  170                                 ; stos          %al,%es:(%rdi)
19886  DB  42,62                               ; sub           (%rsi),%bh
19887  DB  171                                 ; stos          %eax,%es:(%rdi)
19888  DB  170                                 ; stos          %al,%es:(%rdi)
19889  DB  170                                 ; stos          %al,%es:(%rdi)
19890  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
19891  DB  171                                 ; stos          %eax,%es:(%rdi)
19892  DB  170                                 ; stos          %al,%es:(%rdi)
19893  DB  170                                 ; stos          %al,%es:(%rdi)
19894  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
19895  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19896  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
19897  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
19898  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19899  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
19900  DB  248                                 ; clc
19901  DB  0,0                                 ; add           %al,(%rax)
19902  DB  0,248                               ; add           %bh,%al
19903  DB  0,0                                 ; add           %al,(%rax)
19904  DB  0,248                               ; add           %bh,%al
19905  DB  0,0                                 ; add           %al,(%rax)
19906  DB  0,248                               ; add           %bh,%al
19907  DB  0,0                                 ; add           %al,(%rax)
19908  DB  8,33                                ; or            %ah,(%rcx)
19909  DB  132,55                              ; test          %dh,(%rdi)
19910  DB  8,33                                ; or            %ah,(%rcx)
19911  DB  132,55                              ; test          %dh,(%rdi)
19912  DB  8,33                                ; or            %ah,(%rcx)
19913  DB  132,55                              ; test          %dh,(%rdi)
19914  DB  8,33                                ; or            %ah,(%rcx)
19915  DB  132,55                              ; test          %dh,(%rdi)
19916  DB  224,7                               ; loopne        4359 <.literal16+0x3a9>
19917  DB  0,0                                 ; add           %al,(%rax)
19918  DB  224,7                               ; loopne        435d <.literal16+0x3ad>
19919  DB  0,0                                 ; add           %al,(%rax)
19920  DB  224,7                               ; loopne        4361 <.literal16+0x3b1>
19921  DB  0,0                                 ; add           %al,(%rax)
19922  DB  224,7                               ; loopne        4365 <.literal16+0x3b5>
19923  DB  0,0                                 ; add           %al,(%rax)
19924  DB  33,8                                ; and           %ecx,(%rax)
19925  DB  2,58                                ; add           (%rdx),%bh
19926  DB  33,8                                ; and           %ecx,(%rax)
19927  DB  2,58                                ; add           (%rdx),%bh
19928  DB  33,8                                ; and           %ecx,(%rax)
19929  DB  2,58                                ; add           (%rdx),%bh
19930  DB  33,8                                ; and           %ecx,(%rax)
19931  DB  2,58                                ; add           (%rdx),%bh
19932  DB  31                                  ; (bad)
19933  DB  0,0                                 ; add           %al,(%rax)
19934  DB  0,31                                ; add           %bl,(%rdi)
19935  DB  0,0                                 ; add           %al,(%rax)
19936  DB  0,31                                ; add           %bl,(%rdi)
19937  DB  0,0                                 ; add           %al,(%rax)
19938  DB  0,31                                ; add           %bl,(%rdi)
19939  DB  0,0                                 ; add           %al,(%rax)
19940  DB  0,8                                 ; add           %cl,(%rax)
19941  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
19942  DB  8,33                                ; or            %ah,(%rcx)
19943  DB  4,61                                ; add           $0x3d,%al
19944  DB  8,33                                ; or            %ah,(%rcx)
19945  DB  4,61                                ; add           $0x3d,%al
19946  DB  0,0                                 ; add           %al,(%rax)
19947  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19948  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19949  DB  63                                  ; (bad)
19950  DB  0,0                                 ; add           %al,(%rax)
19951  DB  128,63,255                          ; cmpb          $0xff,(%rdi)
19952  DB  0,0                                 ; add           %al,(%rax)
19953  DB  0,255                               ; add           %bh,%bh
19954  DB  0,0                                 ; add           %al,(%rax)
19955  DB  0,255                               ; add           %bh,%bh
19956  DB  0,0                                 ; add           %al,(%rax)
19957  DB  0,255                               ; add           %bh,%bh
19958  DB  0,0                                 ; add           %al,(%rax)
19959  DB  0,129,128,128,59,129                ; add           %al,-0x7ec47f80(%rcx)
19960  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
19961  DB  129,128,128,59,255,0,255,0,255,0    ; addl          $0xff00ff,0xff3b80(%rax)
19962  DB  255,0                               ; incl          (%rax)
19963  DB  0,0                                 ; add           %al,(%rax)
19964  DB  0,0                                 ; add           %al,(%rax)
19965  DB  0,0                                 ; add           %al,(%rax)
19966  DB  0,0                                 ; add           %al,(%rax)
19967  DB  128,0,128                           ; addb          $0x80,(%rax)
19968  DB  55                                  ; (bad)
19969  DB  128,0,128                           ; addb          $0x80,(%rax)
19970  DB  55                                  ; (bad)
19971  DB  128,0,128                           ; addb          $0x80,(%rax)
19972  DB  55                                  ; (bad)
19973  DB  128,0,128                           ; addb          $0x80,(%rax)
19974  DB  55                                  ; (bad)
19975  DB  255,0                               ; incl          (%rax)
19976  DB  255,0                               ; incl          (%rax)
19977  DB  255,0                               ; incl          (%rax)
19978  DB  255,0                               ; incl          (%rax)
19979  DB  0,0                                 ; add           %al,(%rax)
19980  DB  0,0                                 ; add           %al,(%rax)
19981  DB  0,0                                 ; add           %al,(%rax)
19982  DB  0,0                                 ; add           %al,(%rax)
19983  DB  0,0                                 ; add           %al,(%rax)
19984  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19985  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19986  DB  63                                  ; (bad)
19987  DB  0,0                                 ; add           %al,(%rax)
19988  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19989  DB  0,127,67                            ; add           %bh,0x43(%rdi)
19990  DB  0,0                                 ; add           %al,(%rax)
19991  DB  127,67                              ; jg            444b <.literal16+0x49b>
19992  DB  0,0                                 ; add           %al,(%rax)
19993  DB  127,67                              ; jg            444f <.literal16+0x49f>
19994  DB  0,0                                 ; add           %al,(%rax)
19995  DB  127,67                              ; jg            4453 <.literal16+0x4a3>
19996  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
19997  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
19998  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
19999  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
20000  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
20001  DB  0,0                                 ; add           %al,(%rax)
20002  DB  52,0                                ; xor           $0x0,%al
20003  DB  0,0                                 ; add           %al,(%rax)
20004  DB  52,0                                ; xor           $0x0,%al
20005  DB  0,0                                 ; add           %al,(%rax)
20006  DB  52,0                                ; xor           $0x0,%al
20007  DB  0,0                                 ; add           %al,(%rax)
20008  DB  52,255                              ; xor           $0xff,%al
20009  DB  255                                 ; (bad)
20010  DB  127,0                               ; jg            4444 <.literal16+0x494>
20011  DB  255                                 ; (bad)
20012  DB  255                                 ; (bad)
20013  DB  127,0                               ; jg            4448 <.literal16+0x498>
20014  DB  255                                 ; (bad)
20015  DB  255                                 ; (bad)
20016  DB  127,0                               ; jg            444c <.literal16+0x49c>
20017  DB  255                                 ; (bad)
20018  DB  255                                 ; (bad)
20019  DB  127,0                               ; jg            4450 <.literal16+0x4a0>
20020  DB  0,0                                 ; add           %al,(%rax)
20021  DB  0,63                                ; add           %bh,(%rdi)
20022  DB  0,0                                 ; add           %al,(%rax)
20023  DB  0,63                                ; add           %bh,(%rdi)
20024  DB  0,0                                 ; add           %al,(%rax)
20025  DB  0,63                                ; add           %bh,(%rdi)
20026  DB  0,0                                 ; add           %al,(%rax)
20027  DB  0,63                                ; add           %bh,(%rdi)
20028  DB  119,115                             ; ja            44d5 <.literal16+0x525>
20029  DB  248                                 ; clc
20030  DB  194,119,115                         ; retq          $0x7377
20031  DB  248                                 ; clc
20032  DB  194,119,115                         ; retq          $0x7377
20033  DB  248                                 ; clc
20034  DB  194,119,115                         ; retq          $0x7377
20035  DB  248                                 ; clc
20036  DB  194,117,191                         ; retq          $0xbf75
20037  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
20038  DB  63                                  ; (bad)
20039  DB  117,191                             ; jne           4439 <.literal16+0x489>
20040  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
20041  DB  63                                  ; (bad)
20042  DB  249                                 ; stc
20043  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20044  DB  249                                 ; stc
20045  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20046  DB  249                                 ; stc
20047  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20048  DB  249                                 ; stc
20049  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20050  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
20051  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a3847a <_sk_callback_sse2+0xffffffffe9a34579>
20052  DB  220,63                              ; fdivrl        (%rdi)
20053  DB  0,0                                 ; add           %al,(%rax)
20054  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20055  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20056  DB  63                                  ; (bad)
20057  DB  0,0                                 ; add           %al,(%rax)
20058  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
20059  DB  140,242                             ; mov           %?,%edx
20060  DB  66,81                               ; rex.X         push %rcx
20061  DB  140,242                             ; mov           %?,%edx
20062  DB  66,81                               ; rex.X         push %rcx
20063  DB  140,242                             ; mov           %?,%edx
20064  DB  66,81                               ; rex.X         push %rcx
20065  DB  140,242                             ; mov           %?,%edx
20066  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
20067  DB  63                                  ; (bad)
20068  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
20069  DB  63                                  ; (bad)
20070  DB  248                                 ; clc
20071  DB  245                                 ; cmc
20072  DB  154                                 ; (bad)
20073  DB  64,248                              ; rex           clc
20074  DB  245                                 ; cmc
20075  DB  154                                 ; (bad)
20076  DB  64,248                              ; rex           clc
20077  DB  245                                 ; cmc
20078  DB  154                                 ; (bad)
20079  DB  64,248                              ; rex           clc
20080  DB  245                                 ; cmc
20081  DB  154                                 ; (bad)
20082  DB  64,254                              ; rex           (bad)
20083  DB  210,221                             ; rcr           %cl,%ch
20084  DB  65,254                              ; rex.B         (bad)
20085  DB  210,221                             ; rcr           %cl,%ch
20086  DB  65,254                              ; rex.B         (bad)
20087  DB  210,221                             ; rcr           %cl,%ch
20088  DB  65,254                              ; rex.B         (bad)
20089  DB  210,221                             ; rcr           %cl,%ch
20090  DB  65,0,0                              ; add           %al,(%r8)
20091  DB  0,75,0                              ; add           %cl,0x0(%rbx)
20092  DB  0,0                                 ; add           %al,(%rax)
20093  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
20094  DB  0,75,0                              ; add           %cl,0x0(%rbx)
20095  DB  0,0                                 ; add           %al,(%rax)
20096  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
20097  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
20098  DB  0,0                                 ; add           %al,(%rax)
20099  DB  52,0                                ; xor           $0x0,%al
20100  DB  0,0                                 ; add           %al,(%rax)
20101  DB  52,0                                ; xor           $0x0,%al
20102  DB  0,0                                 ; add           %al,(%rax)
20103  DB  52,255                              ; xor           $0xff,%al
20104  DB  255                                 ; (bad)
20105  DB  127,0                               ; jg            4514 <.literal16+0x564>
20106  DB  255                                 ; (bad)
20107  DB  255                                 ; (bad)
20108  DB  127,0                               ; jg            4518 <.literal16+0x568>
20109  DB  255                                 ; (bad)
20110  DB  255                                 ; (bad)
20111  DB  127,0                               ; jg            451c <.literal16+0x56c>
20112  DB  255                                 ; (bad)
20113  DB  255                                 ; (bad)
20114  DB  127,0                               ; jg            4520 <.literal16+0x570>
20115  DB  0,0                                 ; add           %al,(%rax)
20116  DB  0,63                                ; add           %bh,(%rdi)
20117  DB  0,0                                 ; add           %al,(%rax)
20118  DB  0,63                                ; add           %bh,(%rdi)
20119  DB  0,0                                 ; add           %al,(%rax)
20120  DB  0,63                                ; add           %bh,(%rdi)
20121  DB  0,0                                 ; add           %al,(%rax)
20122  DB  0,63                                ; add           %bh,(%rdi)
20123  DB  119,115                             ; ja            45a5 <.literal16+0x5f5>
20124  DB  248                                 ; clc
20125  DB  194,119,115                         ; retq          $0x7377
20126  DB  248                                 ; clc
20127  DB  194,119,115                         ; retq          $0x7377
20128  DB  248                                 ; clc
20129  DB  194,119,115                         ; retq          $0x7377
20130  DB  248                                 ; clc
20131  DB  194,117,191                         ; retq          $0xbf75
20132  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
20133  DB  63                                  ; (bad)
20134  DB  117,191                             ; jne           4509 <.literal16+0x559>
20135  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
20136  DB  63                                  ; (bad)
20137  DB  249                                 ; stc
20138  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20139  DB  249                                 ; stc
20140  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20141  DB  249                                 ; stc
20142  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20143  DB  249                                 ; stc
20144  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20145  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
20146  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a3854a <_sk_callback_sse2+0xffffffffe9a34649>
20147  DB  220,63                              ; fdivrl        (%rdi)
20148  DB  0,0                                 ; add           %al,(%rax)
20149  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20150  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20151  DB  63                                  ; (bad)
20152  DB  0,0                                 ; add           %al,(%rax)
20153  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
20154  DB  140,242                             ; mov           %?,%edx
20155  DB  66,81                               ; rex.X         push %rcx
20156  DB  140,242                             ; mov           %?,%edx
20157  DB  66,81                               ; rex.X         push %rcx
20158  DB  140,242                             ; mov           %?,%edx
20159  DB  66,81                               ; rex.X         push %rcx
20160  DB  140,242                             ; mov           %?,%edx
20161  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
20162  DB  63                                  ; (bad)
20163  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
20164  DB  63                                  ; (bad)
20165  DB  248                                 ; clc
20166  DB  245                                 ; cmc
20167  DB  154                                 ; (bad)
20168  DB  64,248                              ; rex           clc
20169  DB  245                                 ; cmc
20170  DB  154                                 ; (bad)
20171  DB  64,248                              ; rex           clc
20172  DB  245                                 ; cmc
20173  DB  154                                 ; (bad)
20174  DB  64,248                              ; rex           clc
20175  DB  245                                 ; cmc
20176  DB  154                                 ; (bad)
20177  DB  64,254                              ; rex           (bad)
20178  DB  210,221                             ; rcr           %cl,%ch
20179  DB  65,254                              ; rex.B         (bad)
20180  DB  210,221                             ; rcr           %cl,%ch
20181  DB  65,254                              ; rex.B         (bad)
20182  DB  210,221                             ; rcr           %cl,%ch
20183  DB  65,254                              ; rex.B         (bad)
20184  DB  210,221                             ; rcr           %cl,%ch
20185  DB  65,0,0                              ; add           %al,(%r8)
20186  DB  0,75,0                              ; add           %cl,0x0(%rbx)
20187  DB  0,0                                 ; add           %al,(%rax)
20188  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
20189  DB  0,75,0                              ; add           %cl,0x0(%rbx)
20190  DB  0,0                                 ; add           %al,(%rax)
20191  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
20192  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
20193  DB  0,0                                 ; add           %al,(%rax)
20194  DB  52,0                                ; xor           $0x0,%al
20195  DB  0,0                                 ; add           %al,(%rax)
20196  DB  52,0                                ; xor           $0x0,%al
20197  DB  0,0                                 ; add           %al,(%rax)
20198  DB  52,255                              ; xor           $0xff,%al
20199  DB  255                                 ; (bad)
20200  DB  127,0                               ; jg            45e4 <.literal16+0x634>
20201  DB  255                                 ; (bad)
20202  DB  255                                 ; (bad)
20203  DB  127,0                               ; jg            45e8 <.literal16+0x638>
20204  DB  255                                 ; (bad)
20205  DB  255                                 ; (bad)
20206  DB  127,0                               ; jg            45ec <.literal16+0x63c>
20207  DB  255                                 ; (bad)
20208  DB  255                                 ; (bad)
20209  DB  127,0                               ; jg            45f0 <.literal16+0x640>
20210  DB  0,0                                 ; add           %al,(%rax)
20211  DB  0,63                                ; add           %bh,(%rdi)
20212  DB  0,0                                 ; add           %al,(%rax)
20213  DB  0,63                                ; add           %bh,(%rdi)
20214  DB  0,0                                 ; add           %al,(%rax)
20215  DB  0,63                                ; add           %bh,(%rdi)
20216  DB  0,0                                 ; add           %al,(%rax)
20217  DB  0,63                                ; add           %bh,(%rdi)
20218  DB  119,115                             ; ja            4675 <.literal16+0x6c5>
20219  DB  248                                 ; clc
20220  DB  194,119,115                         ; retq          $0x7377
20221  DB  248                                 ; clc
20222  DB  194,119,115                         ; retq          $0x7377
20223  DB  248                                 ; clc
20224  DB  194,119,115                         ; retq          $0x7377
20225  DB  248                                 ; clc
20226  DB  194,117,191                         ; retq          $0xbf75
20227  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
20228  DB  63                                  ; (bad)
20229  DB  117,191                             ; jne           45d9 <.literal16+0x629>
20230  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
20231  DB  63                                  ; (bad)
20232  DB  249                                 ; stc
20233  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20234  DB  249                                 ; stc
20235  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20236  DB  249                                 ; stc
20237  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20238  DB  249                                 ; stc
20239  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20240  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
20241  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a3861a <_sk_callback_sse2+0xffffffffe9a34719>
20242  DB  220,63                              ; fdivrl        (%rdi)
20243  DB  0,0                                 ; add           %al,(%rax)
20244  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20245  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20246  DB  63                                  ; (bad)
20247  DB  0,0                                 ; add           %al,(%rax)
20248  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
20249  DB  140,242                             ; mov           %?,%edx
20250  DB  66,81                               ; rex.X         push %rcx
20251  DB  140,242                             ; mov           %?,%edx
20252  DB  66,81                               ; rex.X         push %rcx
20253  DB  140,242                             ; mov           %?,%edx
20254  DB  66,81                               ; rex.X         push %rcx
20255  DB  140,242                             ; mov           %?,%edx
20256  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
20257  DB  63                                  ; (bad)
20258  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
20259  DB  63                                  ; (bad)
20260  DB  248                                 ; clc
20261  DB  245                                 ; cmc
20262  DB  154                                 ; (bad)
20263  DB  64,248                              ; rex           clc
20264  DB  245                                 ; cmc
20265  DB  154                                 ; (bad)
20266  DB  64,248                              ; rex           clc
20267  DB  245                                 ; cmc
20268  DB  154                                 ; (bad)
20269  DB  64,248                              ; rex           clc
20270  DB  245                                 ; cmc
20271  DB  154                                 ; (bad)
20272  DB  64,254                              ; rex           (bad)
20273  DB  210,221                             ; rcr           %cl,%ch
20274  DB  65,254                              ; rex.B         (bad)
20275  DB  210,221                             ; rcr           %cl,%ch
20276  DB  65,254                              ; rex.B         (bad)
20277  DB  210,221                             ; rcr           %cl,%ch
20278  DB  65,254                              ; rex.B         (bad)
20279  DB  210,221                             ; rcr           %cl,%ch
20280  DB  65,0,0                              ; add           %al,(%r8)
20281  DB  0,75,0                              ; add           %cl,0x0(%rbx)
20282  DB  0,0                                 ; add           %al,(%rax)
20283  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
20284  DB  0,75,0                              ; add           %cl,0x0(%rbx)
20285  DB  0,0                                 ; add           %al,(%rax)
20286  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
20287  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
20288  DB  0,0                                 ; add           %al,(%rax)
20289  DB  52,0                                ; xor           $0x0,%al
20290  DB  0,0                                 ; add           %al,(%rax)
20291  DB  52,0                                ; xor           $0x0,%al
20292  DB  0,0                                 ; add           %al,(%rax)
20293  DB  52,255                              ; xor           $0xff,%al
20294  DB  255                                 ; (bad)
20295  DB  127,0                               ; jg            46b4 <.literal16+0x704>
20296  DB  255                                 ; (bad)
20297  DB  255                                 ; (bad)
20298  DB  127,0                               ; jg            46b8 <.literal16+0x708>
20299  DB  255                                 ; (bad)
20300  DB  255                                 ; (bad)
20301  DB  127,0                               ; jg            46bc <.literal16+0x70c>
20302  DB  255                                 ; (bad)
20303  DB  255                                 ; (bad)
20304  DB  127,0                               ; jg            46c0 <.literal16+0x710>
20305  DB  0,0                                 ; add           %al,(%rax)
20306  DB  0,63                                ; add           %bh,(%rdi)
20307  DB  0,0                                 ; add           %al,(%rax)
20308  DB  0,63                                ; add           %bh,(%rdi)
20309  DB  0,0                                 ; add           %al,(%rax)
20310  DB  0,63                                ; add           %bh,(%rdi)
20311  DB  0,0                                 ; add           %al,(%rax)
20312  DB  0,63                                ; add           %bh,(%rdi)
20313  DB  119,115                             ; ja            4745 <.literal16+0x795>
20314  DB  248                                 ; clc
20315  DB  194,119,115                         ; retq          $0x7377
20316  DB  248                                 ; clc
20317  DB  194,119,115                         ; retq          $0x7377
20318  DB  248                                 ; clc
20319  DB  194,119,115                         ; retq          $0x7377
20320  DB  248                                 ; clc
20321  DB  194,117,191                         ; retq          $0xbf75
20322  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
20323  DB  63                                  ; (bad)
20324  DB  117,191                             ; jne           46a9 <.literal16+0x6f9>
20325  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
20326  DB  63                                  ; (bad)
20327  DB  249                                 ; stc
20328  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20329  DB  249                                 ; stc
20330  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20331  DB  249                                 ; stc
20332  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20333  DB  249                                 ; stc
20334  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
20335  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
20336  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a386ea <_sk_callback_sse2+0xffffffffe9a347e9>
20337  DB  220,63                              ; fdivrl        (%rdi)
20338  DB  0,0                                 ; add           %al,(%rax)
20339  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20340  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20341  DB  63                                  ; (bad)
20342  DB  0,0                                 ; add           %al,(%rax)
20343  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
20344  DB  140,242                             ; mov           %?,%edx
20345  DB  66,81                               ; rex.X         push %rcx
20346  DB  140,242                             ; mov           %?,%edx
20347  DB  66,81                               ; rex.X         push %rcx
20348  DB  140,242                             ; mov           %?,%edx
20349  DB  66,81                               ; rex.X         push %rcx
20350  DB  140,242                             ; mov           %?,%edx
20351  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
20352  DB  63                                  ; (bad)
20353  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
20354  DB  63                                  ; (bad)
20355  DB  248                                 ; clc
20356  DB  245                                 ; cmc
20357  DB  154                                 ; (bad)
20358  DB  64,248                              ; rex           clc
20359  DB  245                                 ; cmc
20360  DB  154                                 ; (bad)
20361  DB  64,248                              ; rex           clc
20362  DB  245                                 ; cmc
20363  DB  154                                 ; (bad)
20364  DB  64,248                              ; rex           clc
20365  DB  245                                 ; cmc
20366  DB  154                                 ; (bad)
20367  DB  64,254                              ; rex           (bad)
20368  DB  210,221                             ; rcr           %cl,%ch
20369  DB  65,254                              ; rex.B         (bad)
20370  DB  210,221                             ; rcr           %cl,%ch
20371  DB  65,254                              ; rex.B         (bad)
20372  DB  210,221                             ; rcr           %cl,%ch
20373  DB  65,254                              ; rex.B         (bad)
20374  DB  210,221                             ; rcr           %cl,%ch
20375  DB  65,0,0                              ; add           %al,(%r8)
20376  DB  0,75,0                              ; add           %cl,0x0(%rbx)
20377  DB  0,0                                 ; add           %al,(%rax)
20378  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
20379  DB  0,75,0                              ; add           %cl,0x0(%rbx)
20380  DB  0,0                                 ; add           %al,(%rax)
20381  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
20382  DB  200,66,0,0                          ; enterq        $0x42,$0x0
20383  DB  200,66,0,0                          ; enterq        $0x42,$0x0
20384  DB  200,66,0,0                          ; enterq        $0x42,$0x0
20385  DB  200,66,0,0                          ; enterq        $0x42,$0x0
20386  DB  127,67                              ; jg            47c7 <.literal16+0x817>
20387  DB  0,0                                 ; add           %al,(%rax)
20388  DB  127,67                              ; jg            47cb <.literal16+0x81b>
20389  DB  0,0                                 ; add           %al,(%rax)
20390  DB  127,67                              ; jg            47cf <.literal16+0x81f>
20391  DB  0,0                                 ; add           %al,(%rax)
20392  DB  127,67                              ; jg            47d3 <.literal16+0x823>
20393  DB  0,0                                 ; add           %al,(%rax)
20394  DB  0,195                               ; add           %al,%bl
20395  DB  0,0                                 ; add           %al,(%rax)
20396  DB  0,195                               ; add           %al,%bl
20397  DB  0,0                                 ; add           %al,(%rax)
20398  DB  0,195                               ; add           %al,%bl
20399  DB  0,0                                 ; add           %al,(%rax)
20400  DB  0,195                               ; add           %al,%bl
20401  DB  0,0                                 ; add           %al,(%rax)
20402  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
20403  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
20404  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
20405  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
20406  DB  13,60,203,61,13                     ; or            $0xd3dcb3c,%eax
20407  DB  60,203                              ; cmp           $0xcb,%al
20408  DB  61,13,60,203,61                     ; cmp           $0x3dcb3c0d,%eax
20409  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
20410  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
20411  DB  3,59                                ; add           (%rbx),%edi
20412  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
20413  DB  18,3                                ; adc           (%rbx),%al
20414  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
20415  DB  3,59                                ; add           (%rbx),%edi
20416  DB  10,215                              ; or            %bh,%dl
20417  DB  163,59,10,215,163,59,10,215,163     ; movabs        %eax,0xa3d70a3ba3d70a3b
20418  DB  59,10                               ; cmp           (%rdx),%ecx
20419  DB  215                                 ; xlat          %ds:(%rbx)
20420  DB  163,59,194,24,17,60,194,24,17       ; movabs        %eax,0x1118c23c1118c23b
20421  DB  60,194                              ; cmp           $0xc2,%al
20422  DB  24,17                               ; sbb           %dl,(%rcx)
20423  DB  60,194                              ; cmp           $0xc2,%al
20424  DB  24,17                               ; sbb           %dl,(%rcx)
20425  DB  60,203                              ; cmp           $0xcb,%al
20426  DB  61,13,190,203,61                    ; cmp           $0x3dcbbe0d,%eax
20427  DB  13,190,203,61,13                    ; or            $0xd3dcbbe,%eax
20428  DB  190,203,61,13,190                   ; mov           $0xbe0d3dcb,%esi
20429  DB  80                                  ; push          %rax
20430  DB  128,3,62                            ; addb          $0x3e,(%rbx)
20431  DB  80                                  ; push          %rax
20432  DB  128,3,62                            ; addb          $0x3e,(%rbx)
20433  DB  80                                  ; push          %rax
20434  DB  128,3,62                            ; addb          $0x3e,(%rbx)
20435  DB  80                                  ; push          %rax
20436  DB  128,3,62                            ; addb          $0x3e,(%rbx)
20437  DB  31                                  ; (bad)
20438  DB  215                                 ; xlat          %ds:(%rbx)
20439  DB  118,63                              ; jbe           4853 <.literal16+0x8a3>
20440  DB  31                                  ; (bad)
20441  DB  215                                 ; xlat          %ds:(%rbx)
20442  DB  118,63                              ; jbe           4857 <.literal16+0x8a7>
20443  DB  31                                  ; (bad)
20444  DB  215                                 ; xlat          %ds:(%rbx)
20445  DB  118,63                              ; jbe           485b <.literal16+0x8ab>
20446  DB  31                                  ; (bad)
20447  DB  215                                 ; xlat          %ds:(%rbx)
20448  DB  118,63                              ; jbe           485f <.literal16+0x8af>
20449  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
20450  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
20451  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
20452  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
20453  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
20454  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
20455  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
20456  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
20457  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
20458  DB  0,127,67                            ; add           %bh,0x43(%rdi)
20459  DB  0,0                                 ; add           %al,(%rax)
20460  DB  127,67                              ; jg            489b <.literal16+0x8eb>
20461  DB  0,0                                 ; add           %al,(%rax)
20462  DB  127,67                              ; jg            489f <.literal16+0x8ef>
20463  DB  0,0                                 ; add           %al,(%rax)
20464  DB  127,67                              ; jg            48a3 <.literal16+0x8f3>
20465  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
20466  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
20467  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
20468  DB  0,0                                 ; add           %al,(%rax)
20469  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20470  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20471  DB  63                                  ; (bad)
20472  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
20473  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
20474  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
20475  DB  0,0                                 ; add           %al,(%rax)
20476  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20477  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20478  DB  63                                  ; (bad)
20479  DB  255,0                               ; incl          (%rax)
20480  DB  0,0                                 ; add           %al,(%rax)
20481  DB  255,0                               ; incl          (%rax)
20482  DB  0,0                                 ; add           %al,(%rax)
20483  DB  255,0                               ; incl          (%rax)
20484  DB  0,0                                 ; add           %al,(%rax)
20485  DB  255,0                               ; incl          (%rax)
20486  DB  0,0                                 ; add           %al,(%rax)
20487  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
20488  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
20489  DB  128,128,59,0,248,0,0                ; addb          $0x0,0xf8003b(%rax)
20490  DB  0,248                               ; add           %bh,%al
20491  DB  0,0                                 ; add           %al,(%rax)
20492  DB  0,248                               ; add           %bh,%al
20493  DB  0,0                                 ; add           %al,(%rax)
20494  DB  0,248                               ; add           %bh,%al
20495  DB  0,0                                 ; add           %al,(%rax)
20496  DB  8,33                                ; or            %ah,(%rcx)
20497  DB  132,55                              ; test          %dh,(%rdi)
20498  DB  8,33                                ; or            %ah,(%rcx)
20499  DB  132,55                              ; test          %dh,(%rdi)
20500  DB  8,33                                ; or            %ah,(%rcx)
20501  DB  132,55                              ; test          %dh,(%rdi)
20502  DB  8,33                                ; or            %ah,(%rcx)
20503  DB  132,55                              ; test          %dh,(%rdi)
20504  DB  224,7                               ; loopne        48e9 <.literal16+0x939>
20505  DB  0,0                                 ; add           %al,(%rax)
20506  DB  224,7                               ; loopne        48ed <.literal16+0x93d>
20507  DB  0,0                                 ; add           %al,(%rax)
20508  DB  224,7                               ; loopne        48f1 <.literal16+0x941>
20509  DB  0,0                                 ; add           %al,(%rax)
20510  DB  224,7                               ; loopne        48f5 <.literal16+0x945>
20511  DB  0,0                                 ; add           %al,(%rax)
20512  DB  33,8                                ; and           %ecx,(%rax)
20513  DB  2,58                                ; add           (%rdx),%bh
20514  DB  33,8                                ; and           %ecx,(%rax)
20515  DB  2,58                                ; add           (%rdx),%bh
20516  DB  33,8                                ; and           %ecx,(%rax)
20517  DB  2,58                                ; add           (%rdx),%bh
20518  DB  33,8                                ; and           %ecx,(%rax)
20519  DB  2,58                                ; add           (%rdx),%bh
20520  DB  31                                  ; (bad)
20521  DB  0,0                                 ; add           %al,(%rax)
20522  DB  0,31                                ; add           %bl,(%rdi)
20523  DB  0,0                                 ; add           %al,(%rax)
20524  DB  0,31                                ; add           %bl,(%rdi)
20525  DB  0,0                                 ; add           %al,(%rax)
20526  DB  0,31                                ; add           %bl,(%rdi)
20527  DB  0,0                                 ; add           %al,(%rax)
20528  DB  0,8                                 ; add           %cl,(%rax)
20529  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
20530  DB  8,33                                ; or            %ah,(%rcx)
20531  DB  4,61                                ; add           $0x3d,%al
20532  DB  8,33                                ; or            %ah,(%rcx)
20533  DB  4,61                                ; add           $0x3d,%al
20534  DB  0,0                                 ; add           %al,(%rax)
20535  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20536  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20537  DB  63                                  ; (bad)
20538  DB  0,0                                 ; add           %al,(%rax)
20539  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20540  DB  248                                 ; clc
20541  DB  0,0                                 ; add           %al,(%rax)
20542  DB  0,248                               ; add           %bh,%al
20543  DB  0,0                                 ; add           %al,(%rax)
20544  DB  0,248                               ; add           %bh,%al
20545  DB  0,0                                 ; add           %al,(%rax)
20546  DB  0,248                               ; add           %bh,%al
20547  DB  0,0                                 ; add           %al,(%rax)
20548  DB  8,33                                ; or            %ah,(%rcx)
20549  DB  132,55                              ; test          %dh,(%rdi)
20550  DB  8,33                                ; or            %ah,(%rcx)
20551  DB  132,55                              ; test          %dh,(%rdi)
20552  DB  8,33                                ; or            %ah,(%rcx)
20553  DB  132,55                              ; test          %dh,(%rdi)
20554  DB  8,33                                ; or            %ah,(%rcx)
20555  DB  132,55                              ; test          %dh,(%rdi)
20556  DB  224,7                               ; loopne        4959 <.literal16+0x9a9>
20557  DB  0,0                                 ; add           %al,(%rax)
20558  DB  224,7                               ; loopne        495d <.literal16+0x9ad>
20559  DB  0,0                                 ; add           %al,(%rax)
20560  DB  224,7                               ; loopne        4961 <.literal16+0x9b1>
20561  DB  0,0                                 ; add           %al,(%rax)
20562  DB  224,7                               ; loopne        4965 <.literal16+0x9b5>
20563  DB  0,0                                 ; add           %al,(%rax)
20564  DB  33,8                                ; and           %ecx,(%rax)
20565  DB  2,58                                ; add           (%rdx),%bh
20566  DB  33,8                                ; and           %ecx,(%rax)
20567  DB  2,58                                ; add           (%rdx),%bh
20568  DB  33,8                                ; and           %ecx,(%rax)
20569  DB  2,58                                ; add           (%rdx),%bh
20570  DB  33,8                                ; and           %ecx,(%rax)
20571  DB  2,58                                ; add           (%rdx),%bh
20572  DB  31                                  ; (bad)
20573  DB  0,0                                 ; add           %al,(%rax)
20574  DB  0,31                                ; add           %bl,(%rdi)
20575  DB  0,0                                 ; add           %al,(%rax)
20576  DB  0,31                                ; add           %bl,(%rdi)
20577  DB  0,0                                 ; add           %al,(%rax)
20578  DB  0,31                                ; add           %bl,(%rdi)
20579  DB  0,0                                 ; add           %al,(%rax)
20580  DB  0,8                                 ; add           %cl,(%rax)
20581  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
20582  DB  8,33                                ; or            %ah,(%rcx)
20583  DB  4,61                                ; add           $0x3d,%al
20584  DB  8,33                                ; or            %ah,(%rcx)
20585  DB  4,61                                ; add           $0x3d,%al
20586  DB  0,0                                 ; add           %al,(%rax)
20587  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20588  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20589  DB  63                                  ; (bad)
20590  DB  0,0                                 ; add           %al,(%rax)
20591  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20592  DB  0,248                               ; add           %bh,%al
20593  DB  65,0,0                              ; add           %al,(%r8)
20594  DB  248                                 ; clc
20595  DB  65,0,0                              ; add           %al,(%r8)
20596  DB  248                                 ; clc
20597  DB  65,0,0                              ; add           %al,(%r8)
20598  DB  248                                 ; clc
20599  DB  65,0,0                              ; add           %al,(%r8)
20600  DB  124,66                              ; jl            49f6 <.literal16+0xa46>
20601  DB  0,0                                 ; add           %al,(%rax)
20602  DB  124,66                              ; jl            49fa <.literal16+0xa4a>
20603  DB  0,0                                 ; add           %al,(%rax)
20604  DB  124,66                              ; jl            49fe <.literal16+0xa4e>
20605  DB  0,0                                 ; add           %al,(%rax)
20606  DB  124,66                              ; jl            4a02 <.literal16+0xa52>
20607  DB  0,240                               ; add           %dh,%al
20608  DB  0,0                                 ; add           %al,(%rax)
20609  DB  0,240                               ; add           %dh,%al
20610  DB  0,0                                 ; add           %al,(%rax)
20611  DB  0,240                               ; add           %dh,%al
20612  DB  0,0                                 ; add           %al,(%rax)
20613  DB  0,240                               ; add           %dh,%al
20614  DB  0,0                                 ; add           %al,(%rax)
20615  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
20616  DB  136,55                              ; mov           %dh,(%rdi)
20617  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
20618  DB  136,55                              ; mov           %dh,(%rdi)
20619  DB  0,15                                ; add           %cl,(%rdi)
20620  DB  0,0                                 ; add           %al,(%rax)
20621  DB  0,15                                ; add           %cl,(%rdi)
20622  DB  0,0                                 ; add           %al,(%rax)
20623  DB  0,15                                ; add           %cl,(%rdi)
20624  DB  0,0                                 ; add           %al,(%rax)
20625  DB  0,15                                ; add           %cl,(%rdi)
20626  DB  0,0                                 ; add           %al,(%rax)
20627  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
20628  DB  136,57                              ; mov           %bh,(%rcx)
20629  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
20630  DB  136,57                              ; mov           %bh,(%rcx)
20631  DB  240,0,0                             ; lock          add %al,(%rax)
20632  DB  0,240                               ; add           %dh,%al
20633  DB  0,0                                 ; add           %al,(%rax)
20634  DB  0,240                               ; add           %dh,%al
20635  DB  0,0                                 ; add           %al,(%rax)
20636  DB  0,240                               ; add           %dh,%al
20637  DB  0,0                                 ; add           %al,(%rax)
20638  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
20639  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
20640  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
20641  DB  0,0                                 ; add           %al,(%rax)
20642  DB  0,15                                ; add           %cl,(%rdi)
20643  DB  0,0                                 ; add           %al,(%rax)
20644  DB  0,15                                ; add           %cl,(%rdi)
20645  DB  0,0                                 ; add           %al,(%rax)
20646  DB  0,15                                ; add           %cl,(%rdi)
20647  DB  0,0                                 ; add           %al,(%rax)
20648  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
20649  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
20650  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
20651  DB  0,240                               ; add           %dh,%al
20652  DB  0,0                                 ; add           %al,(%rax)
20653  DB  0,240                               ; add           %dh,%al
20654  DB  0,0                                 ; add           %al,(%rax)
20655  DB  0,240                               ; add           %dh,%al
20656  DB  0,0                                 ; add           %al,(%rax)
20657  DB  0,240                               ; add           %dh,%al
20658  DB  0,0                                 ; add           %al,(%rax)
20659  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
20660  DB  136,55                              ; mov           %dh,(%rdi)
20661  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
20662  DB  136,55                              ; mov           %dh,(%rdi)
20663  DB  0,15                                ; add           %cl,(%rdi)
20664  DB  0,0                                 ; add           %al,(%rax)
20665  DB  0,15                                ; add           %cl,(%rdi)
20666  DB  0,0                                 ; add           %al,(%rax)
20667  DB  0,15                                ; add           %cl,(%rdi)
20668  DB  0,0                                 ; add           %al,(%rax)
20669  DB  0,15                                ; add           %cl,(%rdi)
20670  DB  0,0                                 ; add           %al,(%rax)
20671  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
20672  DB  136,57                              ; mov           %bh,(%rcx)
20673  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
20674  DB  136,57                              ; mov           %bh,(%rcx)
20675  DB  240,0,0                             ; lock          add %al,(%rax)
20676  DB  0,240                               ; add           %dh,%al
20677  DB  0,0                                 ; add           %al,(%rax)
20678  DB  0,240                               ; add           %dh,%al
20679  DB  0,0                                 ; add           %al,(%rax)
20680  DB  0,240                               ; add           %dh,%al
20681  DB  0,0                                 ; add           %al,(%rax)
20682  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
20683  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
20684  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
20685  DB  0,0                                 ; add           %al,(%rax)
20686  DB  0,15                                ; add           %cl,(%rdi)
20687  DB  0,0                                 ; add           %al,(%rax)
20688  DB  0,15                                ; add           %cl,(%rdi)
20689  DB  0,0                                 ; add           %al,(%rax)
20690  DB  0,15                                ; add           %cl,(%rdi)
20691  DB  0,0                                 ; add           %al,(%rax)
20692  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
20693  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
20694  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
20695  DB  0,0                                 ; add           %al,(%rax)
20696  DB  112,65                              ; jo            4b05 <.literal16+0xb55>
20697  DB  0,0                                 ; add           %al,(%rax)
20698  DB  112,65                              ; jo            4b09 <.literal16+0xb59>
20699  DB  0,0                                 ; add           %al,(%rax)
20700  DB  112,65                              ; jo            4b0d <.literal16+0xb5d>
20701  DB  0,0                                 ; add           %al,(%rax)
20702  DB  112,65                              ; jo            4b11 <.literal16+0xb61>
20703  DB  255,0                               ; incl          (%rax)
20704  DB  0,0                                 ; add           %al,(%rax)
20705  DB  255,0                               ; incl          (%rax)
20706  DB  0,0                                 ; add           %al,(%rax)
20707  DB  255,0                               ; incl          (%rax)
20708  DB  0,0                                 ; add           %al,(%rax)
20709  DB  255,0                               ; incl          (%rax)
20710  DB  0,0                                 ; add           %al,(%rax)
20711  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
20712  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
20713  DB  128,128,59,255,0,0,0                ; addb          $0x0,0xff3b(%rax)
20714  DB  255,0                               ; incl          (%rax)
20715  DB  0,0                                 ; add           %al,(%rax)
20716  DB  255,0                               ; incl          (%rax)
20717  DB  0,0                                 ; add           %al,(%rax)
20718  DB  255,0                               ; incl          (%rax)
20719  DB  0,0                                 ; add           %al,(%rax)
20720  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
20721  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
20722  DB  128,128,59,0,0,127,67               ; addb          $0x43,0x7f00003b(%rax)
20723  DB  0,0                                 ; add           %al,(%rax)
20724  DB  127,67                              ; jg            4b5b <.literal16+0xbab>
20725  DB  0,0                                 ; add           %al,(%rax)
20726  DB  127,67                              ; jg            4b5f <.literal16+0xbaf>
20727  DB  0,0                                 ; add           %al,(%rax)
20728  DB  127,67                              ; jg            4b63 <.literal16+0xbb3>
20729  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20730  DB  0,0                                 ; add           %al,(%rax)
20731  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20732  DB  0,0                                 ; add           %al,(%rax)
20733  DB  0,0                                 ; add           %al,(%rax)
20734  DB  0,56                                ; add           %bh,(%rax)
20735  DB  0,0                                 ; add           %al,(%rax)
20736  DB  0,56                                ; add           %bh,(%rax)
20737  DB  0,0                                 ; add           %al,(%rax)
20738  DB  0,56                                ; add           %bh,(%rax)
20739  DB  0,0                                 ; add           %al,(%rax)
20740  DB  0,56                                ; add           %bh,(%rax)
20741  DB  0,0                                 ; add           %al,(%rax)
20742  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20743  DB  0,0                                 ; add           %al,(%rax)
20744  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20745  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
20746  DB  128,0,4                             ; addb          $0x4,(%rax)
20747  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
20748  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
20749  DB  128,0,128                           ; addb          $0x80,(%rax)
20750  DB  0,0                                 ; add           %al,(%rax)
20751  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20752  DB  0,0                                 ; add           %al,(%rax)
20753  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
20754  DB  0,56                                ; add           %bh,(%rax)
20755  DB  0,0                                 ; add           %al,(%rax)
20756  DB  0,56                                ; add           %bh,(%rax)
20757  DB  0,0                                 ; add           %al,(%rax)
20758  DB  0,56                                ; add           %bh,(%rax)
20759  DB  0,0                                 ; add           %al,(%rax)
20760  DB  0,56                                ; add           %bh,(%rax)
20761  DB  0,0                                 ; add           %al,(%rax)
20762  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20763  DB  0,0                                 ; add           %al,(%rax)
20764  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20765  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
20766  DB  128,0,4                             ; addb          $0x4,(%rax)
20767  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
20768  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
20769  DB  128,0,0                             ; addb          $0x0,(%rax)
20770  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20771  DB  0,0                                 ; add           %al,(%rax)
20772  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
20773  DB  0,0                                 ; add           %al,(%rax)
20774  DB  128,56,0                            ; cmpb          $0x0,(%rax)
20775  DB  0,128,56,0,0,128                    ; add           %al,-0x7fffffc8(%rax)
20776  DB  56,0                                ; cmp           %al,(%rax)
20777  DB  0,128,56,0,64,254                   ; add           %al,-0x1bfffc8(%rax)
20778  DB  255,0                               ; incl          (%rax)
20779  DB  64,254                              ; rex           (bad)
20780  DB  255,0                               ; incl          (%rax)
20781  DB  64,254                              ; rex           (bad)
20782  DB  255,0                               ; incl          (%rax)
20783  DB  64,254                              ; rex           (bad)
20784  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
20785  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
20786  DB  55                                  ; (bad)
20787  DB  128,0,128                           ; addb          $0x80,(%rax)
20788  DB  55                                  ; (bad)
20789  DB  128,0,128                           ; addb          $0x80,(%rax)
20790  DB  55                                  ; (bad)
20791  DB  128,0,128                           ; addb          $0x80,(%rax)
20792  DB  55                                  ; (bad)
20793  DB  128,0,128                           ; addb          $0x80,(%rax)
20794  DB  55                                  ; (bad)
20795  DB  128,0,128                           ; addb          $0x80,(%rax)
20796  DB  55                                  ; (bad)
20797  DB  0,0                                 ; add           %al,(%rax)
20798  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20799  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20800  DB  63                                  ; (bad)
20801  DB  0,0                                 ; add           %al,(%rax)
20802  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20803  DB  255                                 ; (bad)
20804  DB  127,71                              ; jg            4c4b <.literal16+0xc9b>
20805  DB  0,255                               ; add           %bh,%bh
20806  DB  127,71                              ; jg            4c4f <.literal16+0xc9f>
20807  DB  0,255                               ; add           %bh,%bh
20808  DB  127,71                              ; jg            4c53 <.literal16+0xca3>
20809  DB  0,255                               ; add           %bh,%bh
20810  DB  127,71                              ; jg            4c57 <.literal16+0xca7>
20811  DB  0,0                                 ; add           %al,(%rax)
20812  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20813  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20814  DB  63                                  ; (bad)
20815  DB  0,0                                 ; add           %al,(%rax)
20816  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20817  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20818  DB  63                                  ; (bad)
20819  DB  0,0                                 ; add           %al,(%rax)
20820  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20821  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20822  DB  63                                  ; (bad)
20823  DB  0,0                                 ; add           %al,(%rax)
20824  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20825  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20826  DB  63                                  ; (bad)
20827  DB  0,0                                 ; add           %al,(%rax)
20828  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20829  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20830  DB  63                                  ; (bad)
20831  DB  0,0                                 ; add           %al,(%rax)
20832  DB  128,63,208                          ; cmpb          $0xd0,(%rdi)
20833  DB  179,89                              ; mov           $0x59,%bl
20834  DB  62,208                              ; ds            (bad)
20835  DB  179,89                              ; mov           $0x59,%bl
20836  DB  62,208                              ; ds            (bad)
20837  DB  179,89                              ; mov           $0x59,%bl
20838  DB  62,208                              ; ds            (bad)
20839  DB  179,89                              ; mov           $0x59,%bl
20840  DB  62,89                               ; ds            pop %rcx
20841  DB  23                                  ; (bad)
20842  DB  55                                  ; (bad)
20843  DB  63                                  ; (bad)
20844  DB  89                                  ; pop           %rcx
20845  DB  23                                  ; (bad)
20846  DB  55                                  ; (bad)
20847  DB  63                                  ; (bad)
20848  DB  89                                  ; pop           %rcx
20849  DB  23                                  ; (bad)
20850  DB  55                                  ; (bad)
20851  DB  63                                  ; (bad)
20852  DB  89                                  ; pop           %rcx
20853  DB  23                                  ; (bad)
20854  DB  55                                  ; (bad)
20855  DB  63                                  ; (bad)
20856  DB  152                                 ; cwtl
20857  DB  221,147,61,152,221,147              ; fstl          -0x6c2267c3(%rbx)
20858  DB  61,152,221,147,61                   ; cmp           $0x3d93dd98,%eax
20859  DB  152                                 ; cwtl
20860  DB  221,147,61,111,43,231               ; fstl          -0x18d490c3(%rbx)
20861  DB  187,111,43,231,187                  ; mov           $0xbbe72b6f,%ebx
20862  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
20863  DB  43,231                              ; sub           %edi,%esp
20864  DB  187,111,43,231,187                  ; mov           $0xbbe72b6f,%ebx
20865  DB  159                                 ; lahf
20866  DB  215                                 ; xlat          %ds:(%rbx)
20867  DB  202,60,159                          ; lret          $0x9f3c
20868  DB  215                                 ; xlat          %ds:(%rbx)
20869  DB  202,60,159                          ; lret          $0x9f3c
20870  DB  215                                 ; xlat          %ds:(%rbx)
20871  DB  202,60,159                          ; lret          $0x9f3c
20872  DB  215                                 ; xlat          %ds:(%rbx)
20873  DB  202,60,212                          ; lret          $0xd43c
20874  DB  100,84                              ; fs            push %rsp
20875  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
20876  DB  212                                 ; (bad)
20877  DB  100,84                              ; fs            push %rsp
20878  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
20879  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
20880  DB  240,34,62                           ; lock          and (%rsi),%bh
20881  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
20882  DB  240,34,62                           ; lock          and (%rsi),%bh
20883  DB  0,0                                 ; add           %al,(%rax)
20884  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
20885  DB  0,128,62,0,0,128                    ; add           %al,-0x7fffffc2(%rax)
20886  DB  62,0,0                              ; add           %al,%ds:(%rax)
20887  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
20888  DB  0,0                                 ; add           %al,(%rax)
20889  DB  63                                  ; (bad)
20890  DB  0,0                                 ; add           %al,(%rax)
20891  DB  0,63                                ; add           %bh,(%rdi)
20892  DB  0,0                                 ; add           %al,(%rax)
20893  DB  0,63                                ; add           %bh,(%rdi)
20894  DB  0,0                                 ; add           %al,(%rax)
20895  DB  0,63                                ; add           %bh,(%rdi)
20896  DB  0,0                                 ; add           %al,(%rax)
20897  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20898  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20899  DB  63                                  ; (bad)
20900  DB  0,0                                 ; add           %al,(%rax)
20901  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20902  DB  0,0                                 ; add           %al,(%rax)
20903  DB  63                                  ; (bad)
20904  DB  0,0                                 ; add           %al,(%rax)
20905  DB  0,63                                ; add           %bh,(%rdi)
20906  DB  0,0                                 ; add           %al,(%rax)
20907  DB  0,63                                ; add           %bh,(%rdi)
20908  DB  0,0                                 ; add           %al,(%rax)
20909  DB  0,63                                ; add           %bh,(%rdi)
20910  DB  0,0                                 ; add           %al,(%rax)
20911  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20912  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20913  DB  63                                  ; (bad)
20914  DB  0,0                                 ; add           %al,(%rax)
20915  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20916  DB  0,0                                 ; add           %al,(%rax)
20917  DB  191,0,0,0,191                       ; mov           $0xbf000000,%edi
20918  DB  0,0                                 ; add           %al,(%rax)
20919  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20920  DB  0,0                                 ; add           %al,(%rax)
20921  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20922  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20923  DB  63                                  ; (bad)
20924  DB  0,0                                 ; add           %al,(%rax)
20925  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20926  DB  0,0                                 ; add           %al,(%rax)
20927  DB  63                                  ; (bad)
20928  DB  0,0                                 ; add           %al,(%rax)
20929  DB  0,63                                ; add           %bh,(%rdi)
20930  DB  0,0                                 ; add           %al,(%rax)
20931  DB  0,63                                ; add           %bh,(%rdi)
20932  DB  0,0                                 ; add           %al,(%rax)
20933  DB  0,63                                ; add           %bh,(%rdi)
20934  DB  0,0                                 ; add           %al,(%rax)
20935  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20936  DB  0,0                                 ; add           %al,(%rax)
20937  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20938  DB  0,0                                 ; add           %al,(%rax)
20939  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20940  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20941  DB  63                                  ; (bad)
20942  DB  0,0                                 ; add           %al,(%rax)
20943  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20944  DB  0,0                                 ; add           %al,(%rax)
20945  DB  63                                  ; (bad)
20946  DB  0,0                                 ; add           %al,(%rax)
20947  DB  0,63                                ; add           %bh,(%rdi)
20948  DB  0,0                                 ; add           %al,(%rax)
20949  DB  0,63                                ; add           %bh,(%rdi)
20950  DB  0,0                                 ; add           %al,(%rax)
20951  DB  0,63                                ; add           %bh,(%rdi)
20952  DB  0,0                                 ; add           %al,(%rax)
20953  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
20954  DB  0,192                               ; add           %al,%al
20955  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
20956  DB  0,0                                 ; add           %al,(%rax)
20957  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20958  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20959  DB  63                                  ; (bad)
20960  DB  0,0                                 ; add           %al,(%rax)
20961  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
20962  DB  28,199                              ; sbb           $0xc7,%al
20963  DB  62,114,28                           ; jb,pt         4db2 <.literal16+0xe02>
20964  DB  199                                 ; (bad)
20965  DB  62,114,28                           ; jb,pt         4db6 <.literal16+0xe06>
20966  DB  199                                 ; (bad)
20967  DB  62,114,28                           ; jb,pt         4dba <.literal16+0xe0a>
20968  DB  199                                 ; (bad)
20969  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
20970  DB  170                                 ; stos          %al,%es:(%rdi)
20971  DB  170                                 ; stos          %al,%es:(%rdi)
20972  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
20973  DB  171                                 ; stos          %eax,%es:(%rdi)
20974  DB  170                                 ; stos          %al,%es:(%rdi)
20975  DB  170                                 ; stos          %al,%es:(%rdi)
20976  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
20977  DB  0,0                                 ; add           %al,(%rax)
20978  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20979  DB  0,0                                 ; add           %al,(%rax)
20980  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
20981  DB  0,0                                 ; add           %al,(%rax)
20982  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
20983  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
20984  DB  63                                  ; (bad)
20985  DB  0,0                                 ; add           %al,(%rax)
20986  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
20987  DB  85                                  ; push          %rbp
20988  DB  149                                 ; xchg          %eax,%ebp
20989  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
20990  DB  85                                  ; push          %rbp
20991  DB  85                                  ; push          %rbp
20992  DB  149                                 ; xchg          %eax,%ebp
20993  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
20994  DB  0,0                                 ; add           %al,(%rax)
20995  DB  192,63,0                            ; sarb          $0x0,(%rdi)
20996  DB  0,192                               ; add           %al,%al
20997  DB  63                                  ; (bad)
20998  DB  0,0                                 ; add           %al,(%rax)
20999  DB  192,63,0                            ; sarb          $0x0,(%rdi)
21000  DB  0,192                               ; add           %al,%al
21001  DB  63                                  ; (bad)
21002  DB  0,0                                 ; add           %al,(%rax)
21003  DB  0,63                                ; add           %bh,(%rdi)
21004  DB  0,0                                 ; add           %al,(%rax)
21005  DB  0,63                                ; add           %bh,(%rdi)
21006  DB  0,0                                 ; add           %al,(%rax)
21007  DB  0,63                                ; add           %bh,(%rdi)
21008  DB  0,0                                 ; add           %al,(%rax)
21009  DB  0,63                                ; add           %bh,(%rdi)
21010  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
21011  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63dc45 <_sk_callback_sse2+0x3d639d44>
21012  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
21013  DB  0,63                                ; add           %bh,(%rdi)
21014  DB  0,0                                 ; add           %al,(%rax)
21015  DB  0,63                                ; add           %bh,(%rdi)
21016  DB  0,0                                 ; add           %al,(%rax)
21017  DB  0,63                                ; add           %bh,(%rdi)
21018  DB  0,0                                 ; add           %al,(%rax)
21019  DB  0,63                                ; add           %bh,(%rdi)
21020  DB  85                                  ; push          %rbp
21021  DB  85                                  ; push          %rbp
21022  DB  149                                 ; xchg          %eax,%ebp
21023  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
21024  DB  85                                  ; push          %rbp
21025  DB  85                                  ; push          %rbp
21026  DB  149                                 ; xchg          %eax,%ebp
21027  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
21028  DB  0,0                                 ; add           %al,(%rax)
21029  DB  192,63,0                            ; sarb          $0x0,(%rdi)
21030  DB  0,192                               ; add           %al,%al
21031  DB  63                                  ; (bad)
21032  DB  0,0                                 ; add           %al,(%rax)
21033  DB  192,63,0                            ; sarb          $0x0,(%rdi)
21034  DB  0,192                               ; add           %al,%al
21035  DB  63                                  ; (bad)
21036  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
21037  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63dc85 <_sk_callback_sse2+0x3d639d84>
21038  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
21039  DB  192,63,0                            ; sarb          $0x0,(%rdi)
21040  DB  0,192                               ; add           %al,%al
21041  DB  63                                  ; (bad)
21042  DB  0,0                                 ; add           %al,(%rax)
21043  DB  192,63,0                            ; sarb          $0x0,(%rdi)
21044  DB  0,192                               ; add           %al,%al
21045  DB  63                                  ; (bad)
21046  DB  114,28                              ; jb            4e7e <.literal16+0xece>
21047  DB  199                                 ; (bad)
21048  DB  62,114,28                           ; jb,pt         4e82 <.literal16+0xed2>
21049  DB  199                                 ; (bad)
21050  DB  62,114,28                           ; jb,pt         4e86 <.literal16+0xed6>
21051  DB  199                                 ; (bad)
21052  DB  62,114,28                           ; jb,pt         4e8a <.literal16+0xeda>
21053  DB  199                                 ; (bad)
21054  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
21055  DB  170                                 ; stos          %al,%es:(%rdi)
21056  DB  170                                 ; stos          %al,%es:(%rdi)
21057  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
21058  DB  171                                 ; stos          %eax,%es:(%rdi)
21059  DB  170                                 ; stos          %al,%es:(%rdi)
21060  DB  170                                 ; stos          %al,%es:(%rdi)
21061  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
21062  DB  0,0                                 ; add           %al,(%rax)
21063  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
21064  DB  0,192                               ; add           %al,%al
21065  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
21066  DB  0,0                                 ; add           %al,(%rax)
21067  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
21068  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
21069  DB  63                                  ; (bad)
21070  DB  0,0                                 ; add           %al,(%rax)
21071  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
21072  DB  28,199                              ; sbb           $0xc7,%al
21073  DB  62,114,28                           ; jb,pt         4ec2 <.literal16+0xf12>
21074  DB  199                                 ; (bad)
21075  DB  62,114,28                           ; jb,pt         4ec6 <.literal16+0xf16>
21076  DB  199                                 ; (bad)
21077  DB  62,114,28                           ; jb,pt         4eca <.literal16+0xf1a>
21078  DB  199                                 ; (bad)
21079  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
21080  DB  170                                 ; stos          %al,%es:(%rdi)
21081  DB  170                                 ; stos          %al,%es:(%rdi)
21082  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
21083  DB  171                                 ; stos          %eax,%es:(%rdi)
21084  DB  170                                 ; stos          %al,%es:(%rdi)
21085  DB  170                                 ; stos          %al,%es:(%rdi)
21086  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
21087  DB  0,0                                 ; add           %al,(%rax)
21088  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
21089  DB  0,0                                 ; add           %al,(%rax)
21090  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
21091  DB  0,0                                 ; add           %al,(%rax)
21092  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
21093  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
21094  DB  63                                  ; (bad)
21095  DB  0,0                                 ; add           %al,(%rax)
21096  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
21097  DB  85                                  ; push          %rbp
21098  DB  149                                 ; xchg          %eax,%ebp
21099  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
21100  DB  85                                  ; push          %rbp
21101  DB  85                                  ; push          %rbp
21102  DB  149                                 ; xchg          %eax,%ebp
21103  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
21104  DB  0,0                                 ; add           %al,(%rax)
21105  DB  192,63,0                            ; sarb          $0x0,(%rdi)
21106  DB  0,192                               ; add           %al,%al
21107  DB  63                                  ; (bad)
21108  DB  0,0                                 ; add           %al,(%rax)
21109  DB  192,63,0                            ; sarb          $0x0,(%rdi)
21110  DB  0,192                               ; add           %al,%al
21111  DB  63                                  ; (bad)
21112  DB  0,0                                 ; add           %al,(%rax)
21113  DB  0,63                                ; add           %bh,(%rdi)
21114  DB  0,0                                 ; add           %al,(%rax)
21115  DB  0,63                                ; add           %bh,(%rdi)
21116  DB  0,0                                 ; add           %al,(%rax)
21117  DB  0,63                                ; add           %bh,(%rdi)
21118  DB  0,0                                 ; add           %al,(%rax)
21119  DB  0,63                                ; add           %bh,(%rdi)
21120  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
21121  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63dd55 <_sk_callback_sse2+0x3d639e54>
21122  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
21123  DB  0,63                                ; add           %bh,(%rdi)
21124  DB  0,0                                 ; add           %al,(%rax)
21125  DB  0,63                                ; add           %bh,(%rdi)
21126  DB  0,0                                 ; add           %al,(%rax)
21127  DB  0,63                                ; add           %bh,(%rdi)
21128  DB  0,0                                 ; add           %al,(%rax)
21129  DB  0,63                                ; add           %bh,(%rdi)
21130  DB  85                                  ; push          %rbp
21131  DB  85                                  ; push          %rbp
21132  DB  149                                 ; xchg          %eax,%ebp
21133  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
21134  DB  85                                  ; push          %rbp
21135  DB  85                                  ; push          %rbp
21136  DB  149                                 ; xchg          %eax,%ebp
21137  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
21138  DB  0,0                                 ; add           %al,(%rax)
21139  DB  192,63,0                            ; sarb          $0x0,(%rdi)
21140  DB  0,192                               ; add           %al,%al
21141  DB  63                                  ; (bad)
21142  DB  0,0                                 ; add           %al,(%rax)
21143  DB  192,63,0                            ; sarb          $0x0,(%rdi)
21144  DB  0,192                               ; add           %al,%al
21145  DB  63                                  ; (bad)
21146  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
21147  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63dd95 <_sk_callback_sse2+0x3d639e94>
21148  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
21149  DB  192,63,0                            ; sarb          $0x0,(%rdi)
21150  DB  0,192                               ; add           %al,%al
21151  DB  63                                  ; (bad)
21152  DB  0,0                                 ; add           %al,(%rax)
21153  DB  192,63,0                            ; sarb          $0x0,(%rdi)
21154  DB  0,192                               ; add           %al,%al
21155  DB  63                                  ; (bad)
21156  DB  114,28                              ; jb            4f8e <.literal16+0xfde>
21157  DB  199                                 ; (bad)
21158  DB  62,114,28                           ; jb,pt         4f92 <_sk_callback_sse2+0x1091>
21159  DB  199                                 ; (bad)
21160  DB  62,114,28                           ; jb,pt         4f96 <_sk_callback_sse2+0x1095>
21161  DB  199                                 ; (bad)
21162  DB  62,114,28                           ; jb,pt         4f9a <_sk_callback_sse2+0x1099>
21163  DB  199                                 ; (bad)
21164  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
21165  DB  170                                 ; stos          %al,%es:(%rdi)
21166  DB  170                                 ; stos          %al,%es:(%rdi)
21167  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
21168  DB  171                                 ; stos          %eax,%es:(%rdi)
21169  DB  170                                 ; stos          %al,%es:(%rdi)
21170  DB  170                                 ; stos          %al,%es:(%rdi)
21171  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
21172ENDIF
21173END
21174