SkJumper_generated_win.S revision 8e200787b769ba9ee0bd4bd37d27ded1fafc06e6
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  85                                  ; push          %rbp
16  DB  72,137,229                          ; mov           %rsp,%rbp
17  DB  65,87                               ; push          %r15
18  DB  65,86                               ; push          %r14
19  DB  65,85                               ; push          %r13
20  DB  65,84                               ; push          %r12
21  DB  86                                  ; push          %rsi
22  DB  87                                  ; push          %rdi
23  DB  83                                  ; push          %rbx
24  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
25  DB  197,120,41,125,176                  ; vmovaps       %xmm15,-0x50(%rbp)
26  DB  197,120,41,117,160                  ; vmovaps       %xmm14,-0x60(%rbp)
27  DB  197,120,41,109,144                  ; vmovaps       %xmm13,-0x70(%rbp)
28  DB  197,120,41,101,128                  ; vmovaps       %xmm12,-0x80(%rbp)
29  DB  197,120,41,157,112,255,255,255      ; vmovaps       %xmm11,-0x90(%rbp)
30  DB  197,120,41,149,96,255,255,255       ; vmovaps       %xmm10,-0xa0(%rbp)
31  DB  197,120,41,141,80,255,255,255       ; vmovaps       %xmm9,-0xb0(%rbp)
32  DB  197,120,41,133,64,255,255,255       ; vmovaps       %xmm8,-0xc0(%rbp)
33  DB  197,248,41,189,48,255,255,255       ; vmovaps       %xmm7,-0xd0(%rbp)
34  DB  197,248,41,181,32,255,255,255       ; vmovaps       %xmm6,-0xe0(%rbp)
35  DB  72,137,211                          ; mov           %rdx,%rbx
36  DB  73,137,207                          ; mov           %rcx,%r15
37  DB  76,139,117,48                       ; mov           0x30(%rbp),%r14
38  DB  76,137,206                          ; mov           %r9,%rsi
39  DB  72,173                              ; lods          %ds:(%rsi),%rax
40  DB  73,137,197                          ; mov           %rax,%r13
41  DB  73,137,244                          ; mov           %rsi,%r12
42  DB  73,141,79,8                         ; lea           0x8(%r15),%rcx
43  DB  76,57,193                           ; cmp           %r8,%rcx
44  DB  118,5                               ; jbe           7d <_sk_start_pipeline_hsw+0x7d>
45  DB  76,137,250                          ; mov           %r15,%rdx
46  DB  235,83                              ; jmp           d0 <_sk_start_pipeline_hsw+0xd0>
47  DB  76,137,133,24,255,255,255           ; mov           %r8,-0xe8(%rbp)
48  DB  65,184,0,0,0,0                      ; mov           $0x0,%r8d
49  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
50  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
51  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
52  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
53  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
54  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
55  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
56  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
57  DB  76,137,247                          ; mov           %r14,%rdi
58  DB  76,137,230                          ; mov           %r12,%rsi
59  DB  76,137,250                          ; mov           %r15,%rdx
60  DB  72,137,217                          ; mov           %rbx,%rcx
61  DB  65,255,213                          ; callq         *%r13
62  DB  76,139,133,24,255,255,255           ; mov           -0xe8(%rbp),%r8
63  DB  73,141,87,8                         ; lea           0x8(%r15),%rdx
64  DB  73,131,199,16                       ; add           $0x10,%r15
65  DB  77,57,199                           ; cmp           %r8,%r15
66  DB  73,137,215                          ; mov           %rdx,%r15
67  DB  118,180                             ; jbe           84 <_sk_start_pipeline_hsw+0x84>
68  DB  73,41,208                           ; sub           %rdx,%r8
69  DB  116,44                              ; je            101 <_sk_start_pipeline_hsw+0x101>
70  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
71  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
72  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
73  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
74  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
75  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
76  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
77  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
78  DB  76,137,247                          ; mov           %r14,%rdi
79  DB  76,137,230                          ; mov           %r12,%rsi
80  DB  72,137,217                          ; mov           %rbx,%rcx
81  DB  65,255,213                          ; callq         *%r13
82  DB  197,248,40,181,32,255,255,255       ; vmovaps       -0xe0(%rbp),%xmm6
83  DB  197,248,40,189,48,255,255,255       ; vmovaps       -0xd0(%rbp),%xmm7
84  DB  197,120,40,133,64,255,255,255       ; vmovaps       -0xc0(%rbp),%xmm8
85  DB  197,120,40,141,80,255,255,255       ; vmovaps       -0xb0(%rbp),%xmm9
86  DB  197,120,40,149,96,255,255,255       ; vmovaps       -0xa0(%rbp),%xmm10
87  DB  197,120,40,157,112,255,255,255      ; vmovaps       -0x90(%rbp),%xmm11
88  DB  197,120,40,101,128                  ; vmovaps       -0x80(%rbp),%xmm12
89  DB  197,120,40,109,144                  ; vmovaps       -0x70(%rbp),%xmm13
90  DB  197,120,40,117,160                  ; vmovaps       -0x60(%rbp),%xmm14
91  DB  197,120,40,125,176                  ; vmovaps       -0x50(%rbp),%xmm15
92  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
93  DB  91                                  ; pop           %rbx
94  DB  95                                  ; pop           %rdi
95  DB  94                                  ; pop           %rsi
96  DB  65,92                               ; pop           %r12
97  DB  65,93                               ; pop           %r13
98  DB  65,94                               ; pop           %r14
99  DB  65,95                               ; pop           %r15
100  DB  93                                  ; pop           %rbp
101  DB  197,248,119                         ; vzeroupper
102  DB  195                                 ; retq
103
104PUBLIC _sk_just_return_hsw
105_sk_just_return_hsw LABEL PROC
106  DB  195                                 ; retq
107
108PUBLIC _sk_seed_shader_hsw
109_sk_seed_shader_hsw LABEL PROC
110  DB  197,249,110,194                     ; vmovd         %edx,%xmm0
111  DB  196,226,125,88,192                  ; vpbroadcastd  %xmm0,%ymm0
112  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
113  DB  196,226,125,24,13,213,72,0,0        ; vbroadcastss  0x48d5(%rip),%ymm1        # 4a48 <_sk_callback_hsw+0x12c>
114  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
115  DB  197,252,88,7                        ; vaddps        (%rdi),%ymm0,%ymm0
116  DB  197,249,110,209                     ; vmovd         %ecx,%xmm2
117  DB  196,226,125,88,210                  ; vpbroadcastd  %xmm2,%ymm2
118  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
119  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
120  DB  72,173                              ; lods          %ds:(%rsi),%rax
121  DB  196,226,125,24,21,181,72,0,0        ; vbroadcastss  0x48b5(%rip),%ymm2        # 4a4c <_sk_callback_hsw+0x130>
122  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
123  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
124  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
125  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
126  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
127  DB  255,224                             ; jmpq          *%rax
128
129PUBLIC _sk_dither_hsw
130_sk_dither_hsw LABEL PROC
131  DB  72,173                              ; lods          %ds:(%rsi),%rax
132  DB  197,121,110,194                     ; vmovd         %edx,%xmm8
133  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
134  DB  197,61,254,71,32                    ; vpaddd        0x20(%rdi),%ymm8,%ymm8
135  DB  197,121,110,201                     ; vmovd         %ecx,%xmm9
136  DB  196,66,125,88,201                   ; vpbroadcastd  %xmm9,%ymm9
137  DB  196,65,53,239,200                   ; vpxor         %ymm8,%ymm9,%ymm9
138  DB  196,98,125,88,21,124,72,0,0         ; vpbroadcastd  0x487c(%rip),%ymm10        # 4a50 <_sk_callback_hsw+0x134>
139  DB  196,65,53,219,218                   ; vpand         %ymm10,%ymm9,%ymm11
140  DB  196,193,37,114,243,5                ; vpslld        $0x5,%ymm11,%ymm11
141  DB  196,65,61,219,210                   ; vpand         %ymm10,%ymm8,%ymm10
142  DB  196,193,45,114,242,4                ; vpslld        $0x4,%ymm10,%ymm10
143  DB  196,98,125,88,37,97,72,0,0          ; vpbroadcastd  0x4861(%rip),%ymm12        # 4a54 <_sk_callback_hsw+0x138>
144  DB  196,98,125,88,45,92,72,0,0          ; vpbroadcastd  0x485c(%rip),%ymm13        # 4a58 <_sk_callback_hsw+0x13c>
145  DB  196,65,53,219,245                   ; vpand         %ymm13,%ymm9,%ymm14
146  DB  196,193,13,114,246,2                ; vpslld        $0x2,%ymm14,%ymm14
147  DB  196,65,61,219,237                   ; vpand         %ymm13,%ymm8,%ymm13
148  DB  196,65,21,254,237                   ; vpaddd        %ymm13,%ymm13,%ymm13
149  DB  196,65,53,219,204                   ; vpand         %ymm12,%ymm9,%ymm9
150  DB  196,193,53,114,209,1                ; vpsrld        $0x1,%ymm9,%ymm9
151  DB  196,65,61,219,196                   ; vpand         %ymm12,%ymm8,%ymm8
152  DB  196,193,61,114,208,2                ; vpsrld        $0x2,%ymm8,%ymm8
153  DB  196,65,21,235,210                   ; vpor          %ymm10,%ymm13,%ymm10
154  DB  196,65,45,235,192                   ; vpor          %ymm8,%ymm10,%ymm8
155  DB  196,65,37,235,214                   ; vpor          %ymm14,%ymm11,%ymm10
156  DB  196,65,61,235,194                   ; vpor          %ymm10,%ymm8,%ymm8
157  DB  196,65,61,235,193                   ; vpor          %ymm9,%ymm8,%ymm8
158  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
159  DB  196,98,125,24,13,14,72,0,0          ; vbroadcastss  0x480e(%rip),%ymm9        # 4a5c <_sk_callback_hsw+0x140>
160  DB  196,98,125,24,21,9,72,0,0           ; vbroadcastss  0x4809(%rip),%ymm10        # 4a60 <_sk_callback_hsw+0x144>
161  DB  196,66,61,184,209                   ; vfmadd231ps   %ymm9,%ymm8,%ymm10
162  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
163  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
164  DB  197,188,88,192                      ; vaddps        %ymm0,%ymm8,%ymm0
165  DB  197,188,88,201                      ; vaddps        %ymm1,%ymm8,%ymm1
166  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
167  DB  197,252,93,195                      ; vminps        %ymm3,%ymm0,%ymm0
168  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
169  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
170  DB  197,244,93,203                      ; vminps        %ymm3,%ymm1,%ymm1
171  DB  197,188,95,201                      ; vmaxps        %ymm1,%ymm8,%ymm1
172  DB  197,236,93,211                      ; vminps        %ymm3,%ymm2,%ymm2
173  DB  197,188,95,210                      ; vmaxps        %ymm2,%ymm8,%ymm2
174  DB  72,173                              ; lods          %ds:(%rsi),%rax
175  DB  255,224                             ; jmpq          *%rax
176
177PUBLIC _sk_constant_color_hsw
178_sk_constant_color_hsw LABEL PROC
179  DB  72,173                              ; lods          %ds:(%rsi),%rax
180  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
181  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
182  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
183  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
184  DB  72,173                              ; lods          %ds:(%rsi),%rax
185  DB  255,224                             ; jmpq          *%rax
186
187PUBLIC _sk_load_rgba_hsw
188_sk_load_rgba_hsw LABEL PROC
189  DB  72,173                              ; lods          %ds:(%rsi),%rax
190  DB  197,252,16,0                        ; vmovups       (%rax),%ymm0
191  DB  197,252,16,72,32                    ; vmovups       0x20(%rax),%ymm1
192  DB  197,252,16,80,64                    ; vmovups       0x40(%rax),%ymm2
193  DB  197,252,16,88,96                    ; vmovups       0x60(%rax),%ymm3
194  DB  72,173                              ; lods          %ds:(%rsi),%rax
195  DB  255,224                             ; jmpq          *%rax
196
197PUBLIC _sk_store_rgba_hsw
198_sk_store_rgba_hsw LABEL PROC
199  DB  72,173                              ; lods          %ds:(%rsi),%rax
200  DB  197,252,17,0                        ; vmovups       %ymm0,(%rax)
201  DB  197,252,17,72,32                    ; vmovups       %ymm1,0x20(%rax)
202  DB  197,252,17,80,64                    ; vmovups       %ymm2,0x40(%rax)
203  DB  197,252,17,88,96                    ; vmovups       %ymm3,0x60(%rax)
204  DB  72,173                              ; lods          %ds:(%rsi),%rax
205  DB  255,224                             ; jmpq          *%rax
206
207PUBLIC _sk_clear_hsw
208_sk_clear_hsw LABEL PROC
209  DB  72,173                              ; lods          %ds:(%rsi),%rax
210  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
211  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
212  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
213  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
214  DB  255,224                             ; jmpq          *%rax
215
216PUBLIC _sk_srcatop_hsw
217_sk_srcatop_hsw LABEL PROC
218  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
219  DB  196,98,125,24,5,97,71,0,0           ; vbroadcastss  0x4761(%rip),%ymm8        # 4a64 <_sk_callback_hsw+0x148>
220  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
221  DB  196,226,61,184,196                  ; vfmadd231ps   %ymm4,%ymm8,%ymm0
222  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
223  DB  196,226,61,184,205                  ; vfmadd231ps   %ymm5,%ymm8,%ymm1
224  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
225  DB  196,226,61,184,214                  ; vfmadd231ps   %ymm6,%ymm8,%ymm2
226  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
227  DB  196,194,69,168,216                  ; vfmadd213ps   %ymm8,%ymm7,%ymm3
228  DB  72,173                              ; lods          %ds:(%rsi),%rax
229  DB  255,224                             ; jmpq          *%rax
230
231PUBLIC _sk_dstatop_hsw
232_sk_dstatop_hsw LABEL PROC
233  DB  196,98,125,24,5,52,71,0,0           ; vbroadcastss  0x4734(%rip),%ymm8        # 4a68 <_sk_callback_hsw+0x14c>
234  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
235  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
236  DB  196,226,101,184,196                 ; vfmadd231ps   %ymm4,%ymm3,%ymm0
237  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
238  DB  196,226,101,184,205                 ; vfmadd231ps   %ymm5,%ymm3,%ymm1
239  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
240  DB  196,226,101,184,214                 ; vfmadd231ps   %ymm6,%ymm3,%ymm2
241  DB  197,60,89,195                       ; vmulps        %ymm3,%ymm8,%ymm8
242  DB  196,194,69,168,216                  ; vfmadd213ps   %ymm8,%ymm7,%ymm3
243  DB  72,173                              ; lods          %ds:(%rsi),%rax
244  DB  255,224                             ; jmpq          *%rax
245
246PUBLIC _sk_srcin_hsw
247_sk_srcin_hsw LABEL PROC
248  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
249  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
250  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
251  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
252  DB  72,173                              ; lods          %ds:(%rsi),%rax
253  DB  255,224                             ; jmpq          *%rax
254
255PUBLIC _sk_dstin_hsw
256_sk_dstin_hsw LABEL PROC
257  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
258  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
259  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
260  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
261  DB  72,173                              ; lods          %ds:(%rsi),%rax
262  DB  255,224                             ; jmpq          *%rax
263
264PUBLIC _sk_srcout_hsw
265_sk_srcout_hsw LABEL PROC
266  DB  196,98,125,24,5,219,70,0,0          ; vbroadcastss  0x46db(%rip),%ymm8        # 4a6c <_sk_callback_hsw+0x150>
267  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
268  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
269  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
270  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
271  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
272  DB  72,173                              ; lods          %ds:(%rsi),%rax
273  DB  255,224                             ; jmpq          *%rax
274
275PUBLIC _sk_dstout_hsw
276_sk_dstout_hsw LABEL PROC
277  DB  196,226,125,24,5,190,70,0,0         ; vbroadcastss  0x46be(%rip),%ymm0        # 4a70 <_sk_callback_hsw+0x154>
278  DB  197,252,92,219                      ; vsubps        %ymm3,%ymm0,%ymm3
279  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
280  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
281  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
282  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
283  DB  72,173                              ; lods          %ds:(%rsi),%rax
284  DB  255,224                             ; jmpq          *%rax
285
286PUBLIC _sk_srcover_hsw
287_sk_srcover_hsw LABEL PROC
288  DB  196,98,125,24,5,161,70,0,0          ; vbroadcastss  0x46a1(%rip),%ymm8        # 4a74 <_sk_callback_hsw+0x158>
289  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
290  DB  196,194,93,184,192                  ; vfmadd231ps   %ymm8,%ymm4,%ymm0
291  DB  196,194,85,184,200                  ; vfmadd231ps   %ymm8,%ymm5,%ymm1
292  DB  196,194,77,184,208                  ; vfmadd231ps   %ymm8,%ymm6,%ymm2
293  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
294  DB  72,173                              ; lods          %ds:(%rsi),%rax
295  DB  255,224                             ; jmpq          *%rax
296
297PUBLIC _sk_dstover_hsw
298_sk_dstover_hsw LABEL PROC
299  DB  196,98,125,24,5,128,70,0,0          ; vbroadcastss  0x4680(%rip),%ymm8        # 4a78 <_sk_callback_hsw+0x15c>
300  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
301  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
302  DB  196,226,61,168,205                  ; vfmadd213ps   %ymm5,%ymm8,%ymm1
303  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
304  DB  196,226,61,168,223                  ; vfmadd213ps   %ymm7,%ymm8,%ymm3
305  DB  72,173                              ; lods          %ds:(%rsi),%rax
306  DB  255,224                             ; jmpq          *%rax
307
308PUBLIC _sk_modulate_hsw
309_sk_modulate_hsw LABEL PROC
310  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
311  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
312  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
313  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
314  DB  72,173                              ; lods          %ds:(%rsi),%rax
315  DB  255,224                             ; jmpq          *%rax
316
317PUBLIC _sk_multiply_hsw
318_sk_multiply_hsw LABEL PROC
319  DB  196,98,125,24,5,75,70,0,0           ; vbroadcastss  0x464b(%rip),%ymm8        # 4a7c <_sk_callback_hsw+0x160>
320  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
321  DB  197,52,89,208                       ; vmulps        %ymm0,%ymm9,%ymm10
322  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
323  DB  196,98,61,184,212                   ; vfmadd231ps   %ymm4,%ymm8,%ymm10
324  DB  196,194,93,168,194                  ; vfmadd213ps   %ymm10,%ymm4,%ymm0
325  DB  197,52,89,209                       ; vmulps        %ymm1,%ymm9,%ymm10
326  DB  196,98,61,184,213                   ; vfmadd231ps   %ymm5,%ymm8,%ymm10
327  DB  196,194,85,168,202                  ; vfmadd213ps   %ymm10,%ymm5,%ymm1
328  DB  197,52,89,210                       ; vmulps        %ymm2,%ymm9,%ymm10
329  DB  196,98,61,184,214                   ; vfmadd231ps   %ymm6,%ymm8,%ymm10
330  DB  196,194,77,168,210                  ; vfmadd213ps   %ymm10,%ymm6,%ymm2
331  DB  197,52,89,203                       ; vmulps        %ymm3,%ymm9,%ymm9
332  DB  196,66,69,168,193                   ; vfmadd213ps   %ymm9,%ymm7,%ymm8
333  DB  196,194,69,168,216                  ; vfmadd213ps   %ymm8,%ymm7,%ymm3
334  DB  72,173                              ; lods          %ds:(%rsi),%rax
335  DB  255,224                             ; jmpq          *%rax
336
337PUBLIC _sk_plus__hsw
338_sk_plus__hsw LABEL PROC
339  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
340  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
341  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
342  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
343  DB  72,173                              ; lods          %ds:(%rsi),%rax
344  DB  255,224                             ; jmpq          *%rax
345
346PUBLIC _sk_screen_hsw
347_sk_screen_hsw LABEL PROC
348  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
349  DB  196,194,93,172,192                  ; vfnmadd213ps  %ymm8,%ymm4,%ymm0
350  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
351  DB  196,194,85,172,200                  ; vfnmadd213ps  %ymm8,%ymm5,%ymm1
352  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
353  DB  196,194,77,172,208                  ; vfnmadd213ps  %ymm8,%ymm6,%ymm2
354  DB  197,100,88,199                      ; vaddps        %ymm7,%ymm3,%ymm8
355  DB  196,194,69,172,216                  ; vfnmadd213ps  %ymm8,%ymm7,%ymm3
356  DB  72,173                              ; lods          %ds:(%rsi),%rax
357  DB  255,224                             ; jmpq          *%rax
358
359PUBLIC _sk_xor__hsw
360_sk_xor__hsw LABEL PROC
361  DB  196,98,125,24,5,198,69,0,0          ; vbroadcastss  0x45c6(%rip),%ymm8        # 4a80 <_sk_callback_hsw+0x164>
362  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
363  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
364  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
365  DB  196,226,61,184,196                  ; vfmadd231ps   %ymm4,%ymm8,%ymm0
366  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
367  DB  196,226,61,184,205                  ; vfmadd231ps   %ymm5,%ymm8,%ymm1
368  DB  197,180,89,210                      ; vmulps        %ymm2,%ymm9,%ymm2
369  DB  196,226,61,184,214                  ; vfmadd231ps   %ymm6,%ymm8,%ymm2
370  DB  197,180,89,219                      ; vmulps        %ymm3,%ymm9,%ymm3
371  DB  196,98,69,168,195                   ; vfmadd213ps   %ymm3,%ymm7,%ymm8
372  DB  72,173                              ; lods          %ds:(%rsi),%rax
373  DB  197,124,41,195                      ; vmovaps       %ymm8,%ymm3
374  DB  255,224                             ; jmpq          *%rax
375
376PUBLIC _sk_darken_hsw
377_sk_darken_hsw LABEL PROC
378  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
379  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
380  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
381  DB  196,193,124,95,193                  ; vmaxps        %ymm9,%ymm0,%ymm0
382  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
383  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
384  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
385  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
386  DB  196,193,116,95,201                  ; vmaxps        %ymm9,%ymm1,%ymm1
387  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
388  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
389  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
390  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
391  DB  196,193,108,95,209                  ; vmaxps        %ymm9,%ymm2,%ymm2
392  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
393  DB  196,98,125,24,5,78,69,0,0           ; vbroadcastss  0x454e(%rip),%ymm8        # 4a84 <_sk_callback_hsw+0x168>
394  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
395  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
396  DB  72,173                              ; lods          %ds:(%rsi),%rax
397  DB  255,224                             ; jmpq          *%rax
398
399PUBLIC _sk_lighten_hsw
400_sk_lighten_hsw LABEL PROC
401  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
402  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
403  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
404  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
405  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
406  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
407  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
408  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
409  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
410  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
411  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
412  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
413  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
414  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
415  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
416  DB  196,98,125,24,5,253,68,0,0          ; vbroadcastss  0x44fd(%rip),%ymm8        # 4a88 <_sk_callback_hsw+0x16c>
417  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
418  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
419  DB  72,173                              ; lods          %ds:(%rsi),%rax
420  DB  255,224                             ; jmpq          *%rax
421
422PUBLIC _sk_difference_hsw
423_sk_difference_hsw LABEL PROC
424  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
425  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
426  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
427  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
428  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
429  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
430  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
431  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
432  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
433  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
434  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
435  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
436  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
437  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
438  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
439  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
440  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
441  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
442  DB  196,98,125,24,5,160,68,0,0          ; vbroadcastss  0x44a0(%rip),%ymm8        # 4a8c <_sk_callback_hsw+0x170>
443  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
444  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
445  DB  72,173                              ; lods          %ds:(%rsi),%rax
446  DB  255,224                             ; jmpq          *%rax
447
448PUBLIC _sk_exclusion_hsw
449_sk_exclusion_hsw LABEL PROC
450  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
451  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
452  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
453  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
454  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
455  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
456  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
457  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
458  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
459  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
460  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
461  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
462  DB  196,98,125,24,5,94,68,0,0           ; vbroadcastss  0x445e(%rip),%ymm8        # 4a90 <_sk_callback_hsw+0x174>
463  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
464  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
465  DB  72,173                              ; lods          %ds:(%rsi),%rax
466  DB  255,224                             ; jmpq          *%rax
467
468PUBLIC _sk_colorburn_hsw
469_sk_colorburn_hsw LABEL PROC
470  DB  196,98,125,24,5,76,68,0,0           ; vbroadcastss  0x444c(%rip),%ymm8        # 4a94 <_sk_callback_hsw+0x178>
471  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
472  DB  197,52,89,216                       ; vmulps        %ymm0,%ymm9,%ymm11
473  DB  196,65,44,87,210                    ; vxorps        %ymm10,%ymm10,%ymm10
474  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
475  DB  197,60,89,228                       ; vmulps        %ymm4,%ymm8,%ymm12
476  DB  197,68,92,236                       ; vsubps        %ymm4,%ymm7,%ymm13
477  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
478  DB  197,20,94,232                       ; vdivps        %ymm0,%ymm13,%ymm13
479  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
480  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
481  DB  196,66,101,168,235                  ; vfmadd213ps   %ymm11,%ymm3,%ymm13
482  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
483  DB  197,28,88,224                       ; vaddps        %ymm0,%ymm12,%ymm12
484  DB  196,193,124,194,194,0               ; vcmpeqps      %ymm10,%ymm0,%ymm0
485  DB  196,195,21,74,196,0                 ; vblendvps     %ymm0,%ymm12,%ymm13,%ymm0
486  DB  197,92,194,231,0                    ; vcmpeqps      %ymm7,%ymm4,%ymm12
487  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
488  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
489  DB  197,52,89,217                       ; vmulps        %ymm1,%ymm9,%ymm11
490  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
491  DB  197,68,92,237                       ; vsubps        %ymm5,%ymm7,%ymm13
492  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
493  DB  197,20,94,233                       ; vdivps        %ymm1,%ymm13,%ymm13
494  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
495  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
496  DB  196,66,101,168,235                  ; vfmadd213ps   %ymm11,%ymm3,%ymm13
497  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
498  DB  197,28,88,225                       ; vaddps        %ymm1,%ymm12,%ymm12
499  DB  196,193,116,194,202,0               ; vcmpeqps      %ymm10,%ymm1,%ymm1
500  DB  196,195,21,74,204,16                ; vblendvps     %ymm1,%ymm12,%ymm13,%ymm1
501  DB  197,84,194,231,0                    ; vcmpeqps      %ymm7,%ymm5,%ymm12
502  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
503  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
504  DB  197,52,89,202                       ; vmulps        %ymm2,%ymm9,%ymm9
505  DB  196,65,108,194,210,0                ; vcmpeqps      %ymm10,%ymm2,%ymm10
506  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
507  DB  197,68,92,230                       ; vsubps        %ymm6,%ymm7,%ymm12
508  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
509  DB  197,28,94,226                       ; vdivps        %ymm2,%ymm12,%ymm12
510  DB  197,164,88,210                      ; vaddps        %ymm2,%ymm11,%ymm2
511  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
512  DB  196,65,68,92,228                    ; vsubps        %ymm12,%ymm7,%ymm12
513  DB  196,66,101,168,225                  ; vfmadd213ps   %ymm9,%ymm3,%ymm12
514  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
515  DB  196,227,37,74,210,160               ; vblendvps     %ymm10,%ymm2,%ymm11,%ymm2
516  DB  197,76,194,215,0                    ; vcmpeqps      %ymm7,%ymm6,%ymm10
517  DB  197,52,88,206                       ; vaddps        %ymm6,%ymm9,%ymm9
518  DB  196,195,109,74,209,160              ; vblendvps     %ymm10,%ymm9,%ymm2,%ymm2
519  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
520  DB  72,173                              ; lods          %ds:(%rsi),%rax
521  DB  255,224                             ; jmpq          *%rax
522
523PUBLIC _sk_colordodge_hsw
524_sk_colordodge_hsw LABEL PROC
525  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
526  DB  196,98,125,24,13,87,67,0,0          ; vbroadcastss  0x4357(%rip),%ymm9        # 4a98 <_sk_callback_hsw+0x17c>
527  DB  197,52,92,215                       ; vsubps        %ymm7,%ymm9,%ymm10
528  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
529  DB  197,52,92,203                       ; vsubps        %ymm3,%ymm9,%ymm9
530  DB  197,100,89,228                      ; vmulps        %ymm4,%ymm3,%ymm12
531  DB  197,100,92,232                      ; vsubps        %ymm0,%ymm3,%ymm13
532  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
533  DB  197,52,89,236                       ; vmulps        %ymm4,%ymm9,%ymm13
534  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
535  DB  196,66,101,168,227                  ; vfmadd213ps   %ymm11,%ymm3,%ymm12
536  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
537  DB  197,20,88,232                       ; vaddps        %ymm0,%ymm13,%ymm13
538  DB  197,252,194,195,0                   ; vcmpeqps      %ymm3,%ymm0,%ymm0
539  DB  196,195,29,74,197,0                 ; vblendvps     %ymm0,%ymm13,%ymm12,%ymm0
540  DB  196,65,92,194,224,0                 ; vcmpeqps      %ymm8,%ymm4,%ymm12
541  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
542  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
543  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
544  DB  197,100,89,229                      ; vmulps        %ymm5,%ymm3,%ymm12
545  DB  197,100,92,233                      ; vsubps        %ymm1,%ymm3,%ymm13
546  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
547  DB  197,52,89,237                       ; vmulps        %ymm5,%ymm9,%ymm13
548  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
549  DB  196,66,101,168,227                  ; vfmadd213ps   %ymm11,%ymm3,%ymm12
550  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
551  DB  197,20,88,233                       ; vaddps        %ymm1,%ymm13,%ymm13
552  DB  197,244,194,203,0                   ; vcmpeqps      %ymm3,%ymm1,%ymm1
553  DB  196,195,29,74,205,16                ; vblendvps     %ymm1,%ymm13,%ymm12,%ymm1
554  DB  196,65,84,194,224,0                 ; vcmpeqps      %ymm8,%ymm5,%ymm12
555  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
556  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
557  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
558  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
559  DB  197,100,92,226                      ; vsubps        %ymm2,%ymm3,%ymm12
560  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
561  DB  197,52,89,230                       ; vmulps        %ymm6,%ymm9,%ymm12
562  DB  196,65,68,93,219                    ; vminps        %ymm11,%ymm7,%ymm11
563  DB  196,66,101,168,218                  ; vfmadd213ps   %ymm10,%ymm3,%ymm11
564  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
565  DB  197,28,88,226                       ; vaddps        %ymm2,%ymm12,%ymm12
566  DB  197,236,194,211,0                   ; vcmpeqps      %ymm3,%ymm2,%ymm2
567  DB  196,195,37,74,212,32                ; vblendvps     %ymm2,%ymm12,%ymm11,%ymm2
568  DB  196,65,76,194,192,0                 ; vcmpeqps      %ymm8,%ymm6,%ymm8
569  DB  197,44,88,214                       ; vaddps        %ymm6,%ymm10,%ymm10
570  DB  196,195,109,74,210,128              ; vblendvps     %ymm8,%ymm10,%ymm2,%ymm2
571  DB  196,194,69,184,217                  ; vfmadd231ps   %ymm9,%ymm7,%ymm3
572  DB  72,173                              ; lods          %ds:(%rsi),%rax
573  DB  255,224                             ; jmpq          *%rax
574
575PUBLIC _sk_hardlight_hsw
576_sk_hardlight_hsw LABEL PROC
577  DB  196,98,125,24,5,120,66,0,0          ; vbroadcastss  0x4278(%rip),%ymm8        # 4a9c <_sk_callback_hsw+0x180>
578  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
579  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
580  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
581  DB  196,98,61,184,220                   ; vfmadd231ps   %ymm4,%ymm8,%ymm11
582  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
583  DB  197,52,194,227,2                    ; vcmpleps      %ymm3,%ymm9,%ymm12
584  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
585  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
586  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
587  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
588  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
589  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
590  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
591  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
592  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
593  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
594  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
595  DB  196,98,61,184,221                   ; vfmadd231ps   %ymm5,%ymm8,%ymm11
596  DB  197,116,88,225                      ; vaddps        %ymm1,%ymm1,%ymm12
597  DB  197,28,194,227,2                    ; vcmpleps      %ymm3,%ymm12,%ymm12
598  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
599  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
600  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
601  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
602  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
603  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
604  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
605  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
606  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
607  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
608  DB  196,98,61,184,214                   ; vfmadd231ps   %ymm6,%ymm8,%ymm10
609  DB  197,108,88,218                      ; vaddps        %ymm2,%ymm2,%ymm11
610  DB  197,36,194,219,2                    ; vcmpleps      %ymm3,%ymm11,%ymm11
611  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
612  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
613  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
614  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
615  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
616  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
617  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
618  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
619  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
620  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
621  DB  72,173                              ; lods          %ds:(%rsi),%rax
622  DB  255,224                             ; jmpq          *%rax
623
624PUBLIC _sk_overlay_hsw
625_sk_overlay_hsw LABEL PROC
626  DB  196,98,125,24,5,176,65,0,0          ; vbroadcastss  0x41b0(%rip),%ymm8        # 4aa0 <_sk_callback_hsw+0x184>
627  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
628  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
629  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
630  DB  196,98,61,184,220                   ; vfmadd231ps   %ymm4,%ymm8,%ymm11
631  DB  197,92,88,204                       ; vaddps        %ymm4,%ymm4,%ymm9
632  DB  197,52,194,231,2                    ; vcmpleps      %ymm7,%ymm9,%ymm12
633  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
634  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
635  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
636  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
637  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
638  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
639  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
640  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
641  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
642  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
643  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
644  DB  196,98,61,184,221                   ; vfmadd231ps   %ymm5,%ymm8,%ymm11
645  DB  197,84,88,229                       ; vaddps        %ymm5,%ymm5,%ymm12
646  DB  197,28,194,231,2                    ; vcmpleps      %ymm7,%ymm12,%ymm12
647  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
648  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
649  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
650  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
651  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
652  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
653  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
654  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
655  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
656  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
657  DB  196,98,61,184,214                   ; vfmadd231ps   %ymm6,%ymm8,%ymm10
658  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
659  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
660  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
661  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
662  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
663  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
664  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
665  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
666  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
667  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
668  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
669  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
670  DB  72,173                              ; lods          %ds:(%rsi),%rax
671  DB  255,224                             ; jmpq          *%rax
672
673PUBLIC _sk_softlight_hsw
674_sk_softlight_hsw LABEL PROC
675  DB  72,131,236,88                       ; sub           $0x58,%rsp
676  DB  197,252,17,84,36,32                 ; vmovups       %ymm2,0x20(%rsp)
677  DB  197,252,40,209                      ; vmovaps       %ymm1,%ymm2
678  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
679  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
680  DB  197,52,194,215,1                    ; vcmpltps      %ymm7,%ymm9,%ymm10
681  DB  197,92,94,199                       ; vdivps        %ymm7,%ymm4,%ymm8
682  DB  196,67,53,74,232,160                ; vblendvps     %ymm10,%ymm8,%ymm9,%ymm13
683  DB  196,65,20,88,197                    ; vaddps        %ymm13,%ymm13,%ymm8
684  DB  196,65,60,88,192                    ; vaddps        %ymm8,%ymm8,%ymm8
685  DB  196,66,61,168,192                   ; vfmadd213ps   %ymm8,%ymm8,%ymm8
686  DB  196,98,125,24,29,183,64,0,0         ; vbroadcastss  0x40b7(%rip),%ymm11        # 4aa8 <_sk_callback_hsw+0x18c>
687  DB  196,65,20,88,227                    ; vaddps        %ymm11,%ymm13,%ymm12
688  DB  196,65,28,89,192                    ; vmulps        %ymm8,%ymm12,%ymm8
689  DB  196,98,125,24,37,168,64,0,0         ; vbroadcastss  0x40a8(%rip),%ymm12        # 4aac <_sk_callback_hsw+0x190>
690  DB  196,66,21,184,196                   ; vfmadd231ps   %ymm12,%ymm13,%ymm8
691  DB  196,65,124,82,245                   ; vrsqrtps      %ymm13,%ymm14
692  DB  196,65,124,83,246                   ; vrcpps        %ymm14,%ymm14
693  DB  196,65,12,92,245                    ; vsubps        %ymm13,%ymm14,%ymm14
694  DB  197,92,88,252                       ; vaddps        %ymm4,%ymm4,%ymm15
695  DB  196,65,4,88,255                     ; vaddps        %ymm15,%ymm15,%ymm15
696  DB  197,4,194,255,2                     ; vcmpleps      %ymm7,%ymm15,%ymm15
697  DB  196,67,13,74,240,240                ; vblendvps     %ymm15,%ymm8,%ymm14,%ymm14
698  DB  197,116,88,249                      ; vaddps        %ymm1,%ymm1,%ymm15
699  DB  196,98,125,24,5,107,64,0,0          ; vbroadcastss  0x406b(%rip),%ymm8        # 4aa4 <_sk_callback_hsw+0x188>
700  DB  196,65,60,92,237                    ; vsubps        %ymm13,%ymm8,%ymm13
701  DB  197,132,92,195                      ; vsubps        %ymm3,%ymm15,%ymm0
702  DB  196,98,125,168,235                  ; vfmadd213ps   %ymm3,%ymm0,%ymm13
703  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
704  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
705  DB  197,20,89,236                       ; vmulps        %ymm4,%ymm13,%ymm13
706  DB  196,226,101,184,196                 ; vfmadd231ps   %ymm4,%ymm3,%ymm0
707  DB  197,4,194,243,2                     ; vcmpleps      %ymm3,%ymm15,%ymm14
708  DB  196,195,125,74,197,224              ; vblendvps     %ymm14,%ymm13,%ymm0,%ymm0
709  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
710  DB  197,212,94,199                      ; vdivps        %ymm7,%ymm5,%ymm0
711  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
712  DB  197,124,88,240                      ; vaddps        %ymm0,%ymm0,%ymm14
713  DB  196,65,12,88,246                    ; vaddps        %ymm14,%ymm14,%ymm14
714  DB  196,66,13,168,246                   ; vfmadd213ps   %ymm14,%ymm14,%ymm14
715  DB  196,65,124,88,251                   ; vaddps        %ymm11,%ymm0,%ymm15
716  DB  196,65,4,89,246                     ; vmulps        %ymm14,%ymm15,%ymm14
717  DB  196,66,125,184,244                  ; vfmadd231ps   %ymm12,%ymm0,%ymm14
718  DB  197,124,82,248                      ; vrsqrtps      %ymm0,%ymm15
719  DB  196,65,124,83,255                   ; vrcpps        %ymm15,%ymm15
720  DB  197,4,92,248                        ; vsubps        %ymm0,%ymm15,%ymm15
721  DB  197,84,88,237                       ; vaddps        %ymm5,%ymm5,%ymm13
722  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
723  DB  197,20,194,239,2                    ; vcmpleps      %ymm7,%ymm13,%ymm13
724  DB  196,67,5,74,238,208                 ; vblendvps     %ymm13,%ymm14,%ymm15,%ymm13
725  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
726  DB  197,108,88,242                      ; vaddps        %ymm2,%ymm2,%ymm14
727  DB  197,12,92,251                       ; vsubps        %ymm3,%ymm14,%ymm15
728  DB  196,226,5,168,195                   ; vfmadd213ps   %ymm3,%ymm15,%ymm0
729  DB  197,4,89,255                        ; vmulps        %ymm7,%ymm15,%ymm15
730  DB  196,65,4,89,237                     ; vmulps        %ymm13,%ymm15,%ymm13
731  DB  197,252,89,197                      ; vmulps        %ymm5,%ymm0,%ymm0
732  DB  196,98,101,184,237                  ; vfmadd231ps   %ymm5,%ymm3,%ymm13
733  DB  197,12,194,243,2                    ; vcmpleps      %ymm3,%ymm14,%ymm14
734  DB  196,99,21,74,240,224                ; vblendvps     %ymm14,%ymm0,%ymm13,%ymm14
735  DB  197,204,94,199                      ; vdivps        %ymm7,%ymm6,%ymm0
736  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
737  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
738  DB  196,65,52,88,201                    ; vaddps        %ymm9,%ymm9,%ymm9
739  DB  196,66,53,168,201                   ; vfmadd213ps   %ymm9,%ymm9,%ymm9
740  DB  196,65,124,88,211                   ; vaddps        %ymm11,%ymm0,%ymm10
741  DB  196,65,44,89,201                    ; vmulps        %ymm9,%ymm10,%ymm9
742  DB  196,66,125,184,204                  ; vfmadd231ps   %ymm12,%ymm0,%ymm9
743  DB  197,124,82,208                      ; vrsqrtps      %ymm0,%ymm10
744  DB  196,65,124,83,210                   ; vrcpps        %ymm10,%ymm10
745  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
746  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
747  DB  196,65,36,88,219                    ; vaddps        %ymm11,%ymm11,%ymm11
748  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
749  DB  196,67,45,74,201,176                ; vblendvps     %ymm11,%ymm9,%ymm10,%ymm9
750  DB  197,124,16,100,36,32                ; vmovups       0x20(%rsp),%ymm12
751  DB  196,65,28,88,212                    ; vaddps        %ymm12,%ymm12,%ymm10
752  DB  197,44,92,219                       ; vsubps        %ymm3,%ymm10,%ymm11
753  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
754  DB  196,226,37,168,195                  ; vfmadd213ps   %ymm3,%ymm11,%ymm0
755  DB  197,36,89,223                       ; vmulps        %ymm7,%ymm11,%ymm11
756  DB  196,65,36,89,201                    ; vmulps        %ymm9,%ymm11,%ymm9
757  DB  197,252,89,198                      ; vmulps        %ymm6,%ymm0,%ymm0
758  DB  196,98,101,184,206                  ; vfmadd231ps   %ymm6,%ymm3,%ymm9
759  DB  197,44,194,211,2                    ; vcmpleps      %ymm3,%ymm10,%ymm10
760  DB  196,99,53,74,200,160                ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm9
761  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
762  DB  197,172,89,193                      ; vmulps        %ymm1,%ymm10,%ymm0
763  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
764  DB  196,226,61,184,196                  ; vfmadd231ps   %ymm4,%ymm8,%ymm0
765  DB  197,252,88,4,36                     ; vaddps        (%rsp),%ymm0,%ymm0
766  DB  197,172,89,202                      ; vmulps        %ymm2,%ymm10,%ymm1
767  DB  196,226,61,184,205                  ; vfmadd231ps   %ymm5,%ymm8,%ymm1
768  DB  196,193,116,88,206                  ; vaddps        %ymm14,%ymm1,%ymm1
769  DB  196,193,44,89,212                   ; vmulps        %ymm12,%ymm10,%ymm2
770  DB  196,226,61,184,214                  ; vfmadd231ps   %ymm6,%ymm8,%ymm2
771  DB  196,193,108,88,209                  ; vaddps        %ymm9,%ymm2,%ymm2
772  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
773  DB  72,173                              ; lods          %ds:(%rsi),%rax
774  DB  72,131,196,88                       ; add           $0x58,%rsp
775  DB  255,224                             ; jmpq          *%rax
776
777PUBLIC _sk_hue_hsw
778_sk_hue_hsw LABEL PROC
779  DB  72,131,236,88                       ; sub           $0x58,%rsp
780  DB  197,124,40,194                      ; vmovaps       %ymm2,%ymm8
781  DB  197,124,17,68,36,32                 ; vmovups       %ymm8,0x20(%rsp)
782  DB  197,252,17,12,36                    ; vmovups       %ymm1,(%rsp)
783  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
784  DB  197,108,89,203                      ; vmulps        %ymm3,%ymm2,%ymm9
785  DB  197,116,89,211                      ; vmulps        %ymm3,%ymm1,%ymm10
786  DB  197,60,89,219                       ; vmulps        %ymm3,%ymm8,%ymm11
787  DB  197,84,95,198                       ; vmaxps        %ymm6,%ymm5,%ymm8
788  DB  196,65,92,95,192                    ; vmaxps        %ymm8,%ymm4,%ymm8
789  DB  197,84,93,230                       ; vminps        %ymm6,%ymm5,%ymm12
790  DB  196,65,92,93,228                    ; vminps        %ymm12,%ymm4,%ymm12
791  DB  196,65,60,92,196                    ; vsubps        %ymm12,%ymm8,%ymm8
792  DB  197,60,89,227                       ; vmulps        %ymm3,%ymm8,%ymm12
793  DB  196,65,44,93,195                    ; vminps        %ymm11,%ymm10,%ymm8
794  DB  196,65,52,93,232                    ; vminps        %ymm8,%ymm9,%ymm13
795  DB  196,65,44,95,195                    ; vmaxps        %ymm11,%ymm10,%ymm8
796  DB  196,65,52,95,192                    ; vmaxps        %ymm8,%ymm9,%ymm8
797  DB  196,65,60,92,245                    ; vsubps        %ymm13,%ymm8,%ymm14
798  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
799  DB  196,65,12,194,248,0                 ; vcmpeqps      %ymm8,%ymm14,%ymm15
800  DB  196,65,52,92,205                    ; vsubps        %ymm13,%ymm9,%ymm9
801  DB  196,65,28,89,201                    ; vmulps        %ymm9,%ymm12,%ymm9
802  DB  196,65,52,94,206                    ; vdivps        %ymm14,%ymm9,%ymm9
803  DB  196,67,53,74,200,240                ; vblendvps     %ymm15,%ymm8,%ymm9,%ymm9
804  DB  196,65,44,92,213                    ; vsubps        %ymm13,%ymm10,%ymm10
805  DB  196,65,28,89,210                    ; vmulps        %ymm10,%ymm12,%ymm10
806  DB  196,65,44,94,214                    ; vdivps        %ymm14,%ymm10,%ymm10
807  DB  196,195,45,74,200,240               ; vblendvps     %ymm15,%ymm8,%ymm10,%ymm1
808  DB  196,65,36,92,213                    ; vsubps        %ymm13,%ymm11,%ymm10
809  DB  196,65,28,89,210                    ; vmulps        %ymm10,%ymm12,%ymm10
810  DB  196,65,44,94,214                    ; vdivps        %ymm14,%ymm10,%ymm10
811  DB  196,67,45,74,224,240                ; vblendvps     %ymm15,%ymm8,%ymm10,%ymm12
812  DB  196,98,125,24,53,106,62,0,0         ; vbroadcastss  0x3e6a(%rip),%ymm14        # 4ab0 <_sk_callback_hsw+0x194>
813  DB  196,98,125,24,61,101,62,0,0         ; vbroadcastss  0x3e65(%rip),%ymm15        # 4ab4 <_sk_callback_hsw+0x198>
814  DB  196,65,84,89,239                    ; vmulps        %ymm15,%ymm5,%ymm13
815  DB  196,66,93,184,238                   ; vfmadd231ps   %ymm14,%ymm4,%ymm13
816  DB  196,226,125,24,5,86,62,0,0          ; vbroadcastss  0x3e56(%rip),%ymm0        # 4ab8 <_sk_callback_hsw+0x19c>
817  DB  196,98,77,184,232                   ; vfmadd231ps   %ymm0,%ymm6,%ymm13
818  DB  196,65,116,89,215                   ; vmulps        %ymm15,%ymm1,%ymm10
819  DB  196,66,53,184,214                   ; vfmadd231ps   %ymm14,%ymm9,%ymm10
820  DB  196,98,29,184,208                   ; vfmadd231ps   %ymm0,%ymm12,%ymm10
821  DB  196,66,101,170,234                  ; vfmsub213ps   %ymm10,%ymm3,%ymm13
822  DB  196,65,52,88,213                    ; vaddps        %ymm13,%ymm9,%ymm10
823  DB  196,65,116,88,221                   ; vaddps        %ymm13,%ymm1,%ymm11
824  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
825  DB  196,193,36,93,204                   ; vminps        %ymm12,%ymm11,%ymm1
826  DB  197,44,93,233                       ; vminps        %ymm1,%ymm10,%ymm13
827  DB  196,65,36,89,207                    ; vmulps        %ymm15,%ymm11,%ymm9
828  DB  196,66,45,184,206                   ; vfmadd231ps   %ymm14,%ymm10,%ymm9
829  DB  196,98,29,184,200                   ; vfmadd231ps   %ymm0,%ymm12,%ymm9
830  DB  196,193,44,92,193                   ; vsubps        %ymm9,%ymm10,%ymm0
831  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
832  DB  196,193,52,92,205                   ; vsubps        %ymm13,%ymm9,%ymm1
833  DB  197,252,94,193                      ; vdivps        %ymm1,%ymm0,%ymm0
834  DB  196,65,36,92,241                    ; vsubps        %ymm9,%ymm11,%ymm14
835  DB  196,65,52,89,246                    ; vmulps        %ymm14,%ymm9,%ymm14
836  DB  197,12,94,241                       ; vdivps        %ymm1,%ymm14,%ymm14
837  DB  196,65,28,92,249                    ; vsubps        %ymm9,%ymm12,%ymm15
838  DB  196,65,52,89,255                    ; vmulps        %ymm15,%ymm9,%ymm15
839  DB  197,132,94,201                      ; vdivps        %ymm1,%ymm15,%ymm1
840  DB  196,65,60,194,237,2                 ; vcmpleps      %ymm13,%ymm8,%ymm13
841  DB  196,65,52,88,246                    ; vaddps        %ymm14,%ymm9,%ymm14
842  DB  196,67,13,74,243,208                ; vblendvps     %ymm13,%ymm11,%ymm14,%ymm14
843  DB  196,65,36,95,220                    ; vmaxps        %ymm12,%ymm11,%ymm11
844  DB  197,180,88,201                      ; vaddps        %ymm1,%ymm9,%ymm1
845  DB  196,195,117,74,204,208              ; vblendvps     %ymm13,%ymm12,%ymm1,%ymm1
846  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
847  DB  196,195,125,74,194,208              ; vblendvps     %ymm13,%ymm10,%ymm0,%ymm0
848  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
849  DB  196,65,44,95,211                    ; vmaxps        %ymm11,%ymm10,%ymm10
850  DB  196,65,124,92,217                   ; vsubps        %ymm9,%ymm0,%ymm11
851  DB  196,65,28,92,233                    ; vsubps        %ymm9,%ymm12,%ymm13
852  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
853  DB  196,65,28,194,250,1                 ; vcmpltps      %ymm10,%ymm12,%ymm15
854  DB  196,65,44,92,209                    ; vsubps        %ymm9,%ymm10,%ymm10
855  DB  196,65,36,94,218                    ; vdivps        %ymm10,%ymm11,%ymm11
856  DB  196,65,52,88,219                    ; vaddps        %ymm11,%ymm9,%ymm11
857  DB  196,195,125,74,195,240              ; vblendvps     %ymm15,%ymm11,%ymm0,%ymm0
858  DB  196,65,12,92,217                    ; vsubps        %ymm9,%ymm14,%ymm11
859  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
860  DB  196,65,36,94,218                    ; vdivps        %ymm10,%ymm11,%ymm11
861  DB  196,65,52,88,219                    ; vaddps        %ymm11,%ymm9,%ymm11
862  DB  196,67,13,74,219,240                ; vblendvps     %ymm15,%ymm11,%ymm14,%ymm11
863  DB  196,65,116,92,241                   ; vsubps        %ymm9,%ymm1,%ymm14
864  DB  196,65,20,89,238                    ; vmulps        %ymm14,%ymm13,%ymm13
865  DB  196,65,20,94,210                    ; vdivps        %ymm10,%ymm13,%ymm10
866  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
867  DB  196,195,117,74,201,240              ; vblendvps     %ymm15,%ymm9,%ymm1,%ymm1
868  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
869  DB  196,65,36,95,200                    ; vmaxps        %ymm8,%ymm11,%ymm9
870  DB  196,65,116,95,192                   ; vmaxps        %ymm8,%ymm1,%ymm8
871  DB  196,226,125,24,13,67,61,0,0         ; vbroadcastss  0x3d43(%rip),%ymm1        # 4abc <_sk_callback_hsw+0x1a0>
872  DB  197,116,92,215                      ; vsubps        %ymm7,%ymm1,%ymm10
873  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
874  DB  197,116,92,219                      ; vsubps        %ymm3,%ymm1,%ymm11
875  DB  196,226,37,184,212                  ; vfmadd231ps   %ymm4,%ymm11,%ymm2
876  DB  197,236,88,192                      ; vaddps        %ymm0,%ymm2,%ymm0
877  DB  197,172,89,12,36                    ; vmulps        (%rsp),%ymm10,%ymm1
878  DB  196,226,37,184,205                  ; vfmadd231ps   %ymm5,%ymm11,%ymm1
879  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
880  DB  197,172,89,84,36,32                 ; vmulps        0x20(%rsp),%ymm10,%ymm2
881  DB  196,98,77,168,218                   ; vfmadd213ps   %ymm2,%ymm6,%ymm11
882  DB  196,193,36,88,208                   ; vaddps        %ymm8,%ymm11,%ymm2
883  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
884  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
885  DB  72,173                              ; lods          %ds:(%rsi),%rax
886  DB  72,131,196,88                       ; add           $0x58,%rsp
887  DB  255,224                             ; jmpq          *%rax
888
889PUBLIC _sk_saturation_hsw
890_sk_saturation_hsw LABEL PROC
891  DB  72,131,236,88                       ; sub           $0x58,%rsp
892  DB  197,124,40,194                      ; vmovaps       %ymm2,%ymm8
893  DB  197,252,17,12,36                    ; vmovups       %ymm1,(%rsp)
894  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
895  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
896  DB  197,100,89,213                      ; vmulps        %ymm5,%ymm3,%ymm10
897  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
898  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
899  DB  197,252,17,68,36,32                 ; vmovups       %ymm0,0x20(%rsp)
900  DB  197,116,95,192                      ; vmaxps        %ymm0,%ymm1,%ymm8
901  DB  196,65,108,95,192                   ; vmaxps        %ymm8,%ymm2,%ymm8
902  DB  197,116,93,224                      ; vminps        %ymm0,%ymm1,%ymm12
903  DB  196,65,108,93,228                   ; vminps        %ymm12,%ymm2,%ymm12
904  DB  196,65,60,92,196                    ; vsubps        %ymm12,%ymm8,%ymm8
905  DB  197,60,89,231                       ; vmulps        %ymm7,%ymm8,%ymm12
906  DB  196,65,44,93,195                    ; vminps        %ymm11,%ymm10,%ymm8
907  DB  196,65,52,93,232                    ; vminps        %ymm8,%ymm9,%ymm13
908  DB  196,65,44,95,195                    ; vmaxps        %ymm11,%ymm10,%ymm8
909  DB  196,65,52,95,192                    ; vmaxps        %ymm8,%ymm9,%ymm8
910  DB  196,65,60,92,245                    ; vsubps        %ymm13,%ymm8,%ymm14
911  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
912  DB  196,65,12,194,248,0                 ; vcmpeqps      %ymm8,%ymm14,%ymm15
913  DB  196,65,52,92,205                    ; vsubps        %ymm13,%ymm9,%ymm9
914  DB  196,65,28,89,201                    ; vmulps        %ymm9,%ymm12,%ymm9
915  DB  196,65,52,94,206                    ; vdivps        %ymm14,%ymm9,%ymm9
916  DB  196,67,53,74,200,240                ; vblendvps     %ymm15,%ymm8,%ymm9,%ymm9
917  DB  196,65,44,92,213                    ; vsubps        %ymm13,%ymm10,%ymm10
918  DB  196,65,28,89,210                    ; vmulps        %ymm10,%ymm12,%ymm10
919  DB  196,65,44,94,214                    ; vdivps        %ymm14,%ymm10,%ymm10
920  DB  196,195,45,74,200,240               ; vblendvps     %ymm15,%ymm8,%ymm10,%ymm1
921  DB  196,65,36,92,213                    ; vsubps        %ymm13,%ymm11,%ymm10
922  DB  196,65,28,89,210                    ; vmulps        %ymm10,%ymm12,%ymm10
923  DB  196,65,44,94,214                    ; vdivps        %ymm14,%ymm10,%ymm10
924  DB  196,67,45,74,224,240                ; vblendvps     %ymm15,%ymm8,%ymm10,%ymm12
925  DB  196,98,125,24,53,84,60,0,0          ; vbroadcastss  0x3c54(%rip),%ymm14        # 4ac0 <_sk_callback_hsw+0x1a4>
926  DB  196,98,125,24,61,79,60,0,0          ; vbroadcastss  0x3c4f(%rip),%ymm15        # 4ac4 <_sk_callback_hsw+0x1a8>
927  DB  196,65,84,89,239                    ; vmulps        %ymm15,%ymm5,%ymm13
928  DB  196,66,93,184,238                   ; vfmadd231ps   %ymm14,%ymm4,%ymm13
929  DB  196,226,125,24,5,64,60,0,0          ; vbroadcastss  0x3c40(%rip),%ymm0        # 4ac8 <_sk_callback_hsw+0x1ac>
930  DB  196,98,77,184,232                   ; vfmadd231ps   %ymm0,%ymm6,%ymm13
931  DB  196,65,116,89,215                   ; vmulps        %ymm15,%ymm1,%ymm10
932  DB  196,66,53,184,214                   ; vfmadd231ps   %ymm14,%ymm9,%ymm10
933  DB  196,98,29,184,208                   ; vfmadd231ps   %ymm0,%ymm12,%ymm10
934  DB  196,66,101,170,234                  ; vfmsub213ps   %ymm10,%ymm3,%ymm13
935  DB  196,65,52,88,213                    ; vaddps        %ymm13,%ymm9,%ymm10
936  DB  196,65,116,88,221                   ; vaddps        %ymm13,%ymm1,%ymm11
937  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
938  DB  196,193,36,93,204                   ; vminps        %ymm12,%ymm11,%ymm1
939  DB  197,44,93,233                       ; vminps        %ymm1,%ymm10,%ymm13
940  DB  196,65,36,89,207                    ; vmulps        %ymm15,%ymm11,%ymm9
941  DB  196,66,45,184,206                   ; vfmadd231ps   %ymm14,%ymm10,%ymm9
942  DB  196,98,29,184,200                   ; vfmadd231ps   %ymm0,%ymm12,%ymm9
943  DB  196,193,44,92,193                   ; vsubps        %ymm9,%ymm10,%ymm0
944  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
945  DB  196,193,52,92,205                   ; vsubps        %ymm13,%ymm9,%ymm1
946  DB  197,252,94,193                      ; vdivps        %ymm1,%ymm0,%ymm0
947  DB  196,65,36,92,241                    ; vsubps        %ymm9,%ymm11,%ymm14
948  DB  196,65,52,89,246                    ; vmulps        %ymm14,%ymm9,%ymm14
949  DB  197,12,94,241                       ; vdivps        %ymm1,%ymm14,%ymm14
950  DB  196,65,28,92,249                    ; vsubps        %ymm9,%ymm12,%ymm15
951  DB  196,65,52,89,255                    ; vmulps        %ymm15,%ymm9,%ymm15
952  DB  197,132,94,201                      ; vdivps        %ymm1,%ymm15,%ymm1
953  DB  196,65,60,194,237,2                 ; vcmpleps      %ymm13,%ymm8,%ymm13
954  DB  196,65,52,88,246                    ; vaddps        %ymm14,%ymm9,%ymm14
955  DB  196,67,13,74,243,208                ; vblendvps     %ymm13,%ymm11,%ymm14,%ymm14
956  DB  196,65,36,95,220                    ; vmaxps        %ymm12,%ymm11,%ymm11
957  DB  197,180,88,201                      ; vaddps        %ymm1,%ymm9,%ymm1
958  DB  196,195,117,74,204,208              ; vblendvps     %ymm13,%ymm12,%ymm1,%ymm1
959  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
960  DB  196,195,125,74,194,208              ; vblendvps     %ymm13,%ymm10,%ymm0,%ymm0
961  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
962  DB  196,65,44,95,211                    ; vmaxps        %ymm11,%ymm10,%ymm10
963  DB  196,65,124,92,217                   ; vsubps        %ymm9,%ymm0,%ymm11
964  DB  196,65,28,92,233                    ; vsubps        %ymm9,%ymm12,%ymm13
965  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
966  DB  196,65,28,194,250,1                 ; vcmpltps      %ymm10,%ymm12,%ymm15
967  DB  196,65,44,92,209                    ; vsubps        %ymm9,%ymm10,%ymm10
968  DB  196,65,36,94,218                    ; vdivps        %ymm10,%ymm11,%ymm11
969  DB  196,65,52,88,219                    ; vaddps        %ymm11,%ymm9,%ymm11
970  DB  196,195,125,74,195,240              ; vblendvps     %ymm15,%ymm11,%ymm0,%ymm0
971  DB  196,65,12,92,217                    ; vsubps        %ymm9,%ymm14,%ymm11
972  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
973  DB  196,65,36,94,218                    ; vdivps        %ymm10,%ymm11,%ymm11
974  DB  196,65,52,88,219                    ; vaddps        %ymm11,%ymm9,%ymm11
975  DB  196,67,13,74,219,240                ; vblendvps     %ymm15,%ymm11,%ymm14,%ymm11
976  DB  196,65,116,92,241                   ; vsubps        %ymm9,%ymm1,%ymm14
977  DB  196,65,20,89,238                    ; vmulps        %ymm14,%ymm13,%ymm13
978  DB  196,65,20,94,210                    ; vdivps        %ymm10,%ymm13,%ymm10
979  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
980  DB  196,195,117,74,201,240              ; vblendvps     %ymm15,%ymm9,%ymm1,%ymm1
981  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
982  DB  196,65,36,95,200                    ; vmaxps        %ymm8,%ymm11,%ymm9
983  DB  196,65,116,95,192                   ; vmaxps        %ymm8,%ymm1,%ymm8
984  DB  196,226,125,24,13,45,59,0,0         ; vbroadcastss  0x3b2d(%rip),%ymm1        # 4acc <_sk_callback_hsw+0x1b0>
985  DB  197,116,92,215                      ; vsubps        %ymm7,%ymm1,%ymm10
986  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
987  DB  197,116,92,219                      ; vsubps        %ymm3,%ymm1,%ymm11
988  DB  196,226,37,184,212                  ; vfmadd231ps   %ymm4,%ymm11,%ymm2
989  DB  197,236,88,192                      ; vaddps        %ymm0,%ymm2,%ymm0
990  DB  197,172,89,12,36                    ; vmulps        (%rsp),%ymm10,%ymm1
991  DB  196,226,37,184,205                  ; vfmadd231ps   %ymm5,%ymm11,%ymm1
992  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
993  DB  197,172,89,84,36,32                 ; vmulps        0x20(%rsp),%ymm10,%ymm2
994  DB  196,98,77,168,218                   ; vfmadd213ps   %ymm2,%ymm6,%ymm11
995  DB  196,193,36,88,208                   ; vaddps        %ymm8,%ymm11,%ymm2
996  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
997  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
998  DB  72,173                              ; lods          %ds:(%rsi),%rax
999  DB  72,131,196,88                       ; add           $0x58,%rsp
1000  DB  255,224                             ; jmpq          *%rax
1001
1002PUBLIC _sk_color_hsw
1003_sk_color_hsw LABEL PROC
1004  DB  72,131,236,88                       ; sub           $0x58,%rsp
1005  DB  197,124,40,202                      ; vmovaps       %ymm2,%ymm9
1006  DB  197,124,17,76,36,32                 ; vmovups       %ymm9,0x20(%rsp)
1007  DB  197,252,17,12,36                    ; vmovups       %ymm1,(%rsp)
1008  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
1009  DB  197,108,89,199                      ; vmulps        %ymm7,%ymm2,%ymm8
1010  DB  197,116,89,215                      ; vmulps        %ymm7,%ymm1,%ymm10
1011  DB  197,52,89,223                       ; vmulps        %ymm7,%ymm9,%ymm11
1012  DB  196,98,125,24,45,192,58,0,0         ; vbroadcastss  0x3ac0(%rip),%ymm13        # 4ad0 <_sk_callback_hsw+0x1b4>
1013  DB  196,98,125,24,53,187,58,0,0         ; vbroadcastss  0x3abb(%rip),%ymm14        # 4ad4 <_sk_callback_hsw+0x1b8>
1014  DB  196,65,84,89,230                    ; vmulps        %ymm14,%ymm5,%ymm12
1015  DB  196,66,93,184,229                   ; vfmadd231ps   %ymm13,%ymm4,%ymm12
1016  DB  196,98,125,24,61,172,58,0,0         ; vbroadcastss  0x3aac(%rip),%ymm15        # 4ad8 <_sk_callback_hsw+0x1bc>
1017  DB  196,66,77,184,231                   ; vfmadd231ps   %ymm15,%ymm6,%ymm12
1018  DB  196,65,44,89,206                    ; vmulps        %ymm14,%ymm10,%ymm9
1019  DB  196,66,61,184,205                   ; vfmadd231ps   %ymm13,%ymm8,%ymm9
1020  DB  196,66,37,184,207                   ; vfmadd231ps   %ymm15,%ymm11,%ymm9
1021  DB  196,66,101,170,225                  ; vfmsub213ps   %ymm9,%ymm3,%ymm12
1022  DB  196,65,60,88,204                    ; vaddps        %ymm12,%ymm8,%ymm9
1023  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
1024  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
1025  DB  196,65,44,93,195                    ; vminps        %ymm11,%ymm10,%ymm8
1026  DB  196,65,52,93,224                    ; vminps        %ymm8,%ymm9,%ymm12
1027  DB  196,65,44,89,198                    ; vmulps        %ymm14,%ymm10,%ymm8
1028  DB  196,66,53,184,197                   ; vfmadd231ps   %ymm13,%ymm9,%ymm8
1029  DB  196,66,37,184,199                   ; vfmadd231ps   %ymm15,%ymm11,%ymm8
1030  DB  196,65,52,92,232                    ; vsubps        %ymm8,%ymm9,%ymm13
1031  DB  196,65,60,89,237                    ; vmulps        %ymm13,%ymm8,%ymm13
1032  DB  196,65,60,92,244                    ; vsubps        %ymm12,%ymm8,%ymm14
1033  DB  196,193,20,94,198                   ; vdivps        %ymm14,%ymm13,%ymm0
1034  DB  196,65,44,92,248                    ; vsubps        %ymm8,%ymm10,%ymm15
1035  DB  196,65,60,89,255                    ; vmulps        %ymm15,%ymm8,%ymm15
1036  DB  196,65,4,94,254                     ; vdivps        %ymm14,%ymm15,%ymm15
1037  DB  196,65,36,92,232                    ; vsubps        %ymm8,%ymm11,%ymm13
1038  DB  196,65,60,89,237                    ; vmulps        %ymm13,%ymm8,%ymm13
1039  DB  196,65,20,94,238                    ; vdivps        %ymm14,%ymm13,%ymm13
1040  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
1041  DB  196,65,12,194,228,2                 ; vcmpleps      %ymm12,%ymm14,%ymm12
1042  DB  196,65,60,88,255                    ; vaddps        %ymm15,%ymm8,%ymm15
1043  DB  196,67,5,74,250,192                 ; vblendvps     %ymm12,%ymm10,%ymm15,%ymm15
1044  DB  196,65,44,95,211                    ; vmaxps        %ymm11,%ymm10,%ymm10
1045  DB  196,65,60,88,237                    ; vaddps        %ymm13,%ymm8,%ymm13
1046  DB  196,67,21,74,219,192                ; vblendvps     %ymm12,%ymm11,%ymm13,%ymm11
1047  DB  197,188,88,192                      ; vaddps        %ymm0,%ymm8,%ymm0
1048  DB  196,195,125,74,201,192              ; vblendvps     %ymm12,%ymm9,%ymm0,%ymm1
1049  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
1050  DB  196,65,52,95,202                    ; vmaxps        %ymm10,%ymm9,%ymm9
1051  DB  196,65,116,92,208                   ; vsubps        %ymm8,%ymm1,%ymm10
1052  DB  196,65,28,92,232                    ; vsubps        %ymm8,%ymm12,%ymm13
1053  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
1054  DB  196,193,28,194,193,1                ; vcmpltps      %ymm9,%ymm12,%ymm0
1055  DB  196,65,52,92,200                    ; vsubps        %ymm8,%ymm9,%ymm9
1056  DB  196,65,44,94,209                    ; vdivps        %ymm9,%ymm10,%ymm10
1057  DB  196,65,60,88,210                    ; vaddps        %ymm10,%ymm8,%ymm10
1058  DB  196,195,117,74,202,0                ; vblendvps     %ymm0,%ymm10,%ymm1,%ymm1
1059  DB  196,65,4,92,208                     ; vsubps        %ymm8,%ymm15,%ymm10
1060  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
1061  DB  196,65,44,94,209                    ; vdivps        %ymm9,%ymm10,%ymm10
1062  DB  196,65,60,88,210                    ; vaddps        %ymm10,%ymm8,%ymm10
1063  DB  196,67,5,74,210,0                   ; vblendvps     %ymm0,%ymm10,%ymm15,%ymm10
1064  DB  196,65,36,92,248                    ; vsubps        %ymm8,%ymm11,%ymm15
1065  DB  196,65,20,89,239                    ; vmulps        %ymm15,%ymm13,%ymm13
1066  DB  196,65,20,94,201                    ; vdivps        %ymm9,%ymm13,%ymm9
1067  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
1068  DB  196,195,37,74,192,0                 ; vblendvps     %ymm0,%ymm8,%ymm11,%ymm0
1069  DB  196,193,116,95,206                  ; vmaxps        %ymm14,%ymm1,%ymm1
1070  DB  196,65,44,95,198                    ; vmaxps        %ymm14,%ymm10,%ymm8
1071  DB  196,65,124,95,206                   ; vmaxps        %ymm14,%ymm0,%ymm9
1072  DB  196,226,125,24,5,142,57,0,0         ; vbroadcastss  0x398e(%rip),%ymm0        # 4adc <_sk_callback_hsw+0x1c0>
1073  DB  197,124,92,215                      ; vsubps        %ymm7,%ymm0,%ymm10
1074  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
1075  DB  197,124,92,219                      ; vsubps        %ymm3,%ymm0,%ymm11
1076  DB  196,226,37,184,212                  ; vfmadd231ps   %ymm4,%ymm11,%ymm2
1077  DB  197,236,88,193                      ; vaddps        %ymm1,%ymm2,%ymm0
1078  DB  197,172,89,12,36                    ; vmulps        (%rsp),%ymm10,%ymm1
1079  DB  196,226,37,184,205                  ; vfmadd231ps   %ymm5,%ymm11,%ymm1
1080  DB  196,193,116,88,200                  ; vaddps        %ymm8,%ymm1,%ymm1
1081  DB  197,172,89,84,36,32                 ; vmulps        0x20(%rsp),%ymm10,%ymm2
1082  DB  196,98,77,168,218                   ; vfmadd213ps   %ymm2,%ymm6,%ymm11
1083  DB  196,193,36,88,209                   ; vaddps        %ymm9,%ymm11,%ymm2
1084  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
1085  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
1086  DB  72,173                              ; lods          %ds:(%rsi),%rax
1087  DB  72,131,196,88                       ; add           $0x58,%rsp
1088  DB  255,224                             ; jmpq          *%rax
1089
1090PUBLIC _sk_luminosity_hsw
1091_sk_luminosity_hsw LABEL PROC
1092  DB  72,131,236,88                       ; sub           $0x58,%rsp
1093  DB  197,124,40,202                      ; vmovaps       %ymm2,%ymm9
1094  DB  197,124,17,12,36                    ; vmovups       %ymm9,(%rsp)
1095  DB  197,252,17,76,36,32                 ; vmovups       %ymm1,0x20(%rsp)
1096  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
1097  DB  197,100,89,196                      ; vmulps        %ymm4,%ymm3,%ymm8
1098  DB  197,100,89,213                      ; vmulps        %ymm5,%ymm3,%ymm10
1099  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
1100  DB  196,98,125,24,45,33,57,0,0          ; vbroadcastss  0x3921(%rip),%ymm13        # 4ae0 <_sk_callback_hsw+0x1c4>
1101  DB  196,98,125,24,53,28,57,0,0          ; vbroadcastss  0x391c(%rip),%ymm14        # 4ae4 <_sk_callback_hsw+0x1c8>
1102  DB  196,65,116,89,230                   ; vmulps        %ymm14,%ymm1,%ymm12
1103  DB  196,66,109,184,229                  ; vfmadd231ps   %ymm13,%ymm2,%ymm12
1104  DB  196,98,125,24,61,13,57,0,0          ; vbroadcastss  0x390d(%rip),%ymm15        # 4ae8 <_sk_callback_hsw+0x1cc>
1105  DB  196,66,53,184,231                   ; vfmadd231ps   %ymm15,%ymm9,%ymm12
1106  DB  196,65,44,89,206                    ; vmulps        %ymm14,%ymm10,%ymm9
1107  DB  196,66,61,184,205                   ; vfmadd231ps   %ymm13,%ymm8,%ymm9
1108  DB  196,66,37,184,207                   ; vfmadd231ps   %ymm15,%ymm11,%ymm9
1109  DB  196,66,69,170,225                   ; vfmsub213ps   %ymm9,%ymm7,%ymm12
1110  DB  196,65,60,88,204                    ; vaddps        %ymm12,%ymm8,%ymm9
1111  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
1112  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
1113  DB  196,65,44,93,195                    ; vminps        %ymm11,%ymm10,%ymm8
1114  DB  196,65,52,93,224                    ; vminps        %ymm8,%ymm9,%ymm12
1115  DB  196,65,44,89,198                    ; vmulps        %ymm14,%ymm10,%ymm8
1116  DB  196,66,53,184,197                   ; vfmadd231ps   %ymm13,%ymm9,%ymm8
1117  DB  196,66,37,184,199                   ; vfmadd231ps   %ymm15,%ymm11,%ymm8
1118  DB  196,65,52,92,232                    ; vsubps        %ymm8,%ymm9,%ymm13
1119  DB  196,65,60,89,237                    ; vmulps        %ymm13,%ymm8,%ymm13
1120  DB  196,65,60,92,244                    ; vsubps        %ymm12,%ymm8,%ymm14
1121  DB  196,193,20,94,198                   ; vdivps        %ymm14,%ymm13,%ymm0
1122  DB  196,65,44,92,248                    ; vsubps        %ymm8,%ymm10,%ymm15
1123  DB  196,65,60,89,255                    ; vmulps        %ymm15,%ymm8,%ymm15
1124  DB  196,65,4,94,254                     ; vdivps        %ymm14,%ymm15,%ymm15
1125  DB  196,65,36,92,232                    ; vsubps        %ymm8,%ymm11,%ymm13
1126  DB  196,65,60,89,237                    ; vmulps        %ymm13,%ymm8,%ymm13
1127  DB  196,65,20,94,238                    ; vdivps        %ymm14,%ymm13,%ymm13
1128  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
1129  DB  196,65,12,194,228,2                 ; vcmpleps      %ymm12,%ymm14,%ymm12
1130  DB  196,65,60,88,255                    ; vaddps        %ymm15,%ymm8,%ymm15
1131  DB  196,67,5,74,250,192                 ; vblendvps     %ymm12,%ymm10,%ymm15,%ymm15
1132  DB  196,65,44,95,211                    ; vmaxps        %ymm11,%ymm10,%ymm10
1133  DB  196,65,60,88,237                    ; vaddps        %ymm13,%ymm8,%ymm13
1134  DB  196,67,21,74,219,192                ; vblendvps     %ymm12,%ymm11,%ymm13,%ymm11
1135  DB  197,188,88,192                      ; vaddps        %ymm0,%ymm8,%ymm0
1136  DB  196,195,125,74,201,192              ; vblendvps     %ymm12,%ymm9,%ymm0,%ymm1
1137  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
1138  DB  196,65,52,95,202                    ; vmaxps        %ymm10,%ymm9,%ymm9
1139  DB  196,65,116,92,208                   ; vsubps        %ymm8,%ymm1,%ymm10
1140  DB  196,65,28,92,232                    ; vsubps        %ymm8,%ymm12,%ymm13
1141  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
1142  DB  196,193,28,194,193,1                ; vcmpltps      %ymm9,%ymm12,%ymm0
1143  DB  196,65,52,92,200                    ; vsubps        %ymm8,%ymm9,%ymm9
1144  DB  196,65,44,94,209                    ; vdivps        %ymm9,%ymm10,%ymm10
1145  DB  196,65,60,88,210                    ; vaddps        %ymm10,%ymm8,%ymm10
1146  DB  196,195,117,74,202,0                ; vblendvps     %ymm0,%ymm10,%ymm1,%ymm1
1147  DB  196,65,4,92,208                     ; vsubps        %ymm8,%ymm15,%ymm10
1148  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
1149  DB  196,65,44,94,209                    ; vdivps        %ymm9,%ymm10,%ymm10
1150  DB  196,65,60,88,210                    ; vaddps        %ymm10,%ymm8,%ymm10
1151  DB  196,67,5,74,210,0                   ; vblendvps     %ymm0,%ymm10,%ymm15,%ymm10
1152  DB  196,65,36,92,248                    ; vsubps        %ymm8,%ymm11,%ymm15
1153  DB  196,65,20,89,239                    ; vmulps        %ymm15,%ymm13,%ymm13
1154  DB  196,65,20,94,201                    ; vdivps        %ymm9,%ymm13,%ymm9
1155  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
1156  DB  196,195,37,74,192,0                 ; vblendvps     %ymm0,%ymm8,%ymm11,%ymm0
1157  DB  196,193,116,95,206                  ; vmaxps        %ymm14,%ymm1,%ymm1
1158  DB  196,65,44,95,198                    ; vmaxps        %ymm14,%ymm10,%ymm8
1159  DB  196,65,124,95,206                   ; vmaxps        %ymm14,%ymm0,%ymm9
1160  DB  196,226,125,24,5,239,55,0,0         ; vbroadcastss  0x37ef(%rip),%ymm0        # 4aec <_sk_callback_hsw+0x1d0>
1161  DB  197,124,92,215                      ; vsubps        %ymm7,%ymm0,%ymm10
1162  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
1163  DB  197,124,92,219                      ; vsubps        %ymm3,%ymm0,%ymm11
1164  DB  196,226,37,184,212                  ; vfmadd231ps   %ymm4,%ymm11,%ymm2
1165  DB  197,236,88,193                      ; vaddps        %ymm1,%ymm2,%ymm0
1166  DB  197,172,89,76,36,32                 ; vmulps        0x20(%rsp),%ymm10,%ymm1
1167  DB  196,226,37,184,205                  ; vfmadd231ps   %ymm5,%ymm11,%ymm1
1168  DB  196,193,116,88,200                  ; vaddps        %ymm8,%ymm1,%ymm1
1169  DB  197,172,89,20,36                    ; vmulps        (%rsp),%ymm10,%ymm2
1170  DB  196,98,77,168,218                   ; vfmadd213ps   %ymm2,%ymm6,%ymm11
1171  DB  196,193,36,88,209                   ; vaddps        %ymm9,%ymm11,%ymm2
1172  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
1173  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
1174  DB  72,173                              ; lods          %ds:(%rsi),%rax
1175  DB  72,131,196,88                       ; add           $0x58,%rsp
1176  DB  255,224                             ; jmpq          *%rax
1177
1178PUBLIC _sk_srcover_rgba_8888_hsw
1179_sk_srcover_rgba_8888_hsw LABEL PROC
1180  DB  73,137,201                          ; mov           %rcx,%r9
1181  DB  72,173                              ; lods          %ds:(%rsi),%rax
1182  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
1183  DB  76,3,16                             ; add           (%rax),%r10
1184  DB  77,133,192                          ; test          %r8,%r8
1185  DB  15,133,180,0,0,0                    ; jne           140f <_sk_srcover_rgba_8888_hsw+0xcd>
1186  DB  196,193,124,16,58                   ; vmovups       (%r10),%ymm7
1187  DB  197,196,84,37,248,58,0,0            ; vandps        0x3af8(%rip),%ymm7,%ymm4        # 4e60 <_sk_callback_hsw+0x544>
1188  DB  197,252,91,228                      ; vcvtdq2ps     %ymm4,%ymm4
1189  DB  196,226,69,0,45,11,59,0,0           ; vpshufb       0x3b0b(%rip),%ymm7,%ymm5        # 4e80 <_sk_callback_hsw+0x564>
1190  DB  197,252,91,237                      ; vcvtdq2ps     %ymm5,%ymm5
1191  DB  196,226,69,0,53,30,59,0,0           ; vpshufb       0x3b1e(%rip),%ymm7,%ymm6        # 4ea0 <_sk_callback_hsw+0x584>
1192  DB  197,252,91,246                      ; vcvtdq2ps     %ymm6,%ymm6
1193  DB  197,197,114,215,24                  ; vpsrld        $0x18,%ymm7,%ymm7
1194  DB  197,252,91,255                      ; vcvtdq2ps     %ymm7,%ymm7
1195  DB  196,98,125,24,5,88,55,0,0           ; vbroadcastss  0x3758(%rip),%ymm8        # 4af0 <_sk_callback_hsw+0x1d4>
1196  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
1197  DB  196,98,125,24,13,79,55,0,0          ; vbroadcastss  0x374f(%rip),%ymm9        # 4af4 <_sk_callback_hsw+0x1d8>
1198  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
1199  DB  196,194,93,184,192                  ; vfmadd231ps   %ymm8,%ymm4,%ymm0
1200  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
1201  DB  196,194,85,184,200                  ; vfmadd231ps   %ymm8,%ymm5,%ymm1
1202  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
1203  DB  196,194,77,184,208                  ; vfmadd231ps   %ymm8,%ymm6,%ymm2
1204  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
1205  DB  196,194,69,184,216                  ; vfmadd231ps   %ymm8,%ymm7,%ymm3
1206  DB  197,125,91,192                      ; vcvtps2dq     %ymm0,%ymm8
1207  DB  197,125,91,201                      ; vcvtps2dq     %ymm1,%ymm9
1208  DB  196,193,53,114,241,8                ; vpslld        $0x8,%ymm9,%ymm9
1209  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
1210  DB  197,125,91,202                      ; vcvtps2dq     %ymm2,%ymm9
1211  DB  196,193,53,114,241,16               ; vpslld        $0x10,%ymm9,%ymm9
1212  DB  197,125,91,211                      ; vcvtps2dq     %ymm3,%ymm10
1213  DB  196,193,45,114,242,24               ; vpslld        $0x18,%ymm10,%ymm10
1214  DB  196,65,53,235,202                   ; vpor          %ymm10,%ymm9,%ymm9
1215  DB  196,65,61,235,193                   ; vpor          %ymm9,%ymm8,%ymm8
1216  DB  77,133,192                          ; test          %r8,%r8
1217  DB  117,53                              ; jne           1438 <_sk_srcover_rgba_8888_hsw+0xf6>
1218  DB  196,65,124,17,2                     ; vmovups       %ymm8,(%r10)
1219  DB  72,173                              ; lods          %ds:(%rsi),%rax
1220  DB  76,137,201                          ; mov           %r9,%rcx
1221  DB  255,224                             ; jmpq          *%rax
1222  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
1223  DB  68,41,193                           ; sub           %r8d,%ecx
1224  DB  192,225,3                           ; shl           $0x3,%cl
1225  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
1226  DB  72,211,232                          ; shr           %cl,%rax
1227  DB  196,225,249,110,224                 ; vmovq         %rax,%xmm4
1228  DB  196,226,125,33,228                  ; vpmovsxbd     %xmm4,%ymm4
1229  DB  196,194,93,44,58                    ; vmaskmovps    (%r10),%ymm4,%ymm7
1230  DB  233,40,255,255,255                  ; jmpq          1360 <_sk_srcover_rgba_8888_hsw+0x1e>
1231  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
1232  DB  68,41,193                           ; sub           %r8d,%ecx
1233  DB  192,225,3                           ; shl           $0x3,%cl
1234  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
1235  DB  72,211,232                          ; shr           %cl,%rax
1236  DB  196,97,249,110,200                  ; vmovq         %rax,%xmm9
1237  DB  196,66,125,33,201                   ; vpmovsxbd     %xmm9,%ymm9
1238  DB  196,66,53,46,2                      ; vmaskmovps    %ymm8,%ymm9,(%r10)
1239  DB  235,170                             ; jmp           1408 <_sk_srcover_rgba_8888_hsw+0xc6>
1240
1241PUBLIC _sk_clamp_0_hsw
1242_sk_clamp_0_hsw LABEL PROC
1243  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
1244  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
1245  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
1246  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
1247  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
1248  DB  72,173                              ; lods          %ds:(%rsi),%rax
1249  DB  255,224                             ; jmpq          *%rax
1250
1251PUBLIC _sk_clamp_1_hsw
1252_sk_clamp_1_hsw LABEL PROC
1253  DB  196,98,125,24,5,116,54,0,0          ; vbroadcastss  0x3674(%rip),%ymm8        # 4af8 <_sk_callback_hsw+0x1dc>
1254  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
1255  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
1256  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
1257  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
1258  DB  72,173                              ; lods          %ds:(%rsi),%rax
1259  DB  255,224                             ; jmpq          *%rax
1260
1261PUBLIC _sk_clamp_a_hsw
1262_sk_clamp_a_hsw LABEL PROC
1263  DB  196,98,125,24,5,87,54,0,0           ; vbroadcastss  0x3657(%rip),%ymm8        # 4afc <_sk_callback_hsw+0x1e0>
1264  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
1265  DB  197,252,93,195                      ; vminps        %ymm3,%ymm0,%ymm0
1266  DB  197,244,93,203                      ; vminps        %ymm3,%ymm1,%ymm1
1267  DB  197,236,93,211                      ; vminps        %ymm3,%ymm2,%ymm2
1268  DB  72,173                              ; lods          %ds:(%rsi),%rax
1269  DB  255,224                             ; jmpq          *%rax
1270
1271PUBLIC _sk_set_rgb_hsw
1272_sk_set_rgb_hsw LABEL PROC
1273  DB  72,173                              ; lods          %ds:(%rsi),%rax
1274  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
1275  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
1276  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
1277  DB  72,173                              ; lods          %ds:(%rsi),%rax
1278  DB  255,224                             ; jmpq          *%rax
1279
1280PUBLIC _sk_swap_rb_hsw
1281_sk_swap_rb_hsw LABEL PROC
1282  DB  197,124,40,192                      ; vmovaps       %ymm0,%ymm8
1283  DB  72,173                              ; lods          %ds:(%rsi),%rax
1284  DB  197,252,40,194                      ; vmovaps       %ymm2,%ymm0
1285  DB  197,124,41,194                      ; vmovaps       %ymm8,%ymm2
1286  DB  255,224                             ; jmpq          *%rax
1287
1288PUBLIC _sk_swap_hsw
1289_sk_swap_hsw LABEL PROC
1290  DB  197,124,40,195                      ; vmovaps       %ymm3,%ymm8
1291  DB  197,124,40,202                      ; vmovaps       %ymm2,%ymm9
1292  DB  197,124,40,209                      ; vmovaps       %ymm1,%ymm10
1293  DB  197,124,40,216                      ; vmovaps       %ymm0,%ymm11
1294  DB  72,173                              ; lods          %ds:(%rsi),%rax
1295  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
1296  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
1297  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
1298  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
1299  DB  197,124,41,220                      ; vmovaps       %ymm11,%ymm4
1300  DB  197,124,41,213                      ; vmovaps       %ymm10,%ymm5
1301  DB  197,124,41,206                      ; vmovaps       %ymm9,%ymm6
1302  DB  197,124,41,199                      ; vmovaps       %ymm8,%ymm7
1303  DB  255,224                             ; jmpq          *%rax
1304
1305PUBLIC _sk_move_src_dst_hsw
1306_sk_move_src_dst_hsw LABEL PROC
1307  DB  72,173                              ; lods          %ds:(%rsi),%rax
1308  DB  197,252,40,224                      ; vmovaps       %ymm0,%ymm4
1309  DB  197,252,40,233                      ; vmovaps       %ymm1,%ymm5
1310  DB  197,252,40,242                      ; vmovaps       %ymm2,%ymm6
1311  DB  197,252,40,251                      ; vmovaps       %ymm3,%ymm7
1312  DB  255,224                             ; jmpq          *%rax
1313
1314PUBLIC _sk_move_dst_src_hsw
1315_sk_move_dst_src_hsw LABEL PROC
1316  DB  72,173                              ; lods          %ds:(%rsi),%rax
1317  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
1318  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
1319  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
1320  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
1321  DB  255,224                             ; jmpq          *%rax
1322
1323PUBLIC _sk_premul_hsw
1324_sk_premul_hsw LABEL PROC
1325  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
1326  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
1327  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
1328  DB  72,173                              ; lods          %ds:(%rsi),%rax
1329  DB  255,224                             ; jmpq          *%rax
1330
1331PUBLIC _sk_unpremul_hsw
1332_sk_unpremul_hsw LABEL PROC
1333  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
1334  DB  196,65,100,194,200,0                ; vcmpeqps      %ymm8,%ymm3,%ymm9
1335  DB  196,98,125,24,21,159,53,0,0         ; vbroadcastss  0x359f(%rip),%ymm10        # 4b00 <_sk_callback_hsw+0x1e4>
1336  DB  197,44,94,211                       ; vdivps        %ymm3,%ymm10,%ymm10
1337  DB  196,67,45,74,192,144                ; vblendvps     %ymm9,%ymm8,%ymm10,%ymm8
1338  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1339  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1340  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1341  DB  72,173                              ; lods          %ds:(%rsi),%rax
1342  DB  255,224                             ; jmpq          *%rax
1343
1344PUBLIC _sk_from_srgb_hsw
1345_sk_from_srgb_hsw LABEL PROC
1346  DB  196,98,125,24,5,128,53,0,0          ; vbroadcastss  0x3580(%rip),%ymm8        # 4b04 <_sk_callback_hsw+0x1e8>
1347  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
1348  DB  197,124,89,208                      ; vmulps        %ymm0,%ymm0,%ymm10
1349  DB  196,98,125,24,29,114,53,0,0         ; vbroadcastss  0x3572(%rip),%ymm11        # 4b08 <_sk_callback_hsw+0x1ec>
1350  DB  196,98,125,24,37,109,53,0,0         ; vbroadcastss  0x356d(%rip),%ymm12        # 4b0c <_sk_callback_hsw+0x1f0>
1351  DB  196,65,124,40,236                   ; vmovaps       %ymm12,%ymm13
1352  DB  196,66,125,168,235                  ; vfmadd213ps   %ymm11,%ymm0,%ymm13
1353  DB  196,98,125,24,53,94,53,0,0          ; vbroadcastss  0x355e(%rip),%ymm14        # 4b10 <_sk_callback_hsw+0x1f4>
1354  DB  196,66,45,168,238                   ; vfmadd213ps   %ymm14,%ymm10,%ymm13
1355  DB  196,98,125,24,21,84,53,0,0          ; vbroadcastss  0x3554(%rip),%ymm10        # 4b14 <_sk_callback_hsw+0x1f8>
1356  DB  196,193,124,194,194,1               ; vcmpltps      %ymm10,%ymm0,%ymm0
1357  DB  196,195,21,74,193,0                 ; vblendvps     %ymm0,%ymm9,%ymm13,%ymm0
1358  DB  196,65,116,89,200                   ; vmulps        %ymm8,%ymm1,%ymm9
1359  DB  197,116,89,233                      ; vmulps        %ymm1,%ymm1,%ymm13
1360  DB  196,65,124,40,252                   ; vmovaps       %ymm12,%ymm15
1361  DB  196,66,117,168,251                  ; vfmadd213ps   %ymm11,%ymm1,%ymm15
1362  DB  196,66,21,168,254                   ; vfmadd213ps   %ymm14,%ymm13,%ymm15
1363  DB  196,193,116,194,202,1               ; vcmpltps      %ymm10,%ymm1,%ymm1
1364  DB  196,195,5,74,201,16                 ; vblendvps     %ymm1,%ymm9,%ymm15,%ymm1
1365  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
1366  DB  197,108,89,202                      ; vmulps        %ymm2,%ymm2,%ymm9
1367  DB  196,66,109,168,227                  ; vfmadd213ps   %ymm11,%ymm2,%ymm12
1368  DB  196,66,53,168,230                   ; vfmadd213ps   %ymm14,%ymm9,%ymm12
1369  DB  196,193,108,194,210,1               ; vcmpltps      %ymm10,%ymm2,%ymm2
1370  DB  196,195,29,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm12,%ymm2
1371  DB  72,173                              ; lods          %ds:(%rsi),%rax
1372  DB  255,224                             ; jmpq          *%rax
1373
1374PUBLIC _sk_to_srgb_hsw
1375_sk_to_srgb_hsw LABEL PROC
1376  DB  197,124,82,200                      ; vrsqrtps      %ymm0,%ymm9
1377  DB  196,98,125,24,5,248,52,0,0          ; vbroadcastss  0x34f8(%rip),%ymm8        # 4b18 <_sk_callback_hsw+0x1fc>
1378  DB  196,65,124,89,208                   ; vmulps        %ymm8,%ymm0,%ymm10
1379  DB  196,98,125,24,29,238,52,0,0         ; vbroadcastss  0x34ee(%rip),%ymm11        # 4b1c <_sk_callback_hsw+0x200>
1380  DB  196,98,125,24,37,233,52,0,0         ; vbroadcastss  0x34e9(%rip),%ymm12        # 4b20 <_sk_callback_hsw+0x204>
1381  DB  196,65,124,40,236                   ; vmovaps       %ymm12,%ymm13
1382  DB  196,66,53,168,235                   ; vfmadd213ps   %ymm11,%ymm9,%ymm13
1383  DB  196,98,125,24,53,218,52,0,0         ; vbroadcastss  0x34da(%rip),%ymm14        # 4b24 <_sk_callback_hsw+0x208>
1384  DB  196,66,53,168,238                   ; vfmadd213ps   %ymm14,%ymm9,%ymm13
1385  DB  196,98,125,24,61,208,52,0,0         ; vbroadcastss  0x34d0(%rip),%ymm15        # 4b28 <_sk_callback_hsw+0x20c>
1386  DB  196,65,52,88,207                    ; vaddps        %ymm15,%ymm9,%ymm9
1387  DB  196,65,124,83,201                   ; vrcpps        %ymm9,%ymm9
1388  DB  196,65,20,89,201                    ; vmulps        %ymm9,%ymm13,%ymm9
1389  DB  196,98,125,24,45,188,52,0,0         ; vbroadcastss  0x34bc(%rip),%ymm13        # 4b2c <_sk_callback_hsw+0x210>
1390  DB  196,193,124,194,197,1               ; vcmpltps      %ymm13,%ymm0,%ymm0
1391  DB  196,195,53,74,194,0                 ; vblendvps     %ymm0,%ymm10,%ymm9,%ymm0
1392  DB  197,124,82,201                      ; vrsqrtps      %ymm1,%ymm9
1393  DB  196,65,124,40,212                   ; vmovaps       %ymm12,%ymm10
1394  DB  196,66,53,168,211                   ; vfmadd213ps   %ymm11,%ymm9,%ymm10
1395  DB  196,66,53,168,214                   ; vfmadd213ps   %ymm14,%ymm9,%ymm10
1396  DB  196,65,52,88,207                    ; vaddps        %ymm15,%ymm9,%ymm9
1397  DB  196,65,124,83,201                   ; vrcpps        %ymm9,%ymm9
1398  DB  196,65,44,89,201                    ; vmulps        %ymm9,%ymm10,%ymm9
1399  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
1400  DB  196,193,116,194,205,1               ; vcmpltps      %ymm13,%ymm1,%ymm1
1401  DB  196,195,53,74,202,16                ; vblendvps     %ymm1,%ymm10,%ymm9,%ymm1
1402  DB  197,124,82,202                      ; vrsqrtps      %ymm2,%ymm9
1403  DB  196,66,53,168,227                   ; vfmadd213ps   %ymm11,%ymm9,%ymm12
1404  DB  196,66,53,168,230                   ; vfmadd213ps   %ymm14,%ymm9,%ymm12
1405  DB  196,65,52,88,207                    ; vaddps        %ymm15,%ymm9,%ymm9
1406  DB  196,65,124,83,201                   ; vrcpps        %ymm9,%ymm9
1407  DB  196,65,28,89,201                    ; vmulps        %ymm9,%ymm12,%ymm9
1408  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
1409  DB  196,193,108,194,213,1               ; vcmpltps      %ymm13,%ymm2,%ymm2
1410  DB  196,195,53,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm9,%ymm2
1411  DB  72,173                              ; lods          %ds:(%rsi),%rax
1412  DB  255,224                             ; jmpq          *%rax
1413
1414PUBLIC _sk_rgb_to_hsl_hsw
1415_sk_rgb_to_hsl_hsw LABEL PROC
1416  DB  197,124,95,193                      ; vmaxps        %ymm1,%ymm0,%ymm8
1417  DB  197,60,95,194                       ; vmaxps        %ymm2,%ymm8,%ymm8
1418  DB  197,124,93,201                      ; vminps        %ymm1,%ymm0,%ymm9
1419  DB  197,52,93,202                       ; vminps        %ymm2,%ymm9,%ymm9
1420  DB  196,65,60,92,209                    ; vsubps        %ymm9,%ymm8,%ymm10
1421  DB  196,98,125,24,29,49,52,0,0          ; vbroadcastss  0x3431(%rip),%ymm11        # 4b30 <_sk_callback_hsw+0x214>
1422  DB  196,65,36,94,218                    ; vdivps        %ymm10,%ymm11,%ymm11
1423  DB  197,116,92,226                      ; vsubps        %ymm2,%ymm1,%ymm12
1424  DB  197,116,194,234,1                   ; vcmpltps      %ymm2,%ymm1,%ymm13
1425  DB  196,98,125,24,53,30,52,0,0          ; vbroadcastss  0x341e(%rip),%ymm14        # 4b34 <_sk_callback_hsw+0x218>
1426  DB  196,65,4,87,255                     ; vxorps        %ymm15,%ymm15,%ymm15
1427  DB  196,67,5,74,238,208                 ; vblendvps     %ymm13,%ymm14,%ymm15,%ymm13
1428  DB  196,66,37,168,229                   ; vfmadd213ps   %ymm13,%ymm11,%ymm12
1429  DB  197,236,92,208                      ; vsubps        %ymm0,%ymm2,%ymm2
1430  DB  197,124,92,233                      ; vsubps        %ymm1,%ymm0,%ymm13
1431  DB  196,98,125,24,53,5,52,0,0           ; vbroadcastss  0x3405(%rip),%ymm14        # 4b3c <_sk_callback_hsw+0x220>
1432  DB  196,66,37,168,238                   ; vfmadd213ps   %ymm14,%ymm11,%ymm13
1433  DB  196,98,125,24,53,243,51,0,0         ; vbroadcastss  0x33f3(%rip),%ymm14        # 4b38 <_sk_callback_hsw+0x21c>
1434  DB  196,194,37,168,214                  ; vfmadd213ps   %ymm14,%ymm11,%ymm2
1435  DB  197,188,194,201,0                   ; vcmpeqps      %ymm1,%ymm8,%ymm1
1436  DB  196,227,21,74,202,16                ; vblendvps     %ymm1,%ymm2,%ymm13,%ymm1
1437  DB  197,188,194,192,0                   ; vcmpeqps      %ymm0,%ymm8,%ymm0
1438  DB  196,195,117,74,196,0                ; vblendvps     %ymm0,%ymm12,%ymm1,%ymm0
1439  DB  196,193,60,88,201                   ; vaddps        %ymm9,%ymm8,%ymm1
1440  DB  196,98,125,24,29,214,51,0,0         ; vbroadcastss  0x33d6(%rip),%ymm11        # 4b44 <_sk_callback_hsw+0x228>
1441  DB  196,193,116,89,211                  ; vmulps        %ymm11,%ymm1,%ymm2
1442  DB  197,36,194,218,1                    ; vcmpltps      %ymm2,%ymm11,%ymm11
1443  DB  196,65,12,92,224                    ; vsubps        %ymm8,%ymm14,%ymm12
1444  DB  196,65,28,92,225                    ; vsubps        %ymm9,%ymm12,%ymm12
1445  DB  196,195,117,74,204,176              ; vblendvps     %ymm11,%ymm12,%ymm1,%ymm1
1446  DB  196,65,60,194,193,0                 ; vcmpeqps      %ymm9,%ymm8,%ymm8
1447  DB  197,172,94,201                      ; vdivps        %ymm1,%ymm10,%ymm1
1448  DB  196,195,125,74,199,128              ; vblendvps     %ymm8,%ymm15,%ymm0,%ymm0
1449  DB  196,195,117,74,207,128              ; vblendvps     %ymm8,%ymm15,%ymm1,%ymm1
1450  DB  196,98,125,24,5,153,51,0,0          ; vbroadcastss  0x3399(%rip),%ymm8        # 4b40 <_sk_callback_hsw+0x224>
1451  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
1452  DB  72,173                              ; lods          %ds:(%rsi),%rax
1453  DB  255,224                             ; jmpq          *%rax
1454
1455PUBLIC _sk_hsl_to_rgb_hsw
1456_sk_hsl_to_rgb_hsw LABEL PROC
1457  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
1458  DB  197,252,17,188,36,128,0,0,0         ; vmovups       %ymm7,0x80(%rsp)
1459  DB  197,252,17,116,36,96                ; vmovups       %ymm6,0x60(%rsp)
1460  DB  197,252,17,108,36,64                ; vmovups       %ymm5,0x40(%rsp)
1461  DB  197,252,17,100,36,32                ; vmovups       %ymm4,0x20(%rsp)
1462  DB  197,252,17,28,36                    ; vmovups       %ymm3,(%rsp)
1463  DB  197,252,40,233                      ; vmovaps       %ymm1,%ymm5
1464  DB  197,252,40,224                      ; vmovaps       %ymm0,%ymm4
1465  DB  196,98,125,24,5,96,51,0,0           ; vbroadcastss  0x3360(%rip),%ymm8        # 4b48 <_sk_callback_hsw+0x22c>
1466  DB  197,60,194,202,2                    ; vcmpleps      %ymm2,%ymm8,%ymm9
1467  DB  197,84,89,210                       ; vmulps        %ymm2,%ymm5,%ymm10
1468  DB  196,65,84,92,218                    ; vsubps        %ymm10,%ymm5,%ymm11
1469  DB  196,67,45,74,203,144                ; vblendvps     %ymm9,%ymm11,%ymm10,%ymm9
1470  DB  197,52,88,210                       ; vaddps        %ymm2,%ymm9,%ymm10
1471  DB  196,98,125,24,13,67,51,0,0          ; vbroadcastss  0x3343(%rip),%ymm9        # 4b4c <_sk_callback_hsw+0x230>
1472  DB  196,66,109,170,202                  ; vfmsub213ps   %ymm10,%ymm2,%ymm9
1473  DB  196,98,125,24,29,57,51,0,0          ; vbroadcastss  0x3339(%rip),%ymm11        # 4b50 <_sk_callback_hsw+0x234>
1474  DB  196,65,92,88,219                    ; vaddps        %ymm11,%ymm4,%ymm11
1475  DB  196,67,125,8,227,1                  ; vroundps      $0x1,%ymm11,%ymm12
1476  DB  196,65,36,92,252                    ; vsubps        %ymm12,%ymm11,%ymm15
1477  DB  196,65,44,92,217                    ; vsubps        %ymm9,%ymm10,%ymm11
1478  DB  196,98,125,24,45,35,51,0,0          ; vbroadcastss  0x3323(%rip),%ymm13        # 4b58 <_sk_callback_hsw+0x23c>
1479  DB  196,193,4,89,197                    ; vmulps        %ymm13,%ymm15,%ymm0
1480  DB  196,98,125,24,53,25,51,0,0          ; vbroadcastss  0x3319(%rip),%ymm14        # 4b5c <_sk_callback_hsw+0x240>
1481  DB  197,12,92,224                       ; vsubps        %ymm0,%ymm14,%ymm12
1482  DB  196,66,37,168,225                   ; vfmadd213ps   %ymm9,%ymm11,%ymm12
1483  DB  196,226,125,24,29,255,50,0,0        ; vbroadcastss  0x32ff(%rip),%ymm3        # 4b54 <_sk_callback_hsw+0x238>
1484  DB  196,193,100,194,255,2               ; vcmpleps      %ymm15,%ymm3,%ymm7
1485  DB  196,195,29,74,249,112               ; vblendvps     %ymm7,%ymm9,%ymm12,%ymm7
1486  DB  196,65,60,194,231,2                 ; vcmpleps      %ymm15,%ymm8,%ymm12
1487  DB  196,227,45,74,255,192               ; vblendvps     %ymm12,%ymm7,%ymm10,%ymm7
1488  DB  196,98,125,24,37,234,50,0,0         ; vbroadcastss  0x32ea(%rip),%ymm12        # 4b60 <_sk_callback_hsw+0x244>
1489  DB  196,65,28,194,255,2                 ; vcmpleps      %ymm15,%ymm12,%ymm15
1490  DB  196,194,37,168,193                  ; vfmadd213ps   %ymm9,%ymm11,%ymm0
1491  DB  196,99,125,74,255,240               ; vblendvps     %ymm15,%ymm7,%ymm0,%ymm15
1492  DB  196,227,125,8,196,1                 ; vroundps      $0x1,%ymm4,%ymm0
1493  DB  197,220,92,192                      ; vsubps        %ymm0,%ymm4,%ymm0
1494  DB  196,193,124,89,253                  ; vmulps        %ymm13,%ymm0,%ymm7
1495  DB  197,140,92,207                      ; vsubps        %ymm7,%ymm14,%ymm1
1496  DB  196,194,37,168,201                  ; vfmadd213ps   %ymm9,%ymm11,%ymm1
1497  DB  197,228,194,240,2                   ; vcmpleps      %ymm0,%ymm3,%ymm6
1498  DB  196,195,117,74,201,96               ; vblendvps     %ymm6,%ymm9,%ymm1,%ymm1
1499  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
1500  DB  196,227,45,74,201,96                ; vblendvps     %ymm6,%ymm1,%ymm10,%ymm1
1501  DB  197,156,194,192,2                   ; vcmpleps      %ymm0,%ymm12,%ymm0
1502  DB  196,194,37,168,249                  ; vfmadd213ps   %ymm9,%ymm11,%ymm7
1503  DB  196,227,69,74,201,0                 ; vblendvps     %ymm0,%ymm1,%ymm7,%ymm1
1504  DB  196,226,125,24,5,150,50,0,0         ; vbroadcastss  0x3296(%rip),%ymm0        # 4b64 <_sk_callback_hsw+0x248>
1505  DB  197,220,88,192                      ; vaddps        %ymm0,%ymm4,%ymm0
1506  DB  196,227,125,8,224,1                 ; vroundps      $0x1,%ymm0,%ymm4
1507  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1508  DB  197,228,194,216,2                   ; vcmpleps      %ymm0,%ymm3,%ymm3
1509  DB  196,193,124,89,229                  ; vmulps        %ymm13,%ymm0,%ymm4
1510  DB  197,140,92,244                      ; vsubps        %ymm4,%ymm14,%ymm6
1511  DB  196,194,37,168,241                  ; vfmadd213ps   %ymm9,%ymm11,%ymm6
1512  DB  196,195,77,74,217,48                ; vblendvps     %ymm3,%ymm9,%ymm6,%ymm3
1513  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
1514  DB  196,227,45,74,219,96                ; vblendvps     %ymm6,%ymm3,%ymm10,%ymm3
1515  DB  196,98,37,184,204                   ; vfmadd231ps   %ymm4,%ymm11,%ymm9
1516  DB  197,156,194,192,2                   ; vcmpleps      %ymm0,%ymm12,%ymm0
1517  DB  196,227,53,74,219,0                 ; vblendvps     %ymm0,%ymm3,%ymm9,%ymm3
1518  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
1519  DB  197,212,194,224,0                   ; vcmpeqps      %ymm0,%ymm5,%ymm4
1520  DB  196,227,5,74,194,64                 ; vblendvps     %ymm4,%ymm2,%ymm15,%ymm0
1521  DB  196,227,117,74,202,64               ; vblendvps     %ymm4,%ymm2,%ymm1,%ymm1
1522  DB  196,227,101,74,210,64               ; vblendvps     %ymm4,%ymm2,%ymm3,%ymm2
1523  DB  72,173                              ; lods          %ds:(%rsi),%rax
1524  DB  197,252,16,28,36                    ; vmovups       (%rsp),%ymm3
1525  DB  197,252,16,100,36,32                ; vmovups       0x20(%rsp),%ymm4
1526  DB  197,252,16,108,36,64                ; vmovups       0x40(%rsp),%ymm5
1527  DB  197,252,16,116,36,96                ; vmovups       0x60(%rsp),%ymm6
1528  DB  197,252,16,188,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm7
1529  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
1530  DB  255,224                             ; jmpq          *%rax
1531
1532PUBLIC _sk_scale_1_float_hsw
1533_sk_scale_1_float_hsw LABEL PROC
1534  DB  72,173                              ; lods          %ds:(%rsi),%rax
1535  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
1536  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1537  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1538  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1539  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
1540  DB  72,173                              ; lods          %ds:(%rsi),%rax
1541  DB  255,224                             ; jmpq          *%rax
1542
1543PUBLIC _sk_scale_u8_hsw
1544_sk_scale_u8_hsw LABEL PROC
1545  DB  73,137,201                          ; mov           %rcx,%r9
1546  DB  72,173                              ; lods          %ds:(%rsi),%rax
1547  DB  72,139,0                            ; mov           (%rax),%rax
1548  DB  72,1,208                            ; add           %rdx,%rax
1549  DB  77,133,192                          ; test          %r8,%r8
1550  DB  117,51                              ; jne           19b4 <_sk_scale_u8_hsw+0x43>
1551  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
1552  DB  196,66,125,49,192                   ; vpmovzxbd     %xmm8,%ymm8
1553  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1554  DB  196,98,125,24,13,208,49,0,0         ; vbroadcastss  0x31d0(%rip),%ymm9        # 4b68 <_sk_callback_hsw+0x24c>
1555  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
1556  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1557  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1558  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1559  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
1560  DB  72,173                              ; lods          %ds:(%rsi),%rax
1561  DB  76,137,201                          ; mov           %r9,%rcx
1562  DB  255,224                             ; jmpq          *%rax
1563  DB  83                                  ; push          %rbx
1564  DB  49,201                              ; xor           %ecx,%ecx
1565  DB  77,137,195                          ; mov           %r8,%r11
1566  DB  69,49,210                           ; xor           %r10d,%r10d
1567  DB  15,182,24                           ; movzbl        (%rax),%ebx
1568  DB  72,255,192                          ; inc           %rax
1569  DB  72,211,227                          ; shl           %cl,%rbx
1570  DB  73,9,218                            ; or            %rbx,%r10
1571  DB  72,131,193,8                        ; add           $0x8,%rcx
1572  DB  73,255,203                          ; dec           %r11
1573  DB  117,235                             ; jne           19bd <_sk_scale_u8_hsw+0x4c>
1574  DB  196,65,249,110,194                  ; vmovq         %r10,%xmm8
1575  DB  91                                  ; pop           %rbx
1576  DB  235,171                             ; jmp           1985 <_sk_scale_u8_hsw+0x14>
1577
1578PUBLIC _sk_lerp_1_float_hsw
1579_sk_lerp_1_float_hsw LABEL PROC
1580  DB  72,173                              ; lods          %ds:(%rsi),%rax
1581  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
1582  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1583  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
1584  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1585  DB  196,226,61,168,205                  ; vfmadd213ps   %ymm5,%ymm8,%ymm1
1586  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1587  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
1588  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
1589  DB  196,226,61,168,223                  ; vfmadd213ps   %ymm7,%ymm8,%ymm3
1590  DB  72,173                              ; lods          %ds:(%rsi),%rax
1591  DB  255,224                             ; jmpq          *%rax
1592
1593PUBLIC _sk_lerp_u8_hsw
1594_sk_lerp_u8_hsw LABEL PROC
1595  DB  73,137,201                          ; mov           %rcx,%r9
1596  DB  72,173                              ; lods          %ds:(%rsi),%rax
1597  DB  72,139,0                            ; mov           (%rax),%rax
1598  DB  72,1,208                            ; add           %rdx,%rax
1599  DB  77,133,192                          ; test          %r8,%r8
1600  DB  117,71                              ; jne           1a60 <_sk_lerp_u8_hsw+0x57>
1601  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
1602  DB  196,66,125,49,192                   ; vpmovzxbd     %xmm8,%ymm8
1603  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1604  DB  196,98,125,24,13,60,49,0,0          ; vbroadcastss  0x313c(%rip),%ymm9        # 4b6c <_sk_callback_hsw+0x250>
1605  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
1606  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1607  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
1608  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1609  DB  196,226,61,168,205                  ; vfmadd213ps   %ymm5,%ymm8,%ymm1
1610  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1611  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
1612  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
1613  DB  196,226,61,168,223                  ; vfmadd213ps   %ymm7,%ymm8,%ymm3
1614  DB  72,173                              ; lods          %ds:(%rsi),%rax
1615  DB  76,137,201                          ; mov           %r9,%rcx
1616  DB  255,224                             ; jmpq          *%rax
1617  DB  83                                  ; push          %rbx
1618  DB  49,201                              ; xor           %ecx,%ecx
1619  DB  77,137,195                          ; mov           %r8,%r11
1620  DB  69,49,210                           ; xor           %r10d,%r10d
1621  DB  15,182,24                           ; movzbl        (%rax),%ebx
1622  DB  72,255,192                          ; inc           %rax
1623  DB  72,211,227                          ; shl           %cl,%rbx
1624  DB  73,9,218                            ; or            %rbx,%r10
1625  DB  72,131,193,8                        ; add           $0x8,%rcx
1626  DB  73,255,203                          ; dec           %r11
1627  DB  117,235                             ; jne           1a69 <_sk_lerp_u8_hsw+0x60>
1628  DB  196,65,249,110,194                  ; vmovq         %r10,%xmm8
1629  DB  91                                  ; pop           %rbx
1630  DB  235,151                             ; jmp           1a1d <_sk_lerp_u8_hsw+0x14>
1631
1632PUBLIC _sk_lerp_565_hsw
1633_sk_lerp_565_hsw LABEL PROC
1634  DB  72,173                              ; lods          %ds:(%rsi),%rax
1635  DB  76,139,24                           ; mov           (%rax),%r11
1636  DB  77,133,192                          ; test          %r8,%r8
1637  DB  15,133,169,0,0,0                    ; jne           1b3d <_sk_lerp_565_hsw+0xb7>
1638  DB  196,65,122,111,4,83                 ; vmovdqu       (%r11,%rdx,2),%xmm8
1639  DB  196,66,125,51,192                   ; vpmovzxwd     %xmm8,%ymm8
1640  DB  196,98,125,88,13,200,48,0,0         ; vpbroadcastd  0x30c8(%rip),%ymm9        # 4b70 <_sk_callback_hsw+0x254>
1641  DB  196,65,61,219,201                   ; vpand         %ymm9,%ymm8,%ymm9
1642  DB  196,65,124,91,201                   ; vcvtdq2ps     %ymm9,%ymm9
1643  DB  196,98,125,24,21,185,48,0,0         ; vbroadcastss  0x30b9(%rip),%ymm10        # 4b74 <_sk_callback_hsw+0x258>
1644  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
1645  DB  196,98,125,88,21,175,48,0,0         ; vpbroadcastd  0x30af(%rip),%ymm10        # 4b78 <_sk_callback_hsw+0x25c>
1646  DB  196,65,61,219,210                   ; vpand         %ymm10,%ymm8,%ymm10
1647  DB  196,65,124,91,210                   ; vcvtdq2ps     %ymm10,%ymm10
1648  DB  196,98,125,24,29,160,48,0,0         ; vbroadcastss  0x30a0(%rip),%ymm11        # 4b7c <_sk_callback_hsw+0x260>
1649  DB  196,65,44,89,211                    ; vmulps        %ymm11,%ymm10,%ymm10
1650  DB  196,98,125,88,29,150,48,0,0         ; vpbroadcastd  0x3096(%rip),%ymm11        # 4b80 <_sk_callback_hsw+0x264>
1651  DB  196,65,61,219,195                   ; vpand         %ymm11,%ymm8,%ymm8
1652  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1653  DB  196,98,125,24,29,135,48,0,0         ; vbroadcastss  0x3087(%rip),%ymm11        # 4b84 <_sk_callback_hsw+0x268>
1654  DB  196,65,60,89,195                    ; vmulps        %ymm11,%ymm8,%ymm8
1655  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1656  DB  196,226,53,168,196                  ; vfmadd213ps   %ymm4,%ymm9,%ymm0
1657  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1658  DB  196,226,45,168,205                  ; vfmadd213ps   %ymm5,%ymm10,%ymm1
1659  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1660  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
1661  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
1662  DB  196,98,101,168,207                  ; vfmadd213ps   %ymm7,%ymm3,%ymm9
1663  DB  196,98,101,168,215                  ; vfmadd213ps   %ymm7,%ymm3,%ymm10
1664  DB  196,98,101,168,199                  ; vfmadd213ps   %ymm7,%ymm3,%ymm8
1665  DB  196,193,44,95,216                   ; vmaxps        %ymm8,%ymm10,%ymm3
1666  DB  197,180,95,219                      ; vmaxps        %ymm3,%ymm9,%ymm3
1667  DB  72,173                              ; lods          %ds:(%rsi),%rax
1668  DB  255,224                             ; jmpq          *%rax
1669  DB  69,137,193                          ; mov           %r8d,%r9d
1670  DB  65,128,225,7                        ; and           $0x7,%r9b
1671  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
1672  DB  65,254,201                          ; dec           %r9b
1673  DB  65,128,249,6                        ; cmp           $0x6,%r9b
1674  DB  15,135,68,255,255,255               ; ja            1a9a <_sk_lerp_565_hsw+0x14>
1675  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
1676  DB  76,141,21,75,0,0,0                  ; lea           0x4b(%rip),%r10        # 1bac <_sk_lerp_565_hsw+0x126>
1677  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
1678  DB  76,1,208                            ; add           %r10,%rax
1679  DB  255,224                             ; jmpq          *%rax
1680  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
1681  DB  196,65,57,196,68,83,12,6            ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm8,%xmm8
1682  DB  196,65,57,196,68,83,10,5            ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm8,%xmm8
1683  DB  196,65,57,196,68,83,8,4             ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm8,%xmm8
1684  DB  196,65,57,196,68,83,6,3             ; vpinsrw       $0x3,0x6(%r11,%rdx,2),%xmm8,%xmm8
1685  DB  196,65,57,196,68,83,4,2             ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm8,%xmm8
1686  DB  196,65,57,196,68,83,2,1             ; vpinsrw       $0x1,0x2(%r11,%rdx,2),%xmm8,%xmm8
1687  DB  196,65,57,196,4,83,0                ; vpinsrw       $0x0,(%r11,%rdx,2),%xmm8,%xmm8
1688  DB  233,239,254,255,255                 ; jmpq          1a9a <_sk_lerp_565_hsw+0x14>
1689  DB  144                                 ; nop
1690  DB  243,255                             ; repz          (bad)
1691  DB  255                                 ; (bad)
1692  DB  255                                 ; (bad)
1693  DB  235,255                             ; jmp           1bb1 <_sk_lerp_565_hsw+0x12b>
1694  DB  255                                 ; (bad)
1695  DB  255,227                             ; jmpq          *%rbx
1696  DB  255                                 ; (bad)
1697  DB  255                                 ; (bad)
1698  DB  255                                 ; (bad)
1699  DB  219,255                             ; (bad)
1700  DB  255                                 ; (bad)
1701  DB  255,211                             ; callq         *%rbx
1702  DB  255                                 ; (bad)
1703  DB  255                                 ; (bad)
1704  DB  255,203                             ; dec           %ebx
1705  DB  255                                 ; (bad)
1706  DB  255                                 ; (bad)
1707  DB  255                                 ; (bad)
1708  DB  190                                 ; .byte         0xbe
1709  DB  255                                 ; (bad)
1710  DB  255                                 ; (bad)
1711  DB  255                                 ; .byte         0xff
1712
1713PUBLIC _sk_load_tables_hsw
1714_sk_load_tables_hsw LABEL PROC
1715  DB  73,137,201                          ; mov           %rcx,%r9
1716  DB  72,173                              ; lods          %ds:(%rsi),%rax
1717  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
1718  DB  76,3,16                             ; add           (%rax),%r10
1719  DB  77,133,192                          ; test          %r8,%r8
1720  DB  117,105                             ; jne           1c46 <_sk_load_tables_hsw+0x7e>
1721  DB  196,193,124,16,26                   ; vmovups       (%r10),%ymm3
1722  DB  197,228,84,13,214,50,0,0            ; vandps        0x32d6(%rip),%ymm3,%ymm1        # 4ec0 <_sk_callback_hsw+0x5a4>
1723  DB  196,65,61,118,192                   ; vpcmpeqd      %ymm8,%ymm8,%ymm8
1724  DB  72,139,72,8                         ; mov           0x8(%rax),%rcx
1725  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
1726  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
1727  DB  196,226,109,146,4,137               ; vgatherdps    %ymm2,(%rcx,%ymm1,4),%ymm0
1728  DB  196,226,101,0,21,214,50,0,0         ; vpshufb       0x32d6(%rip),%ymm3,%ymm2        # 4ee0 <_sk_callback_hsw+0x5c4>
1729  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1730  DB  196,194,53,146,12,146               ; vgatherdps    %ymm9,(%r10,%ymm2,4),%ymm1
1731  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1732  DB  196,98,101,0,13,222,50,0,0          ; vpshufb       0x32de(%rip),%ymm3,%ymm9        # 4f00 <_sk_callback_hsw+0x5e4>
1733  DB  196,162,61,146,20,136               ; vgatherdps    %ymm8,(%rax,%ymm9,4),%ymm2
1734  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
1735  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1736  DB  196,98,125,24,5,78,47,0,0           ; vbroadcastss  0x2f4e(%rip),%ymm8        # 4b88 <_sk_callback_hsw+0x26c>
1737  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
1738  DB  72,173                              ; lods          %ds:(%rsi),%rax
1739  DB  76,137,201                          ; mov           %r9,%rcx
1740  DB  255,224                             ; jmpq          *%rax
1741  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
1742  DB  68,41,193                           ; sub           %r8d,%ecx
1743  DB  192,225,3                           ; shl           $0x3,%cl
1744  DB  73,199,195,255,255,255,255          ; mov           $0xffffffffffffffff,%r11
1745  DB  73,211,235                          ; shr           %cl,%r11
1746  DB  196,193,249,110,195                 ; vmovq         %r11,%xmm0
1747  DB  196,226,125,33,192                  ; vpmovsxbd     %xmm0,%ymm0
1748  DB  196,194,125,44,26                   ; vmaskmovps    (%r10),%ymm0,%ymm3
1749  DB  233,115,255,255,255                 ; jmpq          1be2 <_sk_load_tables_hsw+0x1a>
1750
1751PUBLIC _sk_load_tables_u16_be_hsw
1752_sk_load_tables_u16_be_hsw LABEL PROC
1753  DB  72,173                              ; lods          %ds:(%rsi),%rax
1754  DB  76,139,8                            ; mov           (%rax),%r9
1755  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
1756  DB  77,133,192                          ; test          %r8,%r8
1757  DB  15,133,201,0,0,0                    ; jne           1d4e <_sk_load_tables_u16_be_hsw+0xdf>
1758  DB  196,1,121,16,4,81                   ; vmovupd       (%r9,%r10,2),%xmm8
1759  DB  196,129,121,16,84,81,16             ; vmovupd       0x10(%r9,%r10,2),%xmm2
1760  DB  196,129,121,16,92,81,32             ; vmovupd       0x20(%r9,%r10,2),%xmm3
1761  DB  196,1,122,111,76,81,48              ; vmovdqu       0x30(%r9,%r10,2),%xmm9
1762  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
1763  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
1764  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
1765  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
1766  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
1767  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
1768  DB  197,241,97,195                      ; vpunpcklwd    %xmm3,%xmm1,%xmm0
1769  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
1770  DB  197,185,108,200                     ; vpunpcklqdq   %xmm0,%xmm8,%xmm1
1771  DB  197,185,109,208                     ; vpunpckhqdq   %xmm0,%xmm8,%xmm2
1772  DB  197,49,108,195                      ; vpunpcklqdq   %xmm3,%xmm9,%xmm8
1773  DB  197,121,111,21,106,51,0,0           ; vmovdqa       0x336a(%rip),%xmm10        # 5040 <_sk_callback_hsw+0x724>
1774  DB  196,193,113,219,194                 ; vpand         %xmm10,%xmm1,%xmm0
1775  DB  196,226,125,51,200                  ; vpmovzxwd     %xmm0,%ymm1
1776  DB  196,65,37,118,219                   ; vpcmpeqd      %ymm11,%ymm11,%ymm11
1777  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
1778  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
1779  DB  196,65,29,118,228                   ; vpcmpeqd      %ymm12,%ymm12,%ymm12
1780  DB  196,194,29,146,4,137                ; vgatherdps    %ymm12,(%r9,%ymm1,4),%ymm0
1781  DB  196,193,105,219,202                 ; vpand         %xmm10,%xmm2,%xmm1
1782  DB  196,226,125,51,209                  ; vpmovzxwd     %xmm1,%ymm2
1783  DB  196,65,29,118,228                   ; vpcmpeqd      %ymm12,%ymm12,%ymm12
1784  DB  196,194,29,146,12,146               ; vgatherdps    %ymm12,(%r10,%ymm2,4),%ymm1
1785  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1786  DB  196,193,57,219,210                  ; vpand         %xmm10,%xmm8,%xmm2
1787  DB  196,98,125,51,194                   ; vpmovzxwd     %xmm2,%ymm8
1788  DB  196,162,37,146,20,128               ; vgatherdps    %ymm11,(%rax,%ymm8,4),%ymm2
1789  DB  197,177,109,219                     ; vpunpckhqdq   %xmm3,%xmm9,%xmm3
1790  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
1791  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
1792  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
1793  DB  196,226,125,51,219                  ; vpmovzxwd     %xmm3,%ymm3
1794  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1795  DB  196,98,125,24,5,71,46,0,0           ; vbroadcastss  0x2e47(%rip),%ymm8        # 4b8c <_sk_callback_hsw+0x270>
1796  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
1797  DB  72,173                              ; lods          %ds:(%rsi),%rax
1798  DB  255,224                             ; jmpq          *%rax
1799  DB  196,1,123,16,4,81                   ; vmovsd        (%r9,%r10,2),%xmm8
1800  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
1801  DB  73,131,248,1                        ; cmp           $0x1,%r8
1802  DB  116,85                              ; je            1db4 <_sk_load_tables_u16_be_hsw+0x145>
1803  DB  196,1,57,22,68,81,8                 ; vmovhpd       0x8(%r9,%r10,2),%xmm8,%xmm8
1804  DB  73,131,248,3                        ; cmp           $0x3,%r8
1805  DB  114,72                              ; jb            1db4 <_sk_load_tables_u16_be_hsw+0x145>
1806  DB  196,129,123,16,84,81,16             ; vmovsd        0x10(%r9,%r10,2),%xmm2
1807  DB  73,131,248,3                        ; cmp           $0x3,%r8
1808  DB  116,72                              ; je            1dc1 <_sk_load_tables_u16_be_hsw+0x152>
1809  DB  196,129,105,22,84,81,24             ; vmovhpd       0x18(%r9,%r10,2),%xmm2,%xmm2
1810  DB  73,131,248,5                        ; cmp           $0x5,%r8
1811  DB  114,59                              ; jb            1dc1 <_sk_load_tables_u16_be_hsw+0x152>
1812  DB  196,129,123,16,92,81,32             ; vmovsd        0x20(%r9,%r10,2),%xmm3
1813  DB  73,131,248,5                        ; cmp           $0x5,%r8
1814  DB  15,132,9,255,255,255                ; je            1ca0 <_sk_load_tables_u16_be_hsw+0x31>
1815  DB  196,129,97,22,92,81,40              ; vmovhpd       0x28(%r9,%r10,2),%xmm3,%xmm3
1816  DB  73,131,248,7                        ; cmp           $0x7,%r8
1817  DB  15,130,248,254,255,255              ; jb            1ca0 <_sk_load_tables_u16_be_hsw+0x31>
1818  DB  196,1,122,126,76,81,48              ; vmovq         0x30(%r9,%r10,2),%xmm9
1819  DB  233,236,254,255,255                 ; jmpq          1ca0 <_sk_load_tables_u16_be_hsw+0x31>
1820  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
1821  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
1822  DB  233,223,254,255,255                 ; jmpq          1ca0 <_sk_load_tables_u16_be_hsw+0x31>
1823  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
1824  DB  233,214,254,255,255                 ; jmpq          1ca0 <_sk_load_tables_u16_be_hsw+0x31>
1825
1826PUBLIC _sk_load_tables_rgb_u16_be_hsw
1827_sk_load_tables_rgb_u16_be_hsw LABEL PROC
1828  DB  72,173                              ; lods          %ds:(%rsi),%rax
1829  DB  76,139,8                            ; mov           (%rax),%r9
1830  DB  76,141,20,82                        ; lea           (%rdx,%rdx,2),%r10
1831  DB  77,133,192                          ; test          %r8,%r8
1832  DB  15,133,193,0,0,0                    ; jne           1e9d <_sk_load_tables_rgb_u16_be_hsw+0xd3>
1833  DB  196,129,122,111,4,81                ; vmovdqu       (%r9,%r10,2),%xmm0
1834  DB  196,129,122,111,84,81,12            ; vmovdqu       0xc(%r9,%r10,2),%xmm2
1835  DB  196,129,122,111,76,81,24            ; vmovdqu       0x18(%r9,%r10,2),%xmm1
1836  DB  196,129,122,111,92,81,32            ; vmovdqu       0x20(%r9,%r10,2),%xmm3
1837  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
1838  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
1839  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
1840  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
1841  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
1842  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
1843  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
1844  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
1845  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
1846  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
1847  DB  197,249,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm0
1848  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
1849  DB  197,241,105,203                     ; vpunpckhwd    %xmm3,%xmm1,%xmm1
1850  DB  197,185,108,218                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm3
1851  DB  197,185,109,210                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm2
1852  DB  197,121,108,193                     ; vpunpcklqdq   %xmm1,%xmm0,%xmm8
1853  DB  197,121,111,13,10,50,0,0            ; vmovdqa       0x320a(%rip),%xmm9        # 5050 <_sk_callback_hsw+0x734>
1854  DB  196,193,97,219,193                  ; vpand         %xmm9,%xmm3,%xmm0
1855  DB  196,226,125,51,200                  ; vpmovzxwd     %xmm0,%ymm1
1856  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
1857  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
1858  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
1859  DB  196,65,45,118,210                   ; vpcmpeqd      %ymm10,%ymm10,%ymm10
1860  DB  196,194,45,146,4,137                ; vgatherdps    %ymm10,(%r9,%ymm1,4),%ymm0
1861  DB  196,193,105,219,201                 ; vpand         %xmm9,%xmm2,%xmm1
1862  DB  196,226,125,51,209                  ; vpmovzxwd     %xmm1,%ymm2
1863  DB  196,65,45,118,210                   ; vpcmpeqd      %ymm10,%ymm10,%ymm10
1864  DB  196,194,45,146,12,146               ; vgatherdps    %ymm10,(%r10,%ymm2,4),%ymm1
1865  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1866  DB  196,193,57,219,209                  ; vpand         %xmm9,%xmm8,%xmm2
1867  DB  196,98,125,51,194                   ; vpmovzxwd     %xmm2,%ymm8
1868  DB  196,162,101,146,20,128              ; vgatherdps    %ymm3,(%rax,%ymm8,4),%ymm2
1869  DB  72,173                              ; lods          %ds:(%rsi),%rax
1870  DB  196,226,125,24,29,245,44,0,0        ; vbroadcastss  0x2cf5(%rip),%ymm3        # 4b90 <_sk_callback_hsw+0x274>
1871  DB  255,224                             ; jmpq          *%rax
1872  DB  196,129,121,110,4,81                ; vmovd         (%r9,%r10,2),%xmm0
1873  DB  196,129,121,196,68,81,4,2           ; vpinsrw       $0x2,0x4(%r9,%r10,2),%xmm0,%xmm0
1874  DB  73,131,248,1                        ; cmp           $0x1,%r8
1875  DB  117,5                               ; jne           1eb6 <_sk_load_tables_rgb_u16_be_hsw+0xec>
1876  DB  233,90,255,255,255                  ; jmpq          1e10 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1877  DB  196,129,121,110,76,81,6             ; vmovd         0x6(%r9,%r10,2),%xmm1
1878  DB  196,1,113,196,68,81,10,2            ; vpinsrw       $0x2,0xa(%r9,%r10,2),%xmm1,%xmm8
1879  DB  73,131,248,3                        ; cmp           $0x3,%r8
1880  DB  114,26                              ; jb            1ee5 <_sk_load_tables_rgb_u16_be_hsw+0x11b>
1881  DB  196,129,121,110,76,81,12            ; vmovd         0xc(%r9,%r10,2),%xmm1
1882  DB  196,129,113,196,84,81,16,2          ; vpinsrw       $0x2,0x10(%r9,%r10,2),%xmm1,%xmm2
1883  DB  73,131,248,3                        ; cmp           $0x3,%r8
1884  DB  117,10                              ; jne           1eea <_sk_load_tables_rgb_u16_be_hsw+0x120>
1885  DB  233,43,255,255,255                  ; jmpq          1e10 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1886  DB  233,38,255,255,255                  ; jmpq          1e10 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1887  DB  196,129,121,110,76,81,18            ; vmovd         0x12(%r9,%r10,2),%xmm1
1888  DB  196,1,113,196,76,81,22,2            ; vpinsrw       $0x2,0x16(%r9,%r10,2),%xmm1,%xmm9
1889  DB  73,131,248,5                        ; cmp           $0x5,%r8
1890  DB  114,26                              ; jb            1f19 <_sk_load_tables_rgb_u16_be_hsw+0x14f>
1891  DB  196,129,121,110,76,81,24            ; vmovd         0x18(%r9,%r10,2),%xmm1
1892  DB  196,129,113,196,76,81,28,2          ; vpinsrw       $0x2,0x1c(%r9,%r10,2),%xmm1,%xmm1
1893  DB  73,131,248,5                        ; cmp           $0x5,%r8
1894  DB  117,10                              ; jne           1f1e <_sk_load_tables_rgb_u16_be_hsw+0x154>
1895  DB  233,247,254,255,255                 ; jmpq          1e10 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1896  DB  233,242,254,255,255                 ; jmpq          1e10 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1897  DB  196,129,121,110,92,81,30            ; vmovd         0x1e(%r9,%r10,2),%xmm3
1898  DB  196,1,97,196,92,81,34,2             ; vpinsrw       $0x2,0x22(%r9,%r10,2),%xmm3,%xmm11
1899  DB  73,131,248,7                        ; cmp           $0x7,%r8
1900  DB  114,20                              ; jb            1f47 <_sk_load_tables_rgb_u16_be_hsw+0x17d>
1901  DB  196,129,121,110,92,81,36            ; vmovd         0x24(%r9,%r10,2),%xmm3
1902  DB  196,129,97,196,92,81,40,2           ; vpinsrw       $0x2,0x28(%r9,%r10,2),%xmm3,%xmm3
1903  DB  233,201,254,255,255                 ; jmpq          1e10 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1904  DB  233,196,254,255,255                 ; jmpq          1e10 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1905
1906PUBLIC _sk_byte_tables_hsw
1907_sk_byte_tables_hsw LABEL PROC
1908  DB  72,173                              ; lods          %ds:(%rsi),%rax
1909  DB  196,98,125,24,5,61,44,0,0           ; vbroadcastss  0x2c3d(%rip),%ymm8        # 4b94 <_sk_callback_hsw+0x278>
1910  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
1911  DB  197,125,91,200                      ; vcvtps2dq     %ymm0,%ymm9
1912  DB  196,65,249,126,201                  ; vmovq         %xmm9,%r9
1913  DB  69,137,202                          ; mov           %r9d,%r10d
1914  DB  76,139,24                           ; mov           (%rax),%r11
1915  DB  196,131,121,32,4,19,0               ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm0
1916  DB  196,67,249,22,202,1                 ; vpextrq       $0x1,%xmm9,%r10
1917  DB  73,193,233,32                       ; shr           $0x20,%r9
1918  DB  196,3,121,32,20,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm0,%xmm10
1919  DB  69,137,209                          ; mov           %r10d,%r9d
1920  DB  73,193,234,32                       ; shr           $0x20,%r10
1921  DB  196,99,125,57,200,1                 ; vextracti128  $0x1,%ymm9,%xmm0
1922  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
1923  DB  196,67,41,32,201,2                  ; vpinsrb       $0x2,%r9d,%xmm10,%xmm9
1924  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
1925  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
1926  DB  196,67,49,32,202,3                  ; vpinsrb       $0x3,%r10d,%xmm9,%xmm9
1927  DB  69,137,202                          ; mov           %r9d,%r10d
1928  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
1929  DB  196,67,49,32,202,4                  ; vpinsrb       $0x4,%r10d,%xmm9,%xmm9
1930  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
1931  DB  73,193,233,32                       ; shr           $0x20,%r9
1932  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
1933  DB  196,195,49,32,193,5                 ; vpinsrb       $0x5,%r9d,%xmm9,%xmm0
1934  DB  69,137,209                          ; mov           %r10d,%r9d
1935  DB  73,193,234,32                       ; shr           $0x20,%r10
1936  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
1937  DB  196,195,121,32,193,6                ; vpinsrb       $0x6,%r9d,%xmm0,%xmm0
1938  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
1939  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
1940  DB  196,67,121,32,202,7                 ; vpinsrb       $0x7,%r10d,%xmm0,%xmm9
1941  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
1942  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
1943  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
1944  DB  69,137,211                          ; mov           %r10d,%r11d
1945  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
1946  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
1947  DB  73,193,234,32                       ; shr           $0x20,%r10
1948  DB  196,131,121,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm0,%xmm0
1949  DB  69,137,218                          ; mov           %r11d,%r10d
1950  DB  73,193,235,32                       ; shr           $0x20,%r11
1951  DB  196,227,125,57,201,1                ; vextracti128  $0x1,%ymm1,%xmm1
1952  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
1953  DB  196,195,121,32,194,2                ; vpinsrb       $0x2,%r10d,%xmm0,%xmm0
1954  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
1955  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
1956  DB  196,195,121,32,195,3                ; vpinsrb       $0x3,%r11d,%xmm0,%xmm0
1957  DB  69,137,211                          ; mov           %r10d,%r11d
1958  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
1959  DB  196,195,121,32,195,4                ; vpinsrb       $0x4,%r11d,%xmm0,%xmm0
1960  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
1961  DB  73,193,234,32                       ; shr           $0x20,%r10
1962  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
1963  DB  196,195,121,32,194,5                ; vpinsrb       $0x5,%r10d,%xmm0,%xmm0
1964  DB  69,137,218                          ; mov           %r11d,%r10d
1965  DB  73,193,235,32                       ; shr           $0x20,%r11
1966  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
1967  DB  196,195,121,32,194,6                ; vpinsrb       $0x6,%r10d,%xmm0,%xmm0
1968  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
1969  DB  196,195,121,32,201,7                ; vpinsrb       $0x7,%r9d,%xmm0,%xmm1
1970  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
1971  DB  196,193,108,89,192                  ; vmulps        %ymm8,%ymm2,%ymm0
1972  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
1973  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
1974  DB  69,137,211                          ; mov           %r10d,%r11d
1975  DB  196,131,121,32,20,25,0              ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm2
1976  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
1977  DB  73,193,234,32                       ; shr           $0x20,%r10
1978  DB  196,131,105,32,20,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm2
1979  DB  69,137,218                          ; mov           %r11d,%r10d
1980  DB  73,193,235,32                       ; shr           $0x20,%r11
1981  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
1982  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
1983  DB  196,195,105,32,210,2                ; vpinsrb       $0x2,%r10d,%xmm2,%xmm2
1984  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
1985  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
1986  DB  196,195,105,32,211,3                ; vpinsrb       $0x3,%r11d,%xmm2,%xmm2
1987  DB  69,137,211                          ; mov           %r10d,%r11d
1988  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
1989  DB  196,195,105,32,211,4                ; vpinsrb       $0x4,%r11d,%xmm2,%xmm2
1990  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
1991  DB  73,193,234,32                       ; shr           $0x20,%r10
1992  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
1993  DB  196,195,105,32,194,5                ; vpinsrb       $0x5,%r10d,%xmm2,%xmm0
1994  DB  69,137,218                          ; mov           %r11d,%r10d
1995  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
1996  DB  196,195,121,32,194,6                ; vpinsrb       $0x6,%r10d,%xmm0,%xmm0
1997  DB  73,193,235,32                       ; shr           $0x20,%r11
1998  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
1999  DB  196,195,121,32,209,7                ; vpinsrb       $0x7,%r9d,%xmm0,%xmm2
2000  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
2001  DB  196,193,100,89,192                  ; vmulps        %ymm8,%ymm3,%ymm0
2002  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
2003  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
2004  DB  68,137,200                          ; mov           %r9d,%eax
2005  DB  196,195,121,32,28,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm3
2006  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2007  DB  73,193,233,32                       ; shr           $0x20,%r9
2008  DB  196,131,97,32,28,10,1               ; vpinsrb       $0x1,(%r10,%r9,1),%xmm3,%xmm3
2009  DB  65,137,193                          ; mov           %eax,%r9d
2010  DB  72,193,232,32                       ; shr           $0x20,%rax
2011  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2012  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
2013  DB  196,195,97,32,217,2                 ; vpinsrb       $0x2,%r9d,%xmm3,%xmm3
2014  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
2015  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2016  DB  196,227,97,32,216,3                 ; vpinsrb       $0x3,%eax,%xmm3,%xmm3
2017  DB  68,137,200                          ; mov           %r9d,%eax
2018  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2019  DB  196,227,97,32,216,4                 ; vpinsrb       $0x4,%eax,%xmm3,%xmm3
2020  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2021  DB  73,193,233,32                       ; shr           $0x20,%r9
2022  DB  67,15,182,4,10                      ; movzbl        (%r10,%r9,1),%eax
2023  DB  196,227,97,32,192,5                 ; vpinsrb       $0x5,%eax,%xmm3,%xmm0
2024  DB  68,137,216                          ; mov           %r11d,%eax
2025  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2026  DB  196,227,121,32,216,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm3
2027  DB  73,193,235,32                       ; shr           $0x20,%r11
2028  DB  67,15,182,4,26                      ; movzbl        (%r10,%r11,1),%eax
2029  DB  196,194,125,49,193                  ; vpmovzxbd     %xmm9,%ymm0
2030  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2031  DB  196,98,125,24,5,226,41,0,0          ; vbroadcastss  0x29e2(%rip),%ymm8        # 4b98 <_sk_callback_hsw+0x27c>
2032  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2033  DB  196,226,125,49,201                  ; vpmovzxbd     %xmm1,%ymm1
2034  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2035  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2036  DB  196,226,125,49,210                  ; vpmovzxbd     %xmm2,%ymm2
2037  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2038  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2039  DB  196,227,97,32,216,7                 ; vpinsrb       $0x7,%eax,%xmm3,%xmm3
2040  DB  196,226,125,49,219                  ; vpmovzxbd     %xmm3,%ymm3
2041  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2042  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2043  DB  72,173                              ; lods          %ds:(%rsi),%rax
2044  DB  255,224                             ; jmpq          *%rax
2045
2046PUBLIC _sk_byte_tables_rgb_hsw
2047_sk_byte_tables_rgb_hsw LABEL PROC
2048  DB  72,173                              ; lods          %ds:(%rsi),%rax
2049  DB  68,139,72,24                        ; mov           0x18(%rax),%r9d
2050  DB  65,255,201                          ; dec           %r9d
2051  DB  196,65,121,110,193                  ; vmovd         %r9d,%xmm8
2052  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
2053  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
2054  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
2055  DB  197,125,91,200                      ; vcvtps2dq     %ymm0,%ymm9
2056  DB  196,65,249,126,201                  ; vmovq         %xmm9,%r9
2057  DB  69,137,202                          ; mov           %r9d,%r10d
2058  DB  76,139,24                           ; mov           (%rax),%r11
2059  DB  196,131,121,32,4,19,0               ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm0
2060  DB  196,67,249,22,202,1                 ; vpextrq       $0x1,%xmm9,%r10
2061  DB  73,193,233,32                       ; shr           $0x20,%r9
2062  DB  196,3,121,32,20,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm0,%xmm10
2063  DB  69,137,209                          ; mov           %r10d,%r9d
2064  DB  73,193,234,32                       ; shr           $0x20,%r10
2065  DB  196,99,125,57,200,1                 ; vextracti128  $0x1,%ymm9,%xmm0
2066  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
2067  DB  196,67,41,32,201,2                  ; vpinsrb       $0x2,%r9d,%xmm10,%xmm9
2068  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
2069  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
2070  DB  196,67,49,32,202,3                  ; vpinsrb       $0x3,%r10d,%xmm9,%xmm9
2071  DB  69,137,202                          ; mov           %r9d,%r10d
2072  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
2073  DB  196,67,49,32,202,4                  ; vpinsrb       $0x4,%r10d,%xmm9,%xmm9
2074  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
2075  DB  73,193,233,32                       ; shr           $0x20,%r9
2076  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
2077  DB  196,195,49,32,193,5                 ; vpinsrb       $0x5,%r9d,%xmm9,%xmm0
2078  DB  69,137,209                          ; mov           %r10d,%r9d
2079  DB  73,193,234,32                       ; shr           $0x20,%r10
2080  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
2081  DB  196,195,121,32,193,6                ; vpinsrb       $0x6,%r9d,%xmm0,%xmm0
2082  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
2083  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
2084  DB  196,67,121,32,202,7                 ; vpinsrb       $0x7,%r10d,%xmm0,%xmm9
2085  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
2086  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
2087  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
2088  DB  69,137,211                          ; mov           %r10d,%r11d
2089  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
2090  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
2091  DB  73,193,234,32                       ; shr           $0x20,%r10
2092  DB  196,131,121,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm0,%xmm0
2093  DB  69,137,218                          ; mov           %r11d,%r10d
2094  DB  73,193,235,32                       ; shr           $0x20,%r11
2095  DB  196,227,125,57,201,1                ; vextracti128  $0x1,%ymm1,%xmm1
2096  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2097  DB  196,195,121,32,194,2                ; vpinsrb       $0x2,%r10d,%xmm0,%xmm0
2098  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
2099  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
2100  DB  196,195,121,32,195,3                ; vpinsrb       $0x3,%r11d,%xmm0,%xmm0
2101  DB  69,137,211                          ; mov           %r10d,%r11d
2102  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
2103  DB  196,195,121,32,195,4                ; vpinsrb       $0x4,%r11d,%xmm0,%xmm0
2104  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
2105  DB  73,193,234,32                       ; shr           $0x20,%r10
2106  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2107  DB  196,195,121,32,194,5                ; vpinsrb       $0x5,%r10d,%xmm0,%xmm0
2108  DB  69,137,218                          ; mov           %r11d,%r10d
2109  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2110  DB  196,195,121,32,194,6                ; vpinsrb       $0x6,%r10d,%xmm0,%xmm0
2111  DB  73,193,235,32                       ; shr           $0x20,%r11
2112  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
2113  DB  196,195,121,32,201,7                ; vpinsrb       $0x7,%r9d,%xmm0,%xmm1
2114  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
2115  DB  197,188,89,194                      ; vmulps        %ymm2,%ymm8,%ymm0
2116  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
2117  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
2118  DB  68,137,200                          ; mov           %r9d,%eax
2119  DB  196,195,121,32,20,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm2
2120  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2121  DB  73,193,233,32                       ; shr           $0x20,%r9
2122  DB  196,131,105,32,20,10,1              ; vpinsrb       $0x1,(%r10,%r9,1),%xmm2,%xmm2
2123  DB  65,137,193                          ; mov           %eax,%r9d
2124  DB  72,193,232,32                       ; shr           $0x20,%rax
2125  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2126  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
2127  DB  196,195,105,32,209,2                ; vpinsrb       $0x2,%r9d,%xmm2,%xmm2
2128  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
2129  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2130  DB  196,227,105,32,208,3                ; vpinsrb       $0x3,%eax,%xmm2,%xmm2
2131  DB  68,137,200                          ; mov           %r9d,%eax
2132  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2133  DB  196,227,105,32,208,4                ; vpinsrb       $0x4,%eax,%xmm2,%xmm2
2134  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2135  DB  73,193,233,32                       ; shr           $0x20,%r9
2136  DB  67,15,182,4,10                      ; movzbl        (%r10,%r9,1),%eax
2137  DB  196,227,105,32,192,5                ; vpinsrb       $0x5,%eax,%xmm2,%xmm0
2138  DB  68,137,216                          ; mov           %r11d,%eax
2139  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2140  DB  196,227,121,32,208,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm2
2141  DB  73,193,235,32                       ; shr           $0x20,%r11
2142  DB  67,15,182,4,26                      ; movzbl        (%r10,%r11,1),%eax
2143  DB  196,194,125,49,193                  ; vpmovzxbd     %xmm9,%ymm0
2144  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2145  DB  196,98,125,24,5,206,39,0,0          ; vbroadcastss  0x27ce(%rip),%ymm8        # 4b9c <_sk_callback_hsw+0x280>
2146  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2147  DB  196,226,125,49,201                  ; vpmovzxbd     %xmm1,%ymm1
2148  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2149  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2150  DB  196,227,105,32,208,7                ; vpinsrb       $0x7,%eax,%xmm2,%xmm2
2151  DB  196,226,125,49,210                  ; vpmovzxbd     %xmm2,%ymm2
2152  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2153  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2154  DB  72,173                              ; lods          %ds:(%rsi),%rax
2155  DB  255,224                             ; jmpq          *%rax
2156
2157PUBLIC _sk_table_r_hsw
2158_sk_table_r_hsw LABEL PROC
2159  DB  72,173                              ; lods          %ds:(%rsi),%rax
2160  DB  76,139,8                            ; mov           (%rax),%r9
2161  DB  139,64,8                            ; mov           0x8(%rax),%eax
2162  DB  255,200                             ; dec           %eax
2163  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
2164  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
2165  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
2166  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
2167  DB  197,125,91,192                      ; vcvtps2dq     %ymm0,%ymm8
2168  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
2169  DB  196,130,53,146,4,129                ; vgatherdps    %ymm9,(%r9,%ymm8,4),%ymm0
2170  DB  72,173                              ; lods          %ds:(%rsi),%rax
2171  DB  255,224                             ; jmpq          *%rax
2172
2173PUBLIC _sk_table_g_hsw
2174_sk_table_g_hsw LABEL PROC
2175  DB  72,173                              ; lods          %ds:(%rsi),%rax
2176  DB  76,139,8                            ; mov           (%rax),%r9
2177  DB  139,64,8                            ; mov           0x8(%rax),%eax
2178  DB  255,200                             ; dec           %eax
2179  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
2180  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
2181  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
2182  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
2183  DB  197,125,91,193                      ; vcvtps2dq     %ymm1,%ymm8
2184  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
2185  DB  196,130,53,146,12,129               ; vgatherdps    %ymm9,(%r9,%ymm8,4),%ymm1
2186  DB  72,173                              ; lods          %ds:(%rsi),%rax
2187  DB  255,224                             ; jmpq          *%rax
2188
2189PUBLIC _sk_table_b_hsw
2190_sk_table_b_hsw LABEL PROC
2191  DB  72,173                              ; lods          %ds:(%rsi),%rax
2192  DB  76,139,8                            ; mov           (%rax),%r9
2193  DB  139,64,8                            ; mov           0x8(%rax),%eax
2194  DB  255,200                             ; dec           %eax
2195  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
2196  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
2197  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
2198  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
2199  DB  197,125,91,194                      ; vcvtps2dq     %ymm2,%ymm8
2200  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
2201  DB  196,130,53,146,20,129               ; vgatherdps    %ymm9,(%r9,%ymm8,4),%ymm2
2202  DB  72,173                              ; lods          %ds:(%rsi),%rax
2203  DB  255,224                             ; jmpq          *%rax
2204
2205PUBLIC _sk_table_a_hsw
2206_sk_table_a_hsw LABEL PROC
2207  DB  72,173                              ; lods          %ds:(%rsi),%rax
2208  DB  76,139,8                            ; mov           (%rax),%r9
2209  DB  139,64,8                            ; mov           0x8(%rax),%eax
2210  DB  255,200                             ; dec           %eax
2211  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
2212  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
2213  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
2214  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
2215  DB  197,125,91,195                      ; vcvtps2dq     %ymm3,%ymm8
2216  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
2217  DB  196,130,53,146,28,129               ; vgatherdps    %ymm9,(%r9,%ymm8,4),%ymm3
2218  DB  72,173                              ; lods          %ds:(%rsi),%rax
2219  DB  255,224                             ; jmpq          *%rax
2220
2221PUBLIC _sk_parametric_r_hsw
2222_sk_parametric_r_hsw LABEL PROC
2223  DB  72,173                              ; lods          %ds:(%rsi),%rax
2224  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
2225  DB  196,65,124,194,192,2                ; vcmpleps      %ymm8,%ymm0,%ymm8
2226  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
2227  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
2228  DB  196,66,125,168,202                  ; vfmadd213ps   %ymm10,%ymm0,%ymm9
2229  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
2230  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
2231  DB  196,66,125,168,211                  ; vfmadd213ps   %ymm11,%ymm0,%ymm10
2232  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
2233  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
2234  DB  196,98,125,24,37,168,38,0,0         ; vbroadcastss  0x26a8(%rip),%ymm12        # 4ba0 <_sk_callback_hsw+0x284>
2235  DB  196,98,125,24,45,163,38,0,0         ; vbroadcastss  0x26a3(%rip),%ymm13        # 4ba4 <_sk_callback_hsw+0x288>
2236  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
2237  DB  196,98,125,24,45,153,38,0,0         ; vbroadcastss  0x2699(%rip),%ymm13        # 4ba8 <_sk_callback_hsw+0x28c>
2238  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
2239  DB  196,98,125,24,45,143,38,0,0         ; vbroadcastss  0x268f(%rip),%ymm13        # 4bac <_sk_callback_hsw+0x290>
2240  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
2241  DB  196,98,125,24,29,133,38,0,0         ; vbroadcastss  0x2685(%rip),%ymm11        # 4bb0 <_sk_callback_hsw+0x294>
2242  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
2243  DB  196,98,125,24,37,123,38,0,0         ; vbroadcastss  0x267b(%rip),%ymm12        # 4bb4 <_sk_callback_hsw+0x298>
2244  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
2245  DB  196,98,125,24,37,113,38,0,0         ; vbroadcastss  0x2671(%rip),%ymm12        # 4bb8 <_sk_callback_hsw+0x29c>
2246  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
2247  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
2248  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
2249  DB  196,99,125,8,208,1                  ; vroundps      $0x1,%ymm0,%ymm10
2250  DB  196,65,124,92,210                   ; vsubps        %ymm10,%ymm0,%ymm10
2251  DB  196,98,125,24,29,82,38,0,0          ; vbroadcastss  0x2652(%rip),%ymm11        # 4bbc <_sk_callback_hsw+0x2a0>
2252  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
2253  DB  196,98,125,24,29,72,38,0,0          ; vbroadcastss  0x2648(%rip),%ymm11        # 4bc0 <_sk_callback_hsw+0x2a4>
2254  DB  196,98,45,172,216                   ; vfnmadd213ps  %ymm0,%ymm10,%ymm11
2255  DB  196,226,125,24,5,62,38,0,0          ; vbroadcastss  0x263e(%rip),%ymm0        # 4bc4 <_sk_callback_hsw+0x2a8>
2256  DB  196,193,124,92,194                  ; vsubps        %ymm10,%ymm0,%ymm0
2257  DB  196,98,125,24,21,52,38,0,0          ; vbroadcastss  0x2634(%rip),%ymm10        # 4bc8 <_sk_callback_hsw+0x2ac>
2258  DB  197,172,94,192                      ; vdivps        %ymm0,%ymm10,%ymm0
2259  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
2260  DB  196,98,125,24,21,39,38,0,0          ; vbroadcastss  0x2627(%rip),%ymm10        # 4bcc <_sk_callback_hsw+0x2b0>
2261  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
2262  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
2263  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
2264  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
2265  DB  196,195,125,74,193,128              ; vblendvps     %ymm8,%ymm9,%ymm0,%ymm0
2266  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
2267  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
2268  DB  196,98,125,24,5,254,37,0,0          ; vbroadcastss  0x25fe(%rip),%ymm8        # 4bd0 <_sk_callback_hsw+0x2b4>
2269  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
2270  DB  72,173                              ; lods          %ds:(%rsi),%rax
2271  DB  255,224                             ; jmpq          *%rax
2272
2273PUBLIC _sk_parametric_g_hsw
2274_sk_parametric_g_hsw LABEL PROC
2275  DB  72,173                              ; lods          %ds:(%rsi),%rax
2276  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
2277  DB  196,65,116,194,192,2                ; vcmpleps      %ymm8,%ymm1,%ymm8
2278  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
2279  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
2280  DB  196,66,117,168,202                  ; vfmadd213ps   %ymm10,%ymm1,%ymm9
2281  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
2282  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
2283  DB  196,66,117,168,211                  ; vfmadd213ps   %ymm11,%ymm1,%ymm10
2284  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
2285  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
2286  DB  196,98,125,24,37,182,37,0,0         ; vbroadcastss  0x25b6(%rip),%ymm12        # 4bd4 <_sk_callback_hsw+0x2b8>
2287  DB  196,98,125,24,45,177,37,0,0         ; vbroadcastss  0x25b1(%rip),%ymm13        # 4bd8 <_sk_callback_hsw+0x2bc>
2288  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
2289  DB  196,98,125,24,45,167,37,0,0         ; vbroadcastss  0x25a7(%rip),%ymm13        # 4bdc <_sk_callback_hsw+0x2c0>
2290  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
2291  DB  196,98,125,24,45,157,37,0,0         ; vbroadcastss  0x259d(%rip),%ymm13        # 4be0 <_sk_callback_hsw+0x2c4>
2292  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
2293  DB  196,98,125,24,29,147,37,0,0         ; vbroadcastss  0x2593(%rip),%ymm11        # 4be4 <_sk_callback_hsw+0x2c8>
2294  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
2295  DB  196,98,125,24,37,137,37,0,0         ; vbroadcastss  0x2589(%rip),%ymm12        # 4be8 <_sk_callback_hsw+0x2cc>
2296  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
2297  DB  196,98,125,24,37,127,37,0,0         ; vbroadcastss  0x257f(%rip),%ymm12        # 4bec <_sk_callback_hsw+0x2d0>
2298  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
2299  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
2300  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
2301  DB  196,99,125,8,209,1                  ; vroundps      $0x1,%ymm1,%ymm10
2302  DB  196,65,116,92,210                   ; vsubps        %ymm10,%ymm1,%ymm10
2303  DB  196,98,125,24,29,96,37,0,0          ; vbroadcastss  0x2560(%rip),%ymm11        # 4bf0 <_sk_callback_hsw+0x2d4>
2304  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
2305  DB  196,98,125,24,29,86,37,0,0          ; vbroadcastss  0x2556(%rip),%ymm11        # 4bf4 <_sk_callback_hsw+0x2d8>
2306  DB  196,98,45,172,217                   ; vfnmadd213ps  %ymm1,%ymm10,%ymm11
2307  DB  196,226,125,24,13,76,37,0,0         ; vbroadcastss  0x254c(%rip),%ymm1        # 4bf8 <_sk_callback_hsw+0x2dc>
2308  DB  196,193,116,92,202                  ; vsubps        %ymm10,%ymm1,%ymm1
2309  DB  196,98,125,24,21,66,37,0,0          ; vbroadcastss  0x2542(%rip),%ymm10        # 4bfc <_sk_callback_hsw+0x2e0>
2310  DB  197,172,94,201                      ; vdivps        %ymm1,%ymm10,%ymm1
2311  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
2312  DB  196,98,125,24,21,53,37,0,0          ; vbroadcastss  0x2535(%rip),%ymm10        # 4c00 <_sk_callback_hsw+0x2e4>
2313  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
2314  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
2315  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
2316  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
2317  DB  196,195,117,74,201,128              ; vblendvps     %ymm8,%ymm9,%ymm1,%ymm1
2318  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
2319  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
2320  DB  196,98,125,24,5,12,37,0,0           ; vbroadcastss  0x250c(%rip),%ymm8        # 4c04 <_sk_callback_hsw+0x2e8>
2321  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
2322  DB  72,173                              ; lods          %ds:(%rsi),%rax
2323  DB  255,224                             ; jmpq          *%rax
2324
2325PUBLIC _sk_parametric_b_hsw
2326_sk_parametric_b_hsw LABEL PROC
2327  DB  72,173                              ; lods          %ds:(%rsi),%rax
2328  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
2329  DB  196,65,108,194,192,2                ; vcmpleps      %ymm8,%ymm2,%ymm8
2330  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
2331  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
2332  DB  196,66,109,168,202                  ; vfmadd213ps   %ymm10,%ymm2,%ymm9
2333  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
2334  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
2335  DB  196,66,109,168,211                  ; vfmadd213ps   %ymm11,%ymm2,%ymm10
2336  DB  196,226,125,24,16                   ; vbroadcastss  (%rax),%ymm2
2337  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
2338  DB  196,98,125,24,37,196,36,0,0         ; vbroadcastss  0x24c4(%rip),%ymm12        # 4c08 <_sk_callback_hsw+0x2ec>
2339  DB  196,98,125,24,45,191,36,0,0         ; vbroadcastss  0x24bf(%rip),%ymm13        # 4c0c <_sk_callback_hsw+0x2f0>
2340  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
2341  DB  196,98,125,24,45,181,36,0,0         ; vbroadcastss  0x24b5(%rip),%ymm13        # 4c10 <_sk_callback_hsw+0x2f4>
2342  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
2343  DB  196,98,125,24,45,171,36,0,0         ; vbroadcastss  0x24ab(%rip),%ymm13        # 4c14 <_sk_callback_hsw+0x2f8>
2344  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
2345  DB  196,98,125,24,29,161,36,0,0         ; vbroadcastss  0x24a1(%rip),%ymm11        # 4c18 <_sk_callback_hsw+0x2fc>
2346  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
2347  DB  196,98,125,24,37,151,36,0,0         ; vbroadcastss  0x2497(%rip),%ymm12        # 4c1c <_sk_callback_hsw+0x300>
2348  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
2349  DB  196,98,125,24,37,141,36,0,0         ; vbroadcastss  0x248d(%rip),%ymm12        # 4c20 <_sk_callback_hsw+0x304>
2350  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
2351  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
2352  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
2353  DB  196,99,125,8,210,1                  ; vroundps      $0x1,%ymm2,%ymm10
2354  DB  196,65,108,92,210                   ; vsubps        %ymm10,%ymm2,%ymm10
2355  DB  196,98,125,24,29,110,36,0,0         ; vbroadcastss  0x246e(%rip),%ymm11        # 4c24 <_sk_callback_hsw+0x308>
2356  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
2357  DB  196,98,125,24,29,100,36,0,0         ; vbroadcastss  0x2464(%rip),%ymm11        # 4c28 <_sk_callback_hsw+0x30c>
2358  DB  196,98,45,172,218                   ; vfnmadd213ps  %ymm2,%ymm10,%ymm11
2359  DB  196,226,125,24,21,90,36,0,0         ; vbroadcastss  0x245a(%rip),%ymm2        # 4c2c <_sk_callback_hsw+0x310>
2360  DB  196,193,108,92,210                  ; vsubps        %ymm10,%ymm2,%ymm2
2361  DB  196,98,125,24,21,80,36,0,0          ; vbroadcastss  0x2450(%rip),%ymm10        # 4c30 <_sk_callback_hsw+0x314>
2362  DB  197,172,94,210                      ; vdivps        %ymm2,%ymm10,%ymm2
2363  DB  197,164,88,210                      ; vaddps        %ymm2,%ymm11,%ymm2
2364  DB  196,98,125,24,21,67,36,0,0          ; vbroadcastss  0x2443(%rip),%ymm10        # 4c34 <_sk_callback_hsw+0x318>
2365  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
2366  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
2367  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
2368  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
2369  DB  196,195,109,74,209,128              ; vblendvps     %ymm8,%ymm9,%ymm2,%ymm2
2370  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
2371  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
2372  DB  196,98,125,24,5,26,36,0,0           ; vbroadcastss  0x241a(%rip),%ymm8        # 4c38 <_sk_callback_hsw+0x31c>
2373  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
2374  DB  72,173                              ; lods          %ds:(%rsi),%rax
2375  DB  255,224                             ; jmpq          *%rax
2376
2377PUBLIC _sk_parametric_a_hsw
2378_sk_parametric_a_hsw LABEL PROC
2379  DB  72,173                              ; lods          %ds:(%rsi),%rax
2380  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
2381  DB  196,65,100,194,192,2                ; vcmpleps      %ymm8,%ymm3,%ymm8
2382  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
2383  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
2384  DB  196,66,101,168,202                  ; vfmadd213ps   %ymm10,%ymm3,%ymm9
2385  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
2386  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
2387  DB  196,66,101,168,211                  ; vfmadd213ps   %ymm11,%ymm3,%ymm10
2388  DB  196,226,125,24,24                   ; vbroadcastss  (%rax),%ymm3
2389  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
2390  DB  196,98,125,24,37,210,35,0,0         ; vbroadcastss  0x23d2(%rip),%ymm12        # 4c3c <_sk_callback_hsw+0x320>
2391  DB  196,98,125,24,45,205,35,0,0         ; vbroadcastss  0x23cd(%rip),%ymm13        # 4c40 <_sk_callback_hsw+0x324>
2392  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
2393  DB  196,98,125,24,45,195,35,0,0         ; vbroadcastss  0x23c3(%rip),%ymm13        # 4c44 <_sk_callback_hsw+0x328>
2394  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
2395  DB  196,98,125,24,45,185,35,0,0         ; vbroadcastss  0x23b9(%rip),%ymm13        # 4c48 <_sk_callback_hsw+0x32c>
2396  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
2397  DB  196,98,125,24,29,175,35,0,0         ; vbroadcastss  0x23af(%rip),%ymm11        # 4c4c <_sk_callback_hsw+0x330>
2398  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
2399  DB  196,98,125,24,37,165,35,0,0         ; vbroadcastss  0x23a5(%rip),%ymm12        # 4c50 <_sk_callback_hsw+0x334>
2400  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
2401  DB  196,98,125,24,37,155,35,0,0         ; vbroadcastss  0x239b(%rip),%ymm12        # 4c54 <_sk_callback_hsw+0x338>
2402  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
2403  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
2404  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
2405  DB  196,99,125,8,211,1                  ; vroundps      $0x1,%ymm3,%ymm10
2406  DB  196,65,100,92,210                   ; vsubps        %ymm10,%ymm3,%ymm10
2407  DB  196,98,125,24,29,124,35,0,0         ; vbroadcastss  0x237c(%rip),%ymm11        # 4c58 <_sk_callback_hsw+0x33c>
2408  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
2409  DB  196,98,125,24,29,114,35,0,0         ; vbroadcastss  0x2372(%rip),%ymm11        # 4c5c <_sk_callback_hsw+0x340>
2410  DB  196,98,45,172,219                   ; vfnmadd213ps  %ymm3,%ymm10,%ymm11
2411  DB  196,226,125,24,29,104,35,0,0        ; vbroadcastss  0x2368(%rip),%ymm3        # 4c60 <_sk_callback_hsw+0x344>
2412  DB  196,193,100,92,218                  ; vsubps        %ymm10,%ymm3,%ymm3
2413  DB  196,98,125,24,21,94,35,0,0          ; vbroadcastss  0x235e(%rip),%ymm10        # 4c64 <_sk_callback_hsw+0x348>
2414  DB  197,172,94,219                      ; vdivps        %ymm3,%ymm10,%ymm3
2415  DB  197,164,88,219                      ; vaddps        %ymm3,%ymm11,%ymm3
2416  DB  196,98,125,24,21,81,35,0,0          ; vbroadcastss  0x2351(%rip),%ymm10        # 4c68 <_sk_callback_hsw+0x34c>
2417  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
2418  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
2419  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
2420  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
2421  DB  196,195,101,74,217,128              ; vblendvps     %ymm8,%ymm9,%ymm3,%ymm3
2422  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
2423  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
2424  DB  196,98,125,24,5,40,35,0,0           ; vbroadcastss  0x2328(%rip),%ymm8        # 4c6c <_sk_callback_hsw+0x350>
2425  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
2426  DB  72,173                              ; lods          %ds:(%rsi),%rax
2427  DB  255,224                             ; jmpq          *%rax
2428
2429PUBLIC _sk_lab_to_xyz_hsw
2430_sk_lab_to_xyz_hsw LABEL PROC
2431  DB  196,98,125,24,5,26,35,0,0           ; vbroadcastss  0x231a(%rip),%ymm8        # 4c70 <_sk_callback_hsw+0x354>
2432  DB  196,98,125,24,13,21,35,0,0          ; vbroadcastss  0x2315(%rip),%ymm9        # 4c74 <_sk_callback_hsw+0x358>
2433  DB  196,98,125,24,21,16,35,0,0          ; vbroadcastss  0x2310(%rip),%ymm10        # 4c78 <_sk_callback_hsw+0x35c>
2434  DB  196,194,53,168,202                  ; vfmadd213ps   %ymm10,%ymm9,%ymm1
2435  DB  196,194,53,168,210                  ; vfmadd213ps   %ymm10,%ymm9,%ymm2
2436  DB  196,98,125,24,13,1,35,0,0           ; vbroadcastss  0x2301(%rip),%ymm9        # 4c7c <_sk_callback_hsw+0x360>
2437  DB  196,66,125,184,200                  ; vfmadd231ps   %ymm8,%ymm0,%ymm9
2438  DB  196,226,125,24,5,247,34,0,0         ; vbroadcastss  0x22f7(%rip),%ymm0        # 4c80 <_sk_callback_hsw+0x364>
2439  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
2440  DB  196,98,125,24,5,238,34,0,0          ; vbroadcastss  0x22ee(%rip),%ymm8        # 4c84 <_sk_callback_hsw+0x368>
2441  DB  196,98,117,168,192                  ; vfmadd213ps   %ymm0,%ymm1,%ymm8
2442  DB  196,98,125,24,13,228,34,0,0         ; vbroadcastss  0x22e4(%rip),%ymm9        # 4c88 <_sk_callback_hsw+0x36c>
2443  DB  196,98,109,172,200                  ; vfnmadd213ps  %ymm0,%ymm2,%ymm9
2444  DB  196,193,60,89,200                   ; vmulps        %ymm8,%ymm8,%ymm1
2445  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
2446  DB  196,226,125,24,21,209,34,0,0        ; vbroadcastss  0x22d1(%rip),%ymm2        # 4c8c <_sk_callback_hsw+0x370>
2447  DB  197,108,194,209,1                   ; vcmpltps      %ymm1,%ymm2,%ymm10
2448  DB  196,98,125,24,29,199,34,0,0         ; vbroadcastss  0x22c7(%rip),%ymm11        # 4c90 <_sk_callback_hsw+0x374>
2449  DB  196,65,60,88,195                    ; vaddps        %ymm11,%ymm8,%ymm8
2450  DB  196,98,125,24,37,189,34,0,0         ; vbroadcastss  0x22bd(%rip),%ymm12        # 4c94 <_sk_callback_hsw+0x378>
2451  DB  196,65,60,89,196                    ; vmulps        %ymm12,%ymm8,%ymm8
2452  DB  196,99,61,74,193,160                ; vblendvps     %ymm10,%ymm1,%ymm8,%ymm8
2453  DB  197,252,89,200                      ; vmulps        %ymm0,%ymm0,%ymm1
2454  DB  197,252,89,201                      ; vmulps        %ymm1,%ymm0,%ymm1
2455  DB  197,108,194,209,1                   ; vcmpltps      %ymm1,%ymm2,%ymm10
2456  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
2457  DB  196,193,124,89,196                  ; vmulps        %ymm12,%ymm0,%ymm0
2458  DB  196,227,125,74,201,160              ; vblendvps     %ymm10,%ymm1,%ymm0,%ymm1
2459  DB  196,193,52,89,193                   ; vmulps        %ymm9,%ymm9,%ymm0
2460  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
2461  DB  197,236,194,208,1                   ; vcmpltps      %ymm0,%ymm2,%ymm2
2462  DB  196,65,52,88,203                    ; vaddps        %ymm11,%ymm9,%ymm9
2463  DB  196,65,52,89,204                    ; vmulps        %ymm12,%ymm9,%ymm9
2464  DB  196,227,53,74,208,32                ; vblendvps     %ymm2,%ymm0,%ymm9,%ymm2
2465  DB  196,226,125,24,5,114,34,0,0         ; vbroadcastss  0x2272(%rip),%ymm0        # 4c98 <_sk_callback_hsw+0x37c>
2466  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
2467  DB  196,98,125,24,5,105,34,0,0          ; vbroadcastss  0x2269(%rip),%ymm8        # 4c9c <_sk_callback_hsw+0x380>
2468  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2469  DB  72,173                              ; lods          %ds:(%rsi),%rax
2470  DB  255,224                             ; jmpq          *%rax
2471
2472PUBLIC _sk_load_a8_hsw
2473_sk_load_a8_hsw LABEL PROC
2474  DB  73,137,201                          ; mov           %rcx,%r9
2475  DB  72,173                              ; lods          %ds:(%rsi),%rax
2476  DB  72,139,0                            ; mov           (%rax),%rax
2477  DB  72,1,208                            ; add           %rdx,%rax
2478  DB  77,133,192                          ; test          %r8,%r8
2479  DB  117,45                              ; jne           2a79 <_sk_load_a8_hsw+0x3d>
2480  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
2481  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2482  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2483  DB  196,226,125,24,13,62,34,0,0         ; vbroadcastss  0x223e(%rip),%ymm1        # 4ca0 <_sk_callback_hsw+0x384>
2484  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
2485  DB  72,173                              ; lods          %ds:(%rsi),%rax
2486  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
2487  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
2488  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
2489  DB  76,137,201                          ; mov           %r9,%rcx
2490  DB  255,224                             ; jmpq          *%rax
2491  DB  83                                  ; push          %rbx
2492  DB  49,201                              ; xor           %ecx,%ecx
2493  DB  77,137,195                          ; mov           %r8,%r11
2494  DB  69,49,210                           ; xor           %r10d,%r10d
2495  DB  15,182,24                           ; movzbl        (%rax),%ebx
2496  DB  72,255,192                          ; inc           %rax
2497  DB  72,211,227                          ; shl           %cl,%rbx
2498  DB  73,9,218                            ; or            %rbx,%r10
2499  DB  72,131,193,8                        ; add           $0x8,%rcx
2500  DB  73,255,203                          ; dec           %r11
2501  DB  117,235                             ; jne           2a82 <_sk_load_a8_hsw+0x46>
2502  DB  196,193,249,110,194                 ; vmovq         %r10,%xmm0
2503  DB  91                                  ; pop           %rbx
2504  DB  235,177                             ; jmp           2a50 <_sk_load_a8_hsw+0x14>
2505
2506PUBLIC _sk_gather_a8_hsw
2507_sk_gather_a8_hsw LABEL PROC
2508  DB  72,173                              ; lods          %ds:(%rsi),%rax
2509  DB  76,139,8                            ; mov           (%rax),%r9
2510  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2511  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2512  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2513  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2514  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2515  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2516  DB  68,137,208                          ; mov           %r10d,%eax
2517  DB  196,195,121,32,12,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm1
2518  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2519  DB  73,193,234,32                       ; shr           $0x20,%r10
2520  DB  196,131,113,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm1,%xmm1
2521  DB  65,137,194                          ; mov           %eax,%r10d
2522  DB  72,193,232,32                       ; shr           $0x20,%rax
2523  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2524  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2525  DB  196,195,113,32,202,2                ; vpinsrb       $0x2,%r10d,%xmm1,%xmm1
2526  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2527  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2528  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
2529  DB  68,137,208                          ; mov           %r10d,%eax
2530  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2531  DB  196,227,113,32,200,4                ; vpinsrb       $0x4,%eax,%xmm1,%xmm1
2532  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2533  DB  73,193,234,32                       ; shr           $0x20,%r10
2534  DB  67,15,182,4,17                      ; movzbl        (%r9,%r10,1),%eax
2535  DB  196,227,113,32,192,5                ; vpinsrb       $0x5,%eax,%xmm1,%xmm0
2536  DB  68,137,216                          ; mov           %r11d,%eax
2537  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2538  DB  196,227,121,32,192,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm0
2539  DB  73,193,235,32                       ; shr           $0x20,%r11
2540  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
2541  DB  196,227,121,32,192,7                ; vpinsrb       $0x7,%eax,%xmm0,%xmm0
2542  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2543  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2544  DB  196,226,125,24,13,79,33,0,0         ; vbroadcastss  0x214f(%rip),%ymm1        # 4ca4 <_sk_callback_hsw+0x388>
2545  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
2546  DB  72,173                              ; lods          %ds:(%rsi),%rax
2547  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
2548  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
2549  DB  197,237,239,210                     ; vpxor         %ymm2,%ymm2,%ymm2
2550  DB  255,224                             ; jmpq          *%rax
2551
2552PUBLIC _sk_store_a8_hsw
2553_sk_store_a8_hsw LABEL PROC
2554  DB  72,173                              ; lods          %ds:(%rsi),%rax
2555  DB  76,139,24                           ; mov           (%rax),%r11
2556  DB  196,98,125,24,5,49,33,0,0           ; vbroadcastss  0x2131(%rip),%ymm8        # 4ca8 <_sk_callback_hsw+0x38c>
2557  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
2558  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
2559  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
2560  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
2561  DB  196,65,57,103,192                   ; vpackuswb     %xmm8,%xmm8,%xmm8
2562  DB  77,133,192                          ; test          %r8,%r8
2563  DB  117,10                              ; jne           2ba0 <_sk_store_a8_hsw+0x37>
2564  DB  196,65,123,17,4,19                  ; vmovsd        %xmm8,(%r11,%rdx,1)
2565  DB  72,173                              ; lods          %ds:(%rsi),%rax
2566  DB  255,224                             ; jmpq          *%rax
2567  DB  69,137,193                          ; mov           %r8d,%r9d
2568  DB  65,128,225,7                        ; and           $0x7,%r9b
2569  DB  65,254,201                          ; dec           %r9b
2570  DB  65,128,249,6                        ; cmp           $0x6,%r9b
2571  DB  119,236                             ; ja            2b9c <_sk_store_a8_hsw+0x33>
2572  DB  196,66,121,48,192                   ; vpmovzxbw     %xmm8,%xmm8
2573  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
2574  DB  76,141,21,68,0,0,0                  ; lea           0x44(%rip),%r10        # 2c04 <_sk_store_a8_hsw+0x9b>
2575  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
2576  DB  76,1,208                            ; add           %r10,%rax
2577  DB  255,224                             ; jmpq          *%rax
2578  DB  196,67,121,20,68,19,6,12            ; vpextrb       $0xc,%xmm8,0x6(%r11,%rdx,1)
2579  DB  196,67,121,20,68,19,5,10            ; vpextrb       $0xa,%xmm8,0x5(%r11,%rdx,1)
2580  DB  196,67,121,20,68,19,4,8             ; vpextrb       $0x8,%xmm8,0x4(%r11,%rdx,1)
2581  DB  196,67,121,20,68,19,3,6             ; vpextrb       $0x6,%xmm8,0x3(%r11,%rdx,1)
2582  DB  196,67,121,20,68,19,2,4             ; vpextrb       $0x4,%xmm8,0x2(%r11,%rdx,1)
2583  DB  196,67,121,20,68,19,1,2             ; vpextrb       $0x2,%xmm8,0x1(%r11,%rdx,1)
2584  DB  196,67,121,20,4,19,0                ; vpextrb       $0x0,%xmm8,(%r11,%rdx,1)
2585  DB  235,154                             ; jmp           2b9c <_sk_store_a8_hsw+0x33>
2586  DB  102,144                             ; xchg          %ax,%ax
2587  DB  245                                 ; cmc
2588  DB  255                                 ; (bad)
2589  DB  255                                 ; (bad)
2590  DB  255                                 ; (bad)
2591  DB  237                                 ; in            (%dx),%eax
2592  DB  255                                 ; (bad)
2593  DB  255                                 ; (bad)
2594  DB  255,229                             ; jmpq          *%rbp
2595  DB  255                                 ; (bad)
2596  DB  255                                 ; (bad)
2597  DB  255                                 ; (bad)
2598  DB  221,255                             ; (bad)
2599  DB  255                                 ; (bad)
2600  DB  255,213                             ; callq         *%rbp
2601  DB  255                                 ; (bad)
2602  DB  255                                 ; (bad)
2603  DB  255,205                             ; dec           %ebp
2604  DB  255                                 ; (bad)
2605  DB  255                                 ; (bad)
2606  DB  255,197                             ; inc           %ebp
2607  DB  255                                 ; (bad)
2608  DB  255                                 ; (bad)
2609  DB  255                                 ; .byte         0xff
2610
2611PUBLIC _sk_load_g8_hsw
2612_sk_load_g8_hsw LABEL PROC
2613  DB  73,137,201                          ; mov           %rcx,%r9
2614  DB  72,173                              ; lods          %ds:(%rsi),%rax
2615  DB  72,139,0                            ; mov           (%rax),%rax
2616  DB  72,1,208                            ; add           %rdx,%rax
2617  DB  77,133,192                          ; test          %r8,%r8
2618  DB  117,50                              ; jne           2c62 <_sk_load_g8_hsw+0x42>
2619  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
2620  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2621  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2622  DB  196,226,125,24,13,102,32,0,0        ; vbroadcastss  0x2066(%rip),%ymm1        # 4cac <_sk_callback_hsw+0x390>
2623  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2624  DB  72,173                              ; lods          %ds:(%rsi),%rax
2625  DB  196,226,125,24,29,91,32,0,0         ; vbroadcastss  0x205b(%rip),%ymm3        # 4cb0 <_sk_callback_hsw+0x394>
2626  DB  76,137,201                          ; mov           %r9,%rcx
2627  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
2628  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
2629  DB  255,224                             ; jmpq          *%rax
2630  DB  83                                  ; push          %rbx
2631  DB  49,201                              ; xor           %ecx,%ecx
2632  DB  77,137,195                          ; mov           %r8,%r11
2633  DB  69,49,210                           ; xor           %r10d,%r10d
2634  DB  15,182,24                           ; movzbl        (%rax),%ebx
2635  DB  72,255,192                          ; inc           %rax
2636  DB  72,211,227                          ; shl           %cl,%rbx
2637  DB  73,9,218                            ; or            %rbx,%r10
2638  DB  72,131,193,8                        ; add           $0x8,%rcx
2639  DB  73,255,203                          ; dec           %r11
2640  DB  117,235                             ; jne           2c6b <_sk_load_g8_hsw+0x4b>
2641  DB  196,193,249,110,194                 ; vmovq         %r10,%xmm0
2642  DB  91                                  ; pop           %rbx
2643  DB  235,172                             ; jmp           2c34 <_sk_load_g8_hsw+0x14>
2644
2645PUBLIC _sk_gather_g8_hsw
2646_sk_gather_g8_hsw LABEL PROC
2647  DB  72,173                              ; lods          %ds:(%rsi),%rax
2648  DB  76,139,8                            ; mov           (%rax),%r9
2649  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2650  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2651  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2652  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2653  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2654  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2655  DB  68,137,208                          ; mov           %r10d,%eax
2656  DB  196,195,121,32,12,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm1
2657  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2658  DB  73,193,234,32                       ; shr           $0x20,%r10
2659  DB  196,131,113,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm1,%xmm1
2660  DB  65,137,194                          ; mov           %eax,%r10d
2661  DB  72,193,232,32                       ; shr           $0x20,%rax
2662  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2663  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2664  DB  196,195,113,32,202,2                ; vpinsrb       $0x2,%r10d,%xmm1,%xmm1
2665  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2666  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2667  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
2668  DB  68,137,208                          ; mov           %r10d,%eax
2669  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2670  DB  196,227,113,32,200,4                ; vpinsrb       $0x4,%eax,%xmm1,%xmm1
2671  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2672  DB  73,193,234,32                       ; shr           $0x20,%r10
2673  DB  67,15,182,4,17                      ; movzbl        (%r9,%r10,1),%eax
2674  DB  196,227,113,32,192,5                ; vpinsrb       $0x5,%eax,%xmm1,%xmm0
2675  DB  68,137,216                          ; mov           %r11d,%eax
2676  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2677  DB  196,227,121,32,192,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm0
2678  DB  73,193,235,32                       ; shr           $0x20,%r11
2679  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
2680  DB  196,227,121,32,192,7                ; vpinsrb       $0x7,%eax,%xmm0,%xmm0
2681  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2682  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2683  DB  196,226,125,24,13,118,31,0,0        ; vbroadcastss  0x1f76(%rip),%ymm1        # 4cb4 <_sk_callback_hsw+0x398>
2684  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2685  DB  72,173                              ; lods          %ds:(%rsi),%rax
2686  DB  196,226,125,24,29,107,31,0,0        ; vbroadcastss  0x1f6b(%rip),%ymm3        # 4cb8 <_sk_callback_hsw+0x39c>
2687  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
2688  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
2689  DB  255,224                             ; jmpq          *%rax
2690
2691PUBLIC _sk_gather_i8_hsw
2692_sk_gather_i8_hsw LABEL PROC
2693  DB  72,173                              ; lods          %ds:(%rsi),%rax
2694  DB  73,137,193                          ; mov           %rax,%r9
2695  DB  77,133,201                          ; test          %r9,%r9
2696  DB  116,5                               ; je            2d66 <_sk_gather_i8_hsw+0xf>
2697  DB  76,137,200                          ; mov           %r9,%rax
2698  DB  235,2                               ; jmp           2d68 <_sk_gather_i8_hsw+0x11>
2699  DB  72,173                              ; lods          %ds:(%rsi),%rax
2700  DB  83                                  ; push          %rbx
2701  DB  76,139,16                           ; mov           (%rax),%r10
2702  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2703  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2704  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2705  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2706  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2707  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
2708  DB  68,137,216                          ; mov           %r11d,%eax
2709  DB  196,195,121,32,12,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm1
2710  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2711  DB  73,193,235,32                       ; shr           $0x20,%r11
2712  DB  196,131,113,32,12,26,1              ; vpinsrb       $0x1,(%r10,%r11,1),%xmm1,%xmm1
2713  DB  65,137,195                          ; mov           %eax,%r11d
2714  DB  72,193,232,32                       ; shr           $0x20,%rax
2715  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2716  DB  196,131,113,32,12,26,2              ; vpinsrb       $0x2,(%r10,%r11,1),%xmm1,%xmm1
2717  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
2718  DB  196,195,113,32,12,2,3               ; vpinsrb       $0x3,(%r10,%rax,1),%xmm1,%xmm1
2719  DB  68,137,216                          ; mov           %r11d,%eax
2720  DB  196,195,113,32,12,2,4               ; vpinsrb       $0x4,(%r10,%rax,1),%xmm1,%xmm1
2721  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2722  DB  73,193,235,32                       ; shr           $0x20,%r11
2723  DB  196,131,113,32,4,26,5               ; vpinsrb       $0x5,(%r10,%r11,1),%xmm1,%xmm0
2724  DB  137,216                             ; mov           %ebx,%eax
2725  DB  196,195,121,32,4,2,6                ; vpinsrb       $0x6,(%r10,%rax,1),%xmm0,%xmm0
2726  DB  72,193,235,32                       ; shr           $0x20,%rbx
2727  DB  196,195,121,32,4,26,7               ; vpinsrb       $0x7,(%r10,%rbx,1),%xmm0,%xmm0
2728  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2729  DB  73,139,65,8                         ; mov           0x8(%r9),%rax
2730  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
2731  DB  196,226,117,144,28,128              ; vpgatherdd    %ymm1,(%rax,%ymm0,4),%ymm3
2732  DB  197,229,219,5,19,33,0,0             ; vpand         0x2113(%rip),%ymm3,%ymm0        # 4f20 <_sk_callback_hsw+0x604>
2733  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2734  DB  196,98,125,24,5,162,30,0,0          ; vbroadcastss  0x1ea2(%rip),%ymm8        # 4cbc <_sk_callback_hsw+0x3a0>
2735  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2736  DB  196,226,101,0,13,24,33,0,0          ; vpshufb       0x2118(%rip),%ymm3,%ymm1        # 4f40 <_sk_callback_hsw+0x624>
2737  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2738  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2739  DB  196,226,101,0,21,38,33,0,0          ; vpshufb       0x2126(%rip),%ymm3,%ymm2        # 4f60 <_sk_callback_hsw+0x644>
2740  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2741  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2742  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
2743  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2744  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2745  DB  72,173                              ; lods          %ds:(%rsi),%rax
2746  DB  91                                  ; pop           %rbx
2747  DB  255,224                             ; jmpq          *%rax
2748
2749PUBLIC _sk_load_565_hsw
2750_sk_load_565_hsw LABEL PROC
2751  DB  72,173                              ; lods          %ds:(%rsi),%rax
2752  DB  76,139,24                           ; mov           (%rax),%r11
2753  DB  77,133,192                          ; test          %r8,%r8
2754  DB  117,114                             ; jne           2ed2 <_sk_load_565_hsw+0x7c>
2755  DB  196,193,122,111,4,83                ; vmovdqu       (%r11,%rdx,2),%xmm0
2756  DB  196,226,125,51,208                  ; vpmovzxwd     %xmm0,%ymm2
2757  DB  196,226,125,88,5,76,30,0,0          ; vpbroadcastd  0x1e4c(%rip),%ymm0        # 4cc0 <_sk_callback_hsw+0x3a4>
2758  DB  197,237,219,192                     ; vpand         %ymm0,%ymm2,%ymm0
2759  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2760  DB  196,226,125,24,13,63,30,0,0         ; vbroadcastss  0x1e3f(%rip),%ymm1        # 4cc4 <_sk_callback_hsw+0x3a8>
2761  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2762  DB  196,226,125,88,13,54,30,0,0         ; vpbroadcastd  0x1e36(%rip),%ymm1        # 4cc8 <_sk_callback_hsw+0x3ac>
2763  DB  197,237,219,201                     ; vpand         %ymm1,%ymm2,%ymm1
2764  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2765  DB  196,226,125,24,29,41,30,0,0         ; vbroadcastss  0x1e29(%rip),%ymm3        # 4ccc <_sk_callback_hsw+0x3b0>
2766  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
2767  DB  196,226,125,88,29,32,30,0,0         ; vpbroadcastd  0x1e20(%rip),%ymm3        # 4cd0 <_sk_callback_hsw+0x3b4>
2768  DB  197,237,219,211                     ; vpand         %ymm3,%ymm2,%ymm2
2769  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2770  DB  196,226,125,24,29,19,30,0,0         ; vbroadcastss  0x1e13(%rip),%ymm3        # 4cd4 <_sk_callback_hsw+0x3b8>
2771  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
2772  DB  72,173                              ; lods          %ds:(%rsi),%rax
2773  DB  196,226,125,24,29,8,30,0,0          ; vbroadcastss  0x1e08(%rip),%ymm3        # 4cd8 <_sk_callback_hsw+0x3bc>
2774  DB  255,224                             ; jmpq          *%rax
2775  DB  69,137,193                          ; mov           %r8d,%r9d
2776  DB  65,128,225,7                        ; and           $0x7,%r9b
2777  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2778  DB  65,254,201                          ; dec           %r9b
2779  DB  65,128,249,6                        ; cmp           $0x6,%r9b
2780  DB  119,128                             ; ja            2e66 <_sk_load_565_hsw+0x10>
2781  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
2782  DB  76,141,21,75,0,0,0                  ; lea           0x4b(%rip),%r10        # 2f3c <_sk_load_565_hsw+0xe6>
2783  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
2784  DB  76,1,208                            ; add           %r10,%rax
2785  DB  255,224                             ; jmpq          *%rax
2786  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2787  DB  196,193,121,196,68,83,12,6          ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm0,%xmm0
2788  DB  196,193,121,196,68,83,10,5          ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm0,%xmm0
2789  DB  196,193,121,196,68,83,8,4           ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm0,%xmm0
2790  DB  196,193,121,196,68,83,6,3           ; vpinsrw       $0x3,0x6(%r11,%rdx,2),%xmm0,%xmm0
2791  DB  196,193,121,196,68,83,4,2           ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm0,%xmm0
2792  DB  196,193,121,196,68,83,2,1           ; vpinsrw       $0x1,0x2(%r11,%rdx,2),%xmm0,%xmm0
2793  DB  196,193,121,196,4,83,0              ; vpinsrw       $0x0,(%r11,%rdx,2),%xmm0,%xmm0
2794  DB  233,44,255,255,255                  ; jmpq          2e66 <_sk_load_565_hsw+0x10>
2795  DB  102,144                             ; xchg          %ax,%ax
2796  DB  242,255                             ; repnz         (bad)
2797  DB  255                                 ; (bad)
2798  DB  255                                 ; (bad)
2799  DB  234                                 ; (bad)
2800  DB  255                                 ; (bad)
2801  DB  255                                 ; (bad)
2802  DB  255,226                             ; jmpq          *%rdx
2803  DB  255                                 ; (bad)
2804  DB  255                                 ; (bad)
2805  DB  255                                 ; (bad)
2806  DB  218,255                             ; (bad)
2807  DB  255                                 ; (bad)
2808  DB  255,210                             ; callq         *%rdx
2809  DB  255                                 ; (bad)
2810  DB  255                                 ; (bad)
2811  DB  255,202                             ; dec           %edx
2812  DB  255                                 ; (bad)
2813  DB  255                                 ; (bad)
2814  DB  255                                 ; (bad)
2815  DB  190                                 ; .byte         0xbe
2816  DB  255                                 ; (bad)
2817  DB  255                                 ; (bad)
2818  DB  255                                 ; .byte         0xff
2819
2820PUBLIC _sk_gather_565_hsw
2821_sk_gather_565_hsw LABEL PROC
2822  DB  72,173                              ; lods          %ds:(%rsi),%rax
2823  DB  76,139,8                            ; mov           (%rax),%r9
2824  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2825  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2826  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2827  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2828  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2829  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2830  DB  68,137,208                          ; mov           %r10d,%eax
2831  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
2832  DB  197,249,110,200                     ; vmovd         %eax,%xmm1
2833  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2834  DB  73,193,234,32                       ; shr           $0x20,%r10
2835  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
2836  DB  197,241,196,200,1                   ; vpinsrw       $0x1,%eax,%xmm1,%xmm1
2837  DB  68,137,216                          ; mov           %r11d,%eax
2838  DB  73,193,235,32                       ; shr           $0x20,%r11
2839  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2840  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
2841  DB  197,241,196,200,2                   ; vpinsrw       $0x2,%eax,%xmm1,%xmm1
2842  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2843  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
2844  DB  197,241,196,200,3                   ; vpinsrw       $0x3,%eax,%xmm1,%xmm1
2845  DB  68,137,208                          ; mov           %r10d,%eax
2846  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
2847  DB  197,241,196,200,4                   ; vpinsrw       $0x4,%eax,%xmm1,%xmm1
2848  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2849  DB  73,193,234,32                       ; shr           $0x20,%r10
2850  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
2851  DB  197,241,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm1,%xmm0
2852  DB  68,137,216                          ; mov           %r11d,%eax
2853  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
2854  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
2855  DB  73,193,235,32                       ; shr           $0x20,%r11
2856  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
2857  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
2858  DB  196,226,125,51,208                  ; vpmovzxwd     %xmm0,%ymm2
2859  DB  196,226,125,88,5,211,28,0,0         ; vpbroadcastd  0x1cd3(%rip),%ymm0        # 4cdc <_sk_callback_hsw+0x3c0>
2860  DB  197,237,219,192                     ; vpand         %ymm0,%ymm2,%ymm0
2861  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2862  DB  196,226,125,24,13,198,28,0,0        ; vbroadcastss  0x1cc6(%rip),%ymm1        # 4ce0 <_sk_callback_hsw+0x3c4>
2863  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2864  DB  196,226,125,88,13,189,28,0,0        ; vpbroadcastd  0x1cbd(%rip),%ymm1        # 4ce4 <_sk_callback_hsw+0x3c8>
2865  DB  197,237,219,201                     ; vpand         %ymm1,%ymm2,%ymm1
2866  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2867  DB  196,226,125,24,29,176,28,0,0        ; vbroadcastss  0x1cb0(%rip),%ymm3        # 4ce8 <_sk_callback_hsw+0x3cc>
2868  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
2869  DB  196,226,125,88,29,167,28,0,0        ; vpbroadcastd  0x1ca7(%rip),%ymm3        # 4cec <_sk_callback_hsw+0x3d0>
2870  DB  197,237,219,211                     ; vpand         %ymm3,%ymm2,%ymm2
2871  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2872  DB  196,226,125,24,29,154,28,0,0        ; vbroadcastss  0x1c9a(%rip),%ymm3        # 4cf0 <_sk_callback_hsw+0x3d4>
2873  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
2874  DB  72,173                              ; lods          %ds:(%rsi),%rax
2875  DB  196,226,125,24,29,143,28,0,0        ; vbroadcastss  0x1c8f(%rip),%ymm3        # 4cf4 <_sk_callback_hsw+0x3d8>
2876  DB  255,224                             ; jmpq          *%rax
2877
2878PUBLIC _sk_store_565_hsw
2879_sk_store_565_hsw LABEL PROC
2880  DB  72,173                              ; lods          %ds:(%rsi),%rax
2881  DB  76,139,24                           ; mov           (%rax),%r11
2882  DB  196,98,125,24,5,131,28,0,0          ; vbroadcastss  0x1c83(%rip),%ymm8        # 4cf8 <_sk_callback_hsw+0x3dc>
2883  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
2884  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
2885  DB  196,193,53,114,241,11               ; vpslld        $0xb,%ymm9,%ymm9
2886  DB  196,98,125,24,21,110,28,0,0         ; vbroadcastss  0x1c6e(%rip),%ymm10        # 4cfc <_sk_callback_hsw+0x3e0>
2887  DB  196,65,116,89,210                   ; vmulps        %ymm10,%ymm1,%ymm10
2888  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
2889  DB  196,193,45,114,242,5                ; vpslld        $0x5,%ymm10,%ymm10
2890  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
2891  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
2892  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
2893  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
2894  DB  196,67,125,57,193,1                 ; vextracti128  $0x1,%ymm8,%xmm9
2895  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
2896  DB  77,133,192                          ; test          %r8,%r8
2897  DB  117,10                              ; jne           30cc <_sk_store_565_hsw+0x65>
2898  DB  196,65,122,127,4,83                 ; vmovdqu       %xmm8,(%r11,%rdx,2)
2899  DB  72,173                              ; lods          %ds:(%rsi),%rax
2900  DB  255,224                             ; jmpq          *%rax
2901  DB  69,137,193                          ; mov           %r8d,%r9d
2902  DB  65,128,225,7                        ; and           $0x7,%r9b
2903  DB  65,254,201                          ; dec           %r9b
2904  DB  65,128,249,6                        ; cmp           $0x6,%r9b
2905  DB  119,236                             ; ja            30c8 <_sk_store_565_hsw+0x61>
2906  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
2907  DB  76,141,21,69,0,0,0                  ; lea           0x45(%rip),%r10        # 312c <_sk_store_565_hsw+0xc5>
2908  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
2909  DB  76,1,208                            ; add           %r10,%rax
2910  DB  255,224                             ; jmpq          *%rax
2911  DB  196,67,121,21,68,83,12,6            ; vpextrw       $0x6,%xmm8,0xc(%r11,%rdx,2)
2912  DB  196,67,121,21,68,83,10,5            ; vpextrw       $0x5,%xmm8,0xa(%r11,%rdx,2)
2913  DB  196,67,121,21,68,83,8,4             ; vpextrw       $0x4,%xmm8,0x8(%r11,%rdx,2)
2914  DB  196,67,121,21,68,83,6,3             ; vpextrw       $0x3,%xmm8,0x6(%r11,%rdx,2)
2915  DB  196,67,121,21,68,83,4,2             ; vpextrw       $0x2,%xmm8,0x4(%r11,%rdx,2)
2916  DB  196,67,121,21,68,83,2,1             ; vpextrw       $0x1,%xmm8,0x2(%r11,%rdx,2)
2917  DB  196,67,121,21,4,83,0                ; vpextrw       $0x0,%xmm8,(%r11,%rdx,2)
2918  DB  235,159                             ; jmp           30c8 <_sk_store_565_hsw+0x61>
2919  DB  15,31,0                             ; nopl          (%rax)
2920  DB  244                                 ; hlt
2921  DB  255                                 ; (bad)
2922  DB  255                                 ; (bad)
2923  DB  255                                 ; (bad)
2924  DB  236                                 ; in            (%dx),%al
2925  DB  255                                 ; (bad)
2926  DB  255                                 ; (bad)
2927  DB  255,228                             ; jmpq          *%rsp
2928  DB  255                                 ; (bad)
2929  DB  255                                 ; (bad)
2930  DB  255                                 ; (bad)
2931  DB  220,255                             ; fdivr         %st,%st(7)
2932  DB  255                                 ; (bad)
2933  DB  255,212                             ; callq         *%rsp
2934  DB  255                                 ; (bad)
2935  DB  255                                 ; (bad)
2936  DB  255,204                             ; dec           %esp
2937  DB  255                                 ; (bad)
2938  DB  255                                 ; (bad)
2939  DB  255,196                             ; inc           %esp
2940  DB  255                                 ; (bad)
2941  DB  255                                 ; (bad)
2942  DB  255                                 ; .byte         0xff
2943
2944PUBLIC _sk_load_4444_hsw
2945_sk_load_4444_hsw LABEL PROC
2946  DB  72,173                              ; lods          %ds:(%rsi),%rax
2947  DB  76,139,24                           ; mov           (%rax),%r11
2948  DB  77,133,192                          ; test          %r8,%r8
2949  DB  15,133,138,0,0,0                    ; jne           31e0 <_sk_load_4444_hsw+0x98>
2950  DB  196,193,122,111,4,83                ; vmovdqu       (%r11,%rdx,2),%xmm0
2951  DB  196,226,125,51,216                  ; vpmovzxwd     %xmm0,%ymm3
2952  DB  196,226,125,88,5,150,27,0,0         ; vpbroadcastd  0x1b96(%rip),%ymm0        # 4d00 <_sk_callback_hsw+0x3e4>
2953  DB  197,229,219,192                     ; vpand         %ymm0,%ymm3,%ymm0
2954  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2955  DB  196,226,125,24,13,137,27,0,0        ; vbroadcastss  0x1b89(%rip),%ymm1        # 4d04 <_sk_callback_hsw+0x3e8>
2956  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2957  DB  196,226,125,88,13,128,27,0,0        ; vpbroadcastd  0x1b80(%rip),%ymm1        # 4d08 <_sk_callback_hsw+0x3ec>
2958  DB  197,229,219,201                     ; vpand         %ymm1,%ymm3,%ymm1
2959  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2960  DB  196,226,125,24,21,115,27,0,0        ; vbroadcastss  0x1b73(%rip),%ymm2        # 4d0c <_sk_callback_hsw+0x3f0>
2961  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
2962  DB  196,226,125,88,21,106,27,0,0        ; vpbroadcastd  0x1b6a(%rip),%ymm2        # 4d10 <_sk_callback_hsw+0x3f4>
2963  DB  197,229,219,210                     ; vpand         %ymm2,%ymm3,%ymm2
2964  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2965  DB  196,98,125,24,5,93,27,0,0           ; vbroadcastss  0x1b5d(%rip),%ymm8        # 4d14 <_sk_callback_hsw+0x3f8>
2966  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2967  DB  196,98,125,88,5,83,27,0,0           ; vpbroadcastd  0x1b53(%rip),%ymm8        # 4d18 <_sk_callback_hsw+0x3fc>
2968  DB  196,193,101,219,216                 ; vpand         %ymm8,%ymm3,%ymm3
2969  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2970  DB  196,98,125,24,5,69,27,0,0           ; vbroadcastss  0x1b45(%rip),%ymm8        # 4d1c <_sk_callback_hsw+0x400>
2971  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2972  DB  72,173                              ; lods          %ds:(%rsi),%rax
2973  DB  255,224                             ; jmpq          *%rax
2974  DB  69,137,193                          ; mov           %r8d,%r9d
2975  DB  65,128,225,7                        ; and           $0x7,%r9b
2976  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2977  DB  65,254,201                          ; dec           %r9b
2978  DB  65,128,249,6                        ; cmp           $0x6,%r9b
2979  DB  15,135,100,255,255,255              ; ja            315c <_sk_load_4444_hsw+0x14>
2980  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
2981  DB  76,141,21,73,0,0,0                  ; lea           0x49(%rip),%r10        # 324c <_sk_load_4444_hsw+0x104>
2982  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
2983  DB  76,1,208                            ; add           %r10,%rax
2984  DB  255,224                             ; jmpq          *%rax
2985  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2986  DB  196,193,121,196,68,83,12,6          ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm0,%xmm0
2987  DB  196,193,121,196,68,83,10,5          ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm0,%xmm0
2988  DB  196,193,121,196,68,83,8,4           ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm0,%xmm0
2989  DB  196,193,121,196,68,83,6,3           ; vpinsrw       $0x3,0x6(%r11,%rdx,2),%xmm0,%xmm0
2990  DB  196,193,121,196,68,83,4,2           ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm0,%xmm0
2991  DB  196,193,121,196,68,83,2,1           ; vpinsrw       $0x1,0x2(%r11,%rdx,2),%xmm0,%xmm0
2992  DB  196,193,121,196,4,83,0              ; vpinsrw       $0x0,(%r11,%rdx,2),%xmm0,%xmm0
2993  DB  233,16,255,255,255                  ; jmpq          315c <_sk_load_4444_hsw+0x14>
2994  DB  244                                 ; hlt
2995  DB  255                                 ; (bad)
2996  DB  255                                 ; (bad)
2997  DB  255                                 ; (bad)
2998  DB  236                                 ; in            (%dx),%al
2999  DB  255                                 ; (bad)
3000  DB  255                                 ; (bad)
3001  DB  255,228                             ; jmpq          *%rsp
3002  DB  255                                 ; (bad)
3003  DB  255                                 ; (bad)
3004  DB  255                                 ; (bad)
3005  DB  220,255                             ; fdivr         %st,%st(7)
3006  DB  255                                 ; (bad)
3007  DB  255,212                             ; callq         *%rsp
3008  DB  255                                 ; (bad)
3009  DB  255                                 ; (bad)
3010  DB  255,204                             ; dec           %esp
3011  DB  255                                 ; (bad)
3012  DB  255                                 ; (bad)
3013  DB  255,192                             ; inc           %eax
3014  DB  255                                 ; (bad)
3015  DB  255                                 ; (bad)
3016  DB  255                                 ; .byte         0xff
3017
3018PUBLIC _sk_gather_4444_hsw
3019_sk_gather_4444_hsw LABEL PROC
3020  DB  72,173                              ; lods          %ds:(%rsi),%rax
3021  DB  76,139,8                            ; mov           (%rax),%r9
3022  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
3023  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
3024  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
3025  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
3026  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
3027  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
3028  DB  68,137,208                          ; mov           %r10d,%eax
3029  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
3030  DB  197,249,110,200                     ; vmovd         %eax,%xmm1
3031  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
3032  DB  73,193,234,32                       ; shr           $0x20,%r10
3033  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
3034  DB  197,241,196,200,1                   ; vpinsrw       $0x1,%eax,%xmm1,%xmm1
3035  DB  68,137,216                          ; mov           %r11d,%eax
3036  DB  73,193,235,32                       ; shr           $0x20,%r11
3037  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
3038  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
3039  DB  197,241,196,200,2                   ; vpinsrw       $0x2,%eax,%xmm1,%xmm1
3040  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
3041  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
3042  DB  197,241,196,200,3                   ; vpinsrw       $0x3,%eax,%xmm1,%xmm1
3043  DB  68,137,208                          ; mov           %r10d,%eax
3044  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
3045  DB  197,241,196,200,4                   ; vpinsrw       $0x4,%eax,%xmm1,%xmm1
3046  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
3047  DB  73,193,234,32                       ; shr           $0x20,%r10
3048  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
3049  DB  197,241,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm1,%xmm0
3050  DB  68,137,216                          ; mov           %r11d,%eax
3051  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
3052  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
3053  DB  73,193,235,32                       ; shr           $0x20,%r11
3054  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
3055  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
3056  DB  196,226,125,51,216                  ; vpmovzxwd     %xmm0,%ymm3
3057  DB  196,226,125,88,5,7,26,0,0           ; vpbroadcastd  0x1a07(%rip),%ymm0        # 4d20 <_sk_callback_hsw+0x404>
3058  DB  197,229,219,192                     ; vpand         %ymm0,%ymm3,%ymm0
3059  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3060  DB  196,226,125,24,13,250,25,0,0        ; vbroadcastss  0x19fa(%rip),%ymm1        # 4d24 <_sk_callback_hsw+0x408>
3061  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
3062  DB  196,226,125,88,13,241,25,0,0        ; vpbroadcastd  0x19f1(%rip),%ymm1        # 4d28 <_sk_callback_hsw+0x40c>
3063  DB  197,229,219,201                     ; vpand         %ymm1,%ymm3,%ymm1
3064  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3065  DB  196,226,125,24,21,228,25,0,0        ; vbroadcastss  0x19e4(%rip),%ymm2        # 4d2c <_sk_callback_hsw+0x410>
3066  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
3067  DB  196,226,125,88,21,219,25,0,0        ; vpbroadcastd  0x19db(%rip),%ymm2        # 4d30 <_sk_callback_hsw+0x414>
3068  DB  197,229,219,210                     ; vpand         %ymm2,%ymm3,%ymm2
3069  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3070  DB  196,98,125,24,5,206,25,0,0          ; vbroadcastss  0x19ce(%rip),%ymm8        # 4d34 <_sk_callback_hsw+0x418>
3071  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
3072  DB  196,98,125,88,5,196,25,0,0          ; vpbroadcastd  0x19c4(%rip),%ymm8        # 4d38 <_sk_callback_hsw+0x41c>
3073  DB  196,193,101,219,216                 ; vpand         %ymm8,%ymm3,%ymm3
3074  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
3075  DB  196,98,125,24,5,182,25,0,0          ; vbroadcastss  0x19b6(%rip),%ymm8        # 4d3c <_sk_callback_hsw+0x420>
3076  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
3077  DB  72,173                              ; lods          %ds:(%rsi),%rax
3078  DB  255,224                             ; jmpq          *%rax
3079
3080PUBLIC _sk_store_4444_hsw
3081_sk_store_4444_hsw LABEL PROC
3082  DB  72,173                              ; lods          %ds:(%rsi),%rax
3083  DB  76,139,24                           ; mov           (%rax),%r11
3084  DB  196,98,125,24,5,163,25,0,0          ; vbroadcastss  0x19a3(%rip),%ymm8        # 4d40 <_sk_callback_hsw+0x424>
3085  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
3086  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
3087  DB  196,193,53,114,241,12               ; vpslld        $0xc,%ymm9,%ymm9
3088  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
3089  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3090  DB  196,193,45,114,242,8                ; vpslld        $0x8,%ymm10,%ymm10
3091  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
3092  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
3093  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3094  DB  196,193,45,114,242,4                ; vpslld        $0x4,%ymm10,%ymm10
3095  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
3096  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
3097  DB  196,65,45,235,192                   ; vpor          %ymm8,%ymm10,%ymm8
3098  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
3099  DB  196,67,125,57,193,1                 ; vextracti128  $0x1,%ymm8,%xmm9
3100  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
3101  DB  77,133,192                          ; test          %r8,%r8
3102  DB  117,10                              ; jne           3400 <_sk_store_4444_hsw+0x71>
3103  DB  196,65,122,127,4,83                 ; vmovdqu       %xmm8,(%r11,%rdx,2)
3104  DB  72,173                              ; lods          %ds:(%rsi),%rax
3105  DB  255,224                             ; jmpq          *%rax
3106  DB  69,137,193                          ; mov           %r8d,%r9d
3107  DB  65,128,225,7                        ; and           $0x7,%r9b
3108  DB  65,254,201                          ; dec           %r9b
3109  DB  65,128,249,6                        ; cmp           $0x6,%r9b
3110  DB  119,236                             ; ja            33fc <_sk_store_4444_hsw+0x6d>
3111  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
3112  DB  76,141,21,69,0,0,0                  ; lea           0x45(%rip),%r10        # 3460 <_sk_store_4444_hsw+0xd1>
3113  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
3114  DB  76,1,208                            ; add           %r10,%rax
3115  DB  255,224                             ; jmpq          *%rax
3116  DB  196,67,121,21,68,83,12,6            ; vpextrw       $0x6,%xmm8,0xc(%r11,%rdx,2)
3117  DB  196,67,121,21,68,83,10,5            ; vpextrw       $0x5,%xmm8,0xa(%r11,%rdx,2)
3118  DB  196,67,121,21,68,83,8,4             ; vpextrw       $0x4,%xmm8,0x8(%r11,%rdx,2)
3119  DB  196,67,121,21,68,83,6,3             ; vpextrw       $0x3,%xmm8,0x6(%r11,%rdx,2)
3120  DB  196,67,121,21,68,83,4,2             ; vpextrw       $0x2,%xmm8,0x4(%r11,%rdx,2)
3121  DB  196,67,121,21,68,83,2,1             ; vpextrw       $0x1,%xmm8,0x2(%r11,%rdx,2)
3122  DB  196,67,121,21,4,83,0                ; vpextrw       $0x0,%xmm8,(%r11,%rdx,2)
3123  DB  235,159                             ; jmp           33fc <_sk_store_4444_hsw+0x6d>
3124  DB  15,31,0                             ; nopl          (%rax)
3125  DB  244                                 ; hlt
3126  DB  255                                 ; (bad)
3127  DB  255                                 ; (bad)
3128  DB  255                                 ; (bad)
3129  DB  236                                 ; in            (%dx),%al
3130  DB  255                                 ; (bad)
3131  DB  255                                 ; (bad)
3132  DB  255,228                             ; jmpq          *%rsp
3133  DB  255                                 ; (bad)
3134  DB  255                                 ; (bad)
3135  DB  255                                 ; (bad)
3136  DB  220,255                             ; fdivr         %st,%st(7)
3137  DB  255                                 ; (bad)
3138  DB  255,212                             ; callq         *%rsp
3139  DB  255                                 ; (bad)
3140  DB  255                                 ; (bad)
3141  DB  255,204                             ; dec           %esp
3142  DB  255                                 ; (bad)
3143  DB  255                                 ; (bad)
3144  DB  255,196                             ; inc           %esp
3145  DB  255                                 ; (bad)
3146  DB  255                                 ; (bad)
3147  DB  255                                 ; .byte         0xff
3148
3149PUBLIC _sk_load_8888_hsw
3150_sk_load_8888_hsw LABEL PROC
3151  DB  73,137,201                          ; mov           %rcx,%r9
3152  DB  72,173                              ; lods          %ds:(%rsi),%rax
3153  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
3154  DB  76,3,16                             ; add           (%rax),%r10
3155  DB  77,133,192                          ; test          %r8,%r8
3156  DB  117,88                              ; jne           34e9 <_sk_load_8888_hsw+0x6d>
3157  DB  196,193,124,16,26                   ; vmovups       (%r10),%ymm3
3158  DB  197,228,84,5,226,26,0,0             ; vandps        0x1ae2(%rip),%ymm3,%ymm0        # 4f80 <_sk_callback_hsw+0x664>
3159  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3160  DB  196,98,125,24,5,153,24,0,0          ; vbroadcastss  0x1899(%rip),%ymm8        # 4d44 <_sk_callback_hsw+0x428>
3161  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
3162  DB  196,226,101,0,13,231,26,0,0         ; vpshufb       0x1ae7(%rip),%ymm3,%ymm1        # 4fa0 <_sk_callback_hsw+0x684>
3163  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3164  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
3165  DB  196,226,101,0,21,245,26,0,0         ; vpshufb       0x1af5(%rip),%ymm3,%ymm2        # 4fc0 <_sk_callback_hsw+0x6a4>
3166  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3167  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
3168  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
3169  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
3170  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
3171  DB  72,173                              ; lods          %ds:(%rsi),%rax
3172  DB  76,137,201                          ; mov           %r9,%rcx
3173  DB  255,224                             ; jmpq          *%rax
3174  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
3175  DB  68,41,193                           ; sub           %r8d,%ecx
3176  DB  192,225,3                           ; shl           $0x3,%cl
3177  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
3178  DB  72,211,232                          ; shr           %cl,%rax
3179  DB  196,225,249,110,192                 ; vmovq         %rax,%xmm0
3180  DB  196,226,125,33,192                  ; vpmovsxbd     %xmm0,%ymm0
3181  DB  196,194,125,44,26                   ; vmaskmovps    (%r10),%ymm0,%ymm3
3182  DB  235,135                             ; jmp           3496 <_sk_load_8888_hsw+0x1a>
3183
3184PUBLIC _sk_gather_8888_hsw
3185_sk_gather_8888_hsw LABEL PROC
3186  DB  72,173                              ; lods          %ds:(%rsi),%rax
3187  DB  76,139,8                            ; mov           (%rax),%r9
3188  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
3189  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
3190  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
3191  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
3192  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
3193  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
3194  DB  196,194,117,144,28,129              ; vpgatherdd    %ymm1,(%r9,%ymm0,4),%ymm3
3195  DB  197,229,219,5,163,26,0,0            ; vpand         0x1aa3(%rip),%ymm3,%ymm0        # 4fe0 <_sk_callback_hsw+0x6c4>
3196  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3197  DB  196,98,125,24,5,254,23,0,0          ; vbroadcastss  0x17fe(%rip),%ymm8        # 4d48 <_sk_callback_hsw+0x42c>
3198  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
3199  DB  196,226,101,0,13,168,26,0,0         ; vpshufb       0x1aa8(%rip),%ymm3,%ymm1        # 5000 <_sk_callback_hsw+0x6e4>
3200  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3201  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
3202  DB  196,226,101,0,21,182,26,0,0         ; vpshufb       0x1ab6(%rip),%ymm3,%ymm2        # 5020 <_sk_callback_hsw+0x704>
3203  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3204  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
3205  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
3206  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
3207  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
3208  DB  72,173                              ; lods          %ds:(%rsi),%rax
3209  DB  255,224                             ; jmpq          *%rax
3210
3211PUBLIC _sk_store_8888_hsw
3212_sk_store_8888_hsw LABEL PROC
3213  DB  73,137,201                          ; mov           %rcx,%r9
3214  DB  72,173                              ; lods          %ds:(%rsi),%rax
3215  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
3216  DB  76,3,16                             ; add           (%rax),%r10
3217  DB  196,98,125,24,5,174,23,0,0          ; vbroadcastss  0x17ae(%rip),%ymm8        # 4d4c <_sk_callback_hsw+0x430>
3218  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
3219  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
3220  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
3221  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3222  DB  196,193,45,114,242,8                ; vpslld        $0x8,%ymm10,%ymm10
3223  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
3224  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
3225  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3226  DB  196,193,45,114,242,16               ; vpslld        $0x10,%ymm10,%ymm10
3227  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
3228  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
3229  DB  196,193,61,114,240,24               ; vpslld        $0x18,%ymm8,%ymm8
3230  DB  196,65,45,235,192                   ; vpor          %ymm8,%ymm10,%ymm8
3231  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
3232  DB  77,133,192                          ; test          %r8,%r8
3233  DB  117,12                              ; jne           35f8 <_sk_store_8888_hsw+0x73>
3234  DB  196,65,124,17,2                     ; vmovups       %ymm8,(%r10)
3235  DB  72,173                              ; lods          %ds:(%rsi),%rax
3236  DB  76,137,201                          ; mov           %r9,%rcx
3237  DB  255,224                             ; jmpq          *%rax
3238  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
3239  DB  68,41,193                           ; sub           %r8d,%ecx
3240  DB  192,225,3                           ; shl           $0x3,%cl
3241  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
3242  DB  72,211,232                          ; shr           %cl,%rax
3243  DB  196,97,249,110,200                  ; vmovq         %rax,%xmm9
3244  DB  196,66,125,33,201                   ; vpmovsxbd     %xmm9,%ymm9
3245  DB  196,66,53,46,2                      ; vmaskmovps    %ymm8,%ymm9,(%r10)
3246  DB  235,211                             ; jmp           35f1 <_sk_store_8888_hsw+0x6c>
3247
3248PUBLIC _sk_load_f16_hsw
3249_sk_load_f16_hsw LABEL PROC
3250  DB  72,173                              ; lods          %ds:(%rsi),%rax
3251  DB  72,139,0                            ; mov           (%rax),%rax
3252  DB  77,133,192                          ; test          %r8,%r8
3253  DB  117,97                              ; jne           3689 <_sk_load_f16_hsw+0x6b>
3254  DB  197,121,16,4,208                    ; vmovupd       (%rax,%rdx,8),%xmm8
3255  DB  197,249,16,84,208,16                ; vmovupd       0x10(%rax,%rdx,8),%xmm2
3256  DB  197,249,16,92,208,32                ; vmovupd       0x20(%rax,%rdx,8),%xmm3
3257  DB  197,122,111,76,208,48               ; vmovdqu       0x30(%rax,%rdx,8),%xmm9
3258  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
3259  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
3260  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
3261  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
3262  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
3263  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
3264  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
3265  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
3266  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
3267  DB  196,226,125,19,192                  ; vcvtph2ps     %xmm0,%ymm0
3268  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
3269  DB  196,226,125,19,201                  ; vcvtph2ps     %xmm1,%ymm1
3270  DB  197,177,108,211                     ; vpunpcklqdq   %xmm3,%xmm9,%xmm2
3271  DB  196,226,125,19,210                  ; vcvtph2ps     %xmm2,%ymm2
3272  DB  197,177,109,219                     ; vpunpckhqdq   %xmm3,%xmm9,%xmm3
3273  DB  196,226,125,19,219                  ; vcvtph2ps     %xmm3,%ymm3
3274  DB  72,173                              ; lods          %ds:(%rsi),%rax
3275  DB  255,224                             ; jmpq          *%rax
3276  DB  197,123,16,4,208                    ; vmovsd        (%rax,%rdx,8),%xmm8
3277  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
3278  DB  73,131,248,1                        ; cmp           $0x1,%r8
3279  DB  116,79                              ; je            36e8 <_sk_load_f16_hsw+0xca>
3280  DB  197,57,22,68,208,8                  ; vmovhpd       0x8(%rax,%rdx,8),%xmm8,%xmm8
3281  DB  73,131,248,3                        ; cmp           $0x3,%r8
3282  DB  114,67                              ; jb            36e8 <_sk_load_f16_hsw+0xca>
3283  DB  197,251,16,84,208,16                ; vmovsd        0x10(%rax,%rdx,8),%xmm2
3284  DB  73,131,248,3                        ; cmp           $0x3,%r8
3285  DB  116,68                              ; je            36f5 <_sk_load_f16_hsw+0xd7>
3286  DB  197,233,22,84,208,24                ; vmovhpd       0x18(%rax,%rdx,8),%xmm2,%xmm2
3287  DB  73,131,248,5                        ; cmp           $0x5,%r8
3288  DB  114,56                              ; jb            36f5 <_sk_load_f16_hsw+0xd7>
3289  DB  197,251,16,92,208,32                ; vmovsd        0x20(%rax,%rdx,8),%xmm3
3290  DB  73,131,248,5                        ; cmp           $0x5,%r8
3291  DB  15,132,114,255,255,255              ; je            363f <_sk_load_f16_hsw+0x21>
3292  DB  197,225,22,92,208,40                ; vmovhpd       0x28(%rax,%rdx,8),%xmm3,%xmm3
3293  DB  73,131,248,7                        ; cmp           $0x7,%r8
3294  DB  15,130,98,255,255,255               ; jb            363f <_sk_load_f16_hsw+0x21>
3295  DB  197,122,126,76,208,48               ; vmovq         0x30(%rax,%rdx,8),%xmm9
3296  DB  233,87,255,255,255                  ; jmpq          363f <_sk_load_f16_hsw+0x21>
3297  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
3298  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
3299  DB  233,74,255,255,255                  ; jmpq          363f <_sk_load_f16_hsw+0x21>
3300  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
3301  DB  233,65,255,255,255                  ; jmpq          363f <_sk_load_f16_hsw+0x21>
3302
3303PUBLIC _sk_gather_f16_hsw
3304_sk_gather_f16_hsw LABEL PROC
3305  DB  72,173                              ; lods          %ds:(%rsi),%rax
3306  DB  76,139,8                            ; mov           (%rax),%r9
3307  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
3308  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
3309  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
3310  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
3311  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
3312  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
3313  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
3314  DB  196,194,237,144,28,193              ; vpgatherdq    %ymm2,(%r9,%xmm0,8),%ymm3
3315  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
3316  DB  196,194,245,144,20,193              ; vpgatherdq    %ymm1,(%r9,%xmm0,8),%ymm2
3317  DB  196,227,125,57,216,1                ; vextracti128  $0x1,%ymm3,%xmm0
3318  DB  196,227,125,57,209,1                ; vextracti128  $0x1,%ymm2,%xmm1
3319  DB  197,97,97,192                       ; vpunpcklwd    %xmm0,%xmm3,%xmm8
3320  DB  197,225,105,192                     ; vpunpckhwd    %xmm0,%xmm3,%xmm0
3321  DB  197,233,97,217                      ; vpunpcklwd    %xmm1,%xmm2,%xmm3
3322  DB  197,233,105,201                     ; vpunpckhwd    %xmm1,%xmm2,%xmm1
3323  DB  197,57,97,200                       ; vpunpcklwd    %xmm0,%xmm8,%xmm9
3324  DB  197,57,105,192                      ; vpunpckhwd    %xmm0,%xmm8,%xmm8
3325  DB  197,225,97,209                      ; vpunpcklwd    %xmm1,%xmm3,%xmm2
3326  DB  197,225,105,217                     ; vpunpckhwd    %xmm1,%xmm3,%xmm3
3327  DB  197,177,108,194                     ; vpunpcklqdq   %xmm2,%xmm9,%xmm0
3328  DB  196,226,125,19,192                  ; vcvtph2ps     %xmm0,%ymm0
3329  DB  197,177,109,202                     ; vpunpckhqdq   %xmm2,%xmm9,%xmm1
3330  DB  196,226,125,19,201                  ; vcvtph2ps     %xmm1,%ymm1
3331  DB  197,185,108,211                     ; vpunpcklqdq   %xmm3,%xmm8,%xmm2
3332  DB  196,226,125,19,210                  ; vcvtph2ps     %xmm2,%ymm2
3333  DB  197,185,109,219                     ; vpunpckhqdq   %xmm3,%xmm8,%xmm3
3334  DB  196,226,125,19,219                  ; vcvtph2ps     %xmm3,%ymm3
3335  DB  72,173                              ; lods          %ds:(%rsi),%rax
3336  DB  255,224                             ; jmpq          *%rax
3337
3338PUBLIC _sk_store_f16_hsw
3339_sk_store_f16_hsw LABEL PROC
3340  DB  72,173                              ; lods          %ds:(%rsi),%rax
3341  DB  72,139,0                            ; mov           (%rax),%rax
3342  DB  196,195,125,29,192,4                ; vcvtps2ph     $0x4,%ymm0,%xmm8
3343  DB  196,195,125,29,201,4                ; vcvtps2ph     $0x4,%ymm1,%xmm9
3344  DB  196,195,125,29,210,4                ; vcvtps2ph     $0x4,%ymm2,%xmm10
3345  DB  196,195,125,29,219,4                ; vcvtps2ph     $0x4,%ymm3,%xmm11
3346  DB  196,65,57,97,225                    ; vpunpcklwd    %xmm9,%xmm8,%xmm12
3347  DB  196,65,57,105,193                   ; vpunpckhwd    %xmm9,%xmm8,%xmm8
3348  DB  196,65,41,97,203                    ; vpunpcklwd    %xmm11,%xmm10,%xmm9
3349  DB  196,65,41,105,235                   ; vpunpckhwd    %xmm11,%xmm10,%xmm13
3350  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
3351  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
3352  DB  196,65,57,98,205                    ; vpunpckldq    %xmm13,%xmm8,%xmm9
3353  DB  196,65,57,106,197                   ; vpunpckhdq    %xmm13,%xmm8,%xmm8
3354  DB  77,133,192                          ; test          %r8,%r8
3355  DB  117,27                              ; jne           37ed <_sk_store_f16_hsw+0x65>
3356  DB  197,120,17,28,208                   ; vmovups       %xmm11,(%rax,%rdx,8)
3357  DB  197,120,17,84,208,16                ; vmovups       %xmm10,0x10(%rax,%rdx,8)
3358  DB  197,120,17,76,208,32                ; vmovups       %xmm9,0x20(%rax,%rdx,8)
3359  DB  197,122,127,68,208,48               ; vmovdqu       %xmm8,0x30(%rax,%rdx,8)
3360  DB  72,173                              ; lods          %ds:(%rsi),%rax
3361  DB  255,224                             ; jmpq          *%rax
3362  DB  197,121,214,28,208                  ; vmovq         %xmm11,(%rax,%rdx,8)
3363  DB  73,131,248,1                        ; cmp           $0x1,%r8
3364  DB  116,241                             ; je            37e9 <_sk_store_f16_hsw+0x61>
3365  DB  197,121,23,92,208,8                 ; vmovhpd       %xmm11,0x8(%rax,%rdx,8)
3366  DB  73,131,248,3                        ; cmp           $0x3,%r8
3367  DB  114,229                             ; jb            37e9 <_sk_store_f16_hsw+0x61>
3368  DB  197,121,214,84,208,16               ; vmovq         %xmm10,0x10(%rax,%rdx,8)
3369  DB  116,221                             ; je            37e9 <_sk_store_f16_hsw+0x61>
3370  DB  197,121,23,84,208,24                ; vmovhpd       %xmm10,0x18(%rax,%rdx,8)
3371  DB  73,131,248,5                        ; cmp           $0x5,%r8
3372  DB  114,209                             ; jb            37e9 <_sk_store_f16_hsw+0x61>
3373  DB  197,121,214,76,208,32               ; vmovq         %xmm9,0x20(%rax,%rdx,8)
3374  DB  116,201                             ; je            37e9 <_sk_store_f16_hsw+0x61>
3375  DB  197,121,23,76,208,40                ; vmovhpd       %xmm9,0x28(%rax,%rdx,8)
3376  DB  73,131,248,7                        ; cmp           $0x7,%r8
3377  DB  114,189                             ; jb            37e9 <_sk_store_f16_hsw+0x61>
3378  DB  197,121,214,68,208,48               ; vmovq         %xmm8,0x30(%rax,%rdx,8)
3379  DB  235,181                             ; jmp           37e9 <_sk_store_f16_hsw+0x61>
3380
3381PUBLIC _sk_load_u16_be_hsw
3382_sk_load_u16_be_hsw LABEL PROC
3383  DB  72,173                              ; lods          %ds:(%rsi),%rax
3384  DB  76,139,8                            ; mov           (%rax),%r9
3385  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
3386  DB  77,133,192                          ; test          %r8,%r8
3387  DB  15,133,204,0,0,0                    ; jne           3916 <_sk_load_u16_be_hsw+0xe2>
3388  DB  196,65,121,16,4,65                  ; vmovupd       (%r9,%rax,2),%xmm8
3389  DB  196,193,121,16,84,65,16             ; vmovupd       0x10(%r9,%rax,2),%xmm2
3390  DB  196,193,121,16,92,65,32             ; vmovupd       0x20(%r9,%rax,2),%xmm3
3391  DB  196,65,122,111,76,65,48             ; vmovdqu       0x30(%r9,%rax,2),%xmm9
3392  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
3393  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
3394  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
3395  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
3396  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
3397  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
3398  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
3399  DB  197,113,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm11
3400  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
3401  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
3402  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
3403  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
3404  DB  196,226,125,51,192                  ; vpmovzxwd     %xmm0,%ymm0
3405  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3406  DB  196,98,125,24,21,165,20,0,0         ; vbroadcastss  0x14a5(%rip),%ymm10        # 4d50 <_sk_callback_hsw+0x434>
3407  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
3408  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
3409  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
3410  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
3411  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
3412  DB  196,226,125,51,201                  ; vpmovzxwd     %xmm1,%ymm1
3413  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3414  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
3415  DB  196,193,49,108,211                  ; vpunpcklqdq   %xmm11,%xmm9,%xmm2
3416  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
3417  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
3418  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
3419  DB  196,226,125,51,210                  ; vpmovzxwd     %xmm2,%ymm2
3420  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3421  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
3422  DB  196,193,49,109,219                  ; vpunpckhqdq   %xmm11,%xmm9,%xmm3
3423  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
3424  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
3425  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
3426  DB  196,226,125,51,219                  ; vpmovzxwd     %xmm3,%ymm3
3427  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
3428  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
3429  DB  72,173                              ; lods          %ds:(%rsi),%rax
3430  DB  255,224                             ; jmpq          *%rax
3431  DB  196,65,123,16,4,65                  ; vmovsd        (%r9,%rax,2),%xmm8
3432  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
3433  DB  73,131,248,1                        ; cmp           $0x1,%r8
3434  DB  116,85                              ; je            397c <_sk_load_u16_be_hsw+0x148>
3435  DB  196,65,57,22,68,65,8                ; vmovhpd       0x8(%r9,%rax,2),%xmm8,%xmm8
3436  DB  73,131,248,3                        ; cmp           $0x3,%r8
3437  DB  114,72                              ; jb            397c <_sk_load_u16_be_hsw+0x148>
3438  DB  196,193,123,16,84,65,16             ; vmovsd        0x10(%r9,%rax,2),%xmm2
3439  DB  73,131,248,3                        ; cmp           $0x3,%r8
3440  DB  116,72                              ; je            3989 <_sk_load_u16_be_hsw+0x155>
3441  DB  196,193,105,22,84,65,24             ; vmovhpd       0x18(%r9,%rax,2),%xmm2,%xmm2
3442  DB  73,131,248,5                        ; cmp           $0x5,%r8
3443  DB  114,59                              ; jb            3989 <_sk_load_u16_be_hsw+0x155>
3444  DB  196,193,123,16,92,65,32             ; vmovsd        0x20(%r9,%rax,2),%xmm3
3445  DB  73,131,248,5                        ; cmp           $0x5,%r8
3446  DB  15,132,6,255,255,255                ; je            3865 <_sk_load_u16_be_hsw+0x31>
3447  DB  196,193,97,22,92,65,40              ; vmovhpd       0x28(%r9,%rax,2),%xmm3,%xmm3
3448  DB  73,131,248,7                        ; cmp           $0x7,%r8
3449  DB  15,130,245,254,255,255              ; jb            3865 <_sk_load_u16_be_hsw+0x31>
3450  DB  196,65,122,126,76,65,48             ; vmovq         0x30(%r9,%rax,2),%xmm9
3451  DB  233,233,254,255,255                 ; jmpq          3865 <_sk_load_u16_be_hsw+0x31>
3452  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
3453  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
3454  DB  233,220,254,255,255                 ; jmpq          3865 <_sk_load_u16_be_hsw+0x31>
3455  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
3456  DB  233,211,254,255,255                 ; jmpq          3865 <_sk_load_u16_be_hsw+0x31>
3457
3458PUBLIC _sk_load_rgb_u16_be_hsw
3459_sk_load_rgb_u16_be_hsw LABEL PROC
3460  DB  72,173                              ; lods          %ds:(%rsi),%rax
3461  DB  76,139,8                            ; mov           (%rax),%r9
3462  DB  72,141,4,82                         ; lea           (%rdx,%rdx,2),%rax
3463  DB  77,133,192                          ; test          %r8,%r8
3464  DB  15,133,204,0,0,0                    ; jne           3a70 <_sk_load_rgb_u16_be_hsw+0xde>
3465  DB  196,193,122,111,4,65                ; vmovdqu       (%r9,%rax,2),%xmm0
3466  DB  196,193,122,111,84,65,12            ; vmovdqu       0xc(%r9,%rax,2),%xmm2
3467  DB  196,193,122,111,76,65,24            ; vmovdqu       0x18(%r9,%rax,2),%xmm1
3468  DB  196,193,122,111,92,65,32            ; vmovdqu       0x20(%r9,%rax,2),%xmm3
3469  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
3470  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
3471  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
3472  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
3473  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
3474  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
3475  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
3476  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
3477  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
3478  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
3479  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
3480  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
3481  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
3482  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
3483  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
3484  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
3485  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
3486  DB  196,226,125,51,192                  ; vpmovzxwd     %xmm0,%ymm0
3487  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3488  DB  196,98,125,24,21,54,19,0,0          ; vbroadcastss  0x1336(%rip),%ymm10        # 4d54 <_sk_callback_hsw+0x438>
3489  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
3490  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
3491  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
3492  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
3493  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
3494  DB  196,226,125,51,201                  ; vpmovzxwd     %xmm1,%ymm1
3495  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3496  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
3497  DB  197,177,108,211                     ; vpunpcklqdq   %xmm3,%xmm9,%xmm2
3498  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
3499  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
3500  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
3501  DB  196,226,125,51,210                  ; vpmovzxwd     %xmm2,%ymm2
3502  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3503  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
3504  DB  72,173                              ; lods          %ds:(%rsi),%rax
3505  DB  196,226,125,24,29,234,18,0,0        ; vbroadcastss  0x12ea(%rip),%ymm3        # 4d58 <_sk_callback_hsw+0x43c>
3506  DB  255,224                             ; jmpq          *%rax
3507  DB  196,193,121,110,4,65                ; vmovd         (%r9,%rax,2),%xmm0
3508  DB  196,193,121,196,68,65,4,2           ; vpinsrw       $0x2,0x4(%r9,%rax,2),%xmm0,%xmm0
3509  DB  73,131,248,1                        ; cmp           $0x1,%r8
3510  DB  117,5                               ; jne           3a89 <_sk_load_rgb_u16_be_hsw+0xf7>
3511  DB  233,79,255,255,255                  ; jmpq          39d8 <_sk_load_rgb_u16_be_hsw+0x46>
3512  DB  196,193,121,110,76,65,6             ; vmovd         0x6(%r9,%rax,2),%xmm1
3513  DB  196,65,113,196,68,65,10,2           ; vpinsrw       $0x2,0xa(%r9,%rax,2),%xmm1,%xmm8
3514  DB  73,131,248,3                        ; cmp           $0x3,%r8
3515  DB  114,26                              ; jb            3ab8 <_sk_load_rgb_u16_be_hsw+0x126>
3516  DB  196,193,121,110,76,65,12            ; vmovd         0xc(%r9,%rax,2),%xmm1
3517  DB  196,193,113,196,84,65,16,2          ; vpinsrw       $0x2,0x10(%r9,%rax,2),%xmm1,%xmm2
3518  DB  73,131,248,3                        ; cmp           $0x3,%r8
3519  DB  117,10                              ; jne           3abd <_sk_load_rgb_u16_be_hsw+0x12b>
3520  DB  233,32,255,255,255                  ; jmpq          39d8 <_sk_load_rgb_u16_be_hsw+0x46>
3521  DB  233,27,255,255,255                  ; jmpq          39d8 <_sk_load_rgb_u16_be_hsw+0x46>
3522  DB  196,193,121,110,76,65,18            ; vmovd         0x12(%r9,%rax,2),%xmm1
3523  DB  196,65,113,196,76,65,22,2           ; vpinsrw       $0x2,0x16(%r9,%rax,2),%xmm1,%xmm9
3524  DB  73,131,248,5                        ; cmp           $0x5,%r8
3525  DB  114,26                              ; jb            3aec <_sk_load_rgb_u16_be_hsw+0x15a>
3526  DB  196,193,121,110,76,65,24            ; vmovd         0x18(%r9,%rax,2),%xmm1
3527  DB  196,193,113,196,76,65,28,2          ; vpinsrw       $0x2,0x1c(%r9,%rax,2),%xmm1,%xmm1
3528  DB  73,131,248,5                        ; cmp           $0x5,%r8
3529  DB  117,10                              ; jne           3af1 <_sk_load_rgb_u16_be_hsw+0x15f>
3530  DB  233,236,254,255,255                 ; jmpq          39d8 <_sk_load_rgb_u16_be_hsw+0x46>
3531  DB  233,231,254,255,255                 ; jmpq          39d8 <_sk_load_rgb_u16_be_hsw+0x46>
3532  DB  196,193,121,110,92,65,30            ; vmovd         0x1e(%r9,%rax,2),%xmm3
3533  DB  196,65,97,196,92,65,34,2            ; vpinsrw       $0x2,0x22(%r9,%rax,2),%xmm3,%xmm11
3534  DB  73,131,248,7                        ; cmp           $0x7,%r8
3535  DB  114,20                              ; jb            3b1a <_sk_load_rgb_u16_be_hsw+0x188>
3536  DB  196,193,121,110,92,65,36            ; vmovd         0x24(%r9,%rax,2),%xmm3
3537  DB  196,193,97,196,92,65,40,2           ; vpinsrw       $0x2,0x28(%r9,%rax,2),%xmm3,%xmm3
3538  DB  233,190,254,255,255                 ; jmpq          39d8 <_sk_load_rgb_u16_be_hsw+0x46>
3539  DB  233,185,254,255,255                 ; jmpq          39d8 <_sk_load_rgb_u16_be_hsw+0x46>
3540
3541PUBLIC _sk_store_u16_be_hsw
3542_sk_store_u16_be_hsw LABEL PROC
3543  DB  72,173                              ; lods          %ds:(%rsi),%rax
3544  DB  76,139,8                            ; mov           (%rax),%r9
3545  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
3546  DB  196,98,125,24,5,39,18,0,0           ; vbroadcastss  0x1227(%rip),%ymm8        # 4d5c <_sk_callback_hsw+0x440>
3547  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
3548  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
3549  DB  196,67,125,25,202,1                 ; vextractf128  $0x1,%ymm9,%xmm10
3550  DB  196,66,49,43,202                    ; vpackusdw     %xmm10,%xmm9,%xmm9
3551  DB  196,193,41,113,241,8                ; vpsllw        $0x8,%xmm9,%xmm10
3552  DB  196,193,49,113,209,8                ; vpsrlw        $0x8,%xmm9,%xmm9
3553  DB  196,65,41,235,201                   ; vpor          %xmm9,%xmm10,%xmm9
3554  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
3555  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3556  DB  196,67,125,25,211,1                 ; vextractf128  $0x1,%ymm10,%xmm11
3557  DB  196,66,41,43,211                    ; vpackusdw     %xmm11,%xmm10,%xmm10
3558  DB  196,193,33,113,242,8                ; vpsllw        $0x8,%xmm10,%xmm11
3559  DB  196,193,41,113,210,8                ; vpsrlw        $0x8,%xmm10,%xmm10
3560  DB  196,65,33,235,210                   ; vpor          %xmm10,%xmm11,%xmm10
3561  DB  196,65,108,89,216                   ; vmulps        %ymm8,%ymm2,%ymm11
3562  DB  196,65,125,91,219                   ; vcvtps2dq     %ymm11,%ymm11
3563  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
3564  DB  196,66,33,43,220                    ; vpackusdw     %xmm12,%xmm11,%xmm11
3565  DB  196,193,25,113,243,8                ; vpsllw        $0x8,%xmm11,%xmm12
3566  DB  196,193,33,113,211,8                ; vpsrlw        $0x8,%xmm11,%xmm11
3567  DB  196,65,25,235,219                   ; vpor          %xmm11,%xmm12,%xmm11
3568  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
3569  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
3570  DB  196,67,125,25,196,1                 ; vextractf128  $0x1,%ymm8,%xmm12
3571  DB  196,66,57,43,196                    ; vpackusdw     %xmm12,%xmm8,%xmm8
3572  DB  196,193,25,113,240,8                ; vpsllw        $0x8,%xmm8,%xmm12
3573  DB  196,193,57,113,208,8                ; vpsrlw        $0x8,%xmm8,%xmm8
3574  DB  196,65,25,235,192                   ; vpor          %xmm8,%xmm12,%xmm8
3575  DB  196,65,49,97,226                    ; vpunpcklwd    %xmm10,%xmm9,%xmm12
3576  DB  196,65,49,105,234                   ; vpunpckhwd    %xmm10,%xmm9,%xmm13
3577  DB  196,65,33,97,200                    ; vpunpcklwd    %xmm8,%xmm11,%xmm9
3578  DB  196,65,33,105,192                   ; vpunpckhwd    %xmm8,%xmm11,%xmm8
3579  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
3580  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
3581  DB  196,65,17,98,200                    ; vpunpckldq    %xmm8,%xmm13,%xmm9
3582  DB  196,65,17,106,192                   ; vpunpckhdq    %xmm8,%xmm13,%xmm8
3583  DB  77,133,192                          ; test          %r8,%r8
3584  DB  117,31                              ; jne           3c19 <_sk_store_u16_be_hsw+0xfa>
3585  DB  196,65,120,17,28,65                 ; vmovups       %xmm11,(%r9,%rax,2)
3586  DB  196,65,120,17,84,65,16              ; vmovups       %xmm10,0x10(%r9,%rax,2)
3587  DB  196,65,120,17,76,65,32              ; vmovups       %xmm9,0x20(%r9,%rax,2)
3588  DB  196,65,122,127,68,65,48             ; vmovdqu       %xmm8,0x30(%r9,%rax,2)
3589  DB  72,173                              ; lods          %ds:(%rsi),%rax
3590  DB  255,224                             ; jmpq          *%rax
3591  DB  196,65,121,214,28,65                ; vmovq         %xmm11,(%r9,%rax,2)
3592  DB  73,131,248,1                        ; cmp           $0x1,%r8
3593  DB  116,240                             ; je            3c15 <_sk_store_u16_be_hsw+0xf6>
3594  DB  196,65,121,23,92,65,8               ; vmovhpd       %xmm11,0x8(%r9,%rax,2)
3595  DB  73,131,248,3                        ; cmp           $0x3,%r8
3596  DB  114,227                             ; jb            3c15 <_sk_store_u16_be_hsw+0xf6>
3597  DB  196,65,121,214,84,65,16             ; vmovq         %xmm10,0x10(%r9,%rax,2)
3598  DB  116,218                             ; je            3c15 <_sk_store_u16_be_hsw+0xf6>
3599  DB  196,65,121,23,84,65,24              ; vmovhpd       %xmm10,0x18(%r9,%rax,2)
3600  DB  73,131,248,5                        ; cmp           $0x5,%r8
3601  DB  114,205                             ; jb            3c15 <_sk_store_u16_be_hsw+0xf6>
3602  DB  196,65,121,214,76,65,32             ; vmovq         %xmm9,0x20(%r9,%rax,2)
3603  DB  116,196                             ; je            3c15 <_sk_store_u16_be_hsw+0xf6>
3604  DB  196,65,121,23,76,65,40              ; vmovhpd       %xmm9,0x28(%r9,%rax,2)
3605  DB  73,131,248,7                        ; cmp           $0x7,%r8
3606  DB  114,183                             ; jb            3c15 <_sk_store_u16_be_hsw+0xf6>
3607  DB  196,65,121,214,68,65,48             ; vmovq         %xmm8,0x30(%r9,%rax,2)
3608  DB  235,174                             ; jmp           3c15 <_sk_store_u16_be_hsw+0xf6>
3609
3610PUBLIC _sk_load_f32_hsw
3611_sk_load_f32_hsw LABEL PROC
3612  DB  72,173                              ; lods          %ds:(%rsi),%rax
3613  DB  73,131,248,7                        ; cmp           $0x7,%r8
3614  DB  119,110                             ; ja            3cdd <_sk_load_f32_hsw+0x76>
3615  DB  76,139,8                            ; mov           (%rax),%r9
3616  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
3617  DB  76,141,29,135,0,0,0                 ; lea           0x87(%rip),%r11        # 3d08 <_sk_load_f32_hsw+0xa1>
3618  DB  75,99,4,131                         ; movslq        (%r11,%r8,4),%rax
3619  DB  76,1,216                            ; add           %r11,%rax
3620  DB  255,224                             ; jmpq          *%rax
3621  DB  196,3,125,24,68,145,112,1           ; vinsertf128   $0x1,0x70(%r9,%r10,4),%ymm0,%ymm8
3622  DB  196,131,125,24,92,145,96,1          ; vinsertf128   $0x1,0x60(%r9,%r10,4),%ymm0,%ymm3
3623  DB  196,131,125,24,76,145,80,1          ; vinsertf128   $0x1,0x50(%r9,%r10,4),%ymm0,%ymm1
3624  DB  196,131,125,24,84,145,64,1          ; vinsertf128   $0x1,0x40(%r9,%r10,4),%ymm0,%ymm2
3625  DB  196,129,121,16,68,145,48            ; vmovupd       0x30(%r9,%r10,4),%xmm0
3626  DB  196,195,125,13,192,12               ; vblendpd      $0xc,%ymm8,%ymm0,%ymm0
3627  DB  196,1,121,16,68,145,32              ; vmovupd       0x20(%r9,%r10,4),%xmm8
3628  DB  196,99,61,13,203,12                 ; vblendpd      $0xc,%ymm3,%ymm8,%ymm9
3629  DB  196,129,121,16,92,145,16            ; vmovupd       0x10(%r9,%r10,4),%xmm3
3630  DB  196,99,101,13,209,12                ; vblendpd      $0xc,%ymm1,%ymm3,%ymm10
3631  DB  196,129,121,16,12,145               ; vmovupd       (%r9,%r10,4),%xmm1
3632  DB  196,227,117,13,202,12               ; vblendpd      $0xc,%ymm2,%ymm1,%ymm1
3633  DB  196,193,116,20,210                  ; vunpcklps     %ymm10,%ymm1,%ymm2
3634  DB  196,193,116,21,218                  ; vunpckhps     %ymm10,%ymm1,%ymm3
3635  DB  197,180,20,200                      ; vunpcklps     %ymm0,%ymm9,%ymm1
3636  DB  197,52,21,192                       ; vunpckhps     %ymm0,%ymm9,%ymm8
3637  DB  197,237,20,193                      ; vunpcklpd     %ymm1,%ymm2,%ymm0
3638  DB  197,237,21,201                      ; vunpckhpd     %ymm1,%ymm2,%ymm1
3639  DB  196,193,101,20,208                  ; vunpcklpd     %ymm8,%ymm3,%ymm2
3640  DB  196,193,101,21,216                  ; vunpckhpd     %ymm8,%ymm3,%ymm3
3641  DB  72,173                              ; lods          %ds:(%rsi),%rax
3642  DB  255,224                             ; jmpq          *%rax
3643  DB  15,31,0                             ; nopl          (%rax)
3644  DB  130                                 ; (bad)
3645  DB  255                                 ; (bad)
3646  DB  255                                 ; (bad)
3647  DB  255,201                             ; dec           %ecx
3648  DB  255                                 ; (bad)
3649  DB  255                                 ; (bad)
3650  DB  255                                 ; (bad)
3651  DB  188,255,255,255,175                 ; mov           $0xafffffff,%esp
3652  DB  255                                 ; (bad)
3653  DB  255                                 ; (bad)
3654  DB  255,162,255,255,255,154             ; jmpq          *-0x65000001(%rdx)
3655  DB  255                                 ; (bad)
3656  DB  255                                 ; (bad)
3657  DB  255,146,255,255,255,138             ; callq         *-0x75000001(%rdx)
3658  DB  255                                 ; (bad)
3659  DB  255                                 ; (bad)
3660  DB  255                                 ; .byte         0xff
3661
3662PUBLIC _sk_store_f32_hsw
3663_sk_store_f32_hsw LABEL PROC
3664  DB  72,173                              ; lods          %ds:(%rsi),%rax
3665  DB  76,139,8                            ; mov           (%rax),%r9
3666  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
3667  DB  197,124,20,193                      ; vunpcklps     %ymm1,%ymm0,%ymm8
3668  DB  197,124,21,217                      ; vunpckhps     %ymm1,%ymm0,%ymm11
3669  DB  197,108,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm9
3670  DB  197,108,21,227                      ; vunpckhps     %ymm3,%ymm2,%ymm12
3671  DB  196,65,61,20,209                    ; vunpcklpd     %ymm9,%ymm8,%ymm10
3672  DB  196,65,61,21,201                    ; vunpckhpd     %ymm9,%ymm8,%ymm9
3673  DB  196,65,37,20,196                    ; vunpcklpd     %ymm12,%ymm11,%ymm8
3674  DB  196,65,37,21,220                    ; vunpckhpd     %ymm12,%ymm11,%ymm11
3675  DB  77,133,192                          ; test          %r8,%r8
3676  DB  117,55                              ; jne           3d95 <_sk_store_f32_hsw+0x6d>
3677  DB  196,67,45,24,225,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm12
3678  DB  196,67,61,24,235,1                  ; vinsertf128   $0x1,%xmm11,%ymm8,%ymm13
3679  DB  196,67,45,6,201,49                  ; vperm2f128    $0x31,%ymm9,%ymm10,%ymm9
3680  DB  196,67,61,6,195,49                  ; vperm2f128    $0x31,%ymm11,%ymm8,%ymm8
3681  DB  196,65,125,17,36,129                ; vmovupd       %ymm12,(%r9,%rax,4)
3682  DB  196,65,125,17,108,129,32            ; vmovupd       %ymm13,0x20(%r9,%rax,4)
3683  DB  196,65,125,17,76,129,64             ; vmovupd       %ymm9,0x40(%r9,%rax,4)
3684  DB  196,65,125,17,68,129,96             ; vmovupd       %ymm8,0x60(%r9,%rax,4)
3685  DB  72,173                              ; lods          %ds:(%rsi),%rax
3686  DB  255,224                             ; jmpq          *%rax
3687  DB  196,65,121,17,20,129                ; vmovupd       %xmm10,(%r9,%rax,4)
3688  DB  73,131,248,1                        ; cmp           $0x1,%r8
3689  DB  116,240                             ; je            3d91 <_sk_store_f32_hsw+0x69>
3690  DB  196,65,121,17,76,129,16             ; vmovupd       %xmm9,0x10(%r9,%rax,4)
3691  DB  73,131,248,3                        ; cmp           $0x3,%r8
3692  DB  114,227                             ; jb            3d91 <_sk_store_f32_hsw+0x69>
3693  DB  196,65,121,17,68,129,32             ; vmovupd       %xmm8,0x20(%r9,%rax,4)
3694  DB  116,218                             ; je            3d91 <_sk_store_f32_hsw+0x69>
3695  DB  196,65,121,17,92,129,48             ; vmovupd       %xmm11,0x30(%r9,%rax,4)
3696  DB  73,131,248,5                        ; cmp           $0x5,%r8
3697  DB  114,205                             ; jb            3d91 <_sk_store_f32_hsw+0x69>
3698  DB  196,67,125,25,84,129,64,1           ; vextractf128  $0x1,%ymm10,0x40(%r9,%rax,4)
3699  DB  116,195                             ; je            3d91 <_sk_store_f32_hsw+0x69>
3700  DB  196,67,125,25,76,129,80,1           ; vextractf128  $0x1,%ymm9,0x50(%r9,%rax,4)
3701  DB  73,131,248,7                        ; cmp           $0x7,%r8
3702  DB  114,181                             ; jb            3d91 <_sk_store_f32_hsw+0x69>
3703  DB  196,67,125,25,68,129,96,1           ; vextractf128  $0x1,%ymm8,0x60(%r9,%rax,4)
3704  DB  235,171                             ; jmp           3d91 <_sk_store_f32_hsw+0x69>
3705
3706PUBLIC _sk_clamp_x_hsw
3707_sk_clamp_x_hsw LABEL PROC
3708  DB  72,173                              ; lods          %ds:(%rsi),%rax
3709  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3710  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
3711  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
3712  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
3713  DB  72,173                              ; lods          %ds:(%rsi),%rax
3714  DB  255,224                             ; jmpq          *%rax
3715
3716PUBLIC _sk_clamp_y_hsw
3717_sk_clamp_y_hsw LABEL PROC
3718  DB  72,173                              ; lods          %ds:(%rsi),%rax
3719  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3720  DB  197,188,95,201                      ; vmaxps        %ymm1,%ymm8,%ymm1
3721  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
3722  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
3723  DB  72,173                              ; lods          %ds:(%rsi),%rax
3724  DB  255,224                             ; jmpq          *%rax
3725
3726PUBLIC _sk_repeat_x_hsw
3727_sk_repeat_x_hsw LABEL PROC
3728  DB  72,173                              ; lods          %ds:(%rsi),%rax
3729  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3730  DB  196,65,124,94,193                   ; vdivps        %ymm9,%ymm0,%ymm8
3731  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
3732  DB  196,98,53,172,192                   ; vfnmadd213ps  %ymm0,%ymm9,%ymm8
3733  DB  72,173                              ; lods          %ds:(%rsi),%rax
3734  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3735  DB  255,224                             ; jmpq          *%rax
3736
3737PUBLIC _sk_repeat_y_hsw
3738_sk_repeat_y_hsw LABEL PROC
3739  DB  72,173                              ; lods          %ds:(%rsi),%rax
3740  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3741  DB  196,65,116,94,193                   ; vdivps        %ymm9,%ymm1,%ymm8
3742  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
3743  DB  196,98,53,172,193                   ; vfnmadd213ps  %ymm1,%ymm9,%ymm8
3744  DB  72,173                              ; lods          %ds:(%rsi),%rax
3745  DB  197,124,41,193                      ; vmovaps       %ymm8,%ymm1
3746  DB  255,224                             ; jmpq          *%rax
3747
3748PUBLIC _sk_mirror_x_hsw
3749_sk_mirror_x_hsw LABEL PROC
3750  DB  72,173                              ; lods          %ds:(%rsi),%rax
3751  DB  197,122,16,0                        ; vmovss        (%rax),%xmm8
3752  DB  196,66,125,24,200                   ; vbroadcastss  %xmm8,%ymm9
3753  DB  196,65,124,92,209                   ; vsubps        %ymm9,%ymm0,%ymm10
3754  DB  196,193,58,88,192                   ; vaddss        %xmm8,%xmm8,%xmm0
3755  DB  196,226,125,24,192                  ; vbroadcastss  %xmm0,%ymm0
3756  DB  197,44,94,192                       ; vdivps        %ymm0,%ymm10,%ymm8
3757  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
3758  DB  196,66,125,172,194                  ; vfnmadd213ps  %ymm10,%ymm0,%ymm8
3759  DB  196,193,60,92,193                   ; vsubps        %ymm9,%ymm8,%ymm0
3760  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3761  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
3762  DB  197,188,84,192                      ; vandps        %ymm0,%ymm8,%ymm0
3763  DB  72,173                              ; lods          %ds:(%rsi),%rax
3764  DB  255,224                             ; jmpq          *%rax
3765
3766PUBLIC _sk_mirror_y_hsw
3767_sk_mirror_y_hsw LABEL PROC
3768  DB  72,173                              ; lods          %ds:(%rsi),%rax
3769  DB  197,122,16,0                        ; vmovss        (%rax),%xmm8
3770  DB  196,66,125,24,200                   ; vbroadcastss  %xmm8,%ymm9
3771  DB  196,65,116,92,209                   ; vsubps        %ymm9,%ymm1,%ymm10
3772  DB  196,193,58,88,200                   ; vaddss        %xmm8,%xmm8,%xmm1
3773  DB  196,226,125,24,201                  ; vbroadcastss  %xmm1,%ymm1
3774  DB  197,44,94,193                       ; vdivps        %ymm1,%ymm10,%ymm8
3775  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
3776  DB  196,66,117,172,194                  ; vfnmadd213ps  %ymm10,%ymm1,%ymm8
3777  DB  196,193,60,92,201                   ; vsubps        %ymm9,%ymm8,%ymm1
3778  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3779  DB  197,60,92,193                       ; vsubps        %ymm1,%ymm8,%ymm8
3780  DB  197,188,84,201                      ; vandps        %ymm1,%ymm8,%ymm1
3781  DB  72,173                              ; lods          %ds:(%rsi),%rax
3782  DB  255,224                             ; jmpq          *%rax
3783
3784PUBLIC _sk_clamp_x_1_hsw
3785_sk_clamp_x_1_hsw LABEL PROC
3786  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3787  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
3788  DB  196,98,125,24,5,122,14,0,0          ; vbroadcastss  0xe7a(%rip),%ymm8        # 4d60 <_sk_callback_hsw+0x444>
3789  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
3790  DB  72,173                              ; lods          %ds:(%rsi),%rax
3791  DB  255,224                             ; jmpq          *%rax
3792
3793PUBLIC _sk_repeat_x_1_hsw
3794_sk_repeat_x_1_hsw LABEL PROC
3795  DB  196,99,125,8,192,1                  ; vroundps      $0x1,%ymm0,%ymm8
3796  DB  196,193,124,92,192                  ; vsubps        %ymm8,%ymm0,%ymm0
3797  DB  72,173                              ; lods          %ds:(%rsi),%rax
3798  DB  255,224                             ; jmpq          *%rax
3799
3800PUBLIC _sk_mirror_x_1_hsw
3801_sk_mirror_x_1_hsw LABEL PROC
3802  DB  196,98,125,24,5,93,14,0,0           ; vbroadcastss  0xe5d(%rip),%ymm8        # 4d64 <_sk_callback_hsw+0x448>
3803  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
3804  DB  196,98,125,24,13,83,14,0,0          ; vbroadcastss  0xe53(%rip),%ymm9        # 4d68 <_sk_callback_hsw+0x44c>
3805  DB  196,65,124,89,201                   ; vmulps        %ymm9,%ymm0,%ymm9
3806  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
3807  DB  196,65,52,88,201                    ; vaddps        %ymm9,%ymm9,%ymm9
3808  DB  196,193,124,92,193                  ; vsubps        %ymm9,%ymm0,%ymm0
3809  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
3810  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3811  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
3812  DB  197,188,84,192                      ; vandps        %ymm0,%ymm8,%ymm0
3813  DB  72,173                              ; lods          %ds:(%rsi),%rax
3814  DB  255,224                             ; jmpq          *%rax
3815
3816PUBLIC _sk_luminance_to_alpha_hsw
3817_sk_luminance_to_alpha_hsw LABEL PROC
3818  DB  196,226,125,24,29,35,14,0,0         ; vbroadcastss  0xe23(%rip),%ymm3        # 4d6c <_sk_callback_hsw+0x450>
3819  DB  196,98,125,24,5,30,14,0,0           ; vbroadcastss  0xe1e(%rip),%ymm8        # 4d70 <_sk_callback_hsw+0x454>
3820  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
3821  DB  196,226,125,184,203                 ; vfmadd231ps   %ymm3,%ymm0,%ymm1
3822  DB  196,226,125,24,29,15,14,0,0         ; vbroadcastss  0xe0f(%rip),%ymm3        # 4d74 <_sk_callback_hsw+0x458>
3823  DB  196,226,109,168,217                 ; vfmadd213ps   %ymm1,%ymm2,%ymm3
3824  DB  72,173                              ; lods          %ds:(%rsi),%rax
3825  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
3826  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
3827  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
3828  DB  255,224                             ; jmpq          *%rax
3829
3830PUBLIC _sk_matrix_2x3_hsw
3831_sk_matrix_2x3_hsw LABEL PROC
3832  DB  72,173                              ; lods          %ds:(%rsi),%rax
3833  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3834  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
3835  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
3836  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
3837  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
3838  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
3839  DB  196,98,125,24,88,12                 ; vbroadcastss  0xc(%rax),%ymm11
3840  DB  196,98,125,24,72,20                 ; vbroadcastss  0x14(%rax),%ymm9
3841  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
3842  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
3843  DB  72,173                              ; lods          %ds:(%rsi),%rax
3844  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3845  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
3846  DB  255,224                             ; jmpq          *%rax
3847
3848PUBLIC _sk_matrix_3x4_hsw
3849_sk_matrix_3x4_hsw LABEL PROC
3850  DB  72,173                              ; lods          %ds:(%rsi),%rax
3851  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3852  DB  196,98,125,24,80,12                 ; vbroadcastss  0xc(%rax),%ymm10
3853  DB  196,98,125,24,88,24                 ; vbroadcastss  0x18(%rax),%ymm11
3854  DB  196,98,125,24,64,36                 ; vbroadcastss  0x24(%rax),%ymm8
3855  DB  196,66,109,184,195                  ; vfmadd231ps   %ymm11,%ymm2,%ymm8
3856  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
3857  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
3858  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
3859  DB  196,98,125,24,88,16                 ; vbroadcastss  0x10(%rax),%ymm11
3860  DB  196,98,125,24,96,28                 ; vbroadcastss  0x1c(%rax),%ymm12
3861  DB  196,98,125,24,72,40                 ; vbroadcastss  0x28(%rax),%ymm9
3862  DB  196,66,109,184,204                  ; vfmadd231ps   %ymm12,%ymm2,%ymm9
3863  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
3864  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
3865  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
3866  DB  196,98,125,24,96,20                 ; vbroadcastss  0x14(%rax),%ymm12
3867  DB  196,98,125,24,104,32                ; vbroadcastss  0x20(%rax),%ymm13
3868  DB  196,98,125,24,80,44                 ; vbroadcastss  0x2c(%rax),%ymm10
3869  DB  196,66,109,184,213                  ; vfmadd231ps   %ymm13,%ymm2,%ymm10
3870  DB  196,66,117,184,212                  ; vfmadd231ps   %ymm12,%ymm1,%ymm10
3871  DB  196,66,125,184,211                  ; vfmadd231ps   %ymm11,%ymm0,%ymm10
3872  DB  72,173                              ; lods          %ds:(%rsi),%rax
3873  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3874  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
3875  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
3876  DB  255,224                             ; jmpq          *%rax
3877
3878PUBLIC _sk_matrix_4x5_hsw
3879_sk_matrix_4x5_hsw LABEL PROC
3880  DB  72,173                              ; lods          %ds:(%rsi),%rax
3881  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3882  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
3883  DB  196,98,125,24,88,32                 ; vbroadcastss  0x20(%rax),%ymm11
3884  DB  196,98,125,24,96,48                 ; vbroadcastss  0x30(%rax),%ymm12
3885  DB  196,98,125,24,64,64                 ; vbroadcastss  0x40(%rax),%ymm8
3886  DB  196,66,101,184,196                  ; vfmadd231ps   %ymm12,%ymm3,%ymm8
3887  DB  196,66,109,184,195                  ; vfmadd231ps   %ymm11,%ymm2,%ymm8
3888  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
3889  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
3890  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
3891  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
3892  DB  196,98,125,24,96,36                 ; vbroadcastss  0x24(%rax),%ymm12
3893  DB  196,98,125,24,104,52                ; vbroadcastss  0x34(%rax),%ymm13
3894  DB  196,98,125,24,72,68                 ; vbroadcastss  0x44(%rax),%ymm9
3895  DB  196,66,101,184,205                  ; vfmadd231ps   %ymm13,%ymm3,%ymm9
3896  DB  196,66,109,184,204                  ; vfmadd231ps   %ymm12,%ymm2,%ymm9
3897  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
3898  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
3899  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
3900  DB  196,98,125,24,96,24                 ; vbroadcastss  0x18(%rax),%ymm12
3901  DB  196,98,125,24,104,40                ; vbroadcastss  0x28(%rax),%ymm13
3902  DB  196,98,125,24,112,56                ; vbroadcastss  0x38(%rax),%ymm14
3903  DB  196,98,125,24,80,72                 ; vbroadcastss  0x48(%rax),%ymm10
3904  DB  196,66,101,184,214                  ; vfmadd231ps   %ymm14,%ymm3,%ymm10
3905  DB  196,66,109,184,213                  ; vfmadd231ps   %ymm13,%ymm2,%ymm10
3906  DB  196,66,117,184,212                  ; vfmadd231ps   %ymm12,%ymm1,%ymm10
3907  DB  196,66,125,184,211                  ; vfmadd231ps   %ymm11,%ymm0,%ymm10
3908  DB  196,98,125,24,96,12                 ; vbroadcastss  0xc(%rax),%ymm12
3909  DB  196,98,125,24,104,28                ; vbroadcastss  0x1c(%rax),%ymm13
3910  DB  196,98,125,24,112,44                ; vbroadcastss  0x2c(%rax),%ymm14
3911  DB  196,98,125,24,120,60                ; vbroadcastss  0x3c(%rax),%ymm15
3912  DB  196,98,125,24,88,76                 ; vbroadcastss  0x4c(%rax),%ymm11
3913  DB  196,66,101,184,223                  ; vfmadd231ps   %ymm15,%ymm3,%ymm11
3914  DB  196,66,109,184,222                  ; vfmadd231ps   %ymm14,%ymm2,%ymm11
3915  DB  196,66,117,184,221                  ; vfmadd231ps   %ymm13,%ymm1,%ymm11
3916  DB  196,66,125,184,220                  ; vfmadd231ps   %ymm12,%ymm0,%ymm11
3917  DB  72,173                              ; lods          %ds:(%rsi),%rax
3918  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3919  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
3920  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
3921  DB  197,124,41,219                      ; vmovaps       %ymm11,%ymm3
3922  DB  255,224                             ; jmpq          *%rax
3923
3924PUBLIC _sk_matrix_4x3_hsw
3925_sk_matrix_4x3_hsw LABEL PROC
3926  DB  72,173                              ; lods          %ds:(%rsi),%rax
3927  DB  196,226,125,24,16                   ; vbroadcastss  (%rax),%ymm2
3928  DB  196,226,125,24,88,16                ; vbroadcastss  0x10(%rax),%ymm3
3929  DB  196,98,125,24,64,32                 ; vbroadcastss  0x20(%rax),%ymm8
3930  DB  196,98,117,184,195                  ; vfmadd231ps   %ymm3,%ymm1,%ymm8
3931  DB  196,98,125,184,194                  ; vfmadd231ps   %ymm2,%ymm0,%ymm8
3932  DB  196,226,125,24,80,4                 ; vbroadcastss  0x4(%rax),%ymm2
3933  DB  196,226,125,24,88,20                ; vbroadcastss  0x14(%rax),%ymm3
3934  DB  196,98,125,24,72,36                 ; vbroadcastss  0x24(%rax),%ymm9
3935  DB  196,98,117,184,203                  ; vfmadd231ps   %ymm3,%ymm1,%ymm9
3936  DB  196,98,125,184,202                  ; vfmadd231ps   %ymm2,%ymm0,%ymm9
3937  DB  196,226,125,24,88,8                 ; vbroadcastss  0x8(%rax),%ymm3
3938  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
3939  DB  196,226,125,24,80,40                ; vbroadcastss  0x28(%rax),%ymm2
3940  DB  196,194,117,184,210                 ; vfmadd231ps   %ymm10,%ymm1,%ymm2
3941  DB  196,226,125,184,211                 ; vfmadd231ps   %ymm3,%ymm0,%ymm2
3942  DB  196,98,125,24,80,12                 ; vbroadcastss  0xc(%rax),%ymm10
3943  DB  196,98,125,24,88,28                 ; vbroadcastss  0x1c(%rax),%ymm11
3944  DB  196,226,125,24,88,44                ; vbroadcastss  0x2c(%rax),%ymm3
3945  DB  196,194,117,184,219                 ; vfmadd231ps   %ymm11,%ymm1,%ymm3
3946  DB  196,194,125,184,218                 ; vfmadd231ps   %ymm10,%ymm0,%ymm3
3947  DB  72,173                              ; lods          %ds:(%rsi),%rax
3948  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
3949  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
3950  DB  255,224                             ; jmpq          *%rax
3951
3952PUBLIC _sk_matrix_perspective_hsw
3953_sk_matrix_perspective_hsw LABEL PROC
3954  DB  72,173                              ; lods          %ds:(%rsi),%rax
3955  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
3956  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
3957  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
3958  DB  196,66,117,184,209                  ; vfmadd231ps   %ymm9,%ymm1,%ymm10
3959  DB  196,66,125,184,208                  ; vfmadd231ps   %ymm8,%ymm0,%ymm10
3960  DB  196,98,125,24,64,12                 ; vbroadcastss  0xc(%rax),%ymm8
3961  DB  196,98,125,24,72,16                 ; vbroadcastss  0x10(%rax),%ymm9
3962  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
3963  DB  196,66,117,184,217                  ; vfmadd231ps   %ymm9,%ymm1,%ymm11
3964  DB  196,66,125,184,216                  ; vfmadd231ps   %ymm8,%ymm0,%ymm11
3965  DB  196,98,125,24,64,24                 ; vbroadcastss  0x18(%rax),%ymm8
3966  DB  196,98,125,24,72,28                 ; vbroadcastss  0x1c(%rax),%ymm9
3967  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
3968  DB  196,66,117,184,225                  ; vfmadd231ps   %ymm9,%ymm1,%ymm12
3969  DB  196,66,125,184,224                  ; vfmadd231ps   %ymm8,%ymm0,%ymm12
3970  DB  196,193,124,83,204                  ; vrcpps        %ymm12,%ymm1
3971  DB  197,172,89,193                      ; vmulps        %ymm1,%ymm10,%ymm0
3972  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
3973  DB  72,173                              ; lods          %ds:(%rsi),%rax
3974  DB  255,224                             ; jmpq          *%rax
3975
3976PUBLIC _sk_evenly_spaced_gradient_hsw
3977_sk_evenly_spaced_gradient_hsw LABEL PROC
3978  DB  83                                  ; push          %rbx
3979  DB  72,173                              ; lods          %ds:(%rsi),%rax
3980  DB  76,139,16                           ; mov           (%rax),%r10
3981  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
3982  DB  77,137,211                          ; mov           %r10,%r11
3983  DB  73,255,203                          ; dec           %r11
3984  DB  120,7                               ; js            421e <_sk_evenly_spaced_gradient_hsw+0x19>
3985  DB  196,193,242,42,203                  ; vcvtsi2ss     %r11,%xmm1,%xmm1
3986  DB  235,22                              ; jmp           4234 <_sk_evenly_spaced_gradient_hsw+0x2f>
3987  DB  76,137,219                          ; mov           %r11,%rbx
3988  DB  72,209,235                          ; shr           %rbx
3989  DB  65,131,227,1                        ; and           $0x1,%r11d
3990  DB  73,9,219                            ; or            %rbx,%r11
3991  DB  196,193,242,42,203                  ; vcvtsi2ss     %r11,%xmm1,%xmm1
3992  DB  197,242,88,201                      ; vaddss        %xmm1,%xmm1,%xmm1
3993  DB  196,226,125,24,201                  ; vbroadcastss  %xmm1,%ymm1
3994  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
3995  DB  197,126,91,217                      ; vcvttps2dq    %ymm1,%ymm11
3996  DB  73,131,250,8                        ; cmp           $0x8,%r10
3997  DB  119,70                              ; ja            428d <_sk_evenly_spaced_gradient_hsw+0x88>
3998  DB  196,66,37,22,1                      ; vpermps       (%r9),%ymm11,%ymm8
3999  DB  72,139,88,40                        ; mov           0x28(%rax),%rbx
4000  DB  196,98,37,22,11                     ; vpermps       (%rbx),%ymm11,%ymm9
4001  DB  72,139,88,16                        ; mov           0x10(%rax),%rbx
4002  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
4003  DB  196,226,37,22,11                    ; vpermps       (%rbx),%ymm11,%ymm1
4004  DB  72,139,88,48                        ; mov           0x30(%rax),%rbx
4005  DB  196,98,37,22,19                     ; vpermps       (%rbx),%ymm11,%ymm10
4006  DB  196,194,37,22,17                    ; vpermps       (%r9),%ymm11,%ymm2
4007  DB  72,139,88,56                        ; mov           0x38(%rax),%rbx
4008  DB  196,98,37,22,35                     ; vpermps       (%rbx),%ymm11,%ymm12
4009  DB  72,139,88,32                        ; mov           0x20(%rax),%rbx
4010  DB  196,226,37,22,27                    ; vpermps       (%rbx),%ymm11,%ymm3
4011  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
4012  DB  196,98,37,22,40                     ; vpermps       (%rax),%ymm11,%ymm13
4013  DB  235,110                             ; jmp           42fb <_sk_evenly_spaced_gradient_hsw+0xf6>
4014  DB  196,65,13,118,246                   ; vpcmpeqd      %ymm14,%ymm14,%ymm14
4015  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
4016  DB  196,2,117,146,4,153                 ; vgatherdps    %ymm1,(%r9,%ymm11,4),%ymm8
4017  DB  72,139,88,40                        ; mov           0x28(%rax),%rbx
4018  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
4019  DB  196,34,117,146,12,155               ; vgatherdps    %ymm1,(%rbx,%ymm11,4),%ymm9
4020  DB  72,139,88,16                        ; mov           0x10(%rax),%rbx
4021  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
4022  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
4023  DB  196,162,109,146,12,155              ; vgatherdps    %ymm2,(%rbx,%ymm11,4),%ymm1
4024  DB  72,139,88,48                        ; mov           0x30(%rax),%rbx
4025  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
4026  DB  196,34,109,146,20,155               ; vgatherdps    %ymm2,(%rbx,%ymm11,4),%ymm10
4027  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
4028  DB  196,130,101,146,20,153              ; vgatherdps    %ymm3,(%r9,%ymm11,4),%ymm2
4029  DB  72,139,88,56                        ; mov           0x38(%rax),%rbx
4030  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
4031  DB  196,34,101,146,36,155               ; vgatherdps    %ymm3,(%rbx,%ymm11,4),%ymm12
4032  DB  72,139,88,32                        ; mov           0x20(%rax),%rbx
4033  DB  196,65,21,118,237                   ; vpcmpeqd      %ymm13,%ymm13,%ymm13
4034  DB  196,162,21,146,28,155               ; vgatherdps    %ymm13,(%rbx,%ymm11,4),%ymm3
4035  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
4036  DB  196,34,13,146,44,152                ; vgatherdps    %ymm14,(%rax,%ymm11,4),%ymm13
4037  DB  196,66,125,168,193                  ; vfmadd213ps   %ymm9,%ymm0,%ymm8
4038  DB  196,194,125,168,202                 ; vfmadd213ps   %ymm10,%ymm0,%ymm1
4039  DB  196,194,125,168,212                 ; vfmadd213ps   %ymm12,%ymm0,%ymm2
4040  DB  196,194,125,168,221                 ; vfmadd213ps   %ymm13,%ymm0,%ymm3
4041  DB  72,173                              ; lods          %ds:(%rsi),%rax
4042  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
4043  DB  91                                  ; pop           %rbx
4044  DB  255,224                             ; jmpq          *%rax
4045
4046PUBLIC _sk_gauss_a_to_rgba_hsw
4047_sk_gauss_a_to_rgba_hsw LABEL PROC
4048  DB  196,226,125,24,5,87,10,0,0          ; vbroadcastss  0xa57(%rip),%ymm0        # 4d78 <_sk_callback_hsw+0x45c>
4049  DB  196,226,125,24,13,82,10,0,0         ; vbroadcastss  0xa52(%rip),%ymm1        # 4d7c <_sk_callback_hsw+0x460>
4050  DB  196,226,101,168,200                 ; vfmadd213ps   %ymm0,%ymm3,%ymm1
4051  DB  196,226,125,24,5,72,10,0,0          ; vbroadcastss  0xa48(%rip),%ymm0        # 4d80 <_sk_callback_hsw+0x464>
4052  DB  196,226,101,184,193                 ; vfmadd231ps   %ymm1,%ymm3,%ymm0
4053  DB  196,226,125,24,13,62,10,0,0         ; vbroadcastss  0xa3e(%rip),%ymm1        # 4d84 <_sk_callback_hsw+0x468>
4054  DB  196,226,101,184,200                 ; vfmadd231ps   %ymm0,%ymm3,%ymm1
4055  DB  196,226,125,24,5,52,10,0,0          ; vbroadcastss  0xa34(%rip),%ymm0        # 4d88 <_sk_callback_hsw+0x46c>
4056  DB  196,226,101,184,193                 ; vfmadd231ps   %ymm1,%ymm3,%ymm0
4057  DB  72,173                              ; lods          %ds:(%rsi),%rax
4058  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
4059  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
4060  DB  197,252,40,216                      ; vmovaps       %ymm0,%ymm3
4061  DB  255,224                             ; jmpq          *%rax
4062
4063PUBLIC _sk_gradient_hsw
4064_sk_gradient_hsw LABEL PROC
4065  DB  72,173                              ; lods          %ds:(%rsi),%rax
4066  DB  76,139,8                            ; mov           (%rax),%r9
4067  DB  73,131,249,1                        ; cmp           $0x1,%r9
4068  DB  15,134,180,0,0,0                    ; jbe           442c <_sk_gradient_hsw+0xc3>
4069  DB  76,139,80,72                        ; mov           0x48(%rax),%r10
4070  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
4071  DB  65,187,1,0,0,0                      ; mov           $0x1,%r11d
4072  DB  196,226,125,24,21,253,9,0,0         ; vbroadcastss  0x9fd(%rip),%ymm2        # 4d8c <_sk_callback_hsw+0x470>
4073  DB  196,65,53,239,201                   ; vpxor         %ymm9,%ymm9,%ymm9
4074  DB  196,130,125,24,28,154               ; vbroadcastss  (%r10,%r11,4),%ymm3
4075  DB  197,228,194,216,2                   ; vcmpleps      %ymm0,%ymm3,%ymm3
4076  DB  196,227,117,74,218,48               ; vblendvps     %ymm3,%ymm2,%ymm1,%ymm3
4077  DB  196,65,101,254,201                  ; vpaddd        %ymm9,%ymm3,%ymm9
4078  DB  73,255,195                          ; inc           %r11
4079  DB  77,57,217                           ; cmp           %r11,%r9
4080  DB  117,226                             ; jne           4394 <_sk_gradient_hsw+0x2b>
4081  DB  76,139,80,8                         ; mov           0x8(%rax),%r10
4082  DB  73,131,249,8                        ; cmp           $0x8,%r9
4083  DB  118,121                             ; jbe           4435 <_sk_gradient_hsw+0xcc>
4084  DB  196,65,13,118,246                   ; vpcmpeqd      %ymm14,%ymm14,%ymm14
4085  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
4086  DB  196,2,117,146,4,138                 ; vgatherdps    %ymm1,(%r10,%ymm9,4),%ymm8
4087  DB  76,139,72,40                        ; mov           0x28(%rax),%r9
4088  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
4089  DB  196,2,117,146,20,137                ; vgatherdps    %ymm1,(%r9,%ymm9,4),%ymm10
4090  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
4091  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
4092  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
4093  DB  196,130,109,146,12,137              ; vgatherdps    %ymm2,(%r9,%ymm9,4),%ymm1
4094  DB  76,139,72,48                        ; mov           0x30(%rax),%r9
4095  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
4096  DB  196,2,109,146,28,137                ; vgatherdps    %ymm2,(%r9,%ymm9,4),%ymm11
4097  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
4098  DB  196,130,101,146,20,138              ; vgatherdps    %ymm3,(%r10,%ymm9,4),%ymm2
4099  DB  76,139,72,56                        ; mov           0x38(%rax),%r9
4100  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
4101  DB  196,2,101,146,36,137                ; vgatherdps    %ymm3,(%r9,%ymm9,4),%ymm12
4102  DB  76,139,72,32                        ; mov           0x20(%rax),%r9
4103  DB  196,65,21,118,237                   ; vpcmpeqd      %ymm13,%ymm13,%ymm13
4104  DB  196,130,21,146,28,137               ; vgatherdps    %ymm13,(%r9,%ymm9,4),%ymm3
4105  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
4106  DB  196,34,13,146,44,136                ; vgatherdps    %ymm14,(%rax,%ymm9,4),%ymm13
4107  DB  235,77                              ; jmp           4479 <_sk_gradient_hsw+0x110>
4108  DB  76,139,80,8                         ; mov           0x8(%rax),%r10
4109  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
4110  DB  196,66,53,22,2                      ; vpermps       (%r10),%ymm9,%ymm8
4111  DB  76,139,72,40                        ; mov           0x28(%rax),%r9
4112  DB  196,66,53,22,17                     ; vpermps       (%r9),%ymm9,%ymm10
4113  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
4114  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
4115  DB  196,194,53,22,9                     ; vpermps       (%r9),%ymm9,%ymm1
4116  DB  76,139,72,48                        ; mov           0x30(%rax),%r9
4117  DB  196,66,53,22,25                     ; vpermps       (%r9),%ymm9,%ymm11
4118  DB  196,194,53,22,18                    ; vpermps       (%r10),%ymm9,%ymm2
4119  DB  76,139,72,56                        ; mov           0x38(%rax),%r9
4120  DB  196,66,53,22,33                     ; vpermps       (%r9),%ymm9,%ymm12
4121  DB  76,139,72,32                        ; mov           0x20(%rax),%r9
4122  DB  196,194,53,22,25                    ; vpermps       (%r9),%ymm9,%ymm3
4123  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
4124  DB  196,98,53,22,40                     ; vpermps       (%rax),%ymm9,%ymm13
4125  DB  196,66,125,168,194                  ; vfmadd213ps   %ymm10,%ymm0,%ymm8
4126  DB  196,194,125,168,203                 ; vfmadd213ps   %ymm11,%ymm0,%ymm1
4127  DB  196,194,125,168,212                 ; vfmadd213ps   %ymm12,%ymm0,%ymm2
4128  DB  196,194,125,168,221                 ; vfmadd213ps   %ymm13,%ymm0,%ymm3
4129  DB  72,173                              ; lods          %ds:(%rsi),%rax
4130  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
4131  DB  255,224                             ; jmpq          *%rax
4132
4133PUBLIC _sk_evenly_spaced_2_stop_gradient_hsw
4134_sk_evenly_spaced_2_stop_gradient_hsw LABEL PROC
4135  DB  72,173                              ; lods          %ds:(%rsi),%rax
4136  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
4137  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
4138  DB  196,98,125,184,193                  ; vfmadd231ps   %ymm1,%ymm0,%ymm8
4139  DB  196,226,125,24,80,4                 ; vbroadcastss  0x4(%rax),%ymm2
4140  DB  196,226,125,24,72,20                ; vbroadcastss  0x14(%rax),%ymm1
4141  DB  196,226,125,184,202                 ; vfmadd231ps   %ymm2,%ymm0,%ymm1
4142  DB  196,226,125,24,88,8                 ; vbroadcastss  0x8(%rax),%ymm3
4143  DB  196,226,125,24,80,24                ; vbroadcastss  0x18(%rax),%ymm2
4144  DB  196,226,125,184,211                 ; vfmadd231ps   %ymm3,%ymm0,%ymm2
4145  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
4146  DB  196,226,125,24,88,28                ; vbroadcastss  0x1c(%rax),%ymm3
4147  DB  196,194,125,184,217                 ; vfmadd231ps   %ymm9,%ymm0,%ymm3
4148  DB  72,173                              ; lods          %ds:(%rsi),%rax
4149  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
4150  DB  255,224                             ; jmpq          *%rax
4151
4152PUBLIC _sk_xy_to_unit_angle_hsw
4153_sk_xy_to_unit_angle_hsw LABEL PROC
4154  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
4155  DB  197,60,92,200                       ; vsubps        %ymm0,%ymm8,%ymm9
4156  DB  197,52,84,200                       ; vandps        %ymm0,%ymm9,%ymm9
4157  DB  197,60,92,209                       ; vsubps        %ymm1,%ymm8,%ymm10
4158  DB  197,44,84,209                       ; vandps        %ymm1,%ymm10,%ymm10
4159  DB  196,65,52,93,218                    ; vminps        %ymm10,%ymm9,%ymm11
4160  DB  196,65,52,95,226                    ; vmaxps        %ymm10,%ymm9,%ymm12
4161  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
4162  DB  196,65,36,89,227                    ; vmulps        %ymm11,%ymm11,%ymm12
4163  DB  196,98,125,24,45,124,8,0,0          ; vbroadcastss  0x87c(%rip),%ymm13        # 4d90 <_sk_callback_hsw+0x474>
4164  DB  196,98,125,24,53,119,8,0,0          ; vbroadcastss  0x877(%rip),%ymm14        # 4d94 <_sk_callback_hsw+0x478>
4165  DB  196,66,29,184,245                   ; vfmadd231ps   %ymm13,%ymm12,%ymm14
4166  DB  196,98,125,24,45,109,8,0,0          ; vbroadcastss  0x86d(%rip),%ymm13        # 4d98 <_sk_callback_hsw+0x47c>
4167  DB  196,66,29,184,238                   ; vfmadd231ps   %ymm14,%ymm12,%ymm13
4168  DB  196,98,125,24,53,99,8,0,0           ; vbroadcastss  0x863(%rip),%ymm14        # 4d9c <_sk_callback_hsw+0x480>
4169  DB  196,66,29,184,245                   ; vfmadd231ps   %ymm13,%ymm12,%ymm14
4170  DB  196,65,36,89,222                    ; vmulps        %ymm14,%ymm11,%ymm11
4171  DB  196,65,52,194,202,1                 ; vcmpltps      %ymm10,%ymm9,%ymm9
4172  DB  196,98,125,24,21,78,8,0,0           ; vbroadcastss  0x84e(%rip),%ymm10        # 4da0 <_sk_callback_hsw+0x484>
4173  DB  196,65,44,92,211                    ; vsubps        %ymm11,%ymm10,%ymm10
4174  DB  196,67,37,74,202,144                ; vblendvps     %ymm9,%ymm10,%ymm11,%ymm9
4175  DB  196,193,124,194,192,1               ; vcmpltps      %ymm8,%ymm0,%ymm0
4176  DB  196,98,125,24,21,56,8,0,0           ; vbroadcastss  0x838(%rip),%ymm10        # 4da4 <_sk_callback_hsw+0x488>
4177  DB  196,65,44,92,209                    ; vsubps        %ymm9,%ymm10,%ymm10
4178  DB  196,195,53,74,194,0                 ; vblendvps     %ymm0,%ymm10,%ymm9,%ymm0
4179  DB  196,65,116,194,200,1                ; vcmpltps      %ymm8,%ymm1,%ymm9
4180  DB  196,98,125,24,21,34,8,0,0           ; vbroadcastss  0x822(%rip),%ymm10        # 4da8 <_sk_callback_hsw+0x48c>
4181  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
4182  DB  196,195,125,74,194,144              ; vblendvps     %ymm9,%ymm10,%ymm0,%ymm0
4183  DB  196,65,124,194,200,3                ; vcmpunordps   %ymm8,%ymm0,%ymm9
4184  DB  196,195,125,74,192,144              ; vblendvps     %ymm9,%ymm8,%ymm0,%ymm0
4185  DB  72,173                              ; lods          %ds:(%rsi),%rax
4186  DB  255,224                             ; jmpq          *%rax
4187
4188PUBLIC _sk_xy_to_radius_hsw
4189_sk_xy_to_radius_hsw LABEL PROC
4190  DB  197,116,89,193                      ; vmulps        %ymm1,%ymm1,%ymm8
4191  DB  196,98,125,184,192                  ; vfmadd231ps   %ymm0,%ymm0,%ymm8
4192  DB  196,193,124,81,192                  ; vsqrtps       %ymm8,%ymm0
4193  DB  72,173                              ; lods          %ds:(%rsi),%rax
4194  DB  255,224                             ; jmpq          *%rax
4195
4196PUBLIC _sk_save_xy_hsw
4197_sk_save_xy_hsw LABEL PROC
4198  DB  72,173                              ; lods          %ds:(%rsi),%rax
4199  DB  196,98,125,24,5,239,7,0,0           ; vbroadcastss  0x7ef(%rip),%ymm8        # 4dac <_sk_callback_hsw+0x490>
4200  DB  196,65,124,88,200                   ; vaddps        %ymm8,%ymm0,%ymm9
4201  DB  196,67,125,8,209,1                  ; vroundps      $0x1,%ymm9,%ymm10
4202  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
4203  DB  196,65,116,88,192                   ; vaddps        %ymm8,%ymm1,%ymm8
4204  DB  196,67,125,8,208,1                  ; vroundps      $0x1,%ymm8,%ymm10
4205  DB  196,65,60,92,194                    ; vsubps        %ymm10,%ymm8,%ymm8
4206  DB  197,252,17,0                        ; vmovups       %ymm0,(%rax)
4207  DB  197,252,17,72,32                    ; vmovups       %ymm1,0x20(%rax)
4208  DB  197,124,17,72,64                    ; vmovups       %ymm9,0x40(%rax)
4209  DB  197,124,17,64,96                    ; vmovups       %ymm8,0x60(%rax)
4210  DB  72,173                              ; lods          %ds:(%rsi),%rax
4211  DB  255,224                             ; jmpq          *%rax
4212
4213PUBLIC _sk_accumulate_hsw
4214_sk_accumulate_hsw LABEL PROC
4215  DB  72,173                              ; lods          %ds:(%rsi),%rax
4216  DB  197,124,16,128,128,0,0,0            ; vmovups       0x80(%rax),%ymm8
4217  DB  197,60,89,128,160,0,0,0             ; vmulps        0xa0(%rax),%ymm8,%ymm8
4218  DB  196,226,61,184,224                  ; vfmadd231ps   %ymm0,%ymm8,%ymm4
4219  DB  196,226,61,184,233                  ; vfmadd231ps   %ymm1,%ymm8,%ymm5
4220  DB  196,226,61,184,242                  ; vfmadd231ps   %ymm2,%ymm8,%ymm6
4221  DB  196,98,101,168,199                  ; vfmadd213ps   %ymm7,%ymm3,%ymm8
4222  DB  72,173                              ; lods          %ds:(%rsi),%rax
4223  DB  197,124,41,199                      ; vmovaps       %ymm8,%ymm7
4224  DB  255,224                             ; jmpq          *%rax
4225
4226PUBLIC _sk_bilinear_nx_hsw
4227_sk_bilinear_nx_hsw LABEL PROC
4228  DB  72,173                              ; lods          %ds:(%rsi),%rax
4229  DB  196,226,125,24,5,131,7,0,0          ; vbroadcastss  0x783(%rip),%ymm0        # 4db0 <_sk_callback_hsw+0x494>
4230  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
4231  DB  196,98,125,24,5,122,7,0,0           ; vbroadcastss  0x77a(%rip),%ymm8        # 4db4 <_sk_callback_hsw+0x498>
4232  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
4233  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
4234  DB  72,173                              ; lods          %ds:(%rsi),%rax
4235  DB  255,224                             ; jmpq          *%rax
4236
4237PUBLIC _sk_bilinear_px_hsw
4238_sk_bilinear_px_hsw LABEL PROC
4239  DB  72,173                              ; lods          %ds:(%rsi),%rax
4240  DB  196,226,125,24,5,98,7,0,0           ; vbroadcastss  0x762(%rip),%ymm0        # 4db8 <_sk_callback_hsw+0x49c>
4241  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
4242  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
4243  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
4244  DB  72,173                              ; lods          %ds:(%rsi),%rax
4245  DB  255,224                             ; jmpq          *%rax
4246
4247PUBLIC _sk_bilinear_ny_hsw
4248_sk_bilinear_ny_hsw LABEL PROC
4249  DB  72,173                              ; lods          %ds:(%rsi),%rax
4250  DB  196,226,125,24,13,70,7,0,0          ; vbroadcastss  0x746(%rip),%ymm1        # 4dbc <_sk_callback_hsw+0x4a0>
4251  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
4252  DB  196,98,125,24,5,60,7,0,0            ; vbroadcastss  0x73c(%rip),%ymm8        # 4dc0 <_sk_callback_hsw+0x4a4>
4253  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
4254  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
4255  DB  72,173                              ; lods          %ds:(%rsi),%rax
4256  DB  255,224                             ; jmpq          *%rax
4257
4258PUBLIC _sk_bilinear_py_hsw
4259_sk_bilinear_py_hsw LABEL PROC
4260  DB  72,173                              ; lods          %ds:(%rsi),%rax
4261  DB  196,226,125,24,13,36,7,0,0          ; vbroadcastss  0x724(%rip),%ymm1        # 4dc4 <_sk_callback_hsw+0x4a8>
4262  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
4263  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
4264  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
4265  DB  72,173                              ; lods          %ds:(%rsi),%rax
4266  DB  255,224                             ; jmpq          *%rax
4267
4268PUBLIC _sk_bicubic_n3x_hsw
4269_sk_bicubic_n3x_hsw LABEL PROC
4270  DB  72,173                              ; lods          %ds:(%rsi),%rax
4271  DB  196,226,125,24,5,7,7,0,0            ; vbroadcastss  0x707(%rip),%ymm0        # 4dc8 <_sk_callback_hsw+0x4ac>
4272  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
4273  DB  196,98,125,24,5,254,6,0,0           ; vbroadcastss  0x6fe(%rip),%ymm8        # 4dcc <_sk_callback_hsw+0x4b0>
4274  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
4275  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
4276  DB  196,98,125,24,21,239,6,0,0          ; vbroadcastss  0x6ef(%rip),%ymm10        # 4dd0 <_sk_callback_hsw+0x4b4>
4277  DB  196,98,125,24,29,234,6,0,0          ; vbroadcastss  0x6ea(%rip),%ymm11        # 4dd4 <_sk_callback_hsw+0x4b8>
4278  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
4279  DB  196,65,36,89,193                    ; vmulps        %ymm9,%ymm11,%ymm8
4280  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
4281  DB  72,173                              ; lods          %ds:(%rsi),%rax
4282  DB  255,224                             ; jmpq          *%rax
4283
4284PUBLIC _sk_bicubic_n1x_hsw
4285_sk_bicubic_n1x_hsw LABEL PROC
4286  DB  72,173                              ; lods          %ds:(%rsi),%rax
4287  DB  196,226,125,24,5,205,6,0,0          ; vbroadcastss  0x6cd(%rip),%ymm0        # 4dd8 <_sk_callback_hsw+0x4bc>
4288  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
4289  DB  196,98,125,24,5,196,6,0,0           ; vbroadcastss  0x6c4(%rip),%ymm8        # 4ddc <_sk_callback_hsw+0x4c0>
4290  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
4291  DB  196,98,125,24,13,186,6,0,0          ; vbroadcastss  0x6ba(%rip),%ymm9        # 4de0 <_sk_callback_hsw+0x4c4>
4292  DB  196,98,125,24,21,181,6,0,0          ; vbroadcastss  0x6b5(%rip),%ymm10        # 4de4 <_sk_callback_hsw+0x4c8>
4293  DB  196,66,61,168,209                   ; vfmadd213ps   %ymm9,%ymm8,%ymm10
4294  DB  196,98,125,24,13,171,6,0,0          ; vbroadcastss  0x6ab(%rip),%ymm9        # 4de8 <_sk_callback_hsw+0x4cc>
4295  DB  196,66,61,184,202                   ; vfmadd231ps   %ymm10,%ymm8,%ymm9
4296  DB  196,98,125,24,21,161,6,0,0          ; vbroadcastss  0x6a1(%rip),%ymm10        # 4dec <_sk_callback_hsw+0x4d0>
4297  DB  196,66,61,184,209                   ; vfmadd231ps   %ymm9,%ymm8,%ymm10
4298  DB  197,124,17,144,128,0,0,0            ; vmovups       %ymm10,0x80(%rax)
4299  DB  72,173                              ; lods          %ds:(%rsi),%rax
4300  DB  255,224                             ; jmpq          *%rax
4301
4302PUBLIC _sk_bicubic_p1x_hsw
4303_sk_bicubic_p1x_hsw LABEL PROC
4304  DB  72,173                              ; lods          %ds:(%rsi),%rax
4305  DB  196,98,125,24,5,137,6,0,0           ; vbroadcastss  0x689(%rip),%ymm8        # 4df0 <_sk_callback_hsw+0x4d4>
4306  DB  197,188,88,0                        ; vaddps        (%rax),%ymm8,%ymm0
4307  DB  197,124,16,72,64                    ; vmovups       0x40(%rax),%ymm9
4308  DB  196,98,125,24,21,123,6,0,0          ; vbroadcastss  0x67b(%rip),%ymm10        # 4df4 <_sk_callback_hsw+0x4d8>
4309  DB  196,98,125,24,29,118,6,0,0          ; vbroadcastss  0x676(%rip),%ymm11        # 4df8 <_sk_callback_hsw+0x4dc>
4310  DB  196,66,53,168,218                   ; vfmadd213ps   %ymm10,%ymm9,%ymm11
4311  DB  196,66,53,168,216                   ; vfmadd213ps   %ymm8,%ymm9,%ymm11
4312  DB  196,98,125,24,5,103,6,0,0           ; vbroadcastss  0x667(%rip),%ymm8        # 4dfc <_sk_callback_hsw+0x4e0>
4313  DB  196,66,53,184,195                   ; vfmadd231ps   %ymm11,%ymm9,%ymm8
4314  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
4315  DB  72,173                              ; lods          %ds:(%rsi),%rax
4316  DB  255,224                             ; jmpq          *%rax
4317
4318PUBLIC _sk_bicubic_p3x_hsw
4319_sk_bicubic_p3x_hsw LABEL PROC
4320  DB  72,173                              ; lods          %ds:(%rsi),%rax
4321  DB  196,226,125,24,5,79,6,0,0           ; vbroadcastss  0x64f(%rip),%ymm0        # 4e00 <_sk_callback_hsw+0x4e4>
4322  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
4323  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
4324  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
4325  DB  196,98,125,24,21,60,6,0,0           ; vbroadcastss  0x63c(%rip),%ymm10        # 4e04 <_sk_callback_hsw+0x4e8>
4326  DB  196,98,125,24,29,55,6,0,0           ; vbroadcastss  0x637(%rip),%ymm11        # 4e08 <_sk_callback_hsw+0x4ec>
4327  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
4328  DB  196,65,52,89,195                    ; vmulps        %ymm11,%ymm9,%ymm8
4329  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
4330  DB  72,173                              ; lods          %ds:(%rsi),%rax
4331  DB  255,224                             ; jmpq          *%rax
4332
4333PUBLIC _sk_bicubic_n3y_hsw
4334_sk_bicubic_n3y_hsw LABEL PROC
4335  DB  72,173                              ; lods          %ds:(%rsi),%rax
4336  DB  196,226,125,24,13,26,6,0,0          ; vbroadcastss  0x61a(%rip),%ymm1        # 4e0c <_sk_callback_hsw+0x4f0>
4337  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
4338  DB  196,98,125,24,5,16,6,0,0            ; vbroadcastss  0x610(%rip),%ymm8        # 4e10 <_sk_callback_hsw+0x4f4>
4339  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
4340  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
4341  DB  196,98,125,24,21,1,6,0,0            ; vbroadcastss  0x601(%rip),%ymm10        # 4e14 <_sk_callback_hsw+0x4f8>
4342  DB  196,98,125,24,29,252,5,0,0          ; vbroadcastss  0x5fc(%rip),%ymm11        # 4e18 <_sk_callback_hsw+0x4fc>
4343  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
4344  DB  196,65,36,89,193                    ; vmulps        %ymm9,%ymm11,%ymm8
4345  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
4346  DB  72,173                              ; lods          %ds:(%rsi),%rax
4347  DB  255,224                             ; jmpq          *%rax
4348
4349PUBLIC _sk_bicubic_n1y_hsw
4350_sk_bicubic_n1y_hsw LABEL PROC
4351  DB  72,173                              ; lods          %ds:(%rsi),%rax
4352  DB  196,226,125,24,13,223,5,0,0         ; vbroadcastss  0x5df(%rip),%ymm1        # 4e1c <_sk_callback_hsw+0x500>
4353  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
4354  DB  196,98,125,24,5,213,5,0,0           ; vbroadcastss  0x5d5(%rip),%ymm8        # 4e20 <_sk_callback_hsw+0x504>
4355  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
4356  DB  196,98,125,24,13,203,5,0,0          ; vbroadcastss  0x5cb(%rip),%ymm9        # 4e24 <_sk_callback_hsw+0x508>
4357  DB  196,98,125,24,21,198,5,0,0          ; vbroadcastss  0x5c6(%rip),%ymm10        # 4e28 <_sk_callback_hsw+0x50c>
4358  DB  196,66,61,168,209                   ; vfmadd213ps   %ymm9,%ymm8,%ymm10
4359  DB  196,98,125,24,13,188,5,0,0          ; vbroadcastss  0x5bc(%rip),%ymm9        # 4e2c <_sk_callback_hsw+0x510>
4360  DB  196,66,61,184,202                   ; vfmadd231ps   %ymm10,%ymm8,%ymm9
4361  DB  196,98,125,24,21,178,5,0,0          ; vbroadcastss  0x5b2(%rip),%ymm10        # 4e30 <_sk_callback_hsw+0x514>
4362  DB  196,66,61,184,209                   ; vfmadd231ps   %ymm9,%ymm8,%ymm10
4363  DB  197,124,17,144,160,0,0,0            ; vmovups       %ymm10,0xa0(%rax)
4364  DB  72,173                              ; lods          %ds:(%rsi),%rax
4365  DB  255,224                             ; jmpq          *%rax
4366
4367PUBLIC _sk_bicubic_p1y_hsw
4368_sk_bicubic_p1y_hsw LABEL PROC
4369  DB  72,173                              ; lods          %ds:(%rsi),%rax
4370  DB  196,98,125,24,5,154,5,0,0           ; vbroadcastss  0x59a(%rip),%ymm8        # 4e34 <_sk_callback_hsw+0x518>
4371  DB  197,188,88,72,32                    ; vaddps        0x20(%rax),%ymm8,%ymm1
4372  DB  197,124,16,72,96                    ; vmovups       0x60(%rax),%ymm9
4373  DB  196,98,125,24,21,139,5,0,0          ; vbroadcastss  0x58b(%rip),%ymm10        # 4e38 <_sk_callback_hsw+0x51c>
4374  DB  196,98,125,24,29,134,5,0,0          ; vbroadcastss  0x586(%rip),%ymm11        # 4e3c <_sk_callback_hsw+0x520>
4375  DB  196,66,53,168,218                   ; vfmadd213ps   %ymm10,%ymm9,%ymm11
4376  DB  196,66,53,168,216                   ; vfmadd213ps   %ymm8,%ymm9,%ymm11
4377  DB  196,98,125,24,5,119,5,0,0           ; vbroadcastss  0x577(%rip),%ymm8        # 4e40 <_sk_callback_hsw+0x524>
4378  DB  196,66,53,184,195                   ; vfmadd231ps   %ymm11,%ymm9,%ymm8
4379  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
4380  DB  72,173                              ; lods          %ds:(%rsi),%rax
4381  DB  255,224                             ; jmpq          *%rax
4382
4383PUBLIC _sk_bicubic_p3y_hsw
4384_sk_bicubic_p3y_hsw LABEL PROC
4385  DB  72,173                              ; lods          %ds:(%rsi),%rax
4386  DB  196,226,125,24,13,95,5,0,0          ; vbroadcastss  0x55f(%rip),%ymm1        # 4e44 <_sk_callback_hsw+0x528>
4387  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
4388  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
4389  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
4390  DB  196,98,125,24,21,75,5,0,0           ; vbroadcastss  0x54b(%rip),%ymm10        # 4e48 <_sk_callback_hsw+0x52c>
4391  DB  196,98,125,24,29,70,5,0,0           ; vbroadcastss  0x546(%rip),%ymm11        # 4e4c <_sk_callback_hsw+0x530>
4392  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
4393  DB  196,65,52,89,195                    ; vmulps        %ymm11,%ymm9,%ymm8
4394  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
4395  DB  72,173                              ; lods          %ds:(%rsi),%rax
4396  DB  255,224                             ; jmpq          *%rax
4397
4398PUBLIC _sk_callback_hsw
4399_sk_callback_hsw LABEL PROC
4400  DB  85                                  ; push          %rbp
4401  DB  72,137,229                          ; mov           %rsp,%rbp
4402  DB  65,87                               ; push          %r15
4403  DB  65,86                               ; push          %r14
4404  DB  65,84                               ; push          %r12
4405  DB  83                                  ; push          %rbx
4406  DB  72,131,228,224                      ; and           $0xffffffffffffffe0,%rsp
4407  DB  72,129,236,192,0,0,0                ; sub           $0xc0,%rsp
4408  DB  197,252,41,188,36,128,0,0,0         ; vmovaps       %ymm7,0x80(%rsp)
4409  DB  197,252,41,116,36,96                ; vmovaps       %ymm6,0x60(%rsp)
4410  DB  197,252,41,108,36,64                ; vmovaps       %ymm5,0x40(%rsp)
4411  DB  197,252,41,100,36,32                ; vmovaps       %ymm4,0x20(%rsp)
4412  DB  77,137,196                          ; mov           %r8,%r12
4413  DB  73,137,206                          ; mov           %rcx,%r14
4414  DB  73,137,215                          ; mov           %rdx,%r15
4415  DB  72,173                              ; lods          %ds:(%rsi),%rax
4416  DB  72,137,195                          ; mov           %rax,%rbx
4417  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
4418  DB  197,252,21,193                      ; vunpckhps     %ymm1,%ymm0,%ymm0
4419  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
4420  DB  197,236,21,211                      ; vunpckhps     %ymm3,%ymm2,%ymm2
4421  DB  197,221,20,217                      ; vunpcklpd     %ymm1,%ymm4,%ymm3
4422  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
4423  DB  197,253,20,226                      ; vunpcklpd     %ymm2,%ymm0,%ymm4
4424  DB  197,253,21,194                      ; vunpckhpd     %ymm2,%ymm0,%ymm0
4425  DB  196,227,101,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm2
4426  DB  196,227,93,24,232,1                 ; vinsertf128   $0x1,%xmm0,%ymm4,%ymm5
4427  DB  196,227,101,6,201,49                ; vperm2f128    $0x31,%ymm1,%ymm3,%ymm1
4428  DB  196,227,93,6,192,49                 ; vperm2f128    $0x31,%ymm0,%ymm4,%ymm0
4429  DB  197,253,17,83,8                     ; vmovupd       %ymm2,0x8(%rbx)
4430  DB  197,253,17,107,40                   ; vmovupd       %ymm5,0x28(%rbx)
4431  DB  197,253,17,75,72                    ; vmovupd       %ymm1,0x48(%rbx)
4432  DB  197,253,17,67,104                   ; vmovupd       %ymm0,0x68(%rbx)
4433  DB  77,133,228                          ; test          %r12,%r12
4434  DB  186,8,0,0,0                         ; mov           $0x8,%edx
4435  DB  65,15,69,212                        ; cmovne        %r12d,%edx
4436  DB  72,137,217                          ; mov           %rbx,%rcx
4437  DB  197,248,119                         ; vzeroupper
4438  DB  255,19                              ; callq         *(%rbx)
4439  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
4440  DB  197,248,16,0                        ; vmovups       (%rax),%xmm0
4441  DB  197,248,16,72,16                    ; vmovups       0x10(%rax),%xmm1
4442  DB  197,248,16,80,32                    ; vmovups       0x20(%rax),%xmm2
4443  DB  197,248,16,88,48                    ; vmovups       0x30(%rax),%xmm3
4444  DB  196,227,101,24,88,112,1             ; vinsertf128   $0x1,0x70(%rax),%ymm3,%ymm3
4445  DB  196,227,109,24,80,96,1              ; vinsertf128   $0x1,0x60(%rax),%ymm2,%ymm2
4446  DB  196,227,117,24,72,80,1              ; vinsertf128   $0x1,0x50(%rax),%ymm1,%ymm1
4447  DB  196,227,125,24,64,64,1              ; vinsertf128   $0x1,0x40(%rax),%ymm0,%ymm0
4448  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
4449  DB  197,252,21,233                      ; vunpckhps     %ymm1,%ymm0,%ymm5
4450  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
4451  DB  197,236,21,219                      ; vunpckhps     %ymm3,%ymm2,%ymm3
4452  DB  197,221,20,193                      ; vunpcklpd     %ymm1,%ymm4,%ymm0
4453  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
4454  DB  197,213,20,211                      ; vunpcklpd     %ymm3,%ymm5,%ymm2
4455  DB  197,213,21,219                      ; vunpckhpd     %ymm3,%ymm5,%ymm3
4456  DB  72,173                              ; lods          %ds:(%rsi),%rax
4457  DB  76,137,250                          ; mov           %r15,%rdx
4458  DB  76,137,241                          ; mov           %r14,%rcx
4459  DB  77,137,224                          ; mov           %r12,%r8
4460  DB  197,252,40,100,36,32                ; vmovaps       0x20(%rsp),%ymm4
4461  DB  197,252,40,108,36,64                ; vmovaps       0x40(%rsp),%ymm5
4462  DB  197,252,40,116,36,96                ; vmovaps       0x60(%rsp),%ymm6
4463  DB  197,252,40,188,36,128,0,0,0         ; vmovaps       0x80(%rsp),%ymm7
4464  DB  72,141,101,224                      ; lea           -0x20(%rbp),%rsp
4465  DB  91                                  ; pop           %rbx
4466  DB  65,92                               ; pop           %r12
4467  DB  65,94                               ; pop           %r14
4468  DB  65,95                               ; pop           %r15
4469  DB  93                                  ; pop           %rbp
4470  DB  255,224                             ; jmpq          *%rax
4471
4472ALIGN 4
4473  DB  0,0                                 ; add           %al,(%rax)
4474  DB  0,63                                ; add           %bh,(%rdi)
4475  DB  0,0                                 ; add           %al,(%rax)
4476  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
4477  DB  0,0                                 ; add           %al,(%rax)
4478  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
4479  DB  0,0                                 ; add           %al,(%rax)
4480  DB  2,0                                 ; add           (%rax),%al
4481  DB  0,0                                 ; add           %al,(%rax)
4482  DB  0,0                                 ; add           %al,(%rax)
4483  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
4484  DB  252                                 ; cld
4485  DB  190,0,0,128,63                      ; mov           $0x3f800000,%esi
4486  DB  0,0                                 ; add           %al,(%rax)
4487  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4488  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4489  DB  63                                  ; (bad)
4490  DB  0,0                                 ; add           %al,(%rax)
4491  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4492  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4493  DB  63                                  ; (bad)
4494  DB  0,0                                 ; add           %al,(%rax)
4495  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4496  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4497  DB  63                                  ; (bad)
4498  DB  0,0                                 ; add           %al,(%rax)
4499  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4500  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4501  DB  63                                  ; (bad)
4502  DB  0,0                                 ; add           %al,(%rax)
4503  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4504  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4505  DB  63                                  ; (bad)
4506  DB  0,0                                 ; add           %al,(%rax)
4507  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4508  DB  0,128,191,0,0,224                   ; add           %al,-0x1fffff41(%rax)
4509  DB  64,154                              ; rex           (bad)
4510  DB  153                                 ; cltd
4511  DB  153                                 ; cltd
4512  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
4513  DB  71,225,61                           ; rex.RXB       loope 4af9 <.literal4+0xb1>
4514  DB  0,0                                 ; add           %al,(%rax)
4515  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
4516  DB  153                                 ; cltd
4517  DB  153                                 ; cltd
4518  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
4519  DB  71,225,61                           ; rex.RXB       loope 4b09 <.literal4+0xc1>
4520  DB  0,0                                 ; add           %al,(%rax)
4521  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
4522  DB  153                                 ; cltd
4523  DB  153                                 ; cltd
4524  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
4525  DB  71,225,61                           ; rex.RXB       loope 4b19 <.literal4+0xd1>
4526  DB  0,0                                 ; add           %al,(%rax)
4527  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
4528  DB  153                                 ; cltd
4529  DB  153                                 ; cltd
4530  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
4531  DB  71,225,61                           ; rex.RXB       loope 4b29 <.literal4+0xe1>
4532  DB  0,0                                 ; add           %al,(%rax)
4533  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4534  DB  0,128,63,0,0,127                    ; add           %al,0x7f00003f(%rax)
4535  DB  67,0,0                              ; rex.XB        add %al,(%r8)
4536  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4537  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4538  DB  63                                  ; (bad)
4539  DB  145                                 ; xchg          %eax,%ecx
4540  DB  131,158,61,92,143,50,63             ; sbbl          $0x3f,0x328f5c3d(%rsi)
4541  DB  154                                 ; (bad)
4542  DB  153                                 ; cltd
4543  DB  153                                 ; cltd
4544  DB  62,10,215                           ; ds            or  %bh,%dl
4545  DB  35,59                               ; and           (%rbx),%edi
4546  DB  174                                 ; scas          %es:(%rdi),%al
4547  DB  71,97                               ; rex.RXB       (bad)
4548  DB  61,82,184,78,65                     ; cmp           $0x414eb852,%eax
4549  DB  186,159,98,60,57                    ; mov           $0x393c629f,%edx
4550  DB  215                                 ; xlat          %ds:(%rbx)
4551  DB  32,187,109,165,144,63               ; and           %bh,0x3f90a56d(%rbx)
4552  DB  252                                 ; cld
4553  DB  191,16,62,168,177                   ; mov           $0xb1a83e10,%edi
4554  DB  152                                 ; cwtl
4555  DB  59,0                                ; cmp           (%rax),%eax
4556  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
4557  DB  64,0,0                              ; add           %al,(%rax)
4558  DB  0,64,0                              ; add           %al,0x0(%rax)
4559  DB  0,128,64,171,170,42                 ; add           %al,0x2aaaab40(%rax)
4560  DB  62,0,0                              ; add           %al,%ds:(%rax)
4561  DB  0,63                                ; add           %bh,(%rdi)
4562  DB  0,0                                 ; add           %al,(%rax)
4563  DB  0,63                                ; add           %bh,(%rdi)
4564  DB  0,0                                 ; add           %al,(%rax)
4565  DB  0,64,171                            ; add           %al,-0x55(%rax)
4566  DB  170                                 ; stos          %al,%es:(%rdi)
4567  DB  170                                 ; stos          %al,%es:(%rdi)
4568  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
4569  DB  170                                 ; stos          %al,%es:(%rdi)
4570  DB  42,63                               ; sub           (%rdi),%bh
4571  DB  0,0                                 ; add           %al,(%rax)
4572  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
4573  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
4574  DB  42,62                               ; sub           (%rsi),%bh
4575  DB  171                                 ; stos          %eax,%es:(%rdi)
4576  DB  170                                 ; stos          %al,%es:(%rdi)
4577  DB  170                                 ; stos          %al,%es:(%rdi)
4578  DB  190,129,128,128,59                  ; mov           $0x3b808081,%esi
4579  DB  129,128,128,59,0,248,0,0,8,33       ; addl          $0x21080000,-0x7ffc480(%rax)
4580  DB  132,55                              ; test          %dh,(%rdi)
4581  DB  224,7                               ; loopne        4b81 <.literal4+0x139>
4582  DB  0,0                                 ; add           %al,(%rax)
4583  DB  33,8                                ; and           %ecx,(%rax)
4584  DB  2,58                                ; add           (%rdx),%bh
4585  DB  31                                  ; (bad)
4586  DB  0,0                                 ; add           %al,(%rax)
4587  DB  0,8                                 ; add           %cl,(%rax)
4588  DB  33,4,61,129,128,128,59              ; and           %eax,0x3b808081(,%rdi,1)
4589  DB  128,0,128                           ; addb          $0x80,(%rax)
4590  DB  55                                  ; (bad)
4591  DB  0,0                                 ; add           %al,(%rax)
4592  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4593  DB  0,127,67                            ; add           %bh,0x43(%rdi)
4594  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
4595  DB  0,52,255                            ; add           %dh,(%rdi,%rdi,8)
4596  DB  255                                 ; (bad)
4597  DB  127,0                               ; jg            4ba8 <.literal4+0x160>
4598  DB  0,0                                 ; add           %al,(%rax)
4599  DB  0,63                                ; add           %bh,(%rdi)
4600  DB  119,115                             ; ja            4c21 <.literal4+0x1d9>
4601  DB  248                                 ; clc
4602  DB  194,117,191                         ; retq          $0xbf75
4603  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
4604  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
4605  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
4606  DB  154                                 ; (bad)
4607  DB  64,254                              ; rex           (bad)
4608  DB  210,221                             ; rcr           %cl,%ch
4609  DB  65,0,0                              ; add           %al,(%r8)
4610  DB  0,75,0                              ; add           %cl,0x0(%rbx)
4611  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
4612  DB  52,255                              ; xor           $0xff,%al
4613  DB  255                                 ; (bad)
4614  DB  127,0                               ; jg            4bdc <.literal4+0x194>
4615  DB  0,0                                 ; add           %al,(%rax)
4616  DB  0,63                                ; add           %bh,(%rdi)
4617  DB  119,115                             ; ja            4c55 <.literal4+0x20d>
4618  DB  248                                 ; clc
4619  DB  194,117,191                         ; retq          $0xbf75
4620  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
4621  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
4622  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
4623  DB  154                                 ; (bad)
4624  DB  64,254                              ; rex           (bad)
4625  DB  210,221                             ; rcr           %cl,%ch
4626  DB  65,0,0                              ; add           %al,(%r8)
4627  DB  0,75,0                              ; add           %cl,0x0(%rbx)
4628  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
4629  DB  52,255                              ; xor           $0xff,%al
4630  DB  255                                 ; (bad)
4631  DB  127,0                               ; jg            4c10 <.literal4+0x1c8>
4632  DB  0,0                                 ; add           %al,(%rax)
4633  DB  0,63                                ; add           %bh,(%rdi)
4634  DB  119,115                             ; ja            4c89 <.literal4+0x241>
4635  DB  248                                 ; clc
4636  DB  194,117,191                         ; retq          $0xbf75
4637  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
4638  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
4639  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
4640  DB  154                                 ; (bad)
4641  DB  64,254                              ; rex           (bad)
4642  DB  210,221                             ; rcr           %cl,%ch
4643  DB  65,0,0                              ; add           %al,(%r8)
4644  DB  0,75,0                              ; add           %cl,0x0(%rbx)
4645  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
4646  DB  52,255                              ; xor           $0xff,%al
4647  DB  255                                 ; (bad)
4648  DB  127,0                               ; jg            4c44 <.literal4+0x1fc>
4649  DB  0,0                                 ; add           %al,(%rax)
4650  DB  0,63                                ; add           %bh,(%rdi)
4651  DB  119,115                             ; ja            4cbd <.literal4+0x275>
4652  DB  248                                 ; clc
4653  DB  194,117,191                         ; retq          $0xbf75
4654  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
4655  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
4656  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
4657  DB  154                                 ; (bad)
4658  DB  64,254                              ; rex           (bad)
4659  DB  210,221                             ; rcr           %cl,%ch
4660  DB  65,0,0                              ; add           %al,(%r8)
4661  DB  0,75,0                              ; add           %cl,0x0(%rbx)
4662  DB  0,128,63,0,0,200                    ; add           %al,-0x37ffffc1(%rax)
4663  DB  66,0,0                              ; rex.X         add %al,(%rax)
4664  DB  127,67                              ; jg            4cbb <.literal4+0x273>
4665  DB  0,0                                 ; add           %al,(%rax)
4666  DB  0,195                               ; add           %al,%bl
4667  DB  0,0                                 ; add           %al,(%rax)
4668  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
4669  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
4670  DB  59,10                               ; cmp           (%rdx),%ecx
4671  DB  215                                 ; xlat          %ds:(%rbx)
4672  DB  163,59,194,24,17,60,203,61,13       ; movabs        %eax,0xd3dcb3c1118c23b
4673  DB  190,80,128,3,62                     ; mov           $0x3e038050,%esi
4674  DB  31                                  ; (bad)
4675  DB  215                                 ; xlat          %ds:(%rbx)
4676  DB  118,63                              ; jbe           4cdb <.literal4+0x293>
4677  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
4678  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
4679  DB  127,67                              ; jg            4cef <.literal4+0x2a7>
4680  DB  129,128,128,59,0,0,128,63,129,128   ; addl          $0x80813f80,0x3b80(%rax)
4681  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
4682  DB  0,128,63,129,128,128                ; add           %al,-0x7f7f7ec1(%rax)
4683  DB  59,0                                ; cmp           (%rax),%eax
4684  DB  248                                 ; clc
4685  DB  0,0                                 ; add           %al,(%rax)
4686  DB  8,33                                ; or            %ah,(%rcx)
4687  DB  132,55                              ; test          %dh,(%rdi)
4688  DB  224,7                               ; loopne        4cd1 <.literal4+0x289>
4689  DB  0,0                                 ; add           %al,(%rax)
4690  DB  33,8                                ; and           %ecx,(%rax)
4691  DB  2,58                                ; add           (%rdx),%bh
4692  DB  31                                  ; (bad)
4693  DB  0,0                                 ; add           %al,(%rax)
4694  DB  0,8                                 ; add           %cl,(%rax)
4695  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
4696  DB  0,248                               ; add           %bh,%al
4697  DB  0,0                                 ; add           %al,(%rax)
4698  DB  8,33                                ; or            %ah,(%rcx)
4699  DB  132,55                              ; test          %dh,(%rdi)
4700  DB  224,7                               ; loopne        4ced <.literal4+0x2a5>
4701  DB  0,0                                 ; add           %al,(%rax)
4702  DB  33,8                                ; and           %ecx,(%rax)
4703  DB  2,58                                ; add           (%rdx),%bh
4704  DB  31                                  ; (bad)
4705  DB  0,0                                 ; add           %al,(%rax)
4706  DB  0,8                                 ; add           %cl,(%rax)
4707  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
4708  DB  0,0                                 ; add           %al,(%rax)
4709  DB  248                                 ; clc
4710  DB  65,0,0                              ; add           %al,(%r8)
4711  DB  124,66                              ; jl            4d42 <.literal4+0x2fa>
4712  DB  0,240                               ; add           %dh,%al
4713  DB  0,0                                 ; add           %al,(%rax)
4714  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
4715  DB  0,0                                 ; add           %al,(%rax)
4716  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
4717  DB  0,0                                 ; add           %al,(%rax)
4718  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
4719  DB  0,0                                 ; add           %al,(%rax)
4720  DB  137,136,136,61,0,240                ; mov           %ecx,-0xfffc278(%rax)
4721  DB  0,0                                 ; add           %al,(%rax)
4722  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
4723  DB  0,0                                 ; add           %al,(%rax)
4724  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
4725  DB  0,0                                 ; add           %al,(%rax)
4726  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
4727  DB  0,0                                 ; add           %al,(%rax)
4728  DB  137,136,136,61,0,0                  ; mov           %ecx,0x3d88(%rax)
4729  DB  112,65                              ; jo            4d85 <.literal4+0x33d>
4730  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
4731  DB  127,67                              ; jg            4d93 <.literal4+0x34b>
4732  DB  128,0,128                           ; addb          $0x80,(%rax)
4733  DB  55                                  ; (bad)
4734  DB  128,0,128                           ; addb          $0x80,(%rax)
4735  DB  55                                  ; (bad)
4736  DB  0,0                                 ; add           %al,(%rax)
4737  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4738  DB  255                                 ; (bad)
4739  DB  127,71                              ; jg            4da7 <.literal4+0x35f>
4740  DB  0,0                                 ; add           %al,(%rax)
4741  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4742  DB  0,128,191,0,0,0                     ; add           %al,0xbf(%rax)
4743  DB  63                                  ; (bad)
4744  DB  208                                 ; (bad)
4745  DB  179,89                              ; mov           $0x59,%bl
4746  DB  62,89                               ; ds            pop %rcx
4747  DB  23                                  ; (bad)
4748  DB  55                                  ; (bad)
4749  DB  63                                  ; (bad)
4750  DB  152                                 ; cwtl
4751  DB  221,147,61,18,120,57                ; fstl          0x3978123d(%rbx)
4752  DB  64,45,16,17,192,32                  ; rex           sub $0x20c01110,%eax
4753  DB  148                                 ; xchg          %eax,%esp
4754  DB  90                                  ; pop           %rdx
4755  DB  62,4,157                            ; ds            add $0x9d,%al
4756  DB  30                                  ; (bad)
4757  DB  62,0,24                             ; add           %bl,%ds:(%rax)
4758  DB  161,57,1,0,0,0,111,43,231           ; movabs        0xe72b6f0000000139,%eax
4759  DB  187,159,215,202,60                  ; mov           $0x3ccad79f,%ebx
4760  DB  212                                 ; (bad)
4761  DB  100,84                              ; fs            push %rsp
4762  DB  189,169,240,34,62                   ; mov           $0x3e22f0a9,%ebp
4763  DB  0,0                                 ; add           %al,(%rax)
4764  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
4765  DB  0,0                                 ; add           %al,(%rax)
4766  DB  63                                  ; (bad)
4767  DB  0,0                                 ; add           %al,(%rax)
4768  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4769  DB  0,0                                 ; add           %al,(%rax)
4770  DB  63                                  ; (bad)
4771  DB  0,0                                 ; add           %al,(%rax)
4772  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4773  DB  0,0                                 ; add           %al,(%rax)
4774  DB  0,63                                ; add           %bh,(%rdi)
4775  DB  0,0                                 ; add           %al,(%rax)
4776  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4777  DB  0,0                                 ; add           %al,(%rax)
4778  DB  0,63                                ; add           %bh,(%rdi)
4779  DB  0,0                                 ; add           %al,(%rax)
4780  DB  192,191,0,0,128,63,171              ; sarb          $0xab,0x3f800000(%rdi)
4781  DB  170                                 ; stos          %al,%es:(%rdi)
4782  DB  170                                 ; stos          %al,%es:(%rdi)
4783  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4784  DB  0,0                                 ; add           %al,(%rax)
4785  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4786  DB  0,0                                 ; add           %al,(%rax)
4787  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4788  DB  85                                  ; push          %rbp
4789  DB  149                                 ; xchg          %eax,%ebp
4790  DB  191,0,0,0,63                        ; mov           $0x3f000000,%edi
4791  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
4792  DB  0,63                                ; add           %bh,(%rdi)
4793  DB  0,0                                 ; add           %al,(%rax)
4794  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4795  DB  85                                  ; push          %rbp
4796  DB  149                                 ; xchg          %eax,%ebp
4797  DB  191,57,142,99,61                    ; mov           $0x3d638e39,%edi
4798  DB  0,0                                 ; add           %al,(%rax)
4799  DB  192,63,171                          ; sarb          $0xab,(%rdi)
4800  DB  170                                 ; stos          %al,%es:(%rdi)
4801  DB  170                                 ; stos          %al,%es:(%rdi)
4802  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4803  DB  0,0                                 ; add           %al,(%rax)
4804  DB  192,191,0,0,128,63,171              ; sarb          $0xab,0x3f800000(%rdi)
4805  DB  170                                 ; stos          %al,%es:(%rdi)
4806  DB  170                                 ; stos          %al,%es:(%rdi)
4807  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4808  DB  0,0                                 ; add           %al,(%rax)
4809  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4810  DB  0,0                                 ; add           %al,(%rax)
4811  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4812  DB  85                                  ; push          %rbp
4813  DB  149                                 ; xchg          %eax,%ebp
4814  DB  191,0,0,0,63                        ; mov           $0x3f000000,%edi
4815  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
4816  DB  0,63                                ; add           %bh,(%rdi)
4817  DB  0,0                                 ; add           %al,(%rax)
4818  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4819  DB  85                                  ; push          %rbp
4820  DB  149                                 ; xchg          %eax,%ebp
4821  DB  191,57,142,99,61                    ; mov           $0x3d638e39,%edi
4822  DB  0,0                                 ; add           %al,(%rax)
4823  DB  192,63,171                          ; sarb          $0xab,(%rdi)
4824  DB  170                                 ; stos          %al,%es:(%rdi)
4825  DB  170                                 ; stos          %al,%es:(%rdi)
4826  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4827
4828ALIGN 32
4829  DB  255,0                               ; incl          (%rax)
4830  DB  0,0                                 ; add           %al,(%rax)
4831  DB  255,0                               ; incl          (%rax)
4832  DB  0,0                                 ; add           %al,(%rax)
4833  DB  255,0                               ; incl          (%rax)
4834  DB  0,0                                 ; add           %al,(%rax)
4835  DB  255,0                               ; incl          (%rax)
4836  DB  0,0                                 ; add           %al,(%rax)
4837  DB  255,0                               ; incl          (%rax)
4838  DB  0,0                                 ; add           %al,(%rax)
4839  DB  255,0                               ; incl          (%rax)
4840  DB  0,0                                 ; add           %al,(%rax)
4841  DB  255,0                               ; incl          (%rax)
4842  DB  0,0                                 ; add           %al,(%rax)
4843  DB  255,0                               ; incl          (%rax)
4844  DB  0,0                                 ; add           %al,(%rax)
4845  DB  1,255                               ; add           %edi,%edi
4846  DB  255                                 ; (bad)
4847  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a004e88 <_sk_callback_hsw+0xa00056c>
4848  DB  255                                 ; (bad)
4849  DB  255                                 ; (bad)
4850  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12004e90 <_sk_callback_hsw+0x12000574>
4851  DB  255                                 ; (bad)
4852  DB  255                                 ; (bad)
4853  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a004e98 <_sk_callback_hsw+0x1a00057c>
4854  DB  255                                 ; (bad)
4855  DB  255                                 ; (bad)
4856  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3004ea0 <_sk_callback_hsw+0x3000584>
4857  DB  255                                 ; (bad)
4858  DB  255                                 ; (bad)
4859  DB  255,6                               ; incl          (%rsi)
4860  DB  255                                 ; (bad)
4861  DB  255                                 ; (bad)
4862  DB  255,10                              ; decl          (%rdx)
4863  DB  255                                 ; (bad)
4864  DB  255                                 ; (bad)
4865  DB  255,14                              ; decl          (%rsi)
4866  DB  255                                 ; (bad)
4867  DB  255                                 ; (bad)
4868  DB  255,18                              ; callq         *(%rdx)
4869  DB  255                                 ; (bad)
4870  DB  255                                 ; (bad)
4871  DB  255,22                              ; callq         *(%rsi)
4872  DB  255                                 ; (bad)
4873  DB  255                                 ; (bad)
4874  DB  255,26                              ; lcall         *(%rdx)
4875  DB  255                                 ; (bad)
4876  DB  255                                 ; (bad)
4877  DB  255,30                              ; lcall         *(%rsi)
4878  DB  255                                 ; (bad)
4879  DB  255                                 ; (bad)
4880  DB  255                                 ; (bad)
4881  DB  255,0                               ; incl          (%rax)
4882  DB  0,0                                 ; add           %al,(%rax)
4883  DB  255,0                               ; incl          (%rax)
4884  DB  0,0                                 ; add           %al,(%rax)
4885  DB  255,0                               ; incl          (%rax)
4886  DB  0,0                                 ; add           %al,(%rax)
4887  DB  255,0                               ; incl          (%rax)
4888  DB  0,0                                 ; add           %al,(%rax)
4889  DB  255,0                               ; incl          (%rax)
4890  DB  0,0                                 ; add           %al,(%rax)
4891  DB  255,0                               ; incl          (%rax)
4892  DB  0,0                                 ; add           %al,(%rax)
4893  DB  255,0                               ; incl          (%rax)
4894  DB  0,0                                 ; add           %al,(%rax)
4895  DB  255,0                               ; incl          (%rax)
4896  DB  0,0                                 ; add           %al,(%rax)
4897  DB  1,255                               ; add           %edi,%edi
4898  DB  255                                 ; (bad)
4899  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a004ee8 <_sk_callback_hsw+0xa0005cc>
4900  DB  255                                 ; (bad)
4901  DB  255                                 ; (bad)
4902  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12004ef0 <_sk_callback_hsw+0x120005d4>
4903  DB  255                                 ; (bad)
4904  DB  255                                 ; (bad)
4905  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a004ef8 <_sk_callback_hsw+0x1a0005dc>
4906  DB  255                                 ; (bad)
4907  DB  255                                 ; (bad)
4908  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3004f00 <_sk_callback_hsw+0x30005e4>
4909  DB  255                                 ; (bad)
4910  DB  255                                 ; (bad)
4911  DB  255,6                               ; incl          (%rsi)
4912  DB  255                                 ; (bad)
4913  DB  255                                 ; (bad)
4914  DB  255,10                              ; decl          (%rdx)
4915  DB  255                                 ; (bad)
4916  DB  255                                 ; (bad)
4917  DB  255,14                              ; decl          (%rsi)
4918  DB  255                                 ; (bad)
4919  DB  255                                 ; (bad)
4920  DB  255,18                              ; callq         *(%rdx)
4921  DB  255                                 ; (bad)
4922  DB  255                                 ; (bad)
4923  DB  255,22                              ; callq         *(%rsi)
4924  DB  255                                 ; (bad)
4925  DB  255                                 ; (bad)
4926  DB  255,26                              ; lcall         *(%rdx)
4927  DB  255                                 ; (bad)
4928  DB  255                                 ; (bad)
4929  DB  255,30                              ; lcall         *(%rsi)
4930  DB  255                                 ; (bad)
4931  DB  255                                 ; (bad)
4932  DB  255                                 ; (bad)
4933  DB  255,0                               ; incl          (%rax)
4934  DB  0,0                                 ; add           %al,(%rax)
4935  DB  255,0                               ; incl          (%rax)
4936  DB  0,0                                 ; add           %al,(%rax)
4937  DB  255,0                               ; incl          (%rax)
4938  DB  0,0                                 ; add           %al,(%rax)
4939  DB  255,0                               ; incl          (%rax)
4940  DB  0,0                                 ; add           %al,(%rax)
4941  DB  255,0                               ; incl          (%rax)
4942  DB  0,0                                 ; add           %al,(%rax)
4943  DB  255,0                               ; incl          (%rax)
4944  DB  0,0                                 ; add           %al,(%rax)
4945  DB  255,0                               ; incl          (%rax)
4946  DB  0,0                                 ; add           %al,(%rax)
4947  DB  255,0                               ; incl          (%rax)
4948  DB  0,0                                 ; add           %al,(%rax)
4949  DB  1,255                               ; add           %edi,%edi
4950  DB  255                                 ; (bad)
4951  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a004f48 <_sk_callback_hsw+0xa00062c>
4952  DB  255                                 ; (bad)
4953  DB  255                                 ; (bad)
4954  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12004f50 <_sk_callback_hsw+0x12000634>
4955  DB  255                                 ; (bad)
4956  DB  255                                 ; (bad)
4957  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a004f58 <_sk_callback_hsw+0x1a00063c>
4958  DB  255                                 ; (bad)
4959  DB  255                                 ; (bad)
4960  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3004f60 <_sk_callback_hsw+0x3000644>
4961  DB  255                                 ; (bad)
4962  DB  255                                 ; (bad)
4963  DB  255,6                               ; incl          (%rsi)
4964  DB  255                                 ; (bad)
4965  DB  255                                 ; (bad)
4966  DB  255,10                              ; decl          (%rdx)
4967  DB  255                                 ; (bad)
4968  DB  255                                 ; (bad)
4969  DB  255,14                              ; decl          (%rsi)
4970  DB  255                                 ; (bad)
4971  DB  255                                 ; (bad)
4972  DB  255,18                              ; callq         *(%rdx)
4973  DB  255                                 ; (bad)
4974  DB  255                                 ; (bad)
4975  DB  255,22                              ; callq         *(%rsi)
4976  DB  255                                 ; (bad)
4977  DB  255                                 ; (bad)
4978  DB  255,26                              ; lcall         *(%rdx)
4979  DB  255                                 ; (bad)
4980  DB  255                                 ; (bad)
4981  DB  255,30                              ; lcall         *(%rsi)
4982  DB  255                                 ; (bad)
4983  DB  255                                 ; (bad)
4984  DB  255                                 ; (bad)
4985  DB  255,0                               ; incl          (%rax)
4986  DB  0,0                                 ; add           %al,(%rax)
4987  DB  255,0                               ; incl          (%rax)
4988  DB  0,0                                 ; add           %al,(%rax)
4989  DB  255,0                               ; incl          (%rax)
4990  DB  0,0                                 ; add           %al,(%rax)
4991  DB  255,0                               ; incl          (%rax)
4992  DB  0,0                                 ; add           %al,(%rax)
4993  DB  255,0                               ; incl          (%rax)
4994  DB  0,0                                 ; add           %al,(%rax)
4995  DB  255,0                               ; incl          (%rax)
4996  DB  0,0                                 ; add           %al,(%rax)
4997  DB  255,0                               ; incl          (%rax)
4998  DB  0,0                                 ; add           %al,(%rax)
4999  DB  255,0                               ; incl          (%rax)
5000  DB  0,0                                 ; add           %al,(%rax)
5001  DB  1,255                               ; add           %edi,%edi
5002  DB  255                                 ; (bad)
5003  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a004fa8 <_sk_callback_hsw+0xa00068c>
5004  DB  255                                 ; (bad)
5005  DB  255                                 ; (bad)
5006  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12004fb0 <_sk_callback_hsw+0x12000694>
5007  DB  255                                 ; (bad)
5008  DB  255                                 ; (bad)
5009  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a004fb8 <_sk_callback_hsw+0x1a00069c>
5010  DB  255                                 ; (bad)
5011  DB  255                                 ; (bad)
5012  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3004fc0 <_sk_callback_hsw+0x30006a4>
5013  DB  255                                 ; (bad)
5014  DB  255                                 ; (bad)
5015  DB  255,6                               ; incl          (%rsi)
5016  DB  255                                 ; (bad)
5017  DB  255                                 ; (bad)
5018  DB  255,10                              ; decl          (%rdx)
5019  DB  255                                 ; (bad)
5020  DB  255                                 ; (bad)
5021  DB  255,14                              ; decl          (%rsi)
5022  DB  255                                 ; (bad)
5023  DB  255                                 ; (bad)
5024  DB  255,18                              ; callq         *(%rdx)
5025  DB  255                                 ; (bad)
5026  DB  255                                 ; (bad)
5027  DB  255,22                              ; callq         *(%rsi)
5028  DB  255                                 ; (bad)
5029  DB  255                                 ; (bad)
5030  DB  255,26                              ; lcall         *(%rdx)
5031  DB  255                                 ; (bad)
5032  DB  255                                 ; (bad)
5033  DB  255,30                              ; lcall         *(%rsi)
5034  DB  255                                 ; (bad)
5035  DB  255                                 ; (bad)
5036  DB  255                                 ; (bad)
5037  DB  255,0                               ; incl          (%rax)
5038  DB  0,0                                 ; add           %al,(%rax)
5039  DB  255,0                               ; incl          (%rax)
5040  DB  0,0                                 ; add           %al,(%rax)
5041  DB  255,0                               ; incl          (%rax)
5042  DB  0,0                                 ; add           %al,(%rax)
5043  DB  255,0                               ; incl          (%rax)
5044  DB  0,0                                 ; add           %al,(%rax)
5045  DB  255,0                               ; incl          (%rax)
5046  DB  0,0                                 ; add           %al,(%rax)
5047  DB  255,0                               ; incl          (%rax)
5048  DB  0,0                                 ; add           %al,(%rax)
5049  DB  255,0                               ; incl          (%rax)
5050  DB  0,0                                 ; add           %al,(%rax)
5051  DB  255,0                               ; incl          (%rax)
5052  DB  0,0                                 ; add           %al,(%rax)
5053  DB  1,255                               ; add           %edi,%edi
5054  DB  255                                 ; (bad)
5055  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a005008 <_sk_callback_hsw+0xa0006ec>
5056  DB  255                                 ; (bad)
5057  DB  255                                 ; (bad)
5058  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12005010 <_sk_callback_hsw+0x120006f4>
5059  DB  255                                 ; (bad)
5060  DB  255                                 ; (bad)
5061  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a005018 <_sk_callback_hsw+0x1a0006fc>
5062  DB  255                                 ; (bad)
5063  DB  255                                 ; (bad)
5064  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3005020 <_sk_callback_hsw+0x3000704>
5065  DB  255                                 ; (bad)
5066  DB  255                                 ; (bad)
5067  DB  255,6                               ; incl          (%rsi)
5068  DB  255                                 ; (bad)
5069  DB  255                                 ; (bad)
5070  DB  255,10                              ; decl          (%rdx)
5071  DB  255                                 ; (bad)
5072  DB  255                                 ; (bad)
5073  DB  255,14                              ; decl          (%rsi)
5074  DB  255                                 ; (bad)
5075  DB  255                                 ; (bad)
5076  DB  255,18                              ; callq         *(%rdx)
5077  DB  255                                 ; (bad)
5078  DB  255                                 ; (bad)
5079  DB  255,22                              ; callq         *(%rsi)
5080  DB  255                                 ; (bad)
5081  DB  255                                 ; (bad)
5082  DB  255,26                              ; lcall         *(%rdx)
5083  DB  255                                 ; (bad)
5084  DB  255                                 ; (bad)
5085  DB  255,30                              ; lcall         *(%rsi)
5086  DB  255                                 ; (bad)
5087  DB  255                                 ; (bad)
5088  DB  255                                 ; .byte         0xff
5089
5090ALIGN 16
5091  DB  255,0                               ; incl          (%rax)
5092  DB  255,0                               ; incl          (%rax)
5093  DB  255,0                               ; incl          (%rax)
5094  DB  255,0                               ; incl          (%rax)
5095  DB  255,0                               ; incl          (%rax)
5096  DB  255,0                               ; incl          (%rax)
5097  DB  255,0                               ; incl          (%rax)
5098  DB  255,0                               ; incl          (%rax)
5099  DB  255,0                               ; incl          (%rax)
5100  DB  255,0                               ; incl          (%rax)
5101  DB  255,0                               ; incl          (%rax)
5102  DB  255,0                               ; incl          (%rax)
5103  DB  255,0                               ; incl          (%rax)
5104  DB  255,0                               ; incl          (%rax)
5105  DB  255,0                               ; incl          (%rax)
5106  DB  255,0                               ; incl          (%rax)
5107ALIGN 32
5108
5109PUBLIC _sk_start_pipeline_avx
5110_sk_start_pipeline_avx LABEL PROC
5111  DB  85                                  ; push          %rbp
5112  DB  72,137,229                          ; mov           %rsp,%rbp
5113  DB  65,87                               ; push          %r15
5114  DB  65,86                               ; push          %r14
5115  DB  65,85                               ; push          %r13
5116  DB  65,84                               ; push          %r12
5117  DB  86                                  ; push          %rsi
5118  DB  87                                  ; push          %rdi
5119  DB  83                                  ; push          %rbx
5120  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
5121  DB  197,120,41,125,176                  ; vmovaps       %xmm15,-0x50(%rbp)
5122  DB  197,120,41,117,160                  ; vmovaps       %xmm14,-0x60(%rbp)
5123  DB  197,120,41,109,144                  ; vmovaps       %xmm13,-0x70(%rbp)
5124  DB  197,120,41,101,128                  ; vmovaps       %xmm12,-0x80(%rbp)
5125  DB  197,120,41,157,112,255,255,255      ; vmovaps       %xmm11,-0x90(%rbp)
5126  DB  197,120,41,149,96,255,255,255       ; vmovaps       %xmm10,-0xa0(%rbp)
5127  DB  197,120,41,141,80,255,255,255       ; vmovaps       %xmm9,-0xb0(%rbp)
5128  DB  197,120,41,133,64,255,255,255       ; vmovaps       %xmm8,-0xc0(%rbp)
5129  DB  197,248,41,189,48,255,255,255       ; vmovaps       %xmm7,-0xd0(%rbp)
5130  DB  197,248,41,181,32,255,255,255       ; vmovaps       %xmm6,-0xe0(%rbp)
5131  DB  72,137,211                          ; mov           %rdx,%rbx
5132  DB  73,137,207                          ; mov           %rcx,%r15
5133  DB  76,139,117,48                       ; mov           0x30(%rbp),%r14
5134  DB  76,137,206                          ; mov           %r9,%rsi
5135  DB  72,173                              ; lods          %ds:(%rsi),%rax
5136  DB  73,137,197                          ; mov           %rax,%r13
5137  DB  73,137,244                          ; mov           %rsi,%r12
5138  DB  73,141,79,8                         ; lea           0x8(%r15),%rcx
5139  DB  76,57,193                           ; cmp           %r8,%rcx
5140  DB  118,5                               ; jbe           7d <_sk_start_pipeline_avx+0x7d>
5141  DB  76,137,250                          ; mov           %r15,%rdx
5142  DB  235,83                              ; jmp           d0 <_sk_start_pipeline_avx+0xd0>
5143  DB  76,137,133,24,255,255,255           ; mov           %r8,-0xe8(%rbp)
5144  DB  65,184,0,0,0,0                      ; mov           $0x0,%r8d
5145  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
5146  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
5147  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
5148  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
5149  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
5150  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
5151  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
5152  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
5153  DB  76,137,247                          ; mov           %r14,%rdi
5154  DB  76,137,230                          ; mov           %r12,%rsi
5155  DB  76,137,250                          ; mov           %r15,%rdx
5156  DB  72,137,217                          ; mov           %rbx,%rcx
5157  DB  65,255,213                          ; callq         *%r13
5158  DB  76,139,133,24,255,255,255           ; mov           -0xe8(%rbp),%r8
5159  DB  73,141,87,8                         ; lea           0x8(%r15),%rdx
5160  DB  73,131,199,16                       ; add           $0x10,%r15
5161  DB  77,57,199                           ; cmp           %r8,%r15
5162  DB  73,137,215                          ; mov           %rdx,%r15
5163  DB  118,180                             ; jbe           84 <_sk_start_pipeline_avx+0x84>
5164  DB  73,41,208                           ; sub           %rdx,%r8
5165  DB  116,44                              ; je            101 <_sk_start_pipeline_avx+0x101>
5166  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
5167  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
5168  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
5169  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
5170  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
5171  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
5172  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
5173  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
5174  DB  76,137,247                          ; mov           %r14,%rdi
5175  DB  76,137,230                          ; mov           %r12,%rsi
5176  DB  72,137,217                          ; mov           %rbx,%rcx
5177  DB  65,255,213                          ; callq         *%r13
5178  DB  197,248,40,181,32,255,255,255       ; vmovaps       -0xe0(%rbp),%xmm6
5179  DB  197,248,40,189,48,255,255,255       ; vmovaps       -0xd0(%rbp),%xmm7
5180  DB  197,120,40,133,64,255,255,255       ; vmovaps       -0xc0(%rbp),%xmm8
5181  DB  197,120,40,141,80,255,255,255       ; vmovaps       -0xb0(%rbp),%xmm9
5182  DB  197,120,40,149,96,255,255,255       ; vmovaps       -0xa0(%rbp),%xmm10
5183  DB  197,120,40,157,112,255,255,255      ; vmovaps       -0x90(%rbp),%xmm11
5184  DB  197,120,40,101,128                  ; vmovaps       -0x80(%rbp),%xmm12
5185  DB  197,120,40,109,144                  ; vmovaps       -0x70(%rbp),%xmm13
5186  DB  197,120,40,117,160                  ; vmovaps       -0x60(%rbp),%xmm14
5187  DB  197,120,40,125,176                  ; vmovaps       -0x50(%rbp),%xmm15
5188  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
5189  DB  91                                  ; pop           %rbx
5190  DB  95                                  ; pop           %rdi
5191  DB  94                                  ; pop           %rsi
5192  DB  65,92                               ; pop           %r12
5193  DB  65,93                               ; pop           %r13
5194  DB  65,94                               ; pop           %r14
5195  DB  65,95                               ; pop           %r15
5196  DB  93                                  ; pop           %rbp
5197  DB  197,248,119                         ; vzeroupper
5198  DB  195                                 ; retq
5199
5200PUBLIC _sk_just_return_avx
5201_sk_just_return_avx LABEL PROC
5202  DB  195                                 ; retq
5203
5204PUBLIC _sk_seed_shader_avx
5205_sk_seed_shader_avx LABEL PROC
5206  DB  197,249,110,194                     ; vmovd         %edx,%xmm0
5207  DB  197,249,112,192,0                   ; vpshufd       $0x0,%xmm0,%xmm0
5208  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
5209  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
5210  DB  196,226,125,24,13,183,100,0,0       ; vbroadcastss  0x64b7(%rip),%ymm1        # 6630 <_sk_callback_avx+0x12c>
5211  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
5212  DB  197,252,88,7                        ; vaddps        (%rdi),%ymm0,%ymm0
5213  DB  197,249,110,209                     ; vmovd         %ecx,%xmm2
5214  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
5215  DB  196,227,109,24,210,1                ; vinsertf128   $0x1,%xmm2,%ymm2,%ymm2
5216  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
5217  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
5218  DB  72,173                              ; lods          %ds:(%rsi),%rax
5219  DB  196,226,125,24,21,145,100,0,0       ; vbroadcastss  0x6491(%rip),%ymm2        # 6634 <_sk_callback_avx+0x130>
5220  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
5221  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
5222  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
5223  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
5224  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
5225  DB  255,224                             ; jmpq          *%rax
5226
5227PUBLIC _sk_dither_avx
5228_sk_dither_avx LABEL PROC
5229  DB  72,173                              ; lods          %ds:(%rsi),%rax
5230  DB  197,124,16,71,32                    ; vmovups       0x20(%rdi),%ymm8
5231  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
5232  DB  197,121,110,210                     ; vmovd         %edx,%xmm10
5233  DB  196,65,121,112,210,0                ; vpshufd       $0x0,%xmm10,%xmm10
5234  DB  196,65,49,254,202                   ; vpaddd        %xmm10,%xmm9,%xmm9
5235  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
5236  DB  196,67,61,24,193,1                  ; vinsertf128   $0x1,%xmm9,%ymm8,%ymm8
5237  DB  197,121,110,201                     ; vmovd         %ecx,%xmm9
5238  DB  196,65,121,112,201,0                ; vpshufd       $0x0,%xmm9,%xmm9
5239  DB  196,67,53,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm9,%ymm9
5240  DB  196,65,52,87,208                    ; vxorps        %ymm8,%ymm9,%ymm10
5241  DB  196,98,125,24,29,58,100,0,0         ; vbroadcastss  0x643a(%rip),%ymm11        # 6638 <_sk_callback_avx+0x134>
5242  DB  196,65,44,84,203                    ; vandps        %ymm11,%ymm10,%ymm9
5243  DB  196,193,25,114,241,5                ; vpslld        $0x5,%xmm9,%xmm12
5244  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
5245  DB  196,193,49,114,241,5                ; vpslld        $0x5,%xmm9,%xmm9
5246  DB  196,67,29,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm12,%ymm9
5247  DB  196,65,60,84,219                    ; vandps        %ymm11,%ymm8,%ymm11
5248  DB  196,193,25,114,243,4                ; vpslld        $0x4,%xmm11,%xmm12
5249  DB  196,67,125,25,219,1                 ; vextractf128  $0x1,%ymm11,%xmm11
5250  DB  196,193,33,114,243,4                ; vpslld        $0x4,%xmm11,%xmm11
5251  DB  196,67,29,24,219,1                  ; vinsertf128   $0x1,%xmm11,%ymm12,%ymm11
5252  DB  196,98,125,24,37,251,99,0,0         ; vbroadcastss  0x63fb(%rip),%ymm12        # 663c <_sk_callback_avx+0x138>
5253  DB  196,98,125,24,45,246,99,0,0         ; vbroadcastss  0x63f6(%rip),%ymm13        # 6640 <_sk_callback_avx+0x13c>
5254  DB  196,65,44,84,245                    ; vandps        %ymm13,%ymm10,%ymm14
5255  DB  196,193,1,114,246,2                 ; vpslld        $0x2,%xmm14,%xmm15
5256  DB  196,67,125,25,246,1                 ; vextractf128  $0x1,%ymm14,%xmm14
5257  DB  196,193,9,114,246,2                 ; vpslld        $0x2,%xmm14,%xmm14
5258  DB  196,67,5,24,246,1                   ; vinsertf128   $0x1,%xmm14,%ymm15,%ymm14
5259  DB  196,65,60,84,237                    ; vandps        %ymm13,%ymm8,%ymm13
5260  DB  196,65,17,254,253                   ; vpaddd        %xmm13,%xmm13,%xmm15
5261  DB  196,67,125,25,237,1                 ; vextractf128  $0x1,%ymm13,%xmm13
5262  DB  196,65,17,254,237                   ; vpaddd        %xmm13,%xmm13,%xmm13
5263  DB  196,67,5,24,237,1                   ; vinsertf128   $0x1,%xmm13,%ymm15,%ymm13
5264  DB  196,65,44,84,212                    ; vandps        %ymm12,%ymm10,%ymm10
5265  DB  196,193,1,114,210,1                 ; vpsrld        $0x1,%xmm10,%xmm15
5266  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
5267  DB  196,193,41,114,210,1                ; vpsrld        $0x1,%xmm10,%xmm10
5268  DB  196,67,5,24,210,1                   ; vinsertf128   $0x1,%xmm10,%ymm15,%ymm10
5269  DB  196,65,60,84,196                    ; vandps        %ymm12,%ymm8,%ymm8
5270  DB  196,193,25,114,208,2                ; vpsrld        $0x2,%xmm8,%xmm12
5271  DB  196,67,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm8
5272  DB  196,193,57,114,208,2                ; vpsrld        $0x2,%xmm8,%xmm8
5273  DB  196,67,29,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm12,%ymm8
5274  DB  196,65,20,86,219                    ; vorps         %ymm11,%ymm13,%ymm11
5275  DB  196,65,36,86,192                    ; vorps         %ymm8,%ymm11,%ymm8
5276  DB  196,65,52,86,206                    ; vorps         %ymm14,%ymm9,%ymm9
5277  DB  196,65,60,86,193                    ; vorps         %ymm9,%ymm8,%ymm8
5278  DB  196,65,60,86,194                    ; vorps         %ymm10,%ymm8,%ymm8
5279  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
5280  DB  196,98,125,24,13,97,99,0,0          ; vbroadcastss  0x6361(%rip),%ymm9        # 6644 <_sk_callback_avx+0x140>
5281  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
5282  DB  196,98,125,24,13,87,99,0,0          ; vbroadcastss  0x6357(%rip),%ymm9        # 6648 <_sk_callback_avx+0x144>
5283  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
5284  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
5285  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
5286  DB  197,188,88,192                      ; vaddps        %ymm0,%ymm8,%ymm0
5287  DB  197,188,88,201                      ; vaddps        %ymm1,%ymm8,%ymm1
5288  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
5289  DB  197,252,93,195                      ; vminps        %ymm3,%ymm0,%ymm0
5290  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
5291  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
5292  DB  197,244,93,203                      ; vminps        %ymm3,%ymm1,%ymm1
5293  DB  197,188,95,201                      ; vmaxps        %ymm1,%ymm8,%ymm1
5294  DB  197,236,93,211                      ; vminps        %ymm3,%ymm2,%ymm2
5295  DB  197,188,95,210                      ; vmaxps        %ymm2,%ymm8,%ymm2
5296  DB  72,173                              ; lods          %ds:(%rsi),%rax
5297  DB  255,224                             ; jmpq          *%rax
5298
5299PUBLIC _sk_constant_color_avx
5300_sk_constant_color_avx LABEL PROC
5301  DB  72,173                              ; lods          %ds:(%rsi),%rax
5302  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
5303  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
5304  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
5305  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
5306  DB  72,173                              ; lods          %ds:(%rsi),%rax
5307  DB  255,224                             ; jmpq          *%rax
5308
5309PUBLIC _sk_load_rgba_avx
5310_sk_load_rgba_avx LABEL PROC
5311  DB  72,173                              ; lods          %ds:(%rsi),%rax
5312  DB  197,252,16,0                        ; vmovups       (%rax),%ymm0
5313  DB  197,252,16,72,32                    ; vmovups       0x20(%rax),%ymm1
5314  DB  197,252,16,80,64                    ; vmovups       0x40(%rax),%ymm2
5315  DB  197,252,16,88,96                    ; vmovups       0x60(%rax),%ymm3
5316  DB  72,173                              ; lods          %ds:(%rsi),%rax
5317  DB  255,224                             ; jmpq          *%rax
5318
5319PUBLIC _sk_store_rgba_avx
5320_sk_store_rgba_avx LABEL PROC
5321  DB  72,173                              ; lods          %ds:(%rsi),%rax
5322  DB  197,252,17,0                        ; vmovups       %ymm0,(%rax)
5323  DB  197,252,17,72,32                    ; vmovups       %ymm1,0x20(%rax)
5324  DB  197,252,17,80,64                    ; vmovups       %ymm2,0x40(%rax)
5325  DB  197,252,17,88,96                    ; vmovups       %ymm3,0x60(%rax)
5326  DB  72,173                              ; lods          %ds:(%rsi),%rax
5327  DB  255,224                             ; jmpq          *%rax
5328
5329PUBLIC _sk_clear_avx
5330_sk_clear_avx LABEL PROC
5331  DB  72,173                              ; lods          %ds:(%rsi),%rax
5332  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
5333  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
5334  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
5335  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
5336  DB  255,224                             ; jmpq          *%rax
5337
5338PUBLIC _sk_srcatop_avx
5339_sk_srcatop_avx LABEL PROC
5340  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5341  DB  196,98,125,24,5,175,98,0,0          ; vbroadcastss  0x62af(%rip),%ymm8        # 664c <_sk_callback_avx+0x148>
5342  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5343  DB  197,60,89,204                       ; vmulps        %ymm4,%ymm8,%ymm9
5344  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
5345  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
5346  DB  197,60,89,205                       ; vmulps        %ymm5,%ymm8,%ymm9
5347  DB  197,180,88,201                      ; vaddps        %ymm1,%ymm9,%ymm1
5348  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
5349  DB  197,60,89,206                       ; vmulps        %ymm6,%ymm8,%ymm9
5350  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
5351  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5352  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5353  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
5354  DB  72,173                              ; lods          %ds:(%rsi),%rax
5355  DB  255,224                             ; jmpq          *%rax
5356
5357PUBLIC _sk_dstatop_avx
5358_sk_dstatop_avx LABEL PROC
5359  DB  197,100,89,196                      ; vmulps        %ymm4,%ymm3,%ymm8
5360  DB  196,98,125,24,13,113,98,0,0         ; vbroadcastss  0x6271(%rip),%ymm9        # 6650 <_sk_callback_avx+0x14c>
5361  DB  197,52,92,207                       ; vsubps        %ymm7,%ymm9,%ymm9
5362  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
5363  DB  197,188,88,192                      ; vaddps        %ymm0,%ymm8,%ymm0
5364  DB  197,100,89,197                      ; vmulps        %ymm5,%ymm3,%ymm8
5365  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
5366  DB  197,188,88,201                      ; vaddps        %ymm1,%ymm8,%ymm1
5367  DB  197,100,89,198                      ; vmulps        %ymm6,%ymm3,%ymm8
5368  DB  197,180,89,210                      ; vmulps        %ymm2,%ymm9,%ymm2
5369  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
5370  DB  197,100,89,199                      ; vmulps        %ymm7,%ymm3,%ymm8
5371  DB  197,180,89,219                      ; vmulps        %ymm3,%ymm9,%ymm3
5372  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5373  DB  72,173                              ; lods          %ds:(%rsi),%rax
5374  DB  255,224                             ; jmpq          *%rax
5375
5376PUBLIC _sk_srcin_avx
5377_sk_srcin_avx LABEL PROC
5378  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5379  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
5380  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
5381  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5382  DB  72,173                              ; lods          %ds:(%rsi),%rax
5383  DB  255,224                             ; jmpq          *%rax
5384
5385PUBLIC _sk_dstin_avx
5386_sk_dstin_avx LABEL PROC
5387  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
5388  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
5389  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
5390  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5391  DB  72,173                              ; lods          %ds:(%rsi),%rax
5392  DB  255,224                             ; jmpq          *%rax
5393
5394PUBLIC _sk_srcout_avx
5395_sk_srcout_avx LABEL PROC
5396  DB  196,98,125,24,5,16,98,0,0           ; vbroadcastss  0x6210(%rip),%ymm8        # 6654 <_sk_callback_avx+0x150>
5397  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
5398  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
5399  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
5400  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
5401  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
5402  DB  72,173                              ; lods          %ds:(%rsi),%rax
5403  DB  255,224                             ; jmpq          *%rax
5404
5405PUBLIC _sk_dstout_avx
5406_sk_dstout_avx LABEL PROC
5407  DB  196,226,125,24,5,243,97,0,0         ; vbroadcastss  0x61f3(%rip),%ymm0        # 6658 <_sk_callback_avx+0x154>
5408  DB  197,252,92,219                      ; vsubps        %ymm3,%ymm0,%ymm3
5409  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
5410  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
5411  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
5412  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5413  DB  72,173                              ; lods          %ds:(%rsi),%rax
5414  DB  255,224                             ; jmpq          *%rax
5415
5416PUBLIC _sk_srcover_avx
5417_sk_srcover_avx LABEL PROC
5418  DB  196,98,125,24,5,214,97,0,0          ; vbroadcastss  0x61d6(%rip),%ymm8        # 665c <_sk_callback_avx+0x158>
5419  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5420  DB  197,60,89,204                       ; vmulps        %ymm4,%ymm8,%ymm9
5421  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
5422  DB  197,60,89,205                       ; vmulps        %ymm5,%ymm8,%ymm9
5423  DB  197,180,88,201                      ; vaddps        %ymm1,%ymm9,%ymm1
5424  DB  197,60,89,206                       ; vmulps        %ymm6,%ymm8,%ymm9
5425  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
5426  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5427  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5428  DB  72,173                              ; lods          %ds:(%rsi),%rax
5429  DB  255,224                             ; jmpq          *%rax
5430
5431PUBLIC _sk_dstover_avx
5432_sk_dstover_avx LABEL PROC
5433  DB  196,98,125,24,5,169,97,0,0          ; vbroadcastss  0x61a9(%rip),%ymm8        # 6660 <_sk_callback_avx+0x15c>
5434  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
5435  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
5436  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
5437  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
5438  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
5439  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
5440  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
5441  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
5442  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
5443  DB  72,173                              ; lods          %ds:(%rsi),%rax
5444  DB  255,224                             ; jmpq          *%rax
5445
5446PUBLIC _sk_modulate_avx
5447_sk_modulate_avx LABEL PROC
5448  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
5449  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
5450  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
5451  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5452  DB  72,173                              ; lods          %ds:(%rsi),%rax
5453  DB  255,224                             ; jmpq          *%rax
5454
5455PUBLIC _sk_multiply_avx
5456_sk_multiply_avx LABEL PROC
5457  DB  196,98,125,24,5,104,97,0,0          ; vbroadcastss  0x6168(%rip),%ymm8        # 6664 <_sk_callback_avx+0x160>
5458  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
5459  DB  197,52,89,208                       ; vmulps        %ymm0,%ymm9,%ymm10
5460  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5461  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
5462  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
5463  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
5464  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
5465  DB  197,52,89,209                       ; vmulps        %ymm1,%ymm9,%ymm10
5466  DB  197,60,89,221                       ; vmulps        %ymm5,%ymm8,%ymm11
5467  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
5468  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
5469  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
5470  DB  197,52,89,210                       ; vmulps        %ymm2,%ymm9,%ymm10
5471  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
5472  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
5473  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
5474  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
5475  DB  197,52,89,203                       ; vmulps        %ymm3,%ymm9,%ymm9
5476  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5477  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
5478  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5479  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
5480  DB  72,173                              ; lods          %ds:(%rsi),%rax
5481  DB  255,224                             ; jmpq          *%rax
5482
5483PUBLIC _sk_plus__avx
5484_sk_plus__avx LABEL PROC
5485  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
5486  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
5487  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
5488  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
5489  DB  72,173                              ; lods          %ds:(%rsi),%rax
5490  DB  255,224                             ; jmpq          *%rax
5491
5492PUBLIC _sk_screen_avx
5493_sk_screen_avx LABEL PROC
5494  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
5495  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
5496  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5497  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
5498  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
5499  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
5500  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
5501  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
5502  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
5503  DB  197,100,88,199                      ; vaddps        %ymm7,%ymm3,%ymm8
5504  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5505  DB  197,188,92,219                      ; vsubps        %ymm3,%ymm8,%ymm3
5506  DB  72,173                              ; lods          %ds:(%rsi),%rax
5507  DB  255,224                             ; jmpq          *%rax
5508
5509PUBLIC _sk_xor__avx
5510_sk_xor__avx LABEL PROC
5511  DB  196,98,125,24,5,183,96,0,0          ; vbroadcastss  0x60b7(%rip),%ymm8        # 6668 <_sk_callback_avx+0x164>
5512  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
5513  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
5514  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5515  DB  197,60,89,212                       ; vmulps        %ymm4,%ymm8,%ymm10
5516  DB  197,172,88,192                      ; vaddps        %ymm0,%ymm10,%ymm0
5517  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
5518  DB  197,60,89,213                       ; vmulps        %ymm5,%ymm8,%ymm10
5519  DB  197,172,88,201                      ; vaddps        %ymm1,%ymm10,%ymm1
5520  DB  197,180,89,210                      ; vmulps        %ymm2,%ymm9,%ymm2
5521  DB  197,60,89,214                       ; vmulps        %ymm6,%ymm8,%ymm10
5522  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
5523  DB  197,180,89,219                      ; vmulps        %ymm3,%ymm9,%ymm3
5524  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5525  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5526  DB  72,173                              ; lods          %ds:(%rsi),%rax
5527  DB  255,224                             ; jmpq          *%rax
5528
5529PUBLIC _sk_darken_avx
5530_sk_darken_avx LABEL PROC
5531  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
5532  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5533  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
5534  DB  196,193,124,95,193                  ; vmaxps        %ymm9,%ymm0,%ymm0
5535  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5536  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
5537  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
5538  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
5539  DB  196,193,116,95,201                  ; vmaxps        %ymm9,%ymm1,%ymm1
5540  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
5541  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
5542  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
5543  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
5544  DB  196,193,108,95,209                  ; vmaxps        %ymm9,%ymm2,%ymm2
5545  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
5546  DB  196,98,125,24,5,55,96,0,0           ; vbroadcastss  0x6037(%rip),%ymm8        # 666c <_sk_callback_avx+0x168>
5547  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5548  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5549  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5550  DB  72,173                              ; lods          %ds:(%rsi),%rax
5551  DB  255,224                             ; jmpq          *%rax
5552
5553PUBLIC _sk_lighten_avx
5554_sk_lighten_avx LABEL PROC
5555  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
5556  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5557  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
5558  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
5559  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5560  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
5561  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
5562  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
5563  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
5564  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
5565  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
5566  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
5567  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
5568  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
5569  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
5570  DB  196,98,125,24,5,227,95,0,0          ; vbroadcastss  0x5fe3(%rip),%ymm8        # 6670 <_sk_callback_avx+0x16c>
5571  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5572  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5573  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5574  DB  72,173                              ; lods          %ds:(%rsi),%rax
5575  DB  255,224                             ; jmpq          *%rax
5576
5577PUBLIC _sk_difference_avx
5578_sk_difference_avx LABEL PROC
5579  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
5580  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5581  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
5582  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
5583  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
5584  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5585  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
5586  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
5587  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
5588  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
5589  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
5590  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
5591  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
5592  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
5593  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
5594  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
5595  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
5596  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
5597  DB  196,98,125,24,5,131,95,0,0          ; vbroadcastss  0x5f83(%rip),%ymm8        # 6674 <_sk_callback_avx+0x170>
5598  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5599  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5600  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5601  DB  72,173                              ; lods          %ds:(%rsi),%rax
5602  DB  255,224                             ; jmpq          *%rax
5603
5604PUBLIC _sk_exclusion_avx
5605_sk_exclusion_avx LABEL PROC
5606  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
5607  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
5608  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
5609  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5610  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
5611  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
5612  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
5613  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
5614  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
5615  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
5616  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
5617  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
5618  DB  196,98,125,24,5,62,95,0,0           ; vbroadcastss  0x5f3e(%rip),%ymm8        # 6678 <_sk_callback_avx+0x174>
5619  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5620  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5621  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5622  DB  72,173                              ; lods          %ds:(%rsi),%rax
5623  DB  255,224                             ; jmpq          *%rax
5624
5625PUBLIC _sk_colorburn_avx
5626_sk_colorburn_avx LABEL PROC
5627  DB  196,98,125,24,5,41,95,0,0           ; vbroadcastss  0x5f29(%rip),%ymm8        # 667c <_sk_callback_avx+0x178>
5628  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
5629  DB  197,52,89,216                       ; vmulps        %ymm0,%ymm9,%ymm11
5630  DB  196,65,44,87,210                    ; vxorps        %ymm10,%ymm10,%ymm10
5631  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5632  DB  197,60,89,228                       ; vmulps        %ymm4,%ymm8,%ymm12
5633  DB  197,68,92,236                       ; vsubps        %ymm4,%ymm7,%ymm13
5634  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
5635  DB  197,20,94,232                       ; vdivps        %ymm0,%ymm13,%ymm13
5636  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
5637  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
5638  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
5639  DB  196,65,36,88,237                    ; vaddps        %ymm13,%ymm11,%ymm13
5640  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
5641  DB  197,28,88,224                       ; vaddps        %ymm0,%ymm12,%ymm12
5642  DB  196,193,124,194,194,0               ; vcmpeqps      %ymm10,%ymm0,%ymm0
5643  DB  196,195,21,74,196,0                 ; vblendvps     %ymm0,%ymm12,%ymm13,%ymm0
5644  DB  197,92,194,231,0                    ; vcmpeqps      %ymm7,%ymm4,%ymm12
5645  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
5646  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
5647  DB  197,52,89,217                       ; vmulps        %ymm1,%ymm9,%ymm11
5648  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
5649  DB  197,68,92,237                       ; vsubps        %ymm5,%ymm7,%ymm13
5650  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
5651  DB  197,20,94,233                       ; vdivps        %ymm1,%ymm13,%ymm13
5652  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
5653  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
5654  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
5655  DB  196,65,36,88,237                    ; vaddps        %ymm13,%ymm11,%ymm13
5656  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
5657  DB  197,28,88,225                       ; vaddps        %ymm1,%ymm12,%ymm12
5658  DB  196,193,116,194,202,0               ; vcmpeqps      %ymm10,%ymm1,%ymm1
5659  DB  196,195,21,74,204,16                ; vblendvps     %ymm1,%ymm12,%ymm13,%ymm1
5660  DB  197,84,194,231,0                    ; vcmpeqps      %ymm7,%ymm5,%ymm12
5661  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
5662  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
5663  DB  197,52,89,202                       ; vmulps        %ymm2,%ymm9,%ymm9
5664  DB  196,65,108,194,210,0                ; vcmpeqps      %ymm10,%ymm2,%ymm10
5665  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
5666  DB  197,68,92,230                       ; vsubps        %ymm6,%ymm7,%ymm12
5667  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
5668  DB  197,28,94,226                       ; vdivps        %ymm2,%ymm12,%ymm12
5669  DB  197,164,88,210                      ; vaddps        %ymm2,%ymm11,%ymm2
5670  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
5671  DB  196,65,68,92,228                    ; vsubps        %ymm12,%ymm7,%ymm12
5672  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
5673  DB  196,65,52,88,228                    ; vaddps        %ymm12,%ymm9,%ymm12
5674  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
5675  DB  196,227,37,74,210,160               ; vblendvps     %ymm10,%ymm2,%ymm11,%ymm2
5676  DB  197,76,194,215,0                    ; vcmpeqps      %ymm7,%ymm6,%ymm10
5677  DB  197,52,88,206                       ; vaddps        %ymm6,%ymm9,%ymm9
5678  DB  196,195,109,74,209,160              ; vblendvps     %ymm10,%ymm9,%ymm2,%ymm2
5679  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5680  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5681  DB  72,173                              ; lods          %ds:(%rsi),%rax
5682  DB  255,224                             ; jmpq          *%rax
5683
5684PUBLIC _sk_colordodge_avx
5685_sk_colordodge_avx LABEL PROC
5686  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
5687  DB  196,98,125,24,13,37,94,0,0          ; vbroadcastss  0x5e25(%rip),%ymm9        # 6680 <_sk_callback_avx+0x17c>
5688  DB  197,52,92,215                       ; vsubps        %ymm7,%ymm9,%ymm10
5689  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
5690  DB  197,52,92,203                       ; vsubps        %ymm3,%ymm9,%ymm9
5691  DB  197,100,89,228                      ; vmulps        %ymm4,%ymm3,%ymm12
5692  DB  197,100,92,232                      ; vsubps        %ymm0,%ymm3,%ymm13
5693  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
5694  DB  197,52,89,236                       ; vmulps        %ymm4,%ymm9,%ymm13
5695  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
5696  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
5697  DB  196,65,36,88,228                    ; vaddps        %ymm12,%ymm11,%ymm12
5698  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
5699  DB  197,20,88,232                       ; vaddps        %ymm0,%ymm13,%ymm13
5700  DB  197,252,194,195,0                   ; vcmpeqps      %ymm3,%ymm0,%ymm0
5701  DB  196,195,29,74,197,0                 ; vblendvps     %ymm0,%ymm13,%ymm12,%ymm0
5702  DB  196,65,92,194,224,0                 ; vcmpeqps      %ymm8,%ymm4,%ymm12
5703  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
5704  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
5705  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
5706  DB  197,100,89,229                      ; vmulps        %ymm5,%ymm3,%ymm12
5707  DB  197,100,92,233                      ; vsubps        %ymm1,%ymm3,%ymm13
5708  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
5709  DB  197,52,89,237                       ; vmulps        %ymm5,%ymm9,%ymm13
5710  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
5711  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
5712  DB  196,65,36,88,228                    ; vaddps        %ymm12,%ymm11,%ymm12
5713  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
5714  DB  197,20,88,233                       ; vaddps        %ymm1,%ymm13,%ymm13
5715  DB  197,244,194,203,0                   ; vcmpeqps      %ymm3,%ymm1,%ymm1
5716  DB  196,195,29,74,205,16                ; vblendvps     %ymm1,%ymm13,%ymm12,%ymm1
5717  DB  196,65,84,194,224,0                 ; vcmpeqps      %ymm8,%ymm5,%ymm12
5718  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
5719  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
5720  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
5721  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
5722  DB  197,100,92,226                      ; vsubps        %ymm2,%ymm3,%ymm12
5723  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
5724  DB  197,52,89,230                       ; vmulps        %ymm6,%ymm9,%ymm12
5725  DB  196,65,68,93,219                    ; vminps        %ymm11,%ymm7,%ymm11
5726  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
5727  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
5728  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
5729  DB  197,28,88,226                       ; vaddps        %ymm2,%ymm12,%ymm12
5730  DB  197,236,194,211,0                   ; vcmpeqps      %ymm3,%ymm2,%ymm2
5731  DB  196,195,37,74,212,32                ; vblendvps     %ymm2,%ymm12,%ymm11,%ymm2
5732  DB  196,65,76,194,192,0                 ; vcmpeqps      %ymm8,%ymm6,%ymm8
5733  DB  197,44,88,214                       ; vaddps        %ymm6,%ymm10,%ymm10
5734  DB  196,195,109,74,210,128              ; vblendvps     %ymm8,%ymm10,%ymm2,%ymm2
5735  DB  197,52,89,199                       ; vmulps        %ymm7,%ymm9,%ymm8
5736  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5737  DB  72,173                              ; lods          %ds:(%rsi),%rax
5738  DB  255,224                             ; jmpq          *%rax
5739
5740PUBLIC _sk_hardlight_avx
5741_sk_hardlight_avx LABEL PROC
5742  DB  196,98,125,24,5,55,93,0,0           ; vbroadcastss  0x5d37(%rip),%ymm8        # 6684 <_sk_callback_avx+0x180>
5743  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
5744  DB  197,44,89,200                       ; vmulps        %ymm0,%ymm10,%ymm9
5745  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5746  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
5747  DB  196,65,36,88,217                    ; vaddps        %ymm9,%ymm11,%ymm11
5748  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
5749  DB  197,52,194,227,2                    ; vcmpleps      %ymm3,%ymm9,%ymm12
5750  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
5751  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
5752  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
5753  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
5754  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
5755  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
5756  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
5757  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
5758  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
5759  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
5760  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
5761  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
5762  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
5763  DB  197,116,88,225                      ; vaddps        %ymm1,%ymm1,%ymm12
5764  DB  197,28,194,227,2                    ; vcmpleps      %ymm3,%ymm12,%ymm12
5765  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
5766  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
5767  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
5768  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
5769  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
5770  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
5771  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
5772  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
5773  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
5774  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
5775  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
5776  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
5777  DB  197,108,88,218                      ; vaddps        %ymm2,%ymm2,%ymm11
5778  DB  197,36,194,219,2                    ; vcmpleps      %ymm3,%ymm11,%ymm11
5779  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
5780  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
5781  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
5782  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
5783  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
5784  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
5785  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
5786  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
5787  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
5788  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5789  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5790  DB  72,173                              ; lods          %ds:(%rsi),%rax
5791  DB  255,224                             ; jmpq          *%rax
5792
5793PUBLIC _sk_overlay_avx
5794_sk_overlay_avx LABEL PROC
5795  DB  196,98,125,24,5,96,92,0,0           ; vbroadcastss  0x5c60(%rip),%ymm8        # 6688 <_sk_callback_avx+0x184>
5796  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
5797  DB  197,44,89,200                       ; vmulps        %ymm0,%ymm10,%ymm9
5798  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5799  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
5800  DB  196,65,36,88,217                    ; vaddps        %ymm9,%ymm11,%ymm11
5801  DB  197,92,88,204                       ; vaddps        %ymm4,%ymm4,%ymm9
5802  DB  197,52,194,231,2                    ; vcmpleps      %ymm7,%ymm9,%ymm12
5803  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
5804  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
5805  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
5806  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
5807  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
5808  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
5809  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
5810  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
5811  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
5812  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
5813  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
5814  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
5815  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
5816  DB  197,84,88,229                       ; vaddps        %ymm5,%ymm5,%ymm12
5817  DB  197,28,194,231,2                    ; vcmpleps      %ymm7,%ymm12,%ymm12
5818  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
5819  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
5820  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
5821  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
5822  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
5823  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
5824  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
5825  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
5826  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
5827  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
5828  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
5829  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
5830  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
5831  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
5832  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
5833  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
5834  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
5835  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
5836  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
5837  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
5838  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
5839  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
5840  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
5841  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5842  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5843  DB  72,173                              ; lods          %ds:(%rsi),%rax
5844  DB  255,224                             ; jmpq          *%rax
5845
5846PUBLIC _sk_softlight_avx
5847_sk_softlight_avx LABEL PROC
5848  DB  72,131,236,88                       ; sub           $0x58,%rsp
5849  DB  197,252,17,84,36,32                 ; vmovups       %ymm2,0x20(%rsp)
5850  DB  197,252,40,209                      ; vmovaps       %ymm1,%ymm2
5851  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
5852  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
5853  DB  197,52,194,215,1                    ; vcmpltps      %ymm7,%ymm9,%ymm10
5854  DB  197,92,94,199                       ; vdivps        %ymm7,%ymm4,%ymm8
5855  DB  196,67,53,74,224,160                ; vblendvps     %ymm10,%ymm8,%ymm9,%ymm12
5856  DB  196,65,28,88,196                    ; vaddps        %ymm12,%ymm12,%ymm8
5857  DB  196,65,60,88,192                    ; vaddps        %ymm8,%ymm8,%ymm8
5858  DB  196,65,60,89,216                    ; vmulps        %ymm8,%ymm8,%ymm11
5859  DB  196,65,60,88,195                    ; vaddps        %ymm11,%ymm8,%ymm8
5860  DB  196,98,125,24,29,83,91,0,0          ; vbroadcastss  0x5b53(%rip),%ymm11        # 6690 <_sk_callback_avx+0x18c>
5861  DB  196,65,28,88,235                    ; vaddps        %ymm11,%ymm12,%ymm13
5862  DB  196,65,20,89,192                    ; vmulps        %ymm8,%ymm13,%ymm8
5863  DB  196,98,125,24,45,68,91,0,0          ; vbroadcastss  0x5b44(%rip),%ymm13        # 6694 <_sk_callback_avx+0x190>
5864  DB  196,65,28,89,245                    ; vmulps        %ymm13,%ymm12,%ymm14
5865  DB  196,65,12,88,192                    ; vaddps        %ymm8,%ymm14,%ymm8
5866  DB  196,65,124,82,244                   ; vrsqrtps      %ymm12,%ymm14
5867  DB  196,65,124,83,246                   ; vrcpps        %ymm14,%ymm14
5868  DB  196,65,12,92,244                    ; vsubps        %ymm12,%ymm14,%ymm14
5869  DB  197,92,88,252                       ; vaddps        %ymm4,%ymm4,%ymm15
5870  DB  196,65,4,88,255                     ; vaddps        %ymm15,%ymm15,%ymm15
5871  DB  197,4,194,255,2                     ; vcmpleps      %ymm7,%ymm15,%ymm15
5872  DB  196,67,13,74,240,240                ; vblendvps     %ymm15,%ymm8,%ymm14,%ymm14
5873  DB  197,116,88,249                      ; vaddps        %ymm1,%ymm1,%ymm15
5874  DB  196,98,125,24,5,2,91,0,0            ; vbroadcastss  0x5b02(%rip),%ymm8        # 668c <_sk_callback_avx+0x188>
5875  DB  196,65,60,92,228                    ; vsubps        %ymm12,%ymm8,%ymm12
5876  DB  197,132,92,195                      ; vsubps        %ymm3,%ymm15,%ymm0
5877  DB  196,65,124,89,228                   ; vmulps        %ymm12,%ymm0,%ymm12
5878  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5879  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
5880  DB  197,100,89,244                      ; vmulps        %ymm4,%ymm3,%ymm14
5881  DB  197,140,88,192                      ; vaddps        %ymm0,%ymm14,%ymm0
5882  DB  197,28,88,227                       ; vaddps        %ymm3,%ymm12,%ymm12
5883  DB  197,28,89,228                       ; vmulps        %ymm4,%ymm12,%ymm12
5884  DB  197,4,194,243,2                     ; vcmpleps      %ymm3,%ymm15,%ymm14
5885  DB  196,195,125,74,196,224              ; vblendvps     %ymm14,%ymm12,%ymm0,%ymm0
5886  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
5887  DB  197,212,94,199                      ; vdivps        %ymm7,%ymm5,%ymm0
5888  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
5889  DB  197,124,88,240                      ; vaddps        %ymm0,%ymm0,%ymm14
5890  DB  196,65,12,88,246                    ; vaddps        %ymm14,%ymm14,%ymm14
5891  DB  196,65,12,89,254                    ; vmulps        %ymm14,%ymm14,%ymm15
5892  DB  196,65,12,88,247                    ; vaddps        %ymm15,%ymm14,%ymm14
5893  DB  196,65,124,88,251                   ; vaddps        %ymm11,%ymm0,%ymm15
5894  DB  196,65,4,89,246                     ; vmulps        %ymm14,%ymm15,%ymm14
5895  DB  196,65,124,89,253                   ; vmulps        %ymm13,%ymm0,%ymm15
5896  DB  196,65,4,88,246                     ; vaddps        %ymm14,%ymm15,%ymm14
5897  DB  197,124,82,248                      ; vrsqrtps      %ymm0,%ymm15
5898  DB  196,65,124,83,255                   ; vrcpps        %ymm15,%ymm15
5899  DB  197,4,92,248                        ; vsubps        %ymm0,%ymm15,%ymm15
5900  DB  197,84,88,229                       ; vaddps        %ymm5,%ymm5,%ymm12
5901  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
5902  DB  197,28,194,231,2                    ; vcmpleps      %ymm7,%ymm12,%ymm12
5903  DB  196,67,5,74,230,192                 ; vblendvps     %ymm12,%ymm14,%ymm15,%ymm12
5904  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5905  DB  197,108,88,242                      ; vaddps        %ymm2,%ymm2,%ymm14
5906  DB  197,12,92,251                       ; vsubps        %ymm3,%ymm14,%ymm15
5907  DB  197,132,89,192                      ; vmulps        %ymm0,%ymm15,%ymm0
5908  DB  197,4,89,255                        ; vmulps        %ymm7,%ymm15,%ymm15
5909  DB  196,65,4,89,228                     ; vmulps        %ymm12,%ymm15,%ymm12
5910  DB  197,100,89,253                      ; vmulps        %ymm5,%ymm3,%ymm15
5911  DB  196,65,4,88,228                     ; vaddps        %ymm12,%ymm15,%ymm12
5912  DB  197,252,88,195                      ; vaddps        %ymm3,%ymm0,%ymm0
5913  DB  197,252,89,197                      ; vmulps        %ymm5,%ymm0,%ymm0
5914  DB  197,12,194,243,2                    ; vcmpleps      %ymm3,%ymm14,%ymm14
5915  DB  196,99,29,74,240,224                ; vblendvps     %ymm14,%ymm0,%ymm12,%ymm14
5916  DB  197,204,94,199                      ; vdivps        %ymm7,%ymm6,%ymm0
5917  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
5918  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
5919  DB  196,65,52,88,201                    ; vaddps        %ymm9,%ymm9,%ymm9
5920  DB  196,65,52,89,209                    ; vmulps        %ymm9,%ymm9,%ymm10
5921  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
5922  DB  196,65,124,88,211                   ; vaddps        %ymm11,%ymm0,%ymm10
5923  DB  196,65,44,89,201                    ; vmulps        %ymm9,%ymm10,%ymm9
5924  DB  196,65,124,89,213                   ; vmulps        %ymm13,%ymm0,%ymm10
5925  DB  196,65,44,88,201                    ; vaddps        %ymm9,%ymm10,%ymm9
5926  DB  197,124,82,208                      ; vrsqrtps      %ymm0,%ymm10
5927  DB  196,65,124,83,210                   ; vrcpps        %ymm10,%ymm10
5928  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
5929  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
5930  DB  196,65,36,88,219                    ; vaddps        %ymm11,%ymm11,%ymm11
5931  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
5932  DB  196,67,45,74,201,176                ; vblendvps     %ymm11,%ymm9,%ymm10,%ymm9
5933  DB  197,124,16,100,36,32                ; vmovups       0x20(%rsp),%ymm12
5934  DB  196,65,28,88,212                    ; vaddps        %ymm12,%ymm12,%ymm10
5935  DB  197,44,92,219                       ; vsubps        %ymm3,%ymm10,%ymm11
5936  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5937  DB  197,164,89,192                      ; vmulps        %ymm0,%ymm11,%ymm0
5938  DB  197,36,89,223                       ; vmulps        %ymm7,%ymm11,%ymm11
5939  DB  196,65,36,89,201                    ; vmulps        %ymm9,%ymm11,%ymm9
5940  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
5941  DB  196,65,36,88,201                    ; vaddps        %ymm9,%ymm11,%ymm9
5942  DB  197,252,88,195                      ; vaddps        %ymm3,%ymm0,%ymm0
5943  DB  197,252,89,198                      ; vmulps        %ymm6,%ymm0,%ymm0
5944  DB  197,44,194,211,2                    ; vcmpleps      %ymm3,%ymm10,%ymm10
5945  DB  196,99,53,74,200,160                ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm9
5946  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
5947  DB  197,172,89,193                      ; vmulps        %ymm1,%ymm10,%ymm0
5948  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5949  DB  197,188,89,204                      ; vmulps        %ymm4,%ymm8,%ymm1
5950  DB  197,244,88,192                      ; vaddps        %ymm0,%ymm1,%ymm0
5951  DB  197,252,88,4,36                     ; vaddps        (%rsp),%ymm0,%ymm0
5952  DB  197,172,89,202                      ; vmulps        %ymm2,%ymm10,%ymm1
5953  DB  197,188,89,213                      ; vmulps        %ymm5,%ymm8,%ymm2
5954  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
5955  DB  196,193,116,88,206                  ; vaddps        %ymm14,%ymm1,%ymm1
5956  DB  196,193,44,89,212                   ; vmulps        %ymm12,%ymm10,%ymm2
5957  DB  197,60,89,214                       ; vmulps        %ymm6,%ymm8,%ymm10
5958  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
5959  DB  196,193,108,88,209                  ; vaddps        %ymm9,%ymm2,%ymm2
5960  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5961  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5962  DB  72,173                              ; lods          %ds:(%rsi),%rax
5963  DB  72,131,196,88                       ; add           $0x58,%rsp
5964  DB  255,224                             ; jmpq          *%rax
5965
5966PUBLIC _sk_hue_avx
5967_sk_hue_avx LABEL PROC
5968  DB  72,131,236,88                       ; sub           $0x58,%rsp
5969  DB  197,252,17,84,36,32                 ; vmovups       %ymm2,0x20(%rsp)
5970  DB  197,124,40,193                      ; vmovaps       %ymm1,%ymm8
5971  DB  197,124,17,4,36                     ; vmovups       %ymm8,(%rsp)
5972  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
5973  DB  197,116,89,203                      ; vmulps        %ymm3,%ymm1,%ymm9
5974  DB  197,60,89,211                       ; vmulps        %ymm3,%ymm8,%ymm10
5975  DB  197,108,89,219                      ; vmulps        %ymm3,%ymm2,%ymm11
5976  DB  197,84,95,198                       ; vmaxps        %ymm6,%ymm5,%ymm8
5977  DB  196,65,92,95,192                    ; vmaxps        %ymm8,%ymm4,%ymm8
5978  DB  197,84,93,230                       ; vminps        %ymm6,%ymm5,%ymm12
5979  DB  196,65,92,93,228                    ; vminps        %ymm12,%ymm4,%ymm12
5980  DB  196,65,60,92,196                    ; vsubps        %ymm12,%ymm8,%ymm8
5981  DB  197,60,89,227                       ; vmulps        %ymm3,%ymm8,%ymm12
5982  DB  196,65,44,93,195                    ; vminps        %ymm11,%ymm10,%ymm8
5983  DB  196,65,52,93,232                    ; vminps        %ymm8,%ymm9,%ymm13
5984  DB  196,65,44,95,195                    ; vmaxps        %ymm11,%ymm10,%ymm8
5985  DB  196,65,52,95,192                    ; vmaxps        %ymm8,%ymm9,%ymm8
5986  DB  196,65,60,92,245                    ; vsubps        %ymm13,%ymm8,%ymm14
5987  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
5988  DB  196,65,12,194,248,0                 ; vcmpeqps      %ymm8,%ymm14,%ymm15
5989  DB  196,65,52,92,205                    ; vsubps        %ymm13,%ymm9,%ymm9
5990  DB  196,65,28,89,201                    ; vmulps        %ymm9,%ymm12,%ymm9
5991  DB  196,65,52,94,206                    ; vdivps        %ymm14,%ymm9,%ymm9
5992  DB  196,67,53,74,200,240                ; vblendvps     %ymm15,%ymm8,%ymm9,%ymm9
5993  DB  196,65,44,92,213                    ; vsubps        %ymm13,%ymm10,%ymm10
5994  DB  196,65,28,89,210                    ; vmulps        %ymm10,%ymm12,%ymm10
5995  DB  196,65,44,94,214                    ; vdivps        %ymm14,%ymm10,%ymm10
5996  DB  196,67,45,74,208,240                ; vblendvps     %ymm15,%ymm8,%ymm10,%ymm10
5997  DB  196,65,36,92,221                    ; vsubps        %ymm13,%ymm11,%ymm11
5998  DB  196,65,28,89,219                    ; vmulps        %ymm11,%ymm12,%ymm11
5999  DB  196,65,36,94,222                    ; vdivps        %ymm14,%ymm11,%ymm11
6000  DB  196,67,37,74,224,240                ; vblendvps     %ymm15,%ymm8,%ymm11,%ymm12
6001  DB  196,98,125,24,53,204,88,0,0         ; vbroadcastss  0x58cc(%rip),%ymm14        # 6698 <_sk_callback_avx+0x194>
6002  DB  196,65,92,89,222                    ; vmulps        %ymm14,%ymm4,%ymm11
6003  DB  196,98,125,24,61,194,88,0,0         ; vbroadcastss  0x58c2(%rip),%ymm15        # 669c <_sk_callback_avx+0x198>
6004  DB  196,65,84,89,239                    ; vmulps        %ymm15,%ymm5,%ymm13
6005  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
6006  DB  196,226,125,24,5,179,88,0,0         ; vbroadcastss  0x58b3(%rip),%ymm0        # 66a0 <_sk_callback_avx+0x19c>
6007  DB  197,76,89,232                       ; vmulps        %ymm0,%ymm6,%ymm13
6008  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
6009  DB  196,65,52,89,238                    ; vmulps        %ymm14,%ymm9,%ymm13
6010  DB  196,193,44,89,215                   ; vmulps        %ymm15,%ymm10,%ymm2
6011  DB  197,148,88,210                      ; vaddps        %ymm2,%ymm13,%ymm2
6012  DB  197,28,89,232                       ; vmulps        %ymm0,%ymm12,%ymm13
6013  DB  196,193,108,88,213                  ; vaddps        %ymm13,%ymm2,%ymm2
6014  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
6015  DB  197,164,92,210                      ; vsubps        %ymm2,%ymm11,%ymm2
6016  DB  197,52,88,202                       ; vaddps        %ymm2,%ymm9,%ymm9
6017  DB  197,44,88,218                       ; vaddps        %ymm2,%ymm10,%ymm11
6018  DB  197,28,88,226                       ; vaddps        %ymm2,%ymm12,%ymm12
6019  DB  196,193,36,93,212                   ; vminps        %ymm12,%ymm11,%ymm2
6020  DB  197,52,93,234                       ; vminps        %ymm2,%ymm9,%ymm13
6021  DB  196,193,52,89,214                   ; vmulps        %ymm14,%ymm9,%ymm2
6022  DB  196,65,36,89,215                    ; vmulps        %ymm15,%ymm11,%ymm10
6023  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
6024  DB  197,156,89,192                      ; vmulps        %ymm0,%ymm12,%ymm0
6025  DB  197,124,88,210                      ; vaddps        %ymm2,%ymm0,%ymm10
6026  DB  196,193,52,92,194                   ; vsubps        %ymm10,%ymm9,%ymm0
6027  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
6028  DB  196,193,44,92,213                   ; vsubps        %ymm13,%ymm10,%ymm2
6029  DB  197,252,94,194                      ; vdivps        %ymm2,%ymm0,%ymm0
6030  DB  196,65,36,92,242                    ; vsubps        %ymm10,%ymm11,%ymm14
6031  DB  196,65,44,89,246                    ; vmulps        %ymm14,%ymm10,%ymm14
6032  DB  197,12,94,242                       ; vdivps        %ymm2,%ymm14,%ymm14
6033  DB  196,65,28,92,250                    ; vsubps        %ymm10,%ymm12,%ymm15
6034  DB  196,65,44,89,255                    ; vmulps        %ymm15,%ymm10,%ymm15
6035  DB  197,132,94,210                      ; vdivps        %ymm2,%ymm15,%ymm2
6036  DB  196,65,60,194,237,2                 ; vcmpleps      %ymm13,%ymm8,%ymm13
6037  DB  196,65,44,88,246                    ; vaddps        %ymm14,%ymm10,%ymm14
6038  DB  196,67,13,74,243,208                ; vblendvps     %ymm13,%ymm11,%ymm14,%ymm14
6039  DB  196,65,36,95,220                    ; vmaxps        %ymm12,%ymm11,%ymm11
6040  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
6041  DB  196,195,109,74,212,208              ; vblendvps     %ymm13,%ymm12,%ymm2,%ymm2
6042  DB  197,172,88,192                      ; vaddps        %ymm0,%ymm10,%ymm0
6043  DB  196,195,125,74,193,208              ; vblendvps     %ymm13,%ymm9,%ymm0,%ymm0
6044  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
6045  DB  196,65,52,95,203                    ; vmaxps        %ymm11,%ymm9,%ymm9
6046  DB  196,65,124,92,218                   ; vsubps        %ymm10,%ymm0,%ymm11
6047  DB  196,65,28,92,234                    ; vsubps        %ymm10,%ymm12,%ymm13
6048  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
6049  DB  196,65,28,194,249,1                 ; vcmpltps      %ymm9,%ymm12,%ymm15
6050  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
6051  DB  196,65,36,94,217                    ; vdivps        %ymm9,%ymm11,%ymm11
6052  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
6053  DB  196,195,125,74,195,240              ; vblendvps     %ymm15,%ymm11,%ymm0,%ymm0
6054  DB  196,65,12,92,218                    ; vsubps        %ymm10,%ymm14,%ymm11
6055  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
6056  DB  196,65,36,94,217                    ; vdivps        %ymm9,%ymm11,%ymm11
6057  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
6058  DB  196,67,13,74,219,240                ; vblendvps     %ymm15,%ymm11,%ymm14,%ymm11
6059  DB  196,65,108,92,242                   ; vsubps        %ymm10,%ymm2,%ymm14
6060  DB  196,65,20,89,238                    ; vmulps        %ymm14,%ymm13,%ymm13
6061  DB  196,65,20,94,201                    ; vdivps        %ymm9,%ymm13,%ymm9
6062  DB  196,65,44,88,201                    ; vaddps        %ymm9,%ymm10,%ymm9
6063  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
6064  DB  196,65,36,95,208                    ; vmaxps        %ymm8,%ymm11,%ymm10
6065  DB  196,195,109,74,209,240              ; vblendvps     %ymm15,%ymm9,%ymm2,%ymm2
6066  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
6067  DB  196,98,125,24,5,140,87,0,0          ; vbroadcastss  0x578c(%rip),%ymm8        # 66a4 <_sk_callback_avx+0x1a0>
6068  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
6069  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
6070  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
6071  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
6072  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
6073  DB  197,244,88,192                      ; vaddps        %ymm0,%ymm1,%ymm0
6074  DB  197,180,89,12,36                    ; vmulps        (%rsp),%ymm9,%ymm1
6075  DB  197,60,89,221                       ; vmulps        %ymm5,%ymm8,%ymm11
6076  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
6077  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
6078  DB  197,52,89,76,36,32                  ; vmulps        0x20(%rsp),%ymm9,%ymm9
6079  DB  197,60,89,198                       ; vmulps        %ymm6,%ymm8,%ymm8
6080  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
6081  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
6082  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
6083  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
6084  DB  72,173                              ; lods          %ds:(%rsi),%rax
6085  DB  72,131,196,88                       ; add           $0x58,%rsp
6086  DB  255,224                             ; jmpq          *%rax
6087
6088PUBLIC _sk_saturation_avx
6089_sk_saturation_avx LABEL PROC
6090  DB  72,131,236,88                       ; sub           $0x58,%rsp
6091  DB  197,124,40,193                      ; vmovaps       %ymm1,%ymm8
6092  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
6093  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
6094  DB  197,100,89,213                      ; vmulps        %ymm5,%ymm3,%ymm10
6095  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
6096  DB  197,252,17,84,36,32                 ; vmovups       %ymm2,0x20(%rsp)
6097  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
6098  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
6099  DB  197,124,95,194                      ; vmaxps        %ymm2,%ymm0,%ymm8
6100  DB  196,65,116,95,192                   ; vmaxps        %ymm8,%ymm1,%ymm8
6101  DB  197,124,93,226                      ; vminps        %ymm2,%ymm0,%ymm12
6102  DB  196,65,116,93,228                   ; vminps        %ymm12,%ymm1,%ymm12
6103  DB  196,65,60,92,196                    ; vsubps        %ymm12,%ymm8,%ymm8
6104  DB  197,60,89,231                       ; vmulps        %ymm7,%ymm8,%ymm12
6105  DB  196,65,44,93,195                    ; vminps        %ymm11,%ymm10,%ymm8
6106  DB  196,65,52,93,232                    ; vminps        %ymm8,%ymm9,%ymm13
6107  DB  196,65,44,95,195                    ; vmaxps        %ymm11,%ymm10,%ymm8
6108  DB  196,65,52,95,192                    ; vmaxps        %ymm8,%ymm9,%ymm8
6109  DB  196,65,60,92,245                    ; vsubps        %ymm13,%ymm8,%ymm14
6110  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6111  DB  196,65,12,194,248,0                 ; vcmpeqps      %ymm8,%ymm14,%ymm15
6112  DB  196,65,52,92,205                    ; vsubps        %ymm13,%ymm9,%ymm9
6113  DB  196,65,28,89,201                    ; vmulps        %ymm9,%ymm12,%ymm9
6114  DB  196,65,52,94,206                    ; vdivps        %ymm14,%ymm9,%ymm9
6115  DB  196,67,53,74,200,240                ; vblendvps     %ymm15,%ymm8,%ymm9,%ymm9
6116  DB  196,65,44,92,213                    ; vsubps        %ymm13,%ymm10,%ymm10
6117  DB  196,65,28,89,210                    ; vmulps        %ymm10,%ymm12,%ymm10
6118  DB  196,65,44,94,214                    ; vdivps        %ymm14,%ymm10,%ymm10
6119  DB  196,67,45,74,208,240                ; vblendvps     %ymm15,%ymm8,%ymm10,%ymm10
6120  DB  196,65,36,92,221                    ; vsubps        %ymm13,%ymm11,%ymm11
6121  DB  196,65,28,89,219                    ; vmulps        %ymm11,%ymm12,%ymm11
6122  DB  196,65,36,94,222                    ; vdivps        %ymm14,%ymm11,%ymm11
6123  DB  196,67,37,74,224,240                ; vblendvps     %ymm15,%ymm8,%ymm11,%ymm12
6124  DB  196,98,125,24,53,148,86,0,0         ; vbroadcastss  0x5694(%rip),%ymm14        # 66a8 <_sk_callback_avx+0x1a4>
6125  DB  196,65,92,89,222                    ; vmulps        %ymm14,%ymm4,%ymm11
6126  DB  196,98,125,24,61,138,86,0,0         ; vbroadcastss  0x568a(%rip),%ymm15        # 66ac <_sk_callback_avx+0x1a8>
6127  DB  196,65,84,89,239                    ; vmulps        %ymm15,%ymm5,%ymm13
6128  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
6129  DB  196,226,125,24,5,123,86,0,0         ; vbroadcastss  0x567b(%rip),%ymm0        # 66b0 <_sk_callback_avx+0x1ac>
6130  DB  197,76,89,232                       ; vmulps        %ymm0,%ymm6,%ymm13
6131  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
6132  DB  196,65,52,89,238                    ; vmulps        %ymm14,%ymm9,%ymm13
6133  DB  196,193,44,89,215                   ; vmulps        %ymm15,%ymm10,%ymm2
6134  DB  197,148,88,210                      ; vaddps        %ymm2,%ymm13,%ymm2
6135  DB  197,28,89,232                       ; vmulps        %ymm0,%ymm12,%ymm13
6136  DB  196,193,108,88,213                  ; vaddps        %ymm13,%ymm2,%ymm2
6137  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
6138  DB  197,164,92,210                      ; vsubps        %ymm2,%ymm11,%ymm2
6139  DB  197,52,88,202                       ; vaddps        %ymm2,%ymm9,%ymm9
6140  DB  197,44,88,218                       ; vaddps        %ymm2,%ymm10,%ymm11
6141  DB  197,28,88,226                       ; vaddps        %ymm2,%ymm12,%ymm12
6142  DB  196,193,36,93,212                   ; vminps        %ymm12,%ymm11,%ymm2
6143  DB  197,52,93,234                       ; vminps        %ymm2,%ymm9,%ymm13
6144  DB  196,193,52,89,214                   ; vmulps        %ymm14,%ymm9,%ymm2
6145  DB  196,65,36,89,215                    ; vmulps        %ymm15,%ymm11,%ymm10
6146  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
6147  DB  197,156,89,192                      ; vmulps        %ymm0,%ymm12,%ymm0
6148  DB  197,124,88,210                      ; vaddps        %ymm2,%ymm0,%ymm10
6149  DB  196,193,52,92,194                   ; vsubps        %ymm10,%ymm9,%ymm0
6150  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
6151  DB  196,193,44,92,213                   ; vsubps        %ymm13,%ymm10,%ymm2
6152  DB  197,252,94,194                      ; vdivps        %ymm2,%ymm0,%ymm0
6153  DB  196,65,36,92,242                    ; vsubps        %ymm10,%ymm11,%ymm14
6154  DB  196,65,44,89,246                    ; vmulps        %ymm14,%ymm10,%ymm14
6155  DB  197,12,94,242                       ; vdivps        %ymm2,%ymm14,%ymm14
6156  DB  196,65,28,92,250                    ; vsubps        %ymm10,%ymm12,%ymm15
6157  DB  196,65,44,89,255                    ; vmulps        %ymm15,%ymm10,%ymm15
6158  DB  197,132,94,210                      ; vdivps        %ymm2,%ymm15,%ymm2
6159  DB  196,65,60,194,237,2                 ; vcmpleps      %ymm13,%ymm8,%ymm13
6160  DB  196,65,44,88,246                    ; vaddps        %ymm14,%ymm10,%ymm14
6161  DB  196,67,13,74,243,208                ; vblendvps     %ymm13,%ymm11,%ymm14,%ymm14
6162  DB  196,65,36,95,220                    ; vmaxps        %ymm12,%ymm11,%ymm11
6163  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
6164  DB  196,195,109,74,212,208              ; vblendvps     %ymm13,%ymm12,%ymm2,%ymm2
6165  DB  197,172,88,192                      ; vaddps        %ymm0,%ymm10,%ymm0
6166  DB  196,195,125,74,193,208              ; vblendvps     %ymm13,%ymm9,%ymm0,%ymm0
6167  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
6168  DB  196,65,52,95,203                    ; vmaxps        %ymm11,%ymm9,%ymm9
6169  DB  196,65,124,92,218                   ; vsubps        %ymm10,%ymm0,%ymm11
6170  DB  196,65,28,92,234                    ; vsubps        %ymm10,%ymm12,%ymm13
6171  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
6172  DB  196,65,28,194,249,1                 ; vcmpltps      %ymm9,%ymm12,%ymm15
6173  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
6174  DB  196,65,36,94,217                    ; vdivps        %ymm9,%ymm11,%ymm11
6175  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
6176  DB  196,195,125,74,195,240              ; vblendvps     %ymm15,%ymm11,%ymm0,%ymm0
6177  DB  196,65,12,92,218                    ; vsubps        %ymm10,%ymm14,%ymm11
6178  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
6179  DB  196,65,36,94,217                    ; vdivps        %ymm9,%ymm11,%ymm11
6180  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
6181  DB  196,67,13,74,219,240                ; vblendvps     %ymm15,%ymm11,%ymm14,%ymm11
6182  DB  196,65,108,92,242                   ; vsubps        %ymm10,%ymm2,%ymm14
6183  DB  196,65,20,89,238                    ; vmulps        %ymm14,%ymm13,%ymm13
6184  DB  196,65,20,94,201                    ; vdivps        %ymm9,%ymm13,%ymm9
6185  DB  196,65,44,88,201                    ; vaddps        %ymm9,%ymm10,%ymm9
6186  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
6187  DB  196,65,36,95,208                    ; vmaxps        %ymm8,%ymm11,%ymm10
6188  DB  196,195,109,74,209,240              ; vblendvps     %ymm15,%ymm9,%ymm2,%ymm2
6189  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
6190  DB  196,98,125,24,5,84,85,0,0           ; vbroadcastss  0x5554(%rip),%ymm8        # 66b4 <_sk_callback_avx+0x1b0>
6191  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
6192  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
6193  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
6194  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
6195  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
6196  DB  197,244,88,192                      ; vaddps        %ymm0,%ymm1,%ymm0
6197  DB  197,180,89,12,36                    ; vmulps        (%rsp),%ymm9,%ymm1
6198  DB  197,60,89,221                       ; vmulps        %ymm5,%ymm8,%ymm11
6199  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
6200  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
6201  DB  197,52,89,76,36,32                  ; vmulps        0x20(%rsp),%ymm9,%ymm9
6202  DB  197,60,89,198                       ; vmulps        %ymm6,%ymm8,%ymm8
6203  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
6204  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
6205  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
6206  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
6207  DB  72,173                              ; lods          %ds:(%rsi),%rax
6208  DB  72,131,196,88                       ; add           $0x58,%rsp
6209  DB  255,224                             ; jmpq          *%rax
6210
6211PUBLIC _sk_color_avx
6212_sk_color_avx LABEL PROC
6213  DB  72,131,236,120                      ; sub           $0x78,%rsp
6214  DB  197,252,17,20,36                    ; vmovups       %ymm2,(%rsp)
6215  DB  197,252,17,76,36,64                 ; vmovups       %ymm1,0x40(%rsp)
6216  DB  197,252,17,68,36,32                 ; vmovups       %ymm0,0x20(%rsp)
6217  DB  197,124,89,199                      ; vmulps        %ymm7,%ymm0,%ymm8
6218  DB  197,116,89,207                      ; vmulps        %ymm7,%ymm1,%ymm9
6219  DB  196,98,125,24,45,228,84,0,0         ; vbroadcastss  0x54e4(%rip),%ymm13        # 66b8 <_sk_callback_avx+0x1b4>
6220  DB  196,65,92,89,213                    ; vmulps        %ymm13,%ymm4,%ymm10
6221  DB  196,98,125,24,53,218,84,0,0         ; vbroadcastss  0x54da(%rip),%ymm14        # 66bc <_sk_callback_avx+0x1b8>
6222  DB  196,65,84,89,222                    ; vmulps        %ymm14,%ymm5,%ymm11
6223  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
6224  DB  196,98,125,24,61,203,84,0,0         ; vbroadcastss  0x54cb(%rip),%ymm15        # 66c0 <_sk_callback_avx+0x1bc>
6225  DB  196,65,76,89,223                    ; vmulps        %ymm15,%ymm6,%ymm11
6226  DB  196,193,44,88,195                   ; vaddps        %ymm11,%ymm10,%ymm0
6227  DB  196,65,60,89,221                    ; vmulps        %ymm13,%ymm8,%ymm11
6228  DB  196,65,52,89,230                    ; vmulps        %ymm14,%ymm9,%ymm12
6229  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6230  DB  197,108,89,231                      ; vmulps        %ymm7,%ymm2,%ymm12
6231  DB  196,65,28,89,215                    ; vmulps        %ymm15,%ymm12,%ymm10
6232  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
6233  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
6234  DB  196,193,124,92,194                  ; vsubps        %ymm10,%ymm0,%ymm0
6235  DB  197,60,88,192                       ; vaddps        %ymm0,%ymm8,%ymm8
6236  DB  197,52,88,208                       ; vaddps        %ymm0,%ymm9,%ymm10
6237  DB  197,28,88,216                       ; vaddps        %ymm0,%ymm12,%ymm11
6238  DB  196,193,44,93,195                   ; vminps        %ymm11,%ymm10,%ymm0
6239  DB  197,60,93,224                       ; vminps        %ymm0,%ymm8,%ymm12
6240  DB  196,193,60,89,197                   ; vmulps        %ymm13,%ymm8,%ymm0
6241  DB  196,65,44,89,206                    ; vmulps        %ymm14,%ymm10,%ymm9
6242  DB  196,193,124,88,193                  ; vaddps        %ymm9,%ymm0,%ymm0
6243  DB  196,65,36,89,207                    ; vmulps        %ymm15,%ymm11,%ymm9
6244  DB  197,52,88,200                       ; vaddps        %ymm0,%ymm9,%ymm9
6245  DB  196,193,60,92,193                   ; vsubps        %ymm9,%ymm8,%ymm0
6246  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
6247  DB  196,65,52,92,236                    ; vsubps        %ymm12,%ymm9,%ymm13
6248  DB  196,193,124,94,197                  ; vdivps        %ymm13,%ymm0,%ymm0
6249  DB  196,65,44,92,241                    ; vsubps        %ymm9,%ymm10,%ymm14
6250  DB  196,65,52,89,246                    ; vmulps        %ymm14,%ymm9,%ymm14
6251  DB  196,65,12,94,245                    ; vdivps        %ymm13,%ymm14,%ymm14
6252  DB  196,65,36,92,249                    ; vsubps        %ymm9,%ymm11,%ymm15
6253  DB  196,65,52,89,255                    ; vmulps        %ymm15,%ymm9,%ymm15
6254  DB  196,65,4,94,237                     ; vdivps        %ymm13,%ymm15,%ymm13
6255  DB  196,65,4,87,255                     ; vxorps        %ymm15,%ymm15,%ymm15
6256  DB  196,65,4,194,228,2                  ; vcmpleps      %ymm12,%ymm15,%ymm12
6257  DB  196,65,52,88,246                    ; vaddps        %ymm14,%ymm9,%ymm14
6258  DB  196,67,13,74,242,192                ; vblendvps     %ymm12,%ymm10,%ymm14,%ymm14
6259  DB  196,65,44,95,211                    ; vmaxps        %ymm11,%ymm10,%ymm10
6260  DB  196,65,52,88,237                    ; vaddps        %ymm13,%ymm9,%ymm13
6261  DB  196,67,21,74,219,192                ; vblendvps     %ymm12,%ymm11,%ymm13,%ymm11
6262  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
6263  DB  196,195,125,74,200,192              ; vblendvps     %ymm12,%ymm8,%ymm0,%ymm1
6264  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
6265  DB  196,65,60,95,194                    ; vmaxps        %ymm10,%ymm8,%ymm8
6266  DB  196,65,116,92,209                   ; vsubps        %ymm9,%ymm1,%ymm10
6267  DB  196,65,28,92,233                    ; vsubps        %ymm9,%ymm12,%ymm13
6268  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
6269  DB  196,193,28,194,192,1                ; vcmpltps      %ymm8,%ymm12,%ymm0
6270  DB  196,65,60,92,193                    ; vsubps        %ymm9,%ymm8,%ymm8
6271  DB  196,65,44,94,208                    ; vdivps        %ymm8,%ymm10,%ymm10
6272  DB  196,65,52,88,210                    ; vaddps        %ymm10,%ymm9,%ymm10
6273  DB  196,195,117,74,202,0                ; vblendvps     %ymm0,%ymm10,%ymm1,%ymm1
6274  DB  196,65,12,92,209                    ; vsubps        %ymm9,%ymm14,%ymm10
6275  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
6276  DB  196,65,44,94,208                    ; vdivps        %ymm8,%ymm10,%ymm10
6277  DB  196,65,52,88,210                    ; vaddps        %ymm10,%ymm9,%ymm10
6278  DB  196,67,13,74,210,0                  ; vblendvps     %ymm0,%ymm10,%ymm14,%ymm10
6279  DB  196,65,36,92,241                    ; vsubps        %ymm9,%ymm11,%ymm14
6280  DB  196,65,20,89,238                    ; vmulps        %ymm14,%ymm13,%ymm13
6281  DB  196,65,20,94,192                    ; vdivps        %ymm8,%ymm13,%ymm8
6282  DB  196,65,52,88,192                    ; vaddps        %ymm8,%ymm9,%ymm8
6283  DB  196,193,116,95,207                  ; vmaxps        %ymm15,%ymm1,%ymm1
6284  DB  196,65,44,95,207                    ; vmaxps        %ymm15,%ymm10,%ymm9
6285  DB  196,195,37,74,192,0                 ; vblendvps     %ymm0,%ymm8,%ymm11,%ymm0
6286  DB  196,65,124,95,199                   ; vmaxps        %ymm15,%ymm0,%ymm8
6287  DB  196,226,125,24,5,146,83,0,0         ; vbroadcastss  0x5392(%rip),%ymm0        # 66c4 <_sk_callback_avx+0x1c0>
6288  DB  197,124,92,215                      ; vsubps        %ymm7,%ymm0,%ymm10
6289  DB  197,172,89,84,36,32                 ; vmulps        0x20(%rsp),%ymm10,%ymm2
6290  DB  197,124,92,219                      ; vsubps        %ymm3,%ymm0,%ymm11
6291  DB  197,164,89,196                      ; vmulps        %ymm4,%ymm11,%ymm0
6292  DB  197,252,88,194                      ; vaddps        %ymm2,%ymm0,%ymm0
6293  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
6294  DB  197,172,89,76,36,64                 ; vmulps        0x40(%rsp),%ymm10,%ymm1
6295  DB  197,164,89,213                      ; vmulps        %ymm5,%ymm11,%ymm2
6296  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
6297  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
6298  DB  197,172,89,20,36                    ; vmulps        (%rsp),%ymm10,%ymm2
6299  DB  197,36,89,206                       ; vmulps        %ymm6,%ymm11,%ymm9
6300  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
6301  DB  196,193,108,88,208                  ; vaddps        %ymm8,%ymm2,%ymm2
6302  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
6303  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
6304  DB  72,173                              ; lods          %ds:(%rsi),%rax
6305  DB  72,131,196,120                      ; add           $0x78,%rsp
6306  DB  255,224                             ; jmpq          *%rax
6307
6308PUBLIC _sk_luminosity_avx
6309_sk_luminosity_avx LABEL PROC
6310  DB  72,131,236,88                       ; sub           $0x58,%rsp
6311  DB  197,124,40,226                      ; vmovaps       %ymm2,%ymm12
6312  DB  197,124,17,36,36                    ; vmovups       %ymm12,(%rsp)
6313  DB  197,252,17,76,36,32                 ; vmovups       %ymm1,0x20(%rsp)
6314  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
6315  DB  197,100,89,196                      ; vmulps        %ymm4,%ymm3,%ymm8
6316  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
6317  DB  196,98,125,24,45,30,83,0,0          ; vbroadcastss  0x531e(%rip),%ymm13        # 66c8 <_sk_callback_avx+0x1c4>
6318  DB  196,65,108,89,213                   ; vmulps        %ymm13,%ymm2,%ymm10
6319  DB  196,98,125,24,53,20,83,0,0          ; vbroadcastss  0x5314(%rip),%ymm14        # 66cc <_sk_callback_avx+0x1c8>
6320  DB  196,65,116,89,222                   ; vmulps        %ymm14,%ymm1,%ymm11
6321  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
6322  DB  196,98,125,24,61,5,83,0,0           ; vbroadcastss  0x5305(%rip),%ymm15        # 66d0 <_sk_callback_avx+0x1cc>
6323  DB  196,65,28,89,223                    ; vmulps        %ymm15,%ymm12,%ymm11
6324  DB  196,193,44,88,195                   ; vaddps        %ymm11,%ymm10,%ymm0
6325  DB  196,65,60,89,221                    ; vmulps        %ymm13,%ymm8,%ymm11
6326  DB  196,65,52,89,230                    ; vmulps        %ymm14,%ymm9,%ymm12
6327  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6328  DB  197,100,89,230                      ; vmulps        %ymm6,%ymm3,%ymm12
6329  DB  196,65,28,89,215                    ; vmulps        %ymm15,%ymm12,%ymm10
6330  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
6331  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
6332  DB  196,193,124,92,194                  ; vsubps        %ymm10,%ymm0,%ymm0
6333  DB  197,60,88,192                       ; vaddps        %ymm0,%ymm8,%ymm8
6334  DB  197,52,88,208                       ; vaddps        %ymm0,%ymm9,%ymm10
6335  DB  197,28,88,216                       ; vaddps        %ymm0,%ymm12,%ymm11
6336  DB  196,193,44,93,195                   ; vminps        %ymm11,%ymm10,%ymm0
6337  DB  197,60,93,224                       ; vminps        %ymm0,%ymm8,%ymm12
6338  DB  196,193,60,89,197                   ; vmulps        %ymm13,%ymm8,%ymm0
6339  DB  196,65,44,89,206                    ; vmulps        %ymm14,%ymm10,%ymm9
6340  DB  196,193,124,88,193                  ; vaddps        %ymm9,%ymm0,%ymm0
6341  DB  196,65,36,89,207                    ; vmulps        %ymm15,%ymm11,%ymm9
6342  DB  197,52,88,200                       ; vaddps        %ymm0,%ymm9,%ymm9
6343  DB  196,193,60,92,193                   ; vsubps        %ymm9,%ymm8,%ymm0
6344  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
6345  DB  196,65,52,92,236                    ; vsubps        %ymm12,%ymm9,%ymm13
6346  DB  196,193,124,94,197                  ; vdivps        %ymm13,%ymm0,%ymm0
6347  DB  196,65,44,92,241                    ; vsubps        %ymm9,%ymm10,%ymm14
6348  DB  196,65,52,89,246                    ; vmulps        %ymm14,%ymm9,%ymm14
6349  DB  196,65,12,94,245                    ; vdivps        %ymm13,%ymm14,%ymm14
6350  DB  196,65,36,92,249                    ; vsubps        %ymm9,%ymm11,%ymm15
6351  DB  196,65,52,89,255                    ; vmulps        %ymm15,%ymm9,%ymm15
6352  DB  196,65,4,94,237                     ; vdivps        %ymm13,%ymm15,%ymm13
6353  DB  196,65,4,87,255                     ; vxorps        %ymm15,%ymm15,%ymm15
6354  DB  196,65,4,194,228,2                  ; vcmpleps      %ymm12,%ymm15,%ymm12
6355  DB  196,65,52,88,246                    ; vaddps        %ymm14,%ymm9,%ymm14
6356  DB  196,67,13,74,242,192                ; vblendvps     %ymm12,%ymm10,%ymm14,%ymm14
6357  DB  196,65,44,95,211                    ; vmaxps        %ymm11,%ymm10,%ymm10
6358  DB  196,65,52,88,237                    ; vaddps        %ymm13,%ymm9,%ymm13
6359  DB  196,67,21,74,219,192                ; vblendvps     %ymm12,%ymm11,%ymm13,%ymm11
6360  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
6361  DB  196,195,125,74,200,192              ; vblendvps     %ymm12,%ymm8,%ymm0,%ymm1
6362  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
6363  DB  196,65,60,95,194                    ; vmaxps        %ymm10,%ymm8,%ymm8
6364  DB  196,65,116,92,209                   ; vsubps        %ymm9,%ymm1,%ymm10
6365  DB  196,65,28,92,233                    ; vsubps        %ymm9,%ymm12,%ymm13
6366  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
6367  DB  196,193,28,194,192,1                ; vcmpltps      %ymm8,%ymm12,%ymm0
6368  DB  196,65,60,92,193                    ; vsubps        %ymm9,%ymm8,%ymm8
6369  DB  196,65,44,94,208                    ; vdivps        %ymm8,%ymm10,%ymm10
6370  DB  196,65,52,88,210                    ; vaddps        %ymm10,%ymm9,%ymm10
6371  DB  196,195,117,74,202,0                ; vblendvps     %ymm0,%ymm10,%ymm1,%ymm1
6372  DB  196,65,12,92,209                    ; vsubps        %ymm9,%ymm14,%ymm10
6373  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
6374  DB  196,65,44,94,208                    ; vdivps        %ymm8,%ymm10,%ymm10
6375  DB  196,65,52,88,210                    ; vaddps        %ymm10,%ymm9,%ymm10
6376  DB  196,67,13,74,210,0                  ; vblendvps     %ymm0,%ymm10,%ymm14,%ymm10
6377  DB  196,65,36,92,241                    ; vsubps        %ymm9,%ymm11,%ymm14
6378  DB  196,65,20,89,238                    ; vmulps        %ymm14,%ymm13,%ymm13
6379  DB  196,65,20,94,192                    ; vdivps        %ymm8,%ymm13,%ymm8
6380  DB  196,65,52,88,192                    ; vaddps        %ymm8,%ymm9,%ymm8
6381  DB  196,193,116,95,207                  ; vmaxps        %ymm15,%ymm1,%ymm1
6382  DB  196,65,44,95,207                    ; vmaxps        %ymm15,%ymm10,%ymm9
6383  DB  196,195,37,74,192,0                 ; vblendvps     %ymm0,%ymm8,%ymm11,%ymm0
6384  DB  196,65,124,95,199                   ; vmaxps        %ymm15,%ymm0,%ymm8
6385  DB  196,226,125,24,5,204,81,0,0         ; vbroadcastss  0x51cc(%rip),%ymm0        # 66d4 <_sk_callback_avx+0x1d0>
6386  DB  197,124,92,215                      ; vsubps        %ymm7,%ymm0,%ymm10
6387  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
6388  DB  197,124,92,219                      ; vsubps        %ymm3,%ymm0,%ymm11
6389  DB  197,164,89,196                      ; vmulps        %ymm4,%ymm11,%ymm0
6390  DB  197,252,88,194                      ; vaddps        %ymm2,%ymm0,%ymm0
6391  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
6392  DB  197,172,89,76,36,32                 ; vmulps        0x20(%rsp),%ymm10,%ymm1
6393  DB  197,164,89,213                      ; vmulps        %ymm5,%ymm11,%ymm2
6394  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
6395  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
6396  DB  197,172,89,20,36                    ; vmulps        (%rsp),%ymm10,%ymm2
6397  DB  197,36,89,206                       ; vmulps        %ymm6,%ymm11,%ymm9
6398  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
6399  DB  196,193,108,88,208                  ; vaddps        %ymm8,%ymm2,%ymm2
6400  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
6401  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
6402  DB  72,173                              ; lods          %ds:(%rsi),%rax
6403  DB  72,131,196,88                       ; add           $0x58,%rsp
6404  DB  255,224                             ; jmpq          *%rax
6405
6406PUBLIC _sk_srcover_rgba_8888_avx
6407_sk_srcover_rgba_8888_avx LABEL PROC
6408  DB  72,131,236,16                       ; sub           $0x10,%rsp
6409  DB  73,137,201                          ; mov           %rcx,%r9
6410  DB  72,173                              ; lods          %ds:(%rsi),%rax
6411  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
6412  DB  76,3,16                             ; add           (%rax),%r10
6413  DB  77,133,192                          ; test          %r8,%r8
6414  DB  15,133,47,1,0,0                     ; jne           16a2 <_sk_srcover_rgba_8888_avx+0x14c>
6415  DB  196,193,124,16,58                   ; vmovups       (%r10),%ymm7
6416  DB  197,124,40,13,128,85,0,0            ; vmovaps       0x5580(%rip),%ymm9        # 6b00 <_sk_callback_avx+0x5fc>
6417  DB  196,193,68,84,225                   ; vandps        %ymm9,%ymm7,%ymm4
6418  DB  197,252,91,228                      ; vcvtdq2ps     %ymm4,%ymm4
6419  DB  197,209,114,215,8                   ; vpsrld        $0x8,%xmm7,%xmm5
6420  DB  196,195,125,25,248,1                ; vextractf128  $0x1,%ymm7,%xmm8
6421  DB  196,193,73,114,208,8                ; vpsrld        $0x8,%xmm8,%xmm6
6422  DB  196,227,85,24,238,1                 ; vinsertf128   $0x1,%xmm6,%ymm5,%ymm5
6423  DB  196,193,84,84,233                   ; vandps        %ymm9,%ymm5,%ymm5
6424  DB  197,252,91,237                      ; vcvtdq2ps     %ymm5,%ymm5
6425  DB  197,169,114,215,16                  ; vpsrld        $0x10,%xmm7,%xmm10
6426  DB  196,193,73,114,208,16               ; vpsrld        $0x10,%xmm8,%xmm6
6427  DB  196,227,45,24,246,1                 ; vinsertf128   $0x1,%xmm6,%ymm10,%ymm6
6428  DB  196,193,76,84,241                   ; vandps        %ymm9,%ymm6,%ymm6
6429  DB  197,252,91,246                      ; vcvtdq2ps     %ymm6,%ymm6
6430  DB  197,177,114,215,24                  ; vpsrld        $0x18,%xmm7,%xmm9
6431  DB  196,193,65,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm7
6432  DB  196,227,53,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm9,%ymm7
6433  DB  197,252,91,255                      ; vcvtdq2ps     %ymm7,%ymm7
6434  DB  196,98,125,24,5,247,80,0,0          ; vbroadcastss  0x50f7(%rip),%ymm8        # 66d8 <_sk_callback_avx+0x1d4>
6435  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
6436  DB  196,98,125,24,13,238,80,0,0         ; vbroadcastss  0x50ee(%rip),%ymm9        # 66dc <_sk_callback_avx+0x1d8>
6437  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
6438  DB  197,60,89,212                       ; vmulps        %ymm4,%ymm8,%ymm10
6439  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
6440  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
6441  DB  197,60,89,213                       ; vmulps        %ymm5,%ymm8,%ymm10
6442  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
6443  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
6444  DB  197,60,89,214                       ; vmulps        %ymm6,%ymm8,%ymm10
6445  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
6446  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
6447  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
6448  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
6449  DB  197,125,91,192                      ; vcvtps2dq     %ymm0,%ymm8
6450  DB  197,125,91,201                      ; vcvtps2dq     %ymm1,%ymm9
6451  DB  196,193,41,114,241,8                ; vpslld        $0x8,%xmm9,%xmm10
6452  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
6453  DB  196,193,49,114,241,8                ; vpslld        $0x8,%xmm9,%xmm9
6454  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
6455  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
6456  DB  197,125,91,202                      ; vcvtps2dq     %ymm2,%ymm9
6457  DB  196,193,41,114,241,16               ; vpslld        $0x10,%xmm9,%xmm10
6458  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
6459  DB  196,193,49,114,241,16               ; vpslld        $0x10,%xmm9,%xmm9
6460  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
6461  DB  197,125,91,211                      ; vcvtps2dq     %ymm3,%ymm10
6462  DB  196,193,33,114,242,24               ; vpslld        $0x18,%xmm10,%xmm11
6463  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
6464  DB  196,193,41,114,242,24               ; vpslld        $0x18,%xmm10,%xmm10
6465  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
6466  DB  196,65,53,86,202                    ; vorpd         %ymm10,%ymm9,%ymm9
6467  DB  196,65,61,86,193                    ; vorpd         %ymm9,%ymm8,%ymm8
6468  DB  77,133,192                          ; test          %r8,%r8
6469  DB  117,91                              ; jne           16ed <_sk_srcover_rgba_8888_avx+0x197>
6470  DB  196,65,124,17,2                     ; vmovups       %ymm8,(%r10)
6471  DB  72,173                              ; lods          %ds:(%rsi),%rax
6472  DB  76,137,201                          ; mov           %r9,%rcx
6473  DB  72,131,196,16                       ; add           $0x10,%rsp
6474  DB  255,224                             ; jmpq          *%rax
6475  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
6476  DB  68,41,193                           ; sub           %r8d,%ecx
6477  DB  192,225,3                           ; shl           $0x3,%cl
6478  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
6479  DB  72,211,232                          ; shr           %cl,%rax
6480  DB  196,225,249,110,224                 ; vmovq         %rax,%xmm4
6481  DB  196,226,121,48,228                  ; vpmovzxbw     %xmm4,%xmm4
6482  DB  196,226,89,0,45,150,83,0,0          ; vpshufb       0x5396(%rip),%xmm4,%xmm5        # 6a60 <_sk_callback_avx+0x55c>
6483  DB  196,226,121,33,237                  ; vpmovsxbd     %xmm5,%xmm5
6484  DB  196,226,89,0,37,152,83,0,0          ; vpshufb       0x5398(%rip),%xmm4,%xmm4        # 6a70 <_sk_callback_avx+0x56c>
6485  DB  196,226,121,33,228                  ; vpmovsxbd     %xmm4,%xmm4
6486  DB  196,227,85,24,228,1                 ; vinsertf128   $0x1,%xmm4,%ymm5,%ymm4
6487  DB  196,194,93,44,58                    ; vmaskmovps    (%r10),%ymm4,%ymm7
6488  DB  233,139,254,255,255                 ; jmpq          1578 <_sk_srcover_rgba_8888_avx+0x22>
6489  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
6490  DB  68,41,193                           ; sub           %r8d,%ecx
6491  DB  192,225,3                           ; shl           $0x3,%cl
6492  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
6493  DB  72,211,232                          ; shr           %cl,%rax
6494  DB  196,97,249,110,200                  ; vmovq         %rax,%xmm9
6495  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
6496  DB  196,98,49,0,21,75,83,0,0            ; vpshufb       0x534b(%rip),%xmm9,%xmm10        # 6a60 <_sk_callback_avx+0x55c>
6497  DB  196,66,121,33,210                   ; vpmovsxbd     %xmm10,%xmm10
6498  DB  196,98,49,0,13,77,83,0,0            ; vpshufb       0x534d(%rip),%xmm9,%xmm9        # 6a70 <_sk_callback_avx+0x56c>
6499  DB  196,66,121,33,201                   ; vpmovsxbd     %xmm9,%xmm9
6500  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
6501  DB  196,66,53,46,2                      ; vmaskmovps    %ymm8,%ymm9,(%r10)
6502  DB  233,95,255,255,255                  ; jmpq          1697 <_sk_srcover_rgba_8888_avx+0x141>
6503
6504PUBLIC _sk_clamp_0_avx
6505_sk_clamp_0_avx LABEL PROC
6506  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6507  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
6508  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
6509  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
6510  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
6511  DB  72,173                              ; lods          %ds:(%rsi),%rax
6512  DB  255,224                             ; jmpq          *%rax
6513
6514PUBLIC _sk_clamp_1_avx
6515_sk_clamp_1_avx LABEL PROC
6516  DB  196,98,125,24,5,130,79,0,0          ; vbroadcastss  0x4f82(%rip),%ymm8        # 66e0 <_sk_callback_avx+0x1dc>
6517  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
6518  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
6519  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
6520  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
6521  DB  72,173                              ; lods          %ds:(%rsi),%rax
6522  DB  255,224                             ; jmpq          *%rax
6523
6524PUBLIC _sk_clamp_a_avx
6525_sk_clamp_a_avx LABEL PROC
6526  DB  196,98,125,24,5,101,79,0,0          ; vbroadcastss  0x4f65(%rip),%ymm8        # 66e4 <_sk_callback_avx+0x1e0>
6527  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
6528  DB  197,252,93,195                      ; vminps        %ymm3,%ymm0,%ymm0
6529  DB  197,244,93,203                      ; vminps        %ymm3,%ymm1,%ymm1
6530  DB  197,236,93,211                      ; vminps        %ymm3,%ymm2,%ymm2
6531  DB  72,173                              ; lods          %ds:(%rsi),%rax
6532  DB  255,224                             ; jmpq          *%rax
6533
6534PUBLIC _sk_set_rgb_avx
6535_sk_set_rgb_avx LABEL PROC
6536  DB  72,173                              ; lods          %ds:(%rsi),%rax
6537  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
6538  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
6539  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
6540  DB  72,173                              ; lods          %ds:(%rsi),%rax
6541  DB  255,224                             ; jmpq          *%rax
6542
6543PUBLIC _sk_swap_rb_avx
6544_sk_swap_rb_avx LABEL PROC
6545  DB  197,124,40,192                      ; vmovaps       %ymm0,%ymm8
6546  DB  72,173                              ; lods          %ds:(%rsi),%rax
6547  DB  197,252,40,194                      ; vmovaps       %ymm2,%ymm0
6548  DB  197,124,41,194                      ; vmovaps       %ymm8,%ymm2
6549  DB  255,224                             ; jmpq          *%rax
6550
6551PUBLIC _sk_swap_avx
6552_sk_swap_avx LABEL PROC
6553  DB  197,124,40,195                      ; vmovaps       %ymm3,%ymm8
6554  DB  197,124,40,202                      ; vmovaps       %ymm2,%ymm9
6555  DB  197,124,40,209                      ; vmovaps       %ymm1,%ymm10
6556  DB  197,124,40,216                      ; vmovaps       %ymm0,%ymm11
6557  DB  72,173                              ; lods          %ds:(%rsi),%rax
6558  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
6559  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
6560  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
6561  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
6562  DB  197,124,41,220                      ; vmovaps       %ymm11,%ymm4
6563  DB  197,124,41,213                      ; vmovaps       %ymm10,%ymm5
6564  DB  197,124,41,206                      ; vmovaps       %ymm9,%ymm6
6565  DB  197,124,41,199                      ; vmovaps       %ymm8,%ymm7
6566  DB  255,224                             ; jmpq          *%rax
6567
6568PUBLIC _sk_move_src_dst_avx
6569_sk_move_src_dst_avx LABEL PROC
6570  DB  72,173                              ; lods          %ds:(%rsi),%rax
6571  DB  197,252,40,224                      ; vmovaps       %ymm0,%ymm4
6572  DB  197,252,40,233                      ; vmovaps       %ymm1,%ymm5
6573  DB  197,252,40,242                      ; vmovaps       %ymm2,%ymm6
6574  DB  197,252,40,251                      ; vmovaps       %ymm3,%ymm7
6575  DB  255,224                             ; jmpq          *%rax
6576
6577PUBLIC _sk_move_dst_src_avx
6578_sk_move_dst_src_avx LABEL PROC
6579  DB  72,173                              ; lods          %ds:(%rsi),%rax
6580  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
6581  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
6582  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
6583  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
6584  DB  255,224                             ; jmpq          *%rax
6585
6586PUBLIC _sk_premul_avx
6587_sk_premul_avx LABEL PROC
6588  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
6589  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
6590  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
6591  DB  72,173                              ; lods          %ds:(%rsi),%rax
6592  DB  255,224                             ; jmpq          *%rax
6593
6594PUBLIC _sk_unpremul_avx
6595_sk_unpremul_avx LABEL PROC
6596  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6597  DB  196,65,100,194,200,0                ; vcmpeqps      %ymm8,%ymm3,%ymm9
6598  DB  196,98,125,24,21,173,78,0,0         ; vbroadcastss  0x4ead(%rip),%ymm10        # 66e8 <_sk_callback_avx+0x1e4>
6599  DB  197,44,94,211                       ; vdivps        %ymm3,%ymm10,%ymm10
6600  DB  196,67,45,74,192,144                ; vblendvps     %ymm9,%ymm8,%ymm10,%ymm8
6601  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
6602  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
6603  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
6604  DB  72,173                              ; lods          %ds:(%rsi),%rax
6605  DB  255,224                             ; jmpq          *%rax
6606
6607PUBLIC _sk_from_srgb_avx
6608_sk_from_srgb_avx LABEL PROC
6609  DB  196,98,125,24,5,142,78,0,0          ; vbroadcastss  0x4e8e(%rip),%ymm8        # 66ec <_sk_callback_avx+0x1e8>
6610  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
6611  DB  197,124,89,208                      ; vmulps        %ymm0,%ymm0,%ymm10
6612  DB  196,98,125,24,29,128,78,0,0         ; vbroadcastss  0x4e80(%rip),%ymm11        # 66f0 <_sk_callback_avx+0x1ec>
6613  DB  196,65,124,89,227                   ; vmulps        %ymm11,%ymm0,%ymm12
6614  DB  196,98,125,24,45,118,78,0,0         ; vbroadcastss  0x4e76(%rip),%ymm13        # 66f4 <_sk_callback_avx+0x1f0>
6615  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
6616  DB  196,65,44,89,212                    ; vmulps        %ymm12,%ymm10,%ymm10
6617  DB  196,98,125,24,37,103,78,0,0         ; vbroadcastss  0x4e67(%rip),%ymm12        # 66f8 <_sk_callback_avx+0x1f4>
6618  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
6619  DB  196,98,125,24,53,93,78,0,0          ; vbroadcastss  0x4e5d(%rip),%ymm14        # 66fc <_sk_callback_avx+0x1f8>
6620  DB  196,193,124,194,198,1               ; vcmpltps      %ymm14,%ymm0,%ymm0
6621  DB  196,195,45,74,193,0                 ; vblendvps     %ymm0,%ymm9,%ymm10,%ymm0
6622  DB  196,65,116,89,200                   ; vmulps        %ymm8,%ymm1,%ymm9
6623  DB  197,116,89,209                      ; vmulps        %ymm1,%ymm1,%ymm10
6624  DB  196,65,116,89,251                   ; vmulps        %ymm11,%ymm1,%ymm15
6625  DB  196,65,4,88,253                     ; vaddps        %ymm13,%ymm15,%ymm15
6626  DB  196,65,44,89,215                    ; vmulps        %ymm15,%ymm10,%ymm10
6627  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
6628  DB  196,193,116,194,206,1               ; vcmpltps      %ymm14,%ymm1,%ymm1
6629  DB  196,195,45,74,201,16                ; vblendvps     %ymm1,%ymm9,%ymm10,%ymm1
6630  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
6631  DB  197,108,89,202                      ; vmulps        %ymm2,%ymm2,%ymm9
6632  DB  196,65,108,89,211                   ; vmulps        %ymm11,%ymm2,%ymm10
6633  DB  196,65,44,88,213                    ; vaddps        %ymm13,%ymm10,%ymm10
6634  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
6635  DB  196,65,52,88,204                    ; vaddps        %ymm12,%ymm9,%ymm9
6636  DB  196,193,108,194,214,1               ; vcmpltps      %ymm14,%ymm2,%ymm2
6637  DB  196,195,53,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm9,%ymm2
6638  DB  72,173                              ; lods          %ds:(%rsi),%rax
6639  DB  255,224                             ; jmpq          *%rax
6640
6641PUBLIC _sk_to_srgb_avx
6642_sk_to_srgb_avx LABEL PROC
6643  DB  197,124,82,200                      ; vrsqrtps      %ymm0,%ymm9
6644  DB  196,98,125,24,5,242,77,0,0          ; vbroadcastss  0x4df2(%rip),%ymm8        # 6700 <_sk_callback_avx+0x1fc>
6645  DB  196,65,124,89,208                   ; vmulps        %ymm8,%ymm0,%ymm10
6646  DB  196,98,125,24,29,232,77,0,0         ; vbroadcastss  0x4de8(%rip),%ymm11        # 6704 <_sk_callback_avx+0x200>
6647  DB  196,65,52,89,227                    ; vmulps        %ymm11,%ymm9,%ymm12
6648  DB  196,98,125,24,45,222,77,0,0         ; vbroadcastss  0x4dde(%rip),%ymm13        # 6708 <_sk_callback_avx+0x204>
6649  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
6650  DB  196,65,52,89,228                    ; vmulps        %ymm12,%ymm9,%ymm12
6651  DB  196,98,125,24,53,207,77,0,0         ; vbroadcastss  0x4dcf(%rip),%ymm14        # 670c <_sk_callback_avx+0x208>
6652  DB  196,65,28,88,230                    ; vaddps        %ymm14,%ymm12,%ymm12
6653  DB  196,98,125,24,61,197,77,0,0         ; vbroadcastss  0x4dc5(%rip),%ymm15        # 6710 <_sk_callback_avx+0x20c>
6654  DB  196,65,52,88,207                    ; vaddps        %ymm15,%ymm9,%ymm9
6655  DB  196,65,124,83,201                   ; vrcpps        %ymm9,%ymm9
6656  DB  196,65,52,89,204                    ; vmulps        %ymm12,%ymm9,%ymm9
6657  DB  196,98,125,24,37,177,77,0,0         ; vbroadcastss  0x4db1(%rip),%ymm12        # 6714 <_sk_callback_avx+0x210>
6658  DB  196,193,124,194,196,1               ; vcmpltps      %ymm12,%ymm0,%ymm0
6659  DB  196,195,53,74,194,0                 ; vblendvps     %ymm0,%ymm10,%ymm9,%ymm0
6660  DB  197,124,82,201                      ; vrsqrtps      %ymm1,%ymm9
6661  DB  196,65,52,89,211                    ; vmulps        %ymm11,%ymm9,%ymm10
6662  DB  196,65,44,88,213                    ; vaddps        %ymm13,%ymm10,%ymm10
6663  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
6664  DB  196,65,44,88,214                    ; vaddps        %ymm14,%ymm10,%ymm10
6665  DB  196,65,52,88,207                    ; vaddps        %ymm15,%ymm9,%ymm9
6666  DB  196,65,124,83,201                   ; vrcpps        %ymm9,%ymm9
6667  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
6668  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
6669  DB  196,193,116,194,204,1               ; vcmpltps      %ymm12,%ymm1,%ymm1
6670  DB  196,195,53,74,202,16                ; vblendvps     %ymm1,%ymm10,%ymm9,%ymm1
6671  DB  197,124,82,202                      ; vrsqrtps      %ymm2,%ymm9
6672  DB  196,65,52,89,211                    ; vmulps        %ymm11,%ymm9,%ymm10
6673  DB  196,65,44,88,213                    ; vaddps        %ymm13,%ymm10,%ymm10
6674  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
6675  DB  196,65,44,88,214                    ; vaddps        %ymm14,%ymm10,%ymm10
6676  DB  196,65,52,88,207                    ; vaddps        %ymm15,%ymm9,%ymm9
6677  DB  196,65,124,83,201                   ; vrcpps        %ymm9,%ymm9
6678  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
6679  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
6680  DB  196,193,108,194,212,1               ; vcmpltps      %ymm12,%ymm2,%ymm2
6681  DB  196,195,53,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm9,%ymm2
6682  DB  72,173                              ; lods          %ds:(%rsi),%rax
6683  DB  255,224                             ; jmpq          *%rax
6684
6685PUBLIC _sk_rgb_to_hsl_avx
6686_sk_rgb_to_hsl_avx LABEL PROC
6687  DB  197,124,95,193                      ; vmaxps        %ymm1,%ymm0,%ymm8
6688  DB  197,60,95,194                       ; vmaxps        %ymm2,%ymm8,%ymm8
6689  DB  197,124,93,201                      ; vminps        %ymm1,%ymm0,%ymm9
6690  DB  197,52,93,202                       ; vminps        %ymm2,%ymm9,%ymm9
6691  DB  196,65,60,92,209                    ; vsubps        %ymm9,%ymm8,%ymm10
6692  DB  196,98,125,24,29,23,77,0,0          ; vbroadcastss  0x4d17(%rip),%ymm11        # 6718 <_sk_callback_avx+0x214>
6693  DB  196,65,36,94,218                    ; vdivps        %ymm10,%ymm11,%ymm11
6694  DB  197,116,92,226                      ; vsubps        %ymm2,%ymm1,%ymm12
6695  DB  196,65,28,89,227                    ; vmulps        %ymm11,%ymm12,%ymm12
6696  DB  197,116,194,234,1                   ; vcmpltps      %ymm2,%ymm1,%ymm13
6697  DB  197,60,194,241,0                    ; vcmpeqps      %ymm1,%ymm8,%ymm14
6698  DB  197,236,92,208                      ; vsubps        %ymm0,%ymm2,%ymm2
6699  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
6700  DB  197,252,92,201                      ; vsubps        %ymm1,%ymm0,%ymm1
6701  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
6702  DB  196,98,125,24,29,240,76,0,0         ; vbroadcastss  0x4cf0(%rip),%ymm11        # 6724 <_sk_callback_avx+0x220>
6703  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
6704  DB  196,98,125,24,29,222,76,0,0         ; vbroadcastss  0x4cde(%rip),%ymm11        # 6720 <_sk_callback_avx+0x21c>
6705  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
6706  DB  196,227,117,74,202,224              ; vblendvps     %ymm14,%ymm2,%ymm1,%ymm1
6707  DB  196,226,125,24,21,198,76,0,0        ; vbroadcastss  0x4cc6(%rip),%ymm2        # 671c <_sk_callback_avx+0x218>
6708  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
6709  DB  196,227,13,74,210,208               ; vblendvps     %ymm13,%ymm2,%ymm14,%ymm2
6710  DB  197,188,194,192,0                   ; vcmpeqps      %ymm0,%ymm8,%ymm0
6711  DB  196,193,108,88,212                  ; vaddps        %ymm12,%ymm2,%ymm2
6712  DB  196,227,117,74,194,0                ; vblendvps     %ymm0,%ymm2,%ymm1,%ymm0
6713  DB  196,193,60,88,201                   ; vaddps        %ymm9,%ymm8,%ymm1
6714  DB  196,98,125,24,37,173,76,0,0         ; vbroadcastss  0x4cad(%rip),%ymm12        # 672c <_sk_callback_avx+0x228>
6715  DB  196,193,116,89,212                  ; vmulps        %ymm12,%ymm1,%ymm2
6716  DB  197,28,194,226,1                    ; vcmpltps      %ymm2,%ymm12,%ymm12
6717  DB  196,65,36,92,216                    ; vsubps        %ymm8,%ymm11,%ymm11
6718  DB  196,65,36,92,217                    ; vsubps        %ymm9,%ymm11,%ymm11
6719  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
6720  DB  196,65,60,194,193,0                 ; vcmpeqps      %ymm9,%ymm8,%ymm8
6721  DB  197,172,94,201                      ; vdivps        %ymm1,%ymm10,%ymm1
6722  DB  196,195,125,74,198,128              ; vblendvps     %ymm8,%ymm14,%ymm0,%ymm0
6723  DB  196,195,117,74,206,128              ; vblendvps     %ymm8,%ymm14,%ymm1,%ymm1
6724  DB  196,98,125,24,5,112,76,0,0          ; vbroadcastss  0x4c70(%rip),%ymm8        # 6728 <_sk_callback_avx+0x224>
6725  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
6726  DB  72,173                              ; lods          %ds:(%rsi),%rax
6727  DB  255,224                             ; jmpq          *%rax
6728
6729PUBLIC _sk_hsl_to_rgb_avx
6730_sk_hsl_to_rgb_avx LABEL PROC
6731  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
6732  DB  197,252,17,188,36,128,0,0,0         ; vmovups       %ymm7,0x80(%rsp)
6733  DB  197,252,17,116,36,96                ; vmovups       %ymm6,0x60(%rsp)
6734  DB  197,252,17,108,36,64                ; vmovups       %ymm5,0x40(%rsp)
6735  DB  197,252,17,100,36,32                ; vmovups       %ymm4,0x20(%rsp)
6736  DB  197,252,17,28,36                    ; vmovups       %ymm3,(%rsp)
6737  DB  197,252,40,225                      ; vmovaps       %ymm1,%ymm4
6738  DB  197,252,40,216                      ; vmovaps       %ymm0,%ymm3
6739  DB  196,98,125,24,5,55,76,0,0           ; vbroadcastss  0x4c37(%rip),%ymm8        # 6730 <_sk_callback_avx+0x22c>
6740  DB  197,60,194,202,2                    ; vcmpleps      %ymm2,%ymm8,%ymm9
6741  DB  197,92,89,210                       ; vmulps        %ymm2,%ymm4,%ymm10
6742  DB  196,65,92,92,218                    ; vsubps        %ymm10,%ymm4,%ymm11
6743  DB  196,67,45,74,203,144                ; vblendvps     %ymm9,%ymm11,%ymm10,%ymm9
6744  DB  197,52,88,210                       ; vaddps        %ymm2,%ymm9,%ymm10
6745  DB  197,108,88,202                      ; vaddps        %ymm2,%ymm2,%ymm9
6746  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
6747  DB  196,98,125,24,29,17,76,0,0          ; vbroadcastss  0x4c11(%rip),%ymm11        # 6734 <_sk_callback_avx+0x230>
6748  DB  196,65,100,88,219                   ; vaddps        %ymm11,%ymm3,%ymm11
6749  DB  196,67,125,8,227,1                  ; vroundps      $0x1,%ymm11,%ymm12
6750  DB  196,65,36,92,252                    ; vsubps        %ymm12,%ymm11,%ymm15
6751  DB  196,65,44,92,217                    ; vsubps        %ymm9,%ymm10,%ymm11
6752  DB  196,98,125,24,37,251,75,0,0         ; vbroadcastss  0x4bfb(%rip),%ymm12        # 673c <_sk_callback_avx+0x238>
6753  DB  196,193,4,89,196                    ; vmulps        %ymm12,%ymm15,%ymm0
6754  DB  196,98,125,24,45,241,75,0,0         ; vbroadcastss  0x4bf1(%rip),%ymm13        # 6740 <_sk_callback_avx+0x23c>
6755  DB  197,20,92,240                       ; vsubps        %ymm0,%ymm13,%ymm14
6756  DB  196,65,36,89,246                    ; vmulps        %ymm14,%ymm11,%ymm14
6757  DB  196,65,52,88,246                    ; vaddps        %ymm14,%ymm9,%ymm14
6758  DB  196,226,125,24,13,210,75,0,0        ; vbroadcastss  0x4bd2(%rip),%ymm1        # 6738 <_sk_callback_avx+0x234>
6759  DB  196,193,116,194,255,2               ; vcmpleps      %ymm15,%ymm1,%ymm7
6760  DB  196,195,13,74,249,112               ; vblendvps     %ymm7,%ymm9,%ymm14,%ymm7
6761  DB  196,65,60,194,247,2                 ; vcmpleps      %ymm15,%ymm8,%ymm14
6762  DB  196,227,45,74,255,224               ; vblendvps     %ymm14,%ymm7,%ymm10,%ymm7
6763  DB  196,98,125,24,53,189,75,0,0         ; vbroadcastss  0x4bbd(%rip),%ymm14        # 6744 <_sk_callback_avx+0x240>
6764  DB  196,65,12,194,255,2                 ; vcmpleps      %ymm15,%ymm14,%ymm15
6765  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
6766  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
6767  DB  196,99,125,74,255,240               ; vblendvps     %ymm15,%ymm7,%ymm0,%ymm15
6768  DB  196,227,125,8,195,1                 ; vroundps      $0x1,%ymm3,%ymm0
6769  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
6770  DB  196,193,124,89,252                  ; vmulps        %ymm12,%ymm0,%ymm7
6771  DB  197,148,92,247                      ; vsubps        %ymm7,%ymm13,%ymm6
6772  DB  197,164,89,246                      ; vmulps        %ymm6,%ymm11,%ymm6
6773  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
6774  DB  197,244,194,232,2                   ; vcmpleps      %ymm0,%ymm1,%ymm5
6775  DB  196,195,77,74,233,80                ; vblendvps     %ymm5,%ymm9,%ymm6,%ymm5
6776  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
6777  DB  196,227,45,74,237,96                ; vblendvps     %ymm6,%ymm5,%ymm10,%ymm5
6778  DB  197,140,194,192,2                   ; vcmpleps      %ymm0,%ymm14,%ymm0
6779  DB  197,164,89,247                      ; vmulps        %ymm7,%ymm11,%ymm6
6780  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
6781  DB  196,227,77,74,237,0                 ; vblendvps     %ymm0,%ymm5,%ymm6,%ymm5
6782  DB  196,226,125,24,5,95,75,0,0          ; vbroadcastss  0x4b5f(%rip),%ymm0        # 6748 <_sk_callback_avx+0x244>
6783  DB  197,228,88,192                      ; vaddps        %ymm0,%ymm3,%ymm0
6784  DB  196,227,125,8,216,1                 ; vroundps      $0x1,%ymm0,%ymm3
6785  DB  197,252,92,195                      ; vsubps        %ymm3,%ymm0,%ymm0
6786  DB  197,244,194,200,2                   ; vcmpleps      %ymm0,%ymm1,%ymm1
6787  DB  196,193,124,89,220                  ; vmulps        %ymm12,%ymm0,%ymm3
6788  DB  197,148,92,243                      ; vsubps        %ymm3,%ymm13,%ymm6
6789  DB  197,164,89,246                      ; vmulps        %ymm6,%ymm11,%ymm6
6790  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
6791  DB  196,195,77,74,201,16                ; vblendvps     %ymm1,%ymm9,%ymm6,%ymm1
6792  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
6793  DB  196,227,45,74,201,96                ; vblendvps     %ymm6,%ymm1,%ymm10,%ymm1
6794  DB  197,140,194,192,2                   ; vcmpleps      %ymm0,%ymm14,%ymm0
6795  DB  197,164,89,219                      ; vmulps        %ymm3,%ymm11,%ymm3
6796  DB  197,180,88,219                      ; vaddps        %ymm3,%ymm9,%ymm3
6797  DB  196,227,101,74,217,0                ; vblendvps     %ymm0,%ymm1,%ymm3,%ymm3
6798  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
6799  DB  197,220,194,224,0                   ; vcmpeqps      %ymm0,%ymm4,%ymm4
6800  DB  196,227,5,74,194,64                 ; vblendvps     %ymm4,%ymm2,%ymm15,%ymm0
6801  DB  196,227,85,74,202,64                ; vblendvps     %ymm4,%ymm2,%ymm5,%ymm1
6802  DB  196,227,101,74,210,64               ; vblendvps     %ymm4,%ymm2,%ymm3,%ymm2
6803  DB  72,173                              ; lods          %ds:(%rsi),%rax
6804  DB  197,252,16,28,36                    ; vmovups       (%rsp),%ymm3
6805  DB  197,252,16,100,36,32                ; vmovups       0x20(%rsp),%ymm4
6806  DB  197,252,16,108,36,64                ; vmovups       0x40(%rsp),%ymm5
6807  DB  197,252,16,116,36,96                ; vmovups       0x60(%rsp),%ymm6
6808  DB  197,252,16,188,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm7
6809  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
6810  DB  255,224                             ; jmpq          *%rax
6811
6812PUBLIC _sk_scale_1_float_avx
6813_sk_scale_1_float_avx LABEL PROC
6814  DB  72,173                              ; lods          %ds:(%rsi),%rax
6815  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
6816  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
6817  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
6818  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
6819  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
6820  DB  72,173                              ; lods          %ds:(%rsi),%rax
6821  DB  255,224                             ; jmpq          *%rax
6822
6823PUBLIC _sk_scale_u8_avx
6824_sk_scale_u8_avx LABEL PROC
6825  DB  73,137,201                          ; mov           %rcx,%r9
6826  DB  72,173                              ; lods          %ds:(%rsi),%rax
6827  DB  72,139,0                            ; mov           (%rax),%rax
6828  DB  72,1,208                            ; add           %rdx,%rax
6829  DB  77,133,192                          ; test          %r8,%r8
6830  DB  117,68                              ; jne           1ce6 <_sk_scale_u8_avx+0x54>
6831  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
6832  DB  196,66,121,49,200                   ; vpmovzxbd     %xmm8,%xmm9
6833  DB  196,67,121,4,192,229                ; vpermilps     $0xe5,%xmm8,%xmm8
6834  DB  196,66,121,49,192                   ; vpmovzxbd     %xmm8,%xmm8
6835  DB  196,67,53,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm9,%ymm8
6836  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6837  DB  196,98,125,24,13,130,74,0,0         ; vbroadcastss  0x4a82(%rip),%ymm9        # 674c <_sk_callback_avx+0x248>
6838  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
6839  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
6840  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
6841  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
6842  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
6843  DB  72,173                              ; lods          %ds:(%rsi),%rax
6844  DB  76,137,201                          ; mov           %r9,%rcx
6845  DB  255,224                             ; jmpq          *%rax
6846  DB  83                                  ; push          %rbx
6847  DB  49,201                              ; xor           %ecx,%ecx
6848  DB  77,137,195                          ; mov           %r8,%r11
6849  DB  69,49,210                           ; xor           %r10d,%r10d
6850  DB  15,182,24                           ; movzbl        (%rax),%ebx
6851  DB  72,255,192                          ; inc           %rax
6852  DB  72,211,227                          ; shl           %cl,%rbx
6853  DB  73,9,218                            ; or            %rbx,%r10
6854  DB  72,131,193,8                        ; add           $0x8,%rcx
6855  DB  73,255,203                          ; dec           %r11
6856  DB  117,235                             ; jne           1cef <_sk_scale_u8_avx+0x5d>
6857  DB  196,65,249,110,194                  ; vmovq         %r10,%xmm8
6858  DB  91                                  ; pop           %rbx
6859  DB  235,154                             ; jmp           1ca6 <_sk_scale_u8_avx+0x14>
6860
6861PUBLIC _sk_lerp_1_float_avx
6862_sk_lerp_1_float_avx LABEL PROC
6863  DB  72,173                              ; lods          %ds:(%rsi),%rax
6864  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
6865  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
6866  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
6867  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
6868  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
6869  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
6870  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
6871  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
6872  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
6873  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
6874  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
6875  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
6876  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
6877  DB  72,173                              ; lods          %ds:(%rsi),%rax
6878  DB  255,224                             ; jmpq          *%rax
6879
6880PUBLIC _sk_lerp_u8_avx
6881_sk_lerp_u8_avx LABEL PROC
6882  DB  73,137,201                          ; mov           %rcx,%r9
6883  DB  72,173                              ; lods          %ds:(%rsi),%rax
6884  DB  72,139,0                            ; mov           (%rax),%rax
6885  DB  72,1,208                            ; add           %rdx,%rax
6886  DB  77,133,192                          ; test          %r8,%r8
6887  DB  117,104                             ; jne           1dc3 <_sk_lerp_u8_avx+0x78>
6888  DB  197,122,126,0                       ; vmovq         (%rax),%xmm8
6889  DB  196,66,121,49,200                   ; vpmovzxbd     %xmm8,%xmm9
6890  DB  196,67,121,4,192,229                ; vpermilps     $0xe5,%xmm8,%xmm8
6891  DB  196,66,121,49,192                   ; vpmovzxbd     %xmm8,%xmm8
6892  DB  196,67,53,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm9,%ymm8
6893  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6894  DB  196,98,125,24,13,205,73,0,0         ; vbroadcastss  0x49cd(%rip),%ymm9        # 6750 <_sk_callback_avx+0x24c>
6895  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
6896  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
6897  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
6898  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
6899  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
6900  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
6901  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
6902  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
6903  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
6904  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
6905  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
6906  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
6907  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
6908  DB  72,173                              ; lods          %ds:(%rsi),%rax
6909  DB  76,137,201                          ; mov           %r9,%rcx
6910  DB  255,224                             ; jmpq          *%rax
6911  DB  83                                  ; push          %rbx
6912  DB  49,201                              ; xor           %ecx,%ecx
6913  DB  77,137,195                          ; mov           %r8,%r11
6914  DB  69,49,210                           ; xor           %r10d,%r10d
6915  DB  15,182,24                           ; movzbl        (%rax),%ebx
6916  DB  72,255,192                          ; inc           %rax
6917  DB  72,211,227                          ; shl           %cl,%rbx
6918  DB  73,9,218                            ; or            %rbx,%r10
6919  DB  72,131,193,8                        ; add           $0x8,%rcx
6920  DB  73,255,203                          ; dec           %r11
6921  DB  117,235                             ; jne           1dcc <_sk_lerp_u8_avx+0x81>
6922  DB  196,65,249,110,194                  ; vmovq         %r10,%xmm8
6923  DB  91                                  ; pop           %rbx
6924  DB  233,115,255,255,255                 ; jmpq          1d5f <_sk_lerp_u8_avx+0x14>
6925
6926PUBLIC _sk_lerp_565_avx
6927_sk_lerp_565_avx LABEL PROC
6928  DB  72,173                              ; lods          %ds:(%rsi),%rax
6929  DB  76,139,24                           ; mov           (%rax),%r11
6930  DB  77,133,192                          ; test          %r8,%r8
6931  DB  15,133,208,0,0,0                    ; jne           1eca <_sk_lerp_565_avx+0xde>
6932  DB  196,65,122,111,4,83                 ; vmovdqu       (%r11,%rdx,2),%xmm8
6933  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
6934  DB  196,65,57,105,201                   ; vpunpckhwd    %xmm9,%xmm8,%xmm9
6935  DB  196,66,121,51,192                   ; vpmovzxwd     %xmm8,%xmm8
6936  DB  196,67,61,24,193,1                  ; vinsertf128   $0x1,%xmm9,%ymm8,%ymm8
6937  DB  196,98,125,24,13,54,73,0,0          ; vbroadcastss  0x4936(%rip),%ymm9        # 6754 <_sk_callback_avx+0x250>
6938  DB  196,65,60,84,201                    ; vandps        %ymm9,%ymm8,%ymm9
6939  DB  196,65,124,91,201                   ; vcvtdq2ps     %ymm9,%ymm9
6940  DB  196,98,125,24,21,39,73,0,0          ; vbroadcastss  0x4927(%rip),%ymm10        # 6758 <_sk_callback_avx+0x254>
6941  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
6942  DB  196,98,125,24,21,29,73,0,0          ; vbroadcastss  0x491d(%rip),%ymm10        # 675c <_sk_callback_avx+0x258>
6943  DB  196,65,60,84,210                    ; vandps        %ymm10,%ymm8,%ymm10
6944  DB  196,65,124,91,210                   ; vcvtdq2ps     %ymm10,%ymm10
6945  DB  196,98,125,24,29,14,73,0,0          ; vbroadcastss  0x490e(%rip),%ymm11        # 6760 <_sk_callback_avx+0x25c>
6946  DB  196,65,44,89,211                    ; vmulps        %ymm11,%ymm10,%ymm10
6947  DB  196,98,125,24,29,4,73,0,0           ; vbroadcastss  0x4904(%rip),%ymm11        # 6764 <_sk_callback_avx+0x260>
6948  DB  196,65,60,84,195                    ; vandps        %ymm11,%ymm8,%ymm8
6949  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
6950  DB  196,98,125,24,29,245,72,0,0         ; vbroadcastss  0x48f5(%rip),%ymm11        # 6768 <_sk_callback_avx+0x264>
6951  DB  196,65,60,89,195                    ; vmulps        %ymm11,%ymm8,%ymm8
6952  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
6953  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
6954  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
6955  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
6956  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
6957  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
6958  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
6959  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
6960  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
6961  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
6962  DB  196,65,100,89,201                   ; vmulps        %ymm9,%ymm3,%ymm9
6963  DB  197,52,88,207                       ; vaddps        %ymm7,%ymm9,%ymm9
6964  DB  196,65,100,89,210                   ; vmulps        %ymm10,%ymm3,%ymm10
6965  DB  197,44,88,215                       ; vaddps        %ymm7,%ymm10,%ymm10
6966  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
6967  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
6968  DB  197,172,95,219                      ; vmaxps        %ymm3,%ymm10,%ymm3
6969  DB  197,180,95,219                      ; vmaxps        %ymm3,%ymm9,%ymm3
6970  DB  72,173                              ; lods          %ds:(%rsi),%rax
6971  DB  255,224                             ; jmpq          *%rax
6972  DB  69,137,193                          ; mov           %r8d,%r9d
6973  DB  65,128,225,7                        ; and           $0x7,%r9b
6974  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
6975  DB  65,254,201                          ; dec           %r9b
6976  DB  65,128,249,6                        ; cmp           $0x6,%r9b
6977  DB  15,135,29,255,255,255               ; ja            1e00 <_sk_lerp_565_avx+0x14>
6978  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
6979  DB  76,141,21,74,0,0,0                  ; lea           0x4a(%rip),%r10        # 1f38 <_sk_lerp_565_avx+0x14c>
6980  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
6981  DB  76,1,208                            ; add           %r10,%rax
6982  DB  255,224                             ; jmpq          *%rax
6983  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
6984  DB  196,65,57,196,68,83,12,6            ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm8,%xmm8
6985  DB  196,65,57,196,68,83,10,5            ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm8,%xmm8
6986  DB  196,65,57,196,68,83,8,4             ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm8,%xmm8
6987  DB  196,65,57,196,68,83,6,3             ; vpinsrw       $0x3,0x6(%r11,%rdx,2),%xmm8,%xmm8
6988  DB  196,65,57,196,68,83,4,2             ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm8,%xmm8
6989  DB  196,65,57,196,68,83,2,1             ; vpinsrw       $0x1,0x2(%r11,%rdx,2),%xmm8,%xmm8
6990  DB  196,65,57,196,4,83,0                ; vpinsrw       $0x0,(%r11,%rdx,2),%xmm8,%xmm8
6991  DB  233,200,254,255,255                 ; jmpq          1e00 <_sk_lerp_565_avx+0x14>
6992  DB  244                                 ; hlt
6993  DB  255                                 ; (bad)
6994  DB  255                                 ; (bad)
6995  DB  255                                 ; (bad)
6996  DB  236                                 ; in            (%dx),%al
6997  DB  255                                 ; (bad)
6998  DB  255                                 ; (bad)
6999  DB  255,228                             ; jmpq          *%rsp
7000  DB  255                                 ; (bad)
7001  DB  255                                 ; (bad)
7002  DB  255                                 ; (bad)
7003  DB  220,255                             ; fdivr         %st,%st(7)
7004  DB  255                                 ; (bad)
7005  DB  255,212                             ; callq         *%rsp
7006  DB  255                                 ; (bad)
7007  DB  255                                 ; (bad)
7008  DB  255,204                             ; dec           %esp
7009  DB  255                                 ; (bad)
7010  DB  255                                 ; (bad)
7011  DB  255                                 ; (bad)
7012  DB  191                                 ; .byte         0xbf
7013  DB  255                                 ; (bad)
7014  DB  255                                 ; (bad)
7015  DB  255                                 ; .byte         0xff
7016
7017PUBLIC _sk_load_tables_avx
7018_sk_load_tables_avx LABEL PROC
7019  DB  83                                  ; push          %rbx
7020  DB  72,131,236,48                       ; sub           $0x30,%rsp
7021  DB  197,252,17,60,36                    ; vmovups       %ymm7,(%rsp)
7022  DB  73,137,201                          ; mov           %rcx,%r9
7023  DB  72,173                              ; lods          %ds:(%rsi),%rax
7024  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
7025  DB  76,3,16                             ; add           (%rax),%r10
7026  DB  77,133,192                          ; test          %r8,%r8
7027  DB  15,133,251,1,0,0                    ; jne           2172 <_sk_load_tables_avx+0x21e>
7028  DB  196,65,124,16,18                    ; vmovups       (%r10),%ymm10
7029  DB  197,124,40,13,156,75,0,0            ; vmovaps       0x4b9c(%rip),%ymm9        # 6b20 <_sk_callback_avx+0x61c>
7030  DB  196,193,44,84,201                   ; vandps        %ymm9,%ymm10,%ymm1
7031  DB  196,227,125,25,200,1                ; vextractf128  $0x1,%ymm1,%xmm0
7032  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
7033  DB  69,137,218                          ; mov           %r11d,%r10d
7034  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
7035  DB  196,161,122,16,20,147               ; vmovss        (%rbx,%r10,4),%xmm2
7036  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
7037  DB  73,193,235,32                       ; shr           $0x20,%r11
7038  DB  196,163,105,33,4,155,16             ; vinsertps     $0x10,(%rbx,%r11,4),%xmm2,%xmm0
7039  DB  68,137,209                          ; mov           %r10d,%ecx
7040  DB  196,227,121,33,4,139,32             ; vinsertps     $0x20,(%rbx,%rcx,4),%xmm0,%xmm0
7041  DB  196,193,249,126,203                 ; vmovq         %xmm1,%r11
7042  DB  73,193,234,32                       ; shr           $0x20,%r10
7043  DB  196,35,121,33,44,147,48             ; vinsertps     $0x30,(%rbx,%r10,4),%xmm0,%xmm13
7044  DB  68,137,217                          ; mov           %r11d,%ecx
7045  DB  197,250,16,20,139                   ; vmovss        (%rbx,%rcx,4),%xmm2
7046  DB  196,227,249,22,201,1                ; vpextrq       $0x1,%xmm1,%rcx
7047  DB  73,193,235,32                       ; shr           $0x20,%r11
7048  DB  196,163,105,33,12,155,16            ; vinsertps     $0x10,(%rbx,%r11,4),%xmm2,%xmm1
7049  DB  65,137,202                          ; mov           %ecx,%r10d
7050  DB  72,193,233,32                       ; shr           $0x20,%rcx
7051  DB  196,163,113,33,12,147,32            ; vinsertps     $0x20,(%rbx,%r10,4),%xmm1,%xmm1
7052  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
7053  DB  196,99,113,33,36,139,48             ; vinsertps     $0x30,(%rbx,%rcx,4),%xmm1,%xmm12
7054  DB  196,193,105,114,210,8               ; vpsrld        $0x8,%xmm10,%xmm2
7055  DB  196,67,125,25,208,1                 ; vextractf128  $0x1,%ymm10,%xmm8
7056  DB  196,193,121,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm0
7057  DB  196,227,109,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm2,%ymm0
7058  DB  196,193,124,84,209                  ; vandps        %ymm9,%ymm0,%ymm2
7059  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
7060  DB  196,225,249,126,193                 ; vmovq         %xmm0,%rcx
7061  DB  137,203                             ; mov           %ecx,%ebx
7062  DB  196,193,122,16,12,154               ; vmovss        (%r10,%rbx,4),%xmm1
7063  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
7064  DB  72,193,233,32                       ; shr           $0x20,%rcx
7065  DB  196,67,113,33,52,138,16             ; vinsertps     $0x10,(%r10,%rcx,4),%xmm1,%xmm14
7066  DB  137,217                             ; mov           %ebx,%ecx
7067  DB  196,193,122,16,28,138               ; vmovss        (%r10,%rcx,4),%xmm3
7068  DB  196,225,249,126,209                 ; vmovq         %xmm2,%rcx
7069  DB  72,193,235,32                       ; shr           $0x20,%rbx
7070  DB  196,193,122,16,12,154               ; vmovss        (%r10,%rbx,4),%xmm1
7071  DB  137,203                             ; mov           %ecx,%ebx
7072  DB  196,193,122,16,4,154                ; vmovss        (%r10,%rbx,4),%xmm0
7073  DB  196,227,249,22,211,1                ; vpextrq       $0x1,%xmm2,%rbx
7074  DB  72,193,233,32                       ; shr           $0x20,%rcx
7075  DB  196,67,121,33,28,138,16             ; vinsertps     $0x10,(%r10,%rcx,4),%xmm0,%xmm11
7076  DB  137,217                             ; mov           %ebx,%ecx
7077  DB  196,65,122,16,60,138                ; vmovss        (%r10,%rcx,4),%xmm15
7078  DB  196,195,29,24,197,1                 ; vinsertf128   $0x1,%xmm13,%ymm12,%ymm0
7079  DB  72,193,235,32                       ; shr           $0x20,%rbx
7080  DB  196,227,9,33,219,32                 ; vinsertps     $0x20,%xmm3,%xmm14,%xmm3
7081  DB  196,227,97,33,249,48                ; vinsertps     $0x30,%xmm1,%xmm3,%xmm7
7082  DB  196,65,122,16,52,154                ; vmovss        (%r10,%rbx,4),%xmm14
7083  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
7084  DB  196,193,97,114,210,16               ; vpsrld        $0x10,%xmm10,%xmm3
7085  DB  196,193,105,114,208,16              ; vpsrld        $0x10,%xmm8,%xmm2
7086  DB  196,227,101,24,210,1                ; vinsertf128   $0x1,%xmm2,%ymm3,%ymm2
7087  DB  196,65,108,84,201                   ; vandps        %ymm9,%ymm2,%ymm9
7088  DB  196,99,125,25,202,1                 ; vextractf128  $0x1,%ymm9,%xmm2
7089  DB  196,225,249,126,209                 ; vmovq         %xmm2,%rcx
7090  DB  137,203                             ; mov           %ecx,%ebx
7091  DB  197,250,16,28,152                   ; vmovss        (%rax,%rbx,4),%xmm3
7092  DB  196,227,249,22,211,1                ; vpextrq       $0x1,%xmm2,%rbx
7093  DB  72,193,233,32                       ; shr           $0x20,%rcx
7094  DB  196,99,97,33,36,136,16              ; vinsertps     $0x10,(%rax,%rcx,4),%xmm3,%xmm12
7095  DB  137,217                             ; mov           %ebx,%ecx
7096  DB  197,250,16,28,136                   ; vmovss        (%rax,%rcx,4),%xmm3
7097  DB  196,97,249,126,201                  ; vmovq         %xmm9,%rcx
7098  DB  72,193,235,32                       ; shr           $0x20,%rbx
7099  DB  197,250,16,20,152                   ; vmovss        (%rax,%rbx,4),%xmm2
7100  DB  137,203                             ; mov           %ecx,%ebx
7101  DB  197,250,16,12,152                   ; vmovss        (%rax,%rbx,4),%xmm1
7102  DB  196,99,249,22,203,1                 ; vpextrq       $0x1,%xmm9,%rbx
7103  DB  72,193,233,32                       ; shr           $0x20,%rcx
7104  DB  196,99,113,33,12,136,16             ; vinsertps     $0x10,(%rax,%rcx,4),%xmm1,%xmm9
7105  DB  137,217                             ; mov           %ebx,%ecx
7106  DB  197,122,16,44,136                   ; vmovss        (%rax,%rcx,4),%xmm13
7107  DB  196,195,33,33,207,32                ; vinsertps     $0x20,%xmm15,%xmm11,%xmm1
7108  DB  72,193,235,32                       ; shr           $0x20,%rbx
7109  DB  197,122,16,28,152                   ; vmovss        (%rax,%rbx,4),%xmm11
7110  DB  196,195,113,33,206,48               ; vinsertps     $0x30,%xmm14,%xmm1,%xmm1
7111  DB  196,227,117,24,207,1                ; vinsertf128   $0x1,%xmm7,%ymm1,%ymm1
7112  DB  196,227,25,33,219,32                ; vinsertps     $0x20,%xmm3,%xmm12,%xmm3
7113  DB  196,227,97,33,210,48                ; vinsertps     $0x30,%xmm2,%xmm3,%xmm2
7114  DB  196,195,49,33,221,32                ; vinsertps     $0x20,%xmm13,%xmm9,%xmm3
7115  DB  196,195,97,33,219,48                ; vinsertps     $0x30,%xmm11,%xmm3,%xmm3
7116  DB  196,227,101,24,210,1                ; vinsertf128   $0x1,%xmm2,%ymm3,%ymm2
7117  DB  196,193,97,114,210,24               ; vpsrld        $0x18,%xmm10,%xmm3
7118  DB  196,193,65,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm7
7119  DB  196,227,101,24,223,1                ; vinsertf128   $0x1,%xmm7,%ymm3,%ymm3
7120  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7121  DB  196,226,125,24,61,15,70,0,0         ; vbroadcastss  0x460f(%rip),%ymm7        # 676c <_sk_callback_avx+0x268>
7122  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
7123  DB  72,173                              ; lods          %ds:(%rsi),%rax
7124  DB  76,137,201                          ; mov           %r9,%rcx
7125  DB  197,252,16,60,36                    ; vmovups       (%rsp),%ymm7
7126  DB  72,131,196,48                       ; add           $0x30,%rsp
7127  DB  91                                  ; pop           %rbx
7128  DB  255,224                             ; jmpq          *%rax
7129  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
7130  DB  68,41,193                           ; sub           %r8d,%ecx
7131  DB  192,225,3                           ; shl           $0x3,%cl
7132  DB  73,199,195,255,255,255,255          ; mov           $0xffffffffffffffff,%r11
7133  DB  73,211,235                          ; shr           %cl,%r11
7134  DB  196,193,249,110,195                 ; vmovq         %r11,%xmm0
7135  DB  196,226,121,48,192                  ; vpmovzxbw     %xmm0,%xmm0
7136  DB  196,226,121,0,13,230,72,0,0         ; vpshufb       0x48e6(%rip),%xmm0,%xmm1        # 6a80 <_sk_callback_avx+0x57c>
7137  DB  196,226,121,33,201                  ; vpmovsxbd     %xmm1,%xmm1
7138  DB  196,226,121,0,5,232,72,0,0          ; vpshufb       0x48e8(%rip),%xmm0,%xmm0        # 6a90 <_sk_callback_avx+0x58c>
7139  DB  196,226,121,33,192                  ; vpmovsxbd     %xmm0,%xmm0
7140  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
7141  DB  196,66,125,44,18                    ; vmaskmovps    (%r10),%ymm0,%ymm10
7142  DB  233,191,253,255,255                 ; jmpq          1f7c <_sk_load_tables_avx+0x28>
7143
7144PUBLIC _sk_load_tables_u16_be_avx
7145_sk_load_tables_u16_be_avx LABEL PROC
7146  DB  72,131,236,56                       ; sub           $0x38,%rsp
7147  DB  72,173                              ; lods          %ds:(%rsi),%rax
7148  DB  76,139,8                            ; mov           (%rax),%r9
7149  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
7150  DB  77,133,192                          ; test          %r8,%r8
7151  DB  197,252,17,60,36                    ; vmovups       %ymm7,(%rsp)
7152  DB  15,133,87,2,0,0                     ; jne           2433 <_sk_load_tables_u16_be_avx+0x276>
7153  DB  196,1,121,16,4,81                   ; vmovupd       (%r9,%r10,2),%xmm8
7154  DB  196,129,121,16,84,81,16             ; vmovupd       0x10(%r9,%r10,2),%xmm2
7155  DB  196,129,121,16,92,81,32             ; vmovupd       0x20(%r9,%r10,2),%xmm3
7156  DB  196,1,122,111,76,81,48              ; vmovdqu       0x30(%r9,%r10,2),%xmm9
7157  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
7158  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
7159  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
7160  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
7161  DB  197,121,97,202                      ; vpunpcklwd    %xmm2,%xmm0,%xmm9
7162  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
7163  DB  197,241,97,195                      ; vpunpcklwd    %xmm3,%xmm1,%xmm0
7164  DB  197,113,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm11
7165  DB  197,177,108,200                     ; vpunpcklqdq   %xmm0,%xmm9,%xmm1
7166  DB  197,49,109,224                      ; vpunpckhqdq   %xmm0,%xmm9,%xmm12
7167  DB  197,121,111,21,119,72,0,0           ; vmovdqa       0x4877(%rip),%xmm10        # 6aa0 <_sk_callback_avx+0x59c>
7168  DB  196,193,113,219,202                 ; vpand         %xmm10,%xmm1,%xmm1
7169  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
7170  DB  196,193,113,105,209                 ; vpunpckhwd    %xmm9,%xmm1,%xmm2
7171  DB  196,193,249,126,209                 ; vmovq         %xmm2,%r9
7172  DB  69,137,202                          ; mov           %r9d,%r10d
7173  DB  76,139,88,8                         ; mov           0x8(%rax),%r11
7174  DB  196,129,122,16,28,147               ; vmovss        (%r11,%r10,4),%xmm3
7175  DB  196,195,249,22,210,1                ; vpextrq       $0x1,%xmm2,%r10
7176  DB  73,193,233,32                       ; shr           $0x20,%r9
7177  DB  196,3,97,33,44,139,16               ; vinsertps     $0x10,(%r11,%r9,4),%xmm3,%xmm13
7178  DB  69,137,209                          ; mov           %r10d,%r9d
7179  DB  73,193,234,32                       ; shr           $0x20,%r10
7180  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
7181  DB  196,129,122,16,28,139               ; vmovss        (%r11,%r9,4),%xmm3
7182  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7183  DB  196,129,122,16,4,147                ; vmovss        (%r11,%r10,4),%xmm0
7184  DB  69,137,202                          ; mov           %r9d,%r10d
7185  DB  73,193,233,30                       ; shr           $0x1e,%r9
7186  DB  196,129,122,16,20,147               ; vmovss        (%r11,%r10,4),%xmm2
7187  DB  196,195,249,22,202,1                ; vpextrq       $0x1,%xmm1,%r10
7188  DB  196,131,105,33,12,11,16             ; vinsertps     $0x10,(%r11,%r9,1),%xmm2,%xmm1
7189  DB  69,137,209                          ; mov           %r10d,%r9d
7190  DB  73,193,234,30                       ; shr           $0x1e,%r10
7191  DB  196,129,122,16,20,139               ; vmovss        (%r11,%r9,4),%xmm2
7192  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
7193  DB  196,227,17,33,219,32                ; vinsertps     $0x20,%xmm3,%xmm13,%xmm3
7194  DB  196,99,97,33,232,48                 ; vinsertps     $0x30,%xmm0,%xmm3,%xmm13
7195  DB  196,99,113,33,242,32                ; vinsertps     $0x20,%xmm2,%xmm1,%xmm14
7196  DB  196,1,122,16,60,19                  ; vmovss        (%r11,%r10,1),%xmm15
7197  DB  196,193,25,219,210                  ; vpand         %xmm10,%xmm12,%xmm2
7198  DB  196,193,105,105,193                 ; vpunpckhwd    %xmm9,%xmm2,%xmm0
7199  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
7200  DB  69,137,211                          ; mov           %r10d,%r11d
7201  DB  196,129,122,16,12,153               ; vmovss        (%r9,%r11,4),%xmm1
7202  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
7203  DB  73,193,234,32                       ; shr           $0x20,%r10
7204  DB  196,3,113,33,36,145,16              ; vinsertps     $0x10,(%r9,%r10,4),%xmm1,%xmm12
7205  DB  69,137,218                          ; mov           %r11d,%r10d
7206  DB  73,193,235,32                       ; shr           $0x20,%r11
7207  DB  196,226,121,51,194                  ; vpmovzxwd     %xmm2,%xmm0
7208  DB  196,129,122,16,20,145               ; vmovss        (%r9,%r10,4),%xmm2
7209  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
7210  DB  196,129,122,16,28,153               ; vmovss        (%r9,%r11,4),%xmm3
7211  DB  69,137,211                          ; mov           %r10d,%r11d
7212  DB  73,193,234,30                       ; shr           $0x1e,%r10
7213  DB  196,129,122,16,12,153               ; vmovss        (%r9,%r11,4),%xmm1
7214  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
7215  DB  196,131,113,33,12,17,16             ; vinsertps     $0x10,(%r9,%r10,1),%xmm1,%xmm1
7216  DB  69,137,218                          ; mov           %r11d,%r10d
7217  DB  196,129,122,16,60,145               ; vmovss        (%r9,%r10,4),%xmm7
7218  DB  196,195,9,33,199,48                 ; vinsertps     $0x30,%xmm15,%xmm14,%xmm0
7219  DB  196,65,57,108,243                   ; vpunpcklqdq   %xmm11,%xmm8,%xmm14
7220  DB  196,195,125,24,197,1                ; vinsertf128   $0x1,%xmm13,%ymm0,%ymm0
7221  DB  73,193,235,30                       ; shr           $0x1e,%r11
7222  DB  196,227,25,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm12,%xmm2
7223  DB  196,227,105,33,219,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm3
7224  DB  196,99,113,33,239,32                ; vinsertps     $0x20,%xmm7,%xmm1,%xmm13
7225  DB  196,1,122,16,60,25                  ; vmovss        (%r9,%r11,1),%xmm15
7226  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
7227  DB  196,193,9,219,250                   ; vpand         %xmm10,%xmm14,%xmm7
7228  DB  196,193,65,105,209                  ; vpunpckhwd    %xmm9,%xmm7,%xmm2
7229  DB  196,193,249,126,209                 ; vmovq         %xmm2,%r9
7230  DB  68,137,200                          ; mov           %r9d,%eax
7231  DB  196,193,122,16,12,130               ; vmovss        (%r10,%rax,4),%xmm1
7232  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7233  DB  73,193,233,32                       ; shr           $0x20,%r9
7234  DB  196,3,113,33,20,138,16              ; vinsertps     $0x10,(%r10,%r9,4),%xmm1,%xmm10
7235  DB  65,137,193                          ; mov           %eax,%r9d
7236  DB  72,193,232,32                       ; shr           $0x20,%rax
7237  DB  196,226,121,51,207                  ; vpmovzxwd     %xmm7,%xmm1
7238  DB  196,1,122,16,52,138                 ; vmovss        (%r10,%r9,4),%xmm14
7239  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7240  DB  196,65,122,16,36,130                ; vmovss        (%r10,%rax,4),%xmm12
7241  DB  68,137,200                          ; mov           %r9d,%eax
7242  DB  73,193,233,30                       ; shr           $0x1e,%r9
7243  DB  196,193,122,16,20,130               ; vmovss        (%r10,%rax,4),%xmm2
7244  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7245  DB  196,131,105,33,20,10,16             ; vinsertps     $0x10,(%r10,%r9,1),%xmm2,%xmm2
7246  DB  68,137,216                          ; mov           %r11d,%eax
7247  DB  196,193,122,16,60,130               ; vmovss        (%r10,%rax,4),%xmm7
7248  DB  196,195,17,33,207,48                ; vinsertps     $0x30,%xmm15,%xmm13,%xmm1
7249  DB  73,193,235,30                       ; shr           $0x1e,%r11
7250  DB  196,1,122,16,44,26                  ; vmovss        (%r10,%r11,1),%xmm13
7251  DB  196,227,117,24,203,1                ; vinsertf128   $0x1,%xmm3,%ymm1,%ymm1
7252  DB  196,195,41,33,222,32                ; vinsertps     $0x20,%xmm14,%xmm10,%xmm3
7253  DB  196,195,97,33,220,48                ; vinsertps     $0x30,%xmm12,%xmm3,%xmm3
7254  DB  196,227,105,33,215,32               ; vinsertps     $0x20,%xmm7,%xmm2,%xmm2
7255  DB  196,195,105,33,213,48               ; vinsertps     $0x30,%xmm13,%xmm2,%xmm2
7256  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
7257  DB  196,193,57,109,219                  ; vpunpckhqdq   %xmm11,%xmm8,%xmm3
7258  DB  197,193,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm7
7259  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
7260  DB  197,193,235,219                     ; vpor          %xmm3,%xmm7,%xmm3
7261  DB  196,193,97,105,249                  ; vpunpckhwd    %xmm9,%xmm3,%xmm7
7262  DB  196,226,121,51,219                  ; vpmovzxwd     %xmm3,%xmm3
7263  DB  196,227,101,24,223,1                ; vinsertf128   $0x1,%xmm7,%ymm3,%ymm3
7264  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7265  DB  196,226,125,24,61,78,67,0,0         ; vbroadcastss  0x434e(%rip),%ymm7        # 6770 <_sk_callback_avx+0x26c>
7266  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
7267  DB  72,173                              ; lods          %ds:(%rsi),%rax
7268  DB  197,252,16,60,36                    ; vmovups       (%rsp),%ymm7
7269  DB  72,131,196,56                       ; add           $0x38,%rsp
7270  DB  255,224                             ; jmpq          *%rax
7271  DB  196,1,123,16,4,81                   ; vmovsd        (%r9,%r10,2),%xmm8
7272  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
7273  DB  73,131,248,1                        ; cmp           $0x1,%r8
7274  DB  116,85                              ; je            2499 <_sk_load_tables_u16_be_avx+0x2dc>
7275  DB  196,1,57,22,68,81,8                 ; vmovhpd       0x8(%r9,%r10,2),%xmm8,%xmm8
7276  DB  73,131,248,3                        ; cmp           $0x3,%r8
7277  DB  114,72                              ; jb            2499 <_sk_load_tables_u16_be_avx+0x2dc>
7278  DB  196,129,123,16,84,81,16             ; vmovsd        0x10(%r9,%r10,2),%xmm2
7279  DB  73,131,248,3                        ; cmp           $0x3,%r8
7280  DB  116,72                              ; je            24a6 <_sk_load_tables_u16_be_avx+0x2e9>
7281  DB  196,129,105,22,84,81,24             ; vmovhpd       0x18(%r9,%r10,2),%xmm2,%xmm2
7282  DB  73,131,248,5                        ; cmp           $0x5,%r8
7283  DB  114,59                              ; jb            24a6 <_sk_load_tables_u16_be_avx+0x2e9>
7284  DB  196,129,123,16,92,81,32             ; vmovsd        0x20(%r9,%r10,2),%xmm3
7285  DB  73,131,248,5                        ; cmp           $0x5,%r8
7286  DB  15,132,123,253,255,255              ; je            21f7 <_sk_load_tables_u16_be_avx+0x3a>
7287  DB  196,129,97,22,92,81,40              ; vmovhpd       0x28(%r9,%r10,2),%xmm3,%xmm3
7288  DB  73,131,248,7                        ; cmp           $0x7,%r8
7289  DB  15,130,106,253,255,255              ; jb            21f7 <_sk_load_tables_u16_be_avx+0x3a>
7290  DB  196,1,122,126,76,81,48              ; vmovq         0x30(%r9,%r10,2),%xmm9
7291  DB  233,94,253,255,255                  ; jmpq          21f7 <_sk_load_tables_u16_be_avx+0x3a>
7292  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
7293  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
7294  DB  233,81,253,255,255                  ; jmpq          21f7 <_sk_load_tables_u16_be_avx+0x3a>
7295  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
7296  DB  233,72,253,255,255                  ; jmpq          21f7 <_sk_load_tables_u16_be_avx+0x3a>
7297
7298PUBLIC _sk_load_tables_rgb_u16_be_avx
7299_sk_load_tables_rgb_u16_be_avx LABEL PROC
7300  DB  72,131,236,88                       ; sub           $0x58,%rsp
7301  DB  72,173                              ; lods          %ds:(%rsi),%rax
7302  DB  76,139,8                            ; mov           (%rax),%r9
7303  DB  76,141,20,82                        ; lea           (%rdx,%rdx,2),%r10
7304  DB  77,133,192                          ; test          %r8,%r8
7305  DB  197,252,17,124,36,32                ; vmovups       %ymm7,0x20(%rsp)
7306  DB  197,252,17,52,36                    ; vmovups       %ymm6,(%rsp)
7307  DB  15,133,74,2,0,0                     ; jne           271a <_sk_load_tables_rgb_u16_be_avx+0x26b>
7308  DB  196,129,122,111,4,81                ; vmovdqu       (%r9,%r10,2),%xmm0
7309  DB  196,129,122,111,84,81,12            ; vmovdqu       0xc(%r9,%r10,2),%xmm2
7310  DB  196,129,122,111,76,81,24            ; vmovdqu       0x18(%r9,%r10,2),%xmm1
7311  DB  196,129,122,111,92,81,32            ; vmovdqu       0x20(%r9,%r10,2),%xmm3
7312  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
7313  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
7314  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
7315  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
7316  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
7317  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
7318  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
7319  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
7320  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
7321  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
7322  DB  197,249,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm0
7323  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
7324  DB  197,241,105,203                     ; vpunpckhwd    %xmm3,%xmm1,%xmm1
7325  DB  197,185,108,218                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm3
7326  DB  197,57,109,218                      ; vpunpckhqdq   %xmm2,%xmm8,%xmm11
7327  DB  197,121,108,193                     ; vpunpcklqdq   %xmm1,%xmm0,%xmm8
7328  DB  197,121,111,13,118,69,0,0           ; vmovdqa       0x4576(%rip),%xmm9        # 6ab0 <_sk_callback_avx+0x5ac>
7329  DB  196,193,97,219,193                  ; vpand         %xmm9,%xmm3,%xmm0
7330  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
7331  DB  196,193,121,105,202                 ; vpunpckhwd    %xmm10,%xmm0,%xmm1
7332  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7333  DB  69,137,202                          ; mov           %r9d,%r10d
7334  DB  76,139,88,8                         ; mov           0x8(%rax),%r11
7335  DB  196,129,122,16,20,147               ; vmovss        (%r11,%r10,4),%xmm2
7336  DB  196,195,249,22,202,1                ; vpextrq       $0x1,%xmm1,%r10
7337  DB  73,193,233,32                       ; shr           $0x20,%r9
7338  DB  196,3,105,33,36,139,16              ; vinsertps     $0x10,(%r11,%r9,4),%xmm2,%xmm12
7339  DB  69,137,209                          ; mov           %r10d,%r9d
7340  DB  73,193,234,32                       ; shr           $0x20,%r10
7341  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
7342  DB  196,129,122,16,20,139               ; vmovss        (%r11,%r9,4),%xmm2
7343  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7344  DB  196,129,122,16,12,147               ; vmovss        (%r11,%r10,4),%xmm1
7345  DB  69,137,202                          ; mov           %r9d,%r10d
7346  DB  73,193,233,30                       ; shr           $0x1e,%r9
7347  DB  196,129,122,16,28,147               ; vmovss        (%r11,%r10,4),%xmm3
7348  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
7349  DB  196,131,97,33,28,11,16              ; vinsertps     $0x10,(%r11,%r9,1),%xmm3,%xmm3
7350  DB  69,137,209                          ; mov           %r10d,%r9d
7351  DB  73,193,234,30                       ; shr           $0x1e,%r10
7352  DB  196,129,122,16,4,139                ; vmovss        (%r11,%r9,4),%xmm0
7353  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
7354  DB  196,227,25,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm12,%xmm2
7355  DB  196,227,105,33,201,48               ; vinsertps     $0x30,%xmm1,%xmm2,%xmm1
7356  DB  196,129,122,16,20,19                ; vmovss        (%r11,%r10,1),%xmm2
7357  DB  196,65,33,219,225                   ; vpand         %xmm9,%xmm11,%xmm12
7358  DB  196,65,25,105,218                   ; vpunpckhwd    %xmm10,%xmm12,%xmm11
7359  DB  196,65,249,126,218                  ; vmovq         %xmm11,%r10
7360  DB  69,137,211                          ; mov           %r10d,%r11d
7361  DB  196,1,122,16,44,153                 ; vmovss        (%r9,%r11,4),%xmm13
7362  DB  196,67,249,22,219,1                 ; vpextrq       $0x1,%xmm11,%r11
7363  DB  73,193,234,32                       ; shr           $0x20,%r10
7364  DB  196,3,17,33,28,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm13,%xmm11
7365  DB  69,137,218                          ; mov           %r11d,%r10d
7366  DB  73,193,235,32                       ; shr           $0x20,%r11
7367  DB  196,66,121,51,244                   ; vpmovzxwd     %xmm12,%xmm14
7368  DB  196,1,122,16,44,145                 ; vmovss        (%r9,%r10,4),%xmm13
7369  DB  196,65,249,126,242                  ; vmovq         %xmm14,%r10
7370  DB  196,1,122,16,36,153                 ; vmovss        (%r9,%r11,4),%xmm12
7371  DB  69,137,211                          ; mov           %r10d,%r11d
7372  DB  73,193,234,30                       ; shr           $0x1e,%r10
7373  DB  196,1,122,16,60,153                 ; vmovss        (%r9,%r11,4),%xmm15
7374  DB  196,67,249,22,243,1                 ; vpextrq       $0x1,%xmm14,%r11
7375  DB  196,3,1,33,52,17,16                 ; vinsertps     $0x10,(%r9,%r10,1),%xmm15,%xmm14
7376  DB  69,137,218                          ; mov           %r11d,%r10d
7377  DB  196,1,122,16,60,145                 ; vmovss        (%r9,%r10,4),%xmm15
7378  DB  196,227,97,33,192,32                ; vinsertps     $0x20,%xmm0,%xmm3,%xmm0
7379  DB  196,227,121,33,194,48               ; vinsertps     $0x30,%xmm2,%xmm0,%xmm0
7380  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
7381  DB  73,193,235,30                       ; shr           $0x1e,%r11
7382  DB  196,129,122,16,52,25                ; vmovss        (%r9,%r11,1),%xmm6
7383  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
7384  DB  196,65,57,219,193                   ; vpand         %xmm9,%xmm8,%xmm8
7385  DB  196,193,57,105,210                  ; vpunpckhwd    %xmm10,%xmm8,%xmm2
7386  DB  196,193,249,126,209                 ; vmovq         %xmm2,%r9
7387  DB  68,137,200                          ; mov           %r9d,%eax
7388  DB  196,193,122,16,12,130               ; vmovss        (%r10,%rax,4),%xmm1
7389  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7390  DB  73,193,233,32                       ; shr           $0x20,%r9
7391  DB  196,3,113,33,12,138,16              ; vinsertps     $0x10,(%r10,%r9,4),%xmm1,%xmm9
7392  DB  65,137,193                          ; mov           %eax,%r9d
7393  DB  72,193,232,32                       ; shr           $0x20,%rax
7394  DB  196,194,121,51,200                  ; vpmovzxwd     %xmm8,%xmm1
7395  DB  196,1,122,16,4,138                  ; vmovss        (%r10,%r9,4),%xmm8
7396  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7397  DB  196,65,122,16,20,130                ; vmovss        (%r10,%rax,4),%xmm10
7398  DB  68,137,200                          ; mov           %r9d,%eax
7399  DB  73,193,233,30                       ; shr           $0x1e,%r9
7400  DB  196,193,122,16,20,130               ; vmovss        (%r10,%rax,4),%xmm2
7401  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7402  DB  196,131,105,33,20,10,16             ; vinsertps     $0x10,(%r10,%r9,1),%xmm2,%xmm2
7403  DB  68,137,216                          ; mov           %r11d,%eax
7404  DB  196,193,122,16,60,130               ; vmovss        (%r10,%rax,4),%xmm7
7405  DB  196,195,33,33,205,32                ; vinsertps     $0x20,%xmm13,%xmm11,%xmm1
7406  DB  73,193,235,30                       ; shr           $0x1e,%r11
7407  DB  196,1,122,16,28,26                  ; vmovss        (%r10,%r11,1),%xmm11
7408  DB  196,195,113,33,204,48               ; vinsertps     $0x30,%xmm12,%xmm1,%xmm1
7409  DB  196,195,9,33,223,32                 ; vinsertps     $0x20,%xmm15,%xmm14,%xmm3
7410  DB  196,227,97,33,222,48                ; vinsertps     $0x30,%xmm6,%xmm3,%xmm3
7411  DB  196,227,101,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm1
7412  DB  196,195,49,33,216,32                ; vinsertps     $0x20,%xmm8,%xmm9,%xmm3
7413  DB  196,195,97,33,218,48                ; vinsertps     $0x30,%xmm10,%xmm3,%xmm3
7414  DB  196,227,105,33,215,32               ; vinsertps     $0x20,%xmm7,%xmm2,%xmm2
7415  DB  196,195,105,33,211,48               ; vinsertps     $0x30,%xmm11,%xmm2,%xmm2
7416  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
7417  DB  72,173                              ; lods          %ds:(%rsi),%rax
7418  DB  196,226,125,24,29,107,64,0,0        ; vbroadcastss  0x406b(%rip),%ymm3        # 6774 <_sk_callback_avx+0x270>
7419  DB  197,252,16,52,36                    ; vmovups       (%rsp),%ymm6
7420  DB  197,252,16,124,36,32                ; vmovups       0x20(%rsp),%ymm7
7421  DB  72,131,196,88                       ; add           $0x58,%rsp
7422  DB  255,224                             ; jmpq          *%rax
7423  DB  196,129,121,110,4,81                ; vmovd         (%r9,%r10,2),%xmm0
7424  DB  196,129,121,196,68,81,4,2           ; vpinsrw       $0x2,0x4(%r9,%r10,2),%xmm0,%xmm0
7425  DB  73,131,248,1                        ; cmp           $0x1,%r8
7426  DB  117,5                               ; jne           2733 <_sk_load_tables_rgb_u16_be_avx+0x284>
7427  DB  233,209,253,255,255                 ; jmpq          2504 <_sk_load_tables_rgb_u16_be_avx+0x55>
7428  DB  196,129,121,110,76,81,6             ; vmovd         0x6(%r9,%r10,2),%xmm1
7429  DB  196,1,113,196,68,81,10,2            ; vpinsrw       $0x2,0xa(%r9,%r10,2),%xmm1,%xmm8
7430  DB  73,131,248,3                        ; cmp           $0x3,%r8
7431  DB  114,26                              ; jb            2762 <_sk_load_tables_rgb_u16_be_avx+0x2b3>
7432  DB  196,129,121,110,76,81,12            ; vmovd         0xc(%r9,%r10,2),%xmm1
7433  DB  196,129,113,196,84,81,16,2          ; vpinsrw       $0x2,0x10(%r9,%r10,2),%xmm1,%xmm2
7434  DB  73,131,248,3                        ; cmp           $0x3,%r8
7435  DB  117,10                              ; jne           2767 <_sk_load_tables_rgb_u16_be_avx+0x2b8>
7436  DB  233,162,253,255,255                 ; jmpq          2504 <_sk_load_tables_rgb_u16_be_avx+0x55>
7437  DB  233,157,253,255,255                 ; jmpq          2504 <_sk_load_tables_rgb_u16_be_avx+0x55>
7438  DB  196,129,121,110,76,81,18            ; vmovd         0x12(%r9,%r10,2),%xmm1
7439  DB  196,1,113,196,76,81,22,2            ; vpinsrw       $0x2,0x16(%r9,%r10,2),%xmm1,%xmm9
7440  DB  73,131,248,5                        ; cmp           $0x5,%r8
7441  DB  114,26                              ; jb            2796 <_sk_load_tables_rgb_u16_be_avx+0x2e7>
7442  DB  196,129,121,110,76,81,24            ; vmovd         0x18(%r9,%r10,2),%xmm1
7443  DB  196,129,113,196,76,81,28,2          ; vpinsrw       $0x2,0x1c(%r9,%r10,2),%xmm1,%xmm1
7444  DB  73,131,248,5                        ; cmp           $0x5,%r8
7445  DB  117,10                              ; jne           279b <_sk_load_tables_rgb_u16_be_avx+0x2ec>
7446  DB  233,110,253,255,255                 ; jmpq          2504 <_sk_load_tables_rgb_u16_be_avx+0x55>
7447  DB  233,105,253,255,255                 ; jmpq          2504 <_sk_load_tables_rgb_u16_be_avx+0x55>
7448  DB  196,129,121,110,92,81,30            ; vmovd         0x1e(%r9,%r10,2),%xmm3
7449  DB  196,1,97,196,92,81,34,2             ; vpinsrw       $0x2,0x22(%r9,%r10,2),%xmm3,%xmm11
7450  DB  73,131,248,7                        ; cmp           $0x7,%r8
7451  DB  114,20                              ; jb            27c4 <_sk_load_tables_rgb_u16_be_avx+0x315>
7452  DB  196,129,121,110,92,81,36            ; vmovd         0x24(%r9,%r10,2),%xmm3
7453  DB  196,129,97,196,92,81,40,2           ; vpinsrw       $0x2,0x28(%r9,%r10,2),%xmm3,%xmm3
7454  DB  233,64,253,255,255                  ; jmpq          2504 <_sk_load_tables_rgb_u16_be_avx+0x55>
7455  DB  233,59,253,255,255                  ; jmpq          2504 <_sk_load_tables_rgb_u16_be_avx+0x55>
7456
7457PUBLIC _sk_byte_tables_avx
7458_sk_byte_tables_avx LABEL PROC
7459  DB  72,173                              ; lods          %ds:(%rsi),%rax
7460  DB  196,98,125,24,5,164,63,0,0          ; vbroadcastss  0x3fa4(%rip),%ymm8        # 6778 <_sk_callback_avx+0x274>
7461  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
7462  DB  197,125,91,200                      ; vcvtps2dq     %ymm0,%ymm9
7463  DB  196,65,249,126,201                  ; vmovq         %xmm9,%r9
7464  DB  69,137,202                          ; mov           %r9d,%r10d
7465  DB  76,139,24                           ; mov           (%rax),%r11
7466  DB  196,131,121,32,4,19,0               ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm0
7467  DB  196,67,249,22,202,1                 ; vpextrq       $0x1,%xmm9,%r10
7468  DB  73,193,233,32                       ; shr           $0x20,%r9
7469  DB  196,3,121,32,20,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm0,%xmm10
7470  DB  69,137,209                          ; mov           %r10d,%r9d
7471  DB  73,193,234,32                       ; shr           $0x20,%r10
7472  DB  196,99,125,25,200,1                 ; vextractf128  $0x1,%ymm9,%xmm0
7473  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
7474  DB  196,67,41,32,201,2                  ; vpinsrb       $0x2,%r9d,%xmm10,%xmm9
7475  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7476  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
7477  DB  196,67,49,32,202,3                  ; vpinsrb       $0x3,%r10d,%xmm9,%xmm9
7478  DB  69,137,202                          ; mov           %r9d,%r10d
7479  DB  196,3,121,32,20,19,0                ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm10
7480  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
7481  DB  73,193,233,32                       ; shr           $0x20,%r9
7482  DB  196,131,41,32,4,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm10,%xmm0
7483  DB  69,137,209                          ; mov           %r10d,%r9d
7484  DB  73,193,234,32                       ; shr           $0x20,%r10
7485  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
7486  DB  196,195,121,32,193,2                ; vpinsrb       $0x2,%r9d,%xmm0,%xmm0
7487  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
7488  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
7489  DB  196,67,121,32,210,3                 ; vpinsrb       $0x3,%r10d,%xmm0,%xmm10
7490  DB  196,193,116,89,192                  ; vmulps        %ymm8,%ymm1,%ymm0
7491  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
7492  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
7493  DB  69,137,211                          ; mov           %r10d,%r11d
7494  DB  196,131,121,32,12,25,0              ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm1
7495  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
7496  DB  73,193,234,32                       ; shr           $0x20,%r10
7497  DB  196,131,113,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm1,%xmm1
7498  DB  69,137,218                          ; mov           %r11d,%r10d
7499  DB  73,193,235,32                       ; shr           $0x20,%r11
7500  DB  196,227,125,25,192,1                ; vextractf128  $0x1,%ymm0,%xmm0
7501  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7502  DB  196,195,113,32,202,2                ; vpinsrb       $0x2,%r10d,%xmm1,%xmm1
7503  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
7504  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
7505  DB  196,67,113,32,227,3                 ; vpinsrb       $0x3,%r11d,%xmm1,%xmm12
7506  DB  69,137,211                          ; mov           %r10d,%r11d
7507  DB  196,131,121,32,12,25,0              ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm1
7508  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
7509  DB  73,193,234,32                       ; shr           $0x20,%r10
7510  DB  196,131,113,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm1,%xmm0
7511  DB  69,137,218                          ; mov           %r11d,%r10d
7512  DB  73,193,235,32                       ; shr           $0x20,%r11
7513  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7514  DB  196,195,121,32,194,2                ; vpinsrb       $0x2,%r10d,%xmm0,%xmm0
7515  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
7516  DB  196,67,121,32,233,3                 ; vpinsrb       $0x3,%r9d,%xmm0,%xmm13
7517  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
7518  DB  196,193,108,89,200                  ; vmulps        %ymm8,%ymm2,%ymm1
7519  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
7520  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
7521  DB  69,137,211                          ; mov           %r10d,%r11d
7522  DB  196,131,121,32,20,25,0              ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm2
7523  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7524  DB  73,193,234,32                       ; shr           $0x20,%r10
7525  DB  196,131,105,32,20,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm2
7526  DB  69,137,218                          ; mov           %r11d,%r10d
7527  DB  73,193,235,32                       ; shr           $0x20,%r11
7528  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
7529  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7530  DB  196,195,105,32,210,2                ; vpinsrb       $0x2,%r10d,%xmm2,%xmm2
7531  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
7532  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
7533  DB  196,67,105,32,219,3                 ; vpinsrb       $0x3,%r11d,%xmm2,%xmm11
7534  DB  69,137,211                          ; mov           %r10d,%r11d
7535  DB  196,131,121,32,20,25,0              ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm2
7536  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7537  DB  73,193,234,32                       ; shr           $0x20,%r10
7538  DB  196,131,105,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm1
7539  DB  69,137,218                          ; mov           %r11d,%r10d
7540  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7541  DB  196,195,113,32,202,2                ; vpinsrb       $0x2,%r10d,%xmm1,%xmm1
7542  DB  73,193,235,32                       ; shr           $0x20,%r11
7543  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
7544  DB  196,67,113,32,241,3                 ; vpinsrb       $0x3,%r9d,%xmm1,%xmm14
7545  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
7546  DB  196,193,100,89,200                  ; vmulps        %ymm8,%ymm3,%ymm1
7547  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
7548  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7549  DB  68,137,200                          ; mov           %r9d,%eax
7550  DB  196,195,121,32,28,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm3
7551  DB  196,227,249,22,200,1                ; vpextrq       $0x1,%xmm1,%rax
7552  DB  73,193,233,32                       ; shr           $0x20,%r9
7553  DB  196,131,97,32,28,10,1               ; vpinsrb       $0x1,(%r10,%r9,1),%xmm3,%xmm3
7554  DB  65,137,193                          ; mov           %eax,%r9d
7555  DB  72,193,232,32                       ; shr           $0x20,%rax
7556  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
7557  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
7558  DB  196,195,97,32,217,2                 ; vpinsrb       $0x2,%r9d,%xmm3,%xmm3
7559  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7560  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
7561  DB  196,99,97,32,192,3                  ; vpinsrb       $0x3,%eax,%xmm3,%xmm8
7562  DB  68,137,200                          ; mov           %r9d,%eax
7563  DB  196,195,121,32,4,2,0                ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm0
7564  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7565  DB  73,193,233,32                       ; shr           $0x20,%r9
7566  DB  196,131,121,32,4,10,1               ; vpinsrb       $0x1,(%r10,%r9,1),%xmm0,%xmm0
7567  DB  68,137,216                          ; mov           %r11d,%eax
7568  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
7569  DB  196,99,121,32,248,2                 ; vpinsrb       $0x2,%eax,%xmm0,%xmm15
7570  DB  73,193,235,32                       ; shr           $0x20,%r11
7571  DB  67,15,182,4,26                      ; movzbl        (%r10,%r11,1),%eax
7572  DB  196,194,121,49,193                  ; vpmovzxbd     %xmm9,%xmm0
7573  DB  196,194,121,49,202                  ; vpmovzxbd     %xmm10,%xmm1
7574  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
7575  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7576  DB  196,194,121,49,204                  ; vpmovzxbd     %xmm12,%xmm1
7577  DB  196,194,121,49,213                  ; vpmovzxbd     %xmm13,%xmm2
7578  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7579  DB  196,98,125,24,13,78,61,0,0          ; vbroadcastss  0x3d4e(%rip),%ymm9        # 677c <_sk_callback_avx+0x278>
7580  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
7581  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7582  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
7583  DB  196,194,121,49,211                  ; vpmovzxbd     %xmm11,%xmm2
7584  DB  196,194,121,49,222                  ; vpmovzxbd     %xmm14,%xmm3
7585  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
7586  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7587  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
7588  DB  196,66,121,49,192                   ; vpmovzxbd     %xmm8,%xmm8
7589  DB  196,227,1,32,216,3                  ; vpinsrb       $0x3,%eax,%xmm15,%xmm3
7590  DB  196,226,121,49,219                  ; vpmovzxbd     %xmm3,%xmm3
7591  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
7592  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7593  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
7594  DB  72,173                              ; lods          %ds:(%rsi),%rax
7595  DB  255,224                             ; jmpq          *%rax
7596
7597PUBLIC _sk_byte_tables_rgb_avx
7598_sk_byte_tables_rgb_avx LABEL PROC
7599  DB  72,173                              ; lods          %ds:(%rsi),%rax
7600  DB  68,139,72,24                        ; mov           0x18(%rax),%r9d
7601  DB  65,255,201                          ; dec           %r9d
7602  DB  196,65,121,110,193                  ; vmovd         %r9d,%xmm8
7603  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
7604  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
7605  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
7606  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
7607  DB  197,125,91,200                      ; vcvtps2dq     %ymm0,%ymm9
7608  DB  196,65,249,126,201                  ; vmovq         %xmm9,%r9
7609  DB  69,137,202                          ; mov           %r9d,%r10d
7610  DB  76,139,24                           ; mov           (%rax),%r11
7611  DB  196,131,121,32,4,19,0               ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm0
7612  DB  196,67,249,22,202,1                 ; vpextrq       $0x1,%xmm9,%r10
7613  DB  73,193,233,32                       ; shr           $0x20,%r9
7614  DB  196,3,121,32,20,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm0,%xmm10
7615  DB  69,137,209                          ; mov           %r10d,%r9d
7616  DB  73,193,234,32                       ; shr           $0x20,%r10
7617  DB  196,99,125,25,200,1                 ; vextractf128  $0x1,%ymm9,%xmm0
7618  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
7619  DB  196,67,41,32,201,2                  ; vpinsrb       $0x2,%r9d,%xmm10,%xmm9
7620  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7621  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
7622  DB  196,67,49,32,202,3                  ; vpinsrb       $0x3,%r10d,%xmm9,%xmm9
7623  DB  69,137,202                          ; mov           %r9d,%r10d
7624  DB  196,3,121,32,20,19,0                ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm10
7625  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
7626  DB  73,193,233,32                       ; shr           $0x20,%r9
7627  DB  196,131,41,32,4,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm10,%xmm0
7628  DB  69,137,209                          ; mov           %r10d,%r9d
7629  DB  73,193,234,32                       ; shr           $0x20,%r10
7630  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
7631  DB  196,195,121,32,193,2                ; vpinsrb       $0x2,%r9d,%xmm0,%xmm0
7632  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
7633  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
7634  DB  196,67,121,32,218,3                 ; vpinsrb       $0x3,%r10d,%xmm0,%xmm11
7635  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
7636  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
7637  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
7638  DB  69,137,211                          ; mov           %r10d,%r11d
7639  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
7640  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7641  DB  73,193,234,32                       ; shr           $0x20,%r10
7642  DB  196,131,121,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm0,%xmm0
7643  DB  69,137,218                          ; mov           %r11d,%r10d
7644  DB  73,193,235,32                       ; shr           $0x20,%r11
7645  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
7646  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7647  DB  196,195,121,32,194,2                ; vpinsrb       $0x2,%r10d,%xmm0,%xmm0
7648  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
7649  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
7650  DB  196,67,121,32,211,3                 ; vpinsrb       $0x3,%r11d,%xmm0,%xmm10
7651  DB  69,137,211                          ; mov           %r10d,%r11d
7652  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
7653  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7654  DB  73,193,234,32                       ; shr           $0x20,%r10
7655  DB  196,131,121,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm0,%xmm0
7656  DB  69,137,218                          ; mov           %r11d,%r10d
7657  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7658  DB  196,195,121,32,194,2                ; vpinsrb       $0x2,%r10d,%xmm0,%xmm0
7659  DB  73,193,235,32                       ; shr           $0x20,%r11
7660  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
7661  DB  196,67,121,32,225,3                 ; vpinsrb       $0x3,%r9d,%xmm0,%xmm12
7662  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
7663  DB  197,188,89,194                      ; vmulps        %ymm2,%ymm8,%ymm0
7664  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
7665  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7666  DB  68,137,200                          ; mov           %r9d,%eax
7667  DB  196,195,121,32,20,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm2
7668  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
7669  DB  73,193,233,32                       ; shr           $0x20,%r9
7670  DB  196,131,105,32,20,10,1              ; vpinsrb       $0x1,(%r10,%r9,1),%xmm2,%xmm2
7671  DB  65,137,193                          ; mov           %eax,%r9d
7672  DB  72,193,232,32                       ; shr           $0x20,%rax
7673  DB  196,227,125,25,192,1                ; vextractf128  $0x1,%ymm0,%xmm0
7674  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
7675  DB  196,195,105,32,209,2                ; vpinsrb       $0x2,%r9d,%xmm2,%xmm2
7676  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7677  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
7678  DB  196,99,105,32,192,3                 ; vpinsrb       $0x3,%eax,%xmm2,%xmm8
7679  DB  68,137,200                          ; mov           %r9d,%eax
7680  DB  196,195,121,32,12,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm1
7681  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
7682  DB  73,193,233,32                       ; shr           $0x20,%r9
7683  DB  196,131,113,32,4,10,1               ; vpinsrb       $0x1,(%r10,%r9,1),%xmm1,%xmm0
7684  DB  68,137,216                          ; mov           %r11d,%eax
7685  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
7686  DB  196,99,121,32,232,2                 ; vpinsrb       $0x2,%eax,%xmm0,%xmm13
7687  DB  73,193,235,32                       ; shr           $0x20,%r11
7688  DB  67,15,182,4,26                      ; movzbl        (%r10,%r11,1),%eax
7689  DB  196,194,121,49,193                  ; vpmovzxbd     %xmm9,%xmm0
7690  DB  196,194,121,49,203                  ; vpmovzxbd     %xmm11,%xmm1
7691  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
7692  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7693  DB  196,98,125,24,13,47,59,0,0          ; vbroadcastss  0x3b2f(%rip),%ymm9        # 6780 <_sk_callback_avx+0x27c>
7694  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
7695  DB  196,194,121,49,202                  ; vpmovzxbd     %xmm10,%xmm1
7696  DB  196,194,121,49,212                  ; vpmovzxbd     %xmm12,%xmm2
7697  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7698  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7699  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
7700  DB  196,66,121,49,192                   ; vpmovzxbd     %xmm8,%xmm8
7701  DB  196,227,17,32,208,3                 ; vpinsrb       $0x3,%eax,%xmm13,%xmm2
7702  DB  196,226,121,49,210                  ; vpmovzxbd     %xmm2,%xmm2
7703  DB  196,227,61,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm8,%ymm2
7704  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7705  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
7706  DB  72,173                              ; lods          %ds:(%rsi),%rax
7707  DB  255,224                             ; jmpq          *%rax
7708
7709PUBLIC _sk_table_r_avx
7710_sk_table_r_avx LABEL PROC
7711  DB  72,173                              ; lods          %ds:(%rsi),%rax
7712  DB  76,139,8                            ; mov           (%rax),%r9
7713  DB  139,64,8                            ; mov           0x8(%rax),%eax
7714  DB  255,200                             ; dec           %eax
7715  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
7716  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
7717  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
7718  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
7719  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
7720  DB  197,125,91,192                      ; vcvtps2dq     %ymm0,%ymm8
7721  DB  196,99,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm0
7722  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
7723  DB  68,137,208                          ; mov           %r10d,%eax
7724  DB  196,65,122,16,12,129                ; vmovss        (%r9,%rax,4),%xmm9
7725  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
7726  DB  73,193,234,32                       ; shr           $0x20,%r10
7727  DB  196,3,49,33,12,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm9,%xmm9
7728  DB  68,137,216                          ; mov           %r11d,%eax
7729  DB  196,65,122,16,20,129                ; vmovss        (%r9,%rax,4),%xmm10
7730  DB  196,65,249,126,194                  ; vmovq         %xmm8,%r10
7731  DB  73,193,235,32                       ; shr           $0x20,%r11
7732  DB  196,1,122,16,28,153                 ; vmovss        (%r9,%r11,4),%xmm11
7733  DB  68,137,208                          ; mov           %r10d,%eax
7734  DB  196,193,122,16,4,129                ; vmovss        (%r9,%rax,4),%xmm0
7735  DB  196,67,249,22,195,1                 ; vpextrq       $0x1,%xmm8,%r11
7736  DB  73,193,234,32                       ; shr           $0x20,%r10
7737  DB  196,3,121,33,4,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm0,%xmm8
7738  DB  68,137,216                          ; mov           %r11d,%eax
7739  DB  196,65,122,16,36,129                ; vmovss        (%r9,%rax,4),%xmm12
7740  DB  73,193,235,32                       ; shr           $0x20,%r11
7741  DB  196,1,122,16,44,153                 ; vmovss        (%r9,%r11,4),%xmm13
7742  DB  196,195,49,33,194,32                ; vinsertps     $0x20,%xmm10,%xmm9,%xmm0
7743  DB  196,67,121,33,203,48                ; vinsertps     $0x30,%xmm11,%xmm0,%xmm9
7744  DB  196,195,57,33,196,32                ; vinsertps     $0x20,%xmm12,%xmm8,%xmm0
7745  DB  196,195,121,33,197,48               ; vinsertps     $0x30,%xmm13,%xmm0,%xmm0
7746  DB  196,195,125,24,193,1                ; vinsertf128   $0x1,%xmm9,%ymm0,%ymm0
7747  DB  72,173                              ; lods          %ds:(%rsi),%rax
7748  DB  255,224                             ; jmpq          *%rax
7749
7750PUBLIC _sk_table_g_avx
7751_sk_table_g_avx LABEL PROC
7752  DB  72,173                              ; lods          %ds:(%rsi),%rax
7753  DB  76,139,8                            ; mov           (%rax),%r9
7754  DB  139,64,8                            ; mov           0x8(%rax),%eax
7755  DB  255,200                             ; dec           %eax
7756  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
7757  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
7758  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
7759  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
7760  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
7761  DB  197,125,91,193                      ; vcvtps2dq     %ymm1,%ymm8
7762  DB  196,99,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm1
7763  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
7764  DB  68,137,208                          ; mov           %r10d,%eax
7765  DB  196,65,122,16,12,129                ; vmovss        (%r9,%rax,4),%xmm9
7766  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7767  DB  73,193,234,32                       ; shr           $0x20,%r10
7768  DB  196,3,49,33,12,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm9,%xmm9
7769  DB  68,137,216                          ; mov           %r11d,%eax
7770  DB  196,65,122,16,20,129                ; vmovss        (%r9,%rax,4),%xmm10
7771  DB  196,65,249,126,194                  ; vmovq         %xmm8,%r10
7772  DB  73,193,235,32                       ; shr           $0x20,%r11
7773  DB  196,1,122,16,28,153                 ; vmovss        (%r9,%r11,4),%xmm11
7774  DB  68,137,208                          ; mov           %r10d,%eax
7775  DB  196,193,122,16,12,129               ; vmovss        (%r9,%rax,4),%xmm1
7776  DB  196,67,249,22,195,1                 ; vpextrq       $0x1,%xmm8,%r11
7777  DB  73,193,234,32                       ; shr           $0x20,%r10
7778  DB  196,3,113,33,4,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm1,%xmm8
7779  DB  68,137,216                          ; mov           %r11d,%eax
7780  DB  196,65,122,16,36,129                ; vmovss        (%r9,%rax,4),%xmm12
7781  DB  73,193,235,32                       ; shr           $0x20,%r11
7782  DB  196,1,122,16,44,153                 ; vmovss        (%r9,%r11,4),%xmm13
7783  DB  196,195,49,33,202,32                ; vinsertps     $0x20,%xmm10,%xmm9,%xmm1
7784  DB  196,67,113,33,203,48                ; vinsertps     $0x30,%xmm11,%xmm1,%xmm9
7785  DB  196,195,57,33,204,32                ; vinsertps     $0x20,%xmm12,%xmm8,%xmm1
7786  DB  196,195,113,33,205,48               ; vinsertps     $0x30,%xmm13,%xmm1,%xmm1
7787  DB  196,195,117,24,201,1                ; vinsertf128   $0x1,%xmm9,%ymm1,%ymm1
7788  DB  72,173                              ; lods          %ds:(%rsi),%rax
7789  DB  255,224                             ; jmpq          *%rax
7790
7791PUBLIC _sk_table_b_avx
7792_sk_table_b_avx LABEL PROC
7793  DB  72,173                              ; lods          %ds:(%rsi),%rax
7794  DB  76,139,8                            ; mov           (%rax),%r9
7795  DB  139,64,8                            ; mov           0x8(%rax),%eax
7796  DB  255,200                             ; dec           %eax
7797  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
7798  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
7799  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
7800  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
7801  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
7802  DB  197,125,91,194                      ; vcvtps2dq     %ymm2,%ymm8
7803  DB  196,99,125,25,194,1                 ; vextractf128  $0x1,%ymm8,%xmm2
7804  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
7805  DB  68,137,208                          ; mov           %r10d,%eax
7806  DB  196,65,122,16,12,129                ; vmovss        (%r9,%rax,4),%xmm9
7807  DB  196,195,249,22,211,1                ; vpextrq       $0x1,%xmm2,%r11
7808  DB  73,193,234,32                       ; shr           $0x20,%r10
7809  DB  196,3,49,33,12,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm9,%xmm9
7810  DB  68,137,216                          ; mov           %r11d,%eax
7811  DB  196,65,122,16,20,129                ; vmovss        (%r9,%rax,4),%xmm10
7812  DB  196,65,249,126,194                  ; vmovq         %xmm8,%r10
7813  DB  73,193,235,32                       ; shr           $0x20,%r11
7814  DB  196,1,122,16,28,153                 ; vmovss        (%r9,%r11,4),%xmm11
7815  DB  68,137,208                          ; mov           %r10d,%eax
7816  DB  196,193,122,16,20,129               ; vmovss        (%r9,%rax,4),%xmm2
7817  DB  196,67,249,22,195,1                 ; vpextrq       $0x1,%xmm8,%r11
7818  DB  73,193,234,32                       ; shr           $0x20,%r10
7819  DB  196,3,105,33,4,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm2,%xmm8
7820  DB  68,137,216                          ; mov           %r11d,%eax
7821  DB  196,65,122,16,36,129                ; vmovss        (%r9,%rax,4),%xmm12
7822  DB  73,193,235,32                       ; shr           $0x20,%r11
7823  DB  196,1,122,16,44,153                 ; vmovss        (%r9,%r11,4),%xmm13
7824  DB  196,195,49,33,210,32                ; vinsertps     $0x20,%xmm10,%xmm9,%xmm2
7825  DB  196,67,105,33,203,48                ; vinsertps     $0x30,%xmm11,%xmm2,%xmm9
7826  DB  196,195,57,33,212,32                ; vinsertps     $0x20,%xmm12,%xmm8,%xmm2
7827  DB  196,195,105,33,213,48               ; vinsertps     $0x30,%xmm13,%xmm2,%xmm2
7828  DB  196,195,109,24,209,1                ; vinsertf128   $0x1,%xmm9,%ymm2,%ymm2
7829  DB  72,173                              ; lods          %ds:(%rsi),%rax
7830  DB  255,224                             ; jmpq          *%rax
7831
7832PUBLIC _sk_table_a_avx
7833_sk_table_a_avx LABEL PROC
7834  DB  72,173                              ; lods          %ds:(%rsi),%rax
7835  DB  76,139,8                            ; mov           (%rax),%r9
7836  DB  139,64,8                            ; mov           0x8(%rax),%eax
7837  DB  255,200                             ; dec           %eax
7838  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
7839  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
7840  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
7841  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
7842  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
7843  DB  197,125,91,195                      ; vcvtps2dq     %ymm3,%ymm8
7844  DB  196,99,125,25,195,1                 ; vextractf128  $0x1,%ymm8,%xmm3
7845  DB  196,193,249,126,218                 ; vmovq         %xmm3,%r10
7846  DB  68,137,208                          ; mov           %r10d,%eax
7847  DB  196,65,122,16,12,129                ; vmovss        (%r9,%rax,4),%xmm9
7848  DB  196,195,249,22,219,1                ; vpextrq       $0x1,%xmm3,%r11
7849  DB  73,193,234,32                       ; shr           $0x20,%r10
7850  DB  196,3,49,33,12,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm9,%xmm9
7851  DB  68,137,216                          ; mov           %r11d,%eax
7852  DB  196,65,122,16,20,129                ; vmovss        (%r9,%rax,4),%xmm10
7853  DB  196,65,249,126,194                  ; vmovq         %xmm8,%r10
7854  DB  73,193,235,32                       ; shr           $0x20,%r11
7855  DB  196,1,122,16,28,153                 ; vmovss        (%r9,%r11,4),%xmm11
7856  DB  68,137,208                          ; mov           %r10d,%eax
7857  DB  196,193,122,16,28,129               ; vmovss        (%r9,%rax,4),%xmm3
7858  DB  196,67,249,22,195,1                 ; vpextrq       $0x1,%xmm8,%r11
7859  DB  73,193,234,32                       ; shr           $0x20,%r10
7860  DB  196,3,97,33,4,145,16                ; vinsertps     $0x10,(%r9,%r10,4),%xmm3,%xmm8
7861  DB  68,137,216                          ; mov           %r11d,%eax
7862  DB  196,65,122,16,36,129                ; vmovss        (%r9,%rax,4),%xmm12
7863  DB  73,193,235,32                       ; shr           $0x20,%r11
7864  DB  196,1,122,16,44,153                 ; vmovss        (%r9,%r11,4),%xmm13
7865  DB  196,195,49,33,218,32                ; vinsertps     $0x20,%xmm10,%xmm9,%xmm3
7866  DB  196,67,97,33,203,48                 ; vinsertps     $0x30,%xmm11,%xmm3,%xmm9
7867  DB  196,195,57,33,220,32                ; vinsertps     $0x20,%xmm12,%xmm8,%xmm3
7868  DB  196,195,97,33,221,48                ; vinsertps     $0x30,%xmm13,%xmm3,%xmm3
7869  DB  196,195,101,24,217,1                ; vinsertf128   $0x1,%xmm9,%ymm3,%ymm3
7870  DB  72,173                              ; lods          %ds:(%rsi),%rax
7871  DB  255,224                             ; jmpq          *%rax
7872
7873PUBLIC _sk_parametric_r_avx
7874_sk_parametric_r_avx LABEL PROC
7875  DB  72,173                              ; lods          %ds:(%rsi),%rax
7876  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
7877  DB  196,65,124,194,192,2                ; vcmpleps      %ymm8,%ymm0,%ymm8
7878  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
7879  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
7880  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
7881  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
7882  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
7883  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
7884  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
7885  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
7886  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
7887  DB  197,124,91,216                      ; vcvtdq2ps     %ymm0,%ymm11
7888  DB  196,98,125,24,37,220,55,0,0         ; vbroadcastss  0x37dc(%rip),%ymm12        # 6784 <_sk_callback_avx+0x280>
7889  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
7890  DB  196,98,125,24,37,210,55,0,0         ; vbroadcastss  0x37d2(%rip),%ymm12        # 6788 <_sk_callback_avx+0x284>
7891  DB  196,193,124,84,196                  ; vandps        %ymm12,%ymm0,%ymm0
7892  DB  196,98,125,24,37,200,55,0,0         ; vbroadcastss  0x37c8(%rip),%ymm12        # 678c <_sk_callback_avx+0x288>
7893  DB  196,193,124,86,196                  ; vorps         %ymm12,%ymm0,%ymm0
7894  DB  196,98,125,24,37,190,55,0,0         ; vbroadcastss  0x37be(%rip),%ymm12        # 6790 <_sk_callback_avx+0x28c>
7895  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
7896  DB  196,98,125,24,37,180,55,0,0         ; vbroadcastss  0x37b4(%rip),%ymm12        # 6794 <_sk_callback_avx+0x290>
7897  DB  196,65,124,89,228                   ; vmulps        %ymm12,%ymm0,%ymm12
7898  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
7899  DB  196,98,125,24,37,165,55,0,0         ; vbroadcastss  0x37a5(%rip),%ymm12        # 6798 <_sk_callback_avx+0x294>
7900  DB  196,193,124,88,196                  ; vaddps        %ymm12,%ymm0,%ymm0
7901  DB  196,98,125,24,37,155,55,0,0         ; vbroadcastss  0x379b(%rip),%ymm12        # 679c <_sk_callback_avx+0x298>
7902  DB  197,156,94,192                      ; vdivps        %ymm0,%ymm12,%ymm0
7903  DB  197,164,92,192                      ; vsubps        %ymm0,%ymm11,%ymm0
7904  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
7905  DB  196,99,125,8,208,1                  ; vroundps      $0x1,%ymm0,%ymm10
7906  DB  196,65,124,92,210                   ; vsubps        %ymm10,%ymm0,%ymm10
7907  DB  196,98,125,24,29,127,55,0,0         ; vbroadcastss  0x377f(%rip),%ymm11        # 67a0 <_sk_callback_avx+0x29c>
7908  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
7909  DB  196,98,125,24,29,117,55,0,0         ; vbroadcastss  0x3775(%rip),%ymm11        # 67a4 <_sk_callback_avx+0x2a0>
7910  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
7911  DB  196,193,124,92,195                  ; vsubps        %ymm11,%ymm0,%ymm0
7912  DB  196,98,125,24,29,102,55,0,0         ; vbroadcastss  0x3766(%rip),%ymm11        # 67a8 <_sk_callback_avx+0x2a4>
7913  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
7914  DB  196,98,125,24,29,92,55,0,0          ; vbroadcastss  0x375c(%rip),%ymm11        # 67ac <_sk_callback_avx+0x2a8>
7915  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
7916  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
7917  DB  196,98,125,24,21,77,55,0,0          ; vbroadcastss  0x374d(%rip),%ymm10        # 67b0 <_sk_callback_avx+0x2ac>
7918  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
7919  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
7920  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
7921  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
7922  DB  196,195,125,74,193,128              ; vblendvps     %ymm8,%ymm9,%ymm0,%ymm0
7923  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
7924  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
7925  DB  196,98,125,24,5,36,55,0,0           ; vbroadcastss  0x3724(%rip),%ymm8        # 67b4 <_sk_callback_avx+0x2b0>
7926  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
7927  DB  72,173                              ; lods          %ds:(%rsi),%rax
7928  DB  255,224                             ; jmpq          *%rax
7929
7930PUBLIC _sk_parametric_g_avx
7931_sk_parametric_g_avx LABEL PROC
7932  DB  72,173                              ; lods          %ds:(%rsi),%rax
7933  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
7934  DB  196,65,116,194,192,2                ; vcmpleps      %ymm8,%ymm1,%ymm8
7935  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
7936  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
7937  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
7938  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
7939  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
7940  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
7941  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
7942  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
7943  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
7944  DB  197,124,91,217                      ; vcvtdq2ps     %ymm1,%ymm11
7945  DB  196,98,125,24,37,213,54,0,0         ; vbroadcastss  0x36d5(%rip),%ymm12        # 67b8 <_sk_callback_avx+0x2b4>
7946  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
7947  DB  196,98,125,24,37,203,54,0,0         ; vbroadcastss  0x36cb(%rip),%ymm12        # 67bc <_sk_callback_avx+0x2b8>
7948  DB  196,193,116,84,204                  ; vandps        %ymm12,%ymm1,%ymm1
7949  DB  196,98,125,24,37,193,54,0,0         ; vbroadcastss  0x36c1(%rip),%ymm12        # 67c0 <_sk_callback_avx+0x2bc>
7950  DB  196,193,116,86,204                  ; vorps         %ymm12,%ymm1,%ymm1
7951  DB  196,98,125,24,37,183,54,0,0         ; vbroadcastss  0x36b7(%rip),%ymm12        # 67c4 <_sk_callback_avx+0x2c0>
7952  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
7953  DB  196,98,125,24,37,173,54,0,0         ; vbroadcastss  0x36ad(%rip),%ymm12        # 67c8 <_sk_callback_avx+0x2c4>
7954  DB  196,65,116,89,228                   ; vmulps        %ymm12,%ymm1,%ymm12
7955  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
7956  DB  196,98,125,24,37,158,54,0,0         ; vbroadcastss  0x369e(%rip),%ymm12        # 67cc <_sk_callback_avx+0x2c8>
7957  DB  196,193,116,88,204                  ; vaddps        %ymm12,%ymm1,%ymm1
7958  DB  196,98,125,24,37,148,54,0,0         ; vbroadcastss  0x3694(%rip),%ymm12        # 67d0 <_sk_callback_avx+0x2cc>
7959  DB  197,156,94,201                      ; vdivps        %ymm1,%ymm12,%ymm1
7960  DB  197,164,92,201                      ; vsubps        %ymm1,%ymm11,%ymm1
7961  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
7962  DB  196,99,125,8,209,1                  ; vroundps      $0x1,%ymm1,%ymm10
7963  DB  196,65,116,92,210                   ; vsubps        %ymm10,%ymm1,%ymm10
7964  DB  196,98,125,24,29,120,54,0,0         ; vbroadcastss  0x3678(%rip),%ymm11        # 67d4 <_sk_callback_avx+0x2d0>
7965  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
7966  DB  196,98,125,24,29,110,54,0,0         ; vbroadcastss  0x366e(%rip),%ymm11        # 67d8 <_sk_callback_avx+0x2d4>
7967  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
7968  DB  196,193,116,92,203                  ; vsubps        %ymm11,%ymm1,%ymm1
7969  DB  196,98,125,24,29,95,54,0,0          ; vbroadcastss  0x365f(%rip),%ymm11        # 67dc <_sk_callback_avx+0x2d8>
7970  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
7971  DB  196,98,125,24,29,85,54,0,0          ; vbroadcastss  0x3655(%rip),%ymm11        # 67e0 <_sk_callback_avx+0x2dc>
7972  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
7973  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
7974  DB  196,98,125,24,21,70,54,0,0          ; vbroadcastss  0x3646(%rip),%ymm10        # 67e4 <_sk_callback_avx+0x2e0>
7975  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
7976  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
7977  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
7978  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
7979  DB  196,195,117,74,201,128              ; vblendvps     %ymm8,%ymm9,%ymm1,%ymm1
7980  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
7981  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
7982  DB  196,98,125,24,5,29,54,0,0           ; vbroadcastss  0x361d(%rip),%ymm8        # 67e8 <_sk_callback_avx+0x2e4>
7983  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
7984  DB  72,173                              ; lods          %ds:(%rsi),%rax
7985  DB  255,224                             ; jmpq          *%rax
7986
7987PUBLIC _sk_parametric_b_avx
7988_sk_parametric_b_avx LABEL PROC
7989  DB  72,173                              ; lods          %ds:(%rsi),%rax
7990  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
7991  DB  196,65,108,194,192,2                ; vcmpleps      %ymm8,%ymm2,%ymm8
7992  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
7993  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
7994  DB  197,52,89,202                       ; vmulps        %ymm2,%ymm9,%ymm9
7995  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
7996  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
7997  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
7998  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
7999  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
8000  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
8001  DB  197,124,91,218                      ; vcvtdq2ps     %ymm2,%ymm11
8002  DB  196,98,125,24,37,206,53,0,0         ; vbroadcastss  0x35ce(%rip),%ymm12        # 67ec <_sk_callback_avx+0x2e8>
8003  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
8004  DB  196,98,125,24,37,196,53,0,0         ; vbroadcastss  0x35c4(%rip),%ymm12        # 67f0 <_sk_callback_avx+0x2ec>
8005  DB  196,193,108,84,212                  ; vandps        %ymm12,%ymm2,%ymm2
8006  DB  196,98,125,24,37,186,53,0,0         ; vbroadcastss  0x35ba(%rip),%ymm12        # 67f4 <_sk_callback_avx+0x2f0>
8007  DB  196,193,108,86,212                  ; vorps         %ymm12,%ymm2,%ymm2
8008  DB  196,98,125,24,37,176,53,0,0         ; vbroadcastss  0x35b0(%rip),%ymm12        # 67f8 <_sk_callback_avx+0x2f4>
8009  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
8010  DB  196,98,125,24,37,166,53,0,0         ; vbroadcastss  0x35a6(%rip),%ymm12        # 67fc <_sk_callback_avx+0x2f8>
8011  DB  196,65,108,89,228                   ; vmulps        %ymm12,%ymm2,%ymm12
8012  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
8013  DB  196,98,125,24,37,151,53,0,0         ; vbroadcastss  0x3597(%rip),%ymm12        # 6800 <_sk_callback_avx+0x2fc>
8014  DB  196,193,108,88,212                  ; vaddps        %ymm12,%ymm2,%ymm2
8015  DB  196,98,125,24,37,141,53,0,0         ; vbroadcastss  0x358d(%rip),%ymm12        # 6804 <_sk_callback_avx+0x300>
8016  DB  197,156,94,210                      ; vdivps        %ymm2,%ymm12,%ymm2
8017  DB  197,164,92,210                      ; vsubps        %ymm2,%ymm11,%ymm2
8018  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
8019  DB  196,99,125,8,210,1                  ; vroundps      $0x1,%ymm2,%ymm10
8020  DB  196,65,108,92,210                   ; vsubps        %ymm10,%ymm2,%ymm10
8021  DB  196,98,125,24,29,113,53,0,0         ; vbroadcastss  0x3571(%rip),%ymm11        # 6808 <_sk_callback_avx+0x304>
8022  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
8023  DB  196,98,125,24,29,103,53,0,0         ; vbroadcastss  0x3567(%rip),%ymm11        # 680c <_sk_callback_avx+0x308>
8024  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
8025  DB  196,193,108,92,211                  ; vsubps        %ymm11,%ymm2,%ymm2
8026  DB  196,98,125,24,29,88,53,0,0          ; vbroadcastss  0x3558(%rip),%ymm11        # 6810 <_sk_callback_avx+0x30c>
8027  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
8028  DB  196,98,125,24,29,78,53,0,0          ; vbroadcastss  0x354e(%rip),%ymm11        # 6814 <_sk_callback_avx+0x310>
8029  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
8030  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
8031  DB  196,98,125,24,21,63,53,0,0          ; vbroadcastss  0x353f(%rip),%ymm10        # 6818 <_sk_callback_avx+0x314>
8032  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
8033  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
8034  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
8035  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
8036  DB  196,195,109,74,209,128              ; vblendvps     %ymm8,%ymm9,%ymm2,%ymm2
8037  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8038  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
8039  DB  196,98,125,24,5,22,53,0,0           ; vbroadcastss  0x3516(%rip),%ymm8        # 681c <_sk_callback_avx+0x318>
8040  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
8041  DB  72,173                              ; lods          %ds:(%rsi),%rax
8042  DB  255,224                             ; jmpq          *%rax
8043
8044PUBLIC _sk_parametric_a_avx
8045_sk_parametric_a_avx LABEL PROC
8046  DB  72,173                              ; lods          %ds:(%rsi),%rax
8047  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
8048  DB  196,65,100,194,192,2                ; vcmpleps      %ymm8,%ymm3,%ymm8
8049  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
8050  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
8051  DB  197,52,89,203                       ; vmulps        %ymm3,%ymm9,%ymm9
8052  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8053  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
8054  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
8055  DB  197,172,89,219                      ; vmulps        %ymm3,%ymm10,%ymm3
8056  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
8057  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
8058  DB  197,124,91,219                      ; vcvtdq2ps     %ymm3,%ymm11
8059  DB  196,98,125,24,37,199,52,0,0         ; vbroadcastss  0x34c7(%rip),%ymm12        # 6820 <_sk_callback_avx+0x31c>
8060  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
8061  DB  196,98,125,24,37,189,52,0,0         ; vbroadcastss  0x34bd(%rip),%ymm12        # 6824 <_sk_callback_avx+0x320>
8062  DB  196,193,100,84,220                  ; vandps        %ymm12,%ymm3,%ymm3
8063  DB  196,98,125,24,37,179,52,0,0         ; vbroadcastss  0x34b3(%rip),%ymm12        # 6828 <_sk_callback_avx+0x324>
8064  DB  196,193,100,86,220                  ; vorps         %ymm12,%ymm3,%ymm3
8065  DB  196,98,125,24,37,169,52,0,0         ; vbroadcastss  0x34a9(%rip),%ymm12        # 682c <_sk_callback_avx+0x328>
8066  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
8067  DB  196,98,125,24,37,159,52,0,0         ; vbroadcastss  0x349f(%rip),%ymm12        # 6830 <_sk_callback_avx+0x32c>
8068  DB  196,65,100,89,228                   ; vmulps        %ymm12,%ymm3,%ymm12
8069  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
8070  DB  196,98,125,24,37,144,52,0,0         ; vbroadcastss  0x3490(%rip),%ymm12        # 6834 <_sk_callback_avx+0x330>
8071  DB  196,193,100,88,220                  ; vaddps        %ymm12,%ymm3,%ymm3
8072  DB  196,98,125,24,37,134,52,0,0         ; vbroadcastss  0x3486(%rip),%ymm12        # 6838 <_sk_callback_avx+0x334>
8073  DB  197,156,94,219                      ; vdivps        %ymm3,%ymm12,%ymm3
8074  DB  197,164,92,219                      ; vsubps        %ymm3,%ymm11,%ymm3
8075  DB  197,172,89,219                      ; vmulps        %ymm3,%ymm10,%ymm3
8076  DB  196,99,125,8,211,1                  ; vroundps      $0x1,%ymm3,%ymm10
8077  DB  196,65,100,92,210                   ; vsubps        %ymm10,%ymm3,%ymm10
8078  DB  196,98,125,24,29,106,52,0,0         ; vbroadcastss  0x346a(%rip),%ymm11        # 683c <_sk_callback_avx+0x338>
8079  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
8080  DB  196,98,125,24,29,96,52,0,0          ; vbroadcastss  0x3460(%rip),%ymm11        # 6840 <_sk_callback_avx+0x33c>
8081  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
8082  DB  196,193,100,92,219                  ; vsubps        %ymm11,%ymm3,%ymm3
8083  DB  196,98,125,24,29,81,52,0,0          ; vbroadcastss  0x3451(%rip),%ymm11        # 6844 <_sk_callback_avx+0x340>
8084  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
8085  DB  196,98,125,24,29,71,52,0,0          ; vbroadcastss  0x3447(%rip),%ymm11        # 6848 <_sk_callback_avx+0x344>
8086  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
8087  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
8088  DB  196,98,125,24,21,56,52,0,0          ; vbroadcastss  0x3438(%rip),%ymm10        # 684c <_sk_callback_avx+0x348>
8089  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
8090  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
8091  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
8092  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
8093  DB  196,195,101,74,217,128              ; vblendvps     %ymm8,%ymm9,%ymm3,%ymm3
8094  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8095  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
8096  DB  196,98,125,24,5,15,52,0,0           ; vbroadcastss  0x340f(%rip),%ymm8        # 6850 <_sk_callback_avx+0x34c>
8097  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
8098  DB  72,173                              ; lods          %ds:(%rsi),%rax
8099  DB  255,224                             ; jmpq          *%rax
8100
8101PUBLIC _sk_lab_to_xyz_avx
8102_sk_lab_to_xyz_avx LABEL PROC
8103  DB  196,98,125,24,5,1,52,0,0            ; vbroadcastss  0x3401(%rip),%ymm8        # 6854 <_sk_callback_avx+0x350>
8104  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
8105  DB  196,98,125,24,5,247,51,0,0          ; vbroadcastss  0x33f7(%rip),%ymm8        # 6858 <_sk_callback_avx+0x354>
8106  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
8107  DB  196,98,125,24,13,237,51,0,0         ; vbroadcastss  0x33ed(%rip),%ymm9        # 685c <_sk_callback_avx+0x358>
8108  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
8109  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
8110  DB  196,193,108,88,209                  ; vaddps        %ymm9,%ymm2,%ymm2
8111  DB  196,98,125,24,5,217,51,0,0          ; vbroadcastss  0x33d9(%rip),%ymm8        # 6860 <_sk_callback_avx+0x35c>
8112  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
8113  DB  196,98,125,24,5,207,51,0,0          ; vbroadcastss  0x33cf(%rip),%ymm8        # 6864 <_sk_callback_avx+0x360>
8114  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
8115  DB  196,98,125,24,5,197,51,0,0          ; vbroadcastss  0x33c5(%rip),%ymm8        # 6868 <_sk_callback_avx+0x364>
8116  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
8117  DB  197,252,88,201                      ; vaddps        %ymm1,%ymm0,%ymm1
8118  DB  196,98,125,24,5,183,51,0,0          ; vbroadcastss  0x33b7(%rip),%ymm8        # 686c <_sk_callback_avx+0x368>
8119  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
8120  DB  197,252,92,210                      ; vsubps        %ymm2,%ymm0,%ymm2
8121  DB  197,116,89,193                      ; vmulps        %ymm1,%ymm1,%ymm8
8122  DB  196,65,116,89,192                   ; vmulps        %ymm8,%ymm1,%ymm8
8123  DB  196,98,125,24,13,160,51,0,0         ; vbroadcastss  0x33a0(%rip),%ymm9        # 6870 <_sk_callback_avx+0x36c>
8124  DB  196,65,52,194,208,1                 ; vcmpltps      %ymm8,%ymm9,%ymm10
8125  DB  196,98,125,24,29,149,51,0,0         ; vbroadcastss  0x3395(%rip),%ymm11        # 6874 <_sk_callback_avx+0x370>
8126  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
8127  DB  196,98,125,24,37,139,51,0,0         ; vbroadcastss  0x338b(%rip),%ymm12        # 6878 <_sk_callback_avx+0x374>
8128  DB  196,193,116,89,204                  ; vmulps        %ymm12,%ymm1,%ymm1
8129  DB  196,67,117,74,192,160               ; vblendvps     %ymm10,%ymm8,%ymm1,%ymm8
8130  DB  197,252,89,200                      ; vmulps        %ymm0,%ymm0,%ymm1
8131  DB  197,252,89,201                      ; vmulps        %ymm1,%ymm0,%ymm1
8132  DB  197,52,194,209,1                    ; vcmpltps      %ymm1,%ymm9,%ymm10
8133  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
8134  DB  196,193,124,89,196                  ; vmulps        %ymm12,%ymm0,%ymm0
8135  DB  196,227,125,74,201,160              ; vblendvps     %ymm10,%ymm1,%ymm0,%ymm1
8136  DB  197,236,89,194                      ; vmulps        %ymm2,%ymm2,%ymm0
8137  DB  197,236,89,192                      ; vmulps        %ymm0,%ymm2,%ymm0
8138  DB  197,52,194,200,1                    ; vcmpltps      %ymm0,%ymm9,%ymm9
8139  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
8140  DB  196,193,108,89,212                  ; vmulps        %ymm12,%ymm2,%ymm2
8141  DB  196,227,109,74,208,144              ; vblendvps     %ymm9,%ymm0,%ymm2,%ymm2
8142  DB  196,226,125,24,5,65,51,0,0          ; vbroadcastss  0x3341(%rip),%ymm0        # 687c <_sk_callback_avx+0x378>
8143  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
8144  DB  196,98,125,24,5,56,51,0,0           ; vbroadcastss  0x3338(%rip),%ymm8        # 6880 <_sk_callback_avx+0x37c>
8145  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
8146  DB  72,173                              ; lods          %ds:(%rsi),%rax
8147  DB  255,224                             ; jmpq          *%rax
8148
8149PUBLIC _sk_load_a8_avx
8150_sk_load_a8_avx LABEL PROC
8151  DB  73,137,201                          ; mov           %rcx,%r9
8152  DB  72,173                              ; lods          %ds:(%rsi),%rax
8153  DB  72,139,0                            ; mov           (%rax),%rax
8154  DB  72,1,208                            ; add           %rdx,%rax
8155  DB  77,133,192                          ; test          %r8,%r8
8156  DB  117,62                              ; jne           359f <_sk_load_a8_avx+0x4e>
8157  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
8158  DB  196,226,121,49,200                  ; vpmovzxbd     %xmm0,%xmm1
8159  DB  196,227,121,4,192,229               ; vpermilps     $0xe5,%xmm0,%xmm0
8160  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
8161  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
8162  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8163  DB  196,226,125,24,13,252,50,0,0        ; vbroadcastss  0x32fc(%rip),%ymm1        # 6884 <_sk_callback_avx+0x380>
8164  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
8165  DB  72,173                              ; lods          %ds:(%rsi),%rax
8166  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
8167  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
8168  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
8169  DB  76,137,201                          ; mov           %r9,%rcx
8170  DB  255,224                             ; jmpq          *%rax
8171  DB  83                                  ; push          %rbx
8172  DB  49,201                              ; xor           %ecx,%ecx
8173  DB  77,137,195                          ; mov           %r8,%r11
8174  DB  69,49,210                           ; xor           %r10d,%r10d
8175  DB  15,182,24                           ; movzbl        (%rax),%ebx
8176  DB  72,255,192                          ; inc           %rax
8177  DB  72,211,227                          ; shl           %cl,%rbx
8178  DB  73,9,218                            ; or            %rbx,%r10
8179  DB  72,131,193,8                        ; add           $0x8,%rcx
8180  DB  73,255,203                          ; dec           %r11
8181  DB  117,235                             ; jne           35a8 <_sk_load_a8_avx+0x57>
8182  DB  196,193,249,110,194                 ; vmovq         %r10,%xmm0
8183  DB  91                                  ; pop           %rbx
8184  DB  235,160                             ; jmp           3565 <_sk_load_a8_avx+0x14>
8185
8186PUBLIC _sk_gather_a8_avx
8187_sk_gather_a8_avx LABEL PROC
8188  DB  72,173                              ; lods          %ds:(%rsi),%rax
8189  DB  76,139,8                            ; mov           (%rax),%r9
8190  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
8191  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
8192  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
8193  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
8194  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
8195  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
8196  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
8197  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
8198  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8199  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
8200  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
8201  DB  68,137,208                          ; mov           %r10d,%eax
8202  DB  196,195,121,32,20,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm2
8203  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
8204  DB  73,193,234,32                       ; shr           $0x20,%r10
8205  DB  196,131,105,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm1
8206  DB  68,137,216                          ; mov           %r11d,%eax
8207  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
8208  DB  196,227,113,32,200,2                ; vpinsrb       $0x2,%eax,%xmm1,%xmm1
8209  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
8210  DB  73,193,235,32                       ; shr           $0x20,%r11
8211  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
8212  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
8213  DB  68,137,208                          ; mov           %r10d,%eax
8214  DB  196,195,121,32,20,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm2
8215  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
8216  DB  73,193,234,32                       ; shr           $0x20,%r10
8217  DB  196,131,105,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm0
8218  DB  68,137,216                          ; mov           %r11d,%eax
8219  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
8220  DB  196,227,121,32,192,2                ; vpinsrb       $0x2,%eax,%xmm0,%xmm0
8221  DB  73,193,235,32                       ; shr           $0x20,%r11
8222  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
8223  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
8224  DB  196,227,121,32,192,3                ; vpinsrb       $0x3,%eax,%xmm0,%xmm0
8225  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
8226  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
8227  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8228  DB  196,226,125,24,13,247,49,0,0        ; vbroadcastss  0x31f7(%rip),%ymm1        # 6888 <_sk_callback_avx+0x384>
8229  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
8230  DB  72,173                              ; lods          %ds:(%rsi),%rax
8231  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
8232  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
8233  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
8234  DB  255,224                             ; jmpq          *%rax
8235
8236PUBLIC _sk_store_a8_avx
8237_sk_store_a8_avx LABEL PROC
8238  DB  72,173                              ; lods          %ds:(%rsi),%rax
8239  DB  76,139,24                           ; mov           (%rax),%r11
8240  DB  196,98,125,24,5,217,49,0,0          ; vbroadcastss  0x31d9(%rip),%ymm8        # 688c <_sk_callback_avx+0x388>
8241  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
8242  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
8243  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
8244  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
8245  DB  196,65,57,103,192                   ; vpackuswb     %xmm8,%xmm8,%xmm8
8246  DB  77,133,192                          ; test          %r8,%r8
8247  DB  117,10                              ; jne           36dc <_sk_store_a8_avx+0x37>
8248  DB  196,65,123,17,4,19                  ; vmovsd        %xmm8,(%r11,%rdx,1)
8249  DB  72,173                              ; lods          %ds:(%rsi),%rax
8250  DB  255,224                             ; jmpq          *%rax
8251  DB  69,137,193                          ; mov           %r8d,%r9d
8252  DB  65,128,225,7                        ; and           $0x7,%r9b
8253  DB  65,254,201                          ; dec           %r9b
8254  DB  65,128,249,6                        ; cmp           $0x6,%r9b
8255  DB  119,236                             ; ja            36d8 <_sk_store_a8_avx+0x33>
8256  DB  196,66,121,48,192                   ; vpmovzxbw     %xmm8,%xmm8
8257  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
8258  DB  76,141,21,68,0,0,0                  ; lea           0x44(%rip),%r10        # 3740 <_sk_store_a8_avx+0x9b>
8259  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
8260  DB  76,1,208                            ; add           %r10,%rax
8261  DB  255,224                             ; jmpq          *%rax
8262  DB  196,67,121,20,68,19,6,12            ; vpextrb       $0xc,%xmm8,0x6(%r11,%rdx,1)
8263  DB  196,67,121,20,68,19,5,10            ; vpextrb       $0xa,%xmm8,0x5(%r11,%rdx,1)
8264  DB  196,67,121,20,68,19,4,8             ; vpextrb       $0x8,%xmm8,0x4(%r11,%rdx,1)
8265  DB  196,67,121,20,68,19,3,6             ; vpextrb       $0x6,%xmm8,0x3(%r11,%rdx,1)
8266  DB  196,67,121,20,68,19,2,4             ; vpextrb       $0x4,%xmm8,0x2(%r11,%rdx,1)
8267  DB  196,67,121,20,68,19,1,2             ; vpextrb       $0x2,%xmm8,0x1(%r11,%rdx,1)
8268  DB  196,67,121,20,4,19,0                ; vpextrb       $0x0,%xmm8,(%r11,%rdx,1)
8269  DB  235,154                             ; jmp           36d8 <_sk_store_a8_avx+0x33>
8270  DB  102,144                             ; xchg          %ax,%ax
8271  DB  245                                 ; cmc
8272  DB  255                                 ; (bad)
8273  DB  255                                 ; (bad)
8274  DB  255                                 ; (bad)
8275  DB  237                                 ; in            (%dx),%eax
8276  DB  255                                 ; (bad)
8277  DB  255                                 ; (bad)
8278  DB  255,229                             ; jmpq          *%rbp
8279  DB  255                                 ; (bad)
8280  DB  255                                 ; (bad)
8281  DB  255                                 ; (bad)
8282  DB  221,255                             ; (bad)
8283  DB  255                                 ; (bad)
8284  DB  255,213                             ; callq         *%rbp
8285  DB  255                                 ; (bad)
8286  DB  255                                 ; (bad)
8287  DB  255,205                             ; dec           %ebp
8288  DB  255                                 ; (bad)
8289  DB  255                                 ; (bad)
8290  DB  255,197                             ; inc           %ebp
8291  DB  255                                 ; (bad)
8292  DB  255                                 ; (bad)
8293  DB  255                                 ; .byte         0xff
8294
8295PUBLIC _sk_load_g8_avx
8296_sk_load_g8_avx LABEL PROC
8297  DB  73,137,201                          ; mov           %rcx,%r9
8298  DB  72,173                              ; lods          %ds:(%rsi),%rax
8299  DB  72,139,0                            ; mov           (%rax),%rax
8300  DB  72,1,208                            ; add           %rdx,%rax
8301  DB  77,133,192                          ; test          %r8,%r8
8302  DB  117,67                              ; jne           37af <_sk_load_g8_avx+0x53>
8303  DB  197,250,126,0                       ; vmovq         (%rax),%xmm0
8304  DB  196,226,121,49,200                  ; vpmovzxbd     %xmm0,%xmm1
8305  DB  196,227,121,4,192,229               ; vpermilps     $0xe5,%xmm0,%xmm0
8306  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
8307  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
8308  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8309  DB  196,226,125,24,13,253,48,0,0        ; vbroadcastss  0x30fd(%rip),%ymm1        # 6890 <_sk_callback_avx+0x38c>
8310  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
8311  DB  72,173                              ; lods          %ds:(%rsi),%rax
8312  DB  196,226,125,24,29,242,48,0,0        ; vbroadcastss  0x30f2(%rip),%ymm3        # 6894 <_sk_callback_avx+0x390>
8313  DB  76,137,201                          ; mov           %r9,%rcx
8314  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
8315  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
8316  DB  255,224                             ; jmpq          *%rax
8317  DB  83                                  ; push          %rbx
8318  DB  49,201                              ; xor           %ecx,%ecx
8319  DB  77,137,195                          ; mov           %r8,%r11
8320  DB  69,49,210                           ; xor           %r10d,%r10d
8321  DB  15,182,24                           ; movzbl        (%rax),%ebx
8322  DB  72,255,192                          ; inc           %rax
8323  DB  72,211,227                          ; shl           %cl,%rbx
8324  DB  73,9,218                            ; or            %rbx,%r10
8325  DB  72,131,193,8                        ; add           $0x8,%rcx
8326  DB  73,255,203                          ; dec           %r11
8327  DB  117,235                             ; jne           37b8 <_sk_load_g8_avx+0x5c>
8328  DB  196,193,249,110,194                 ; vmovq         %r10,%xmm0
8329  DB  91                                  ; pop           %rbx
8330  DB  235,155                             ; jmp           3770 <_sk_load_g8_avx+0x14>
8331
8332PUBLIC _sk_gather_g8_avx
8333_sk_gather_g8_avx LABEL PROC
8334  DB  72,173                              ; lods          %ds:(%rsi),%rax
8335  DB  76,139,8                            ; mov           (%rax),%r9
8336  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
8337  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
8338  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
8339  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
8340  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
8341  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
8342  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
8343  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
8344  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8345  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
8346  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
8347  DB  68,137,208                          ; mov           %r10d,%eax
8348  DB  196,195,121,32,20,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm2
8349  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
8350  DB  73,193,234,32                       ; shr           $0x20,%r10
8351  DB  196,131,105,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm1
8352  DB  68,137,216                          ; mov           %r11d,%eax
8353  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
8354  DB  196,227,113,32,200,2                ; vpinsrb       $0x2,%eax,%xmm1,%xmm1
8355  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
8356  DB  73,193,235,32                       ; shr           $0x20,%r11
8357  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
8358  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
8359  DB  68,137,208                          ; mov           %r10d,%eax
8360  DB  196,195,121,32,20,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm2
8361  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
8362  DB  73,193,234,32                       ; shr           $0x20,%r10
8363  DB  196,131,105,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm0
8364  DB  68,137,216                          ; mov           %r11d,%eax
8365  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
8366  DB  196,227,121,32,192,2                ; vpinsrb       $0x2,%eax,%xmm0,%xmm0
8367  DB  73,193,235,32                       ; shr           $0x20,%r11
8368  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
8369  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
8370  DB  196,227,121,32,192,3                ; vpinsrb       $0x3,%eax,%xmm0,%xmm0
8371  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
8372  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
8373  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8374  DB  196,226,125,24,13,247,47,0,0        ; vbroadcastss  0x2ff7(%rip),%ymm1        # 6898 <_sk_callback_avx+0x394>
8375  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
8376  DB  72,173                              ; lods          %ds:(%rsi),%rax
8377  DB  196,226,125,24,29,236,47,0,0        ; vbroadcastss  0x2fec(%rip),%ymm3        # 689c <_sk_callback_avx+0x398>
8378  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
8379  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
8380  DB  255,224                             ; jmpq          *%rax
8381
8382PUBLIC _sk_gather_i8_avx
8383_sk_gather_i8_avx LABEL PROC
8384  DB  72,173                              ; lods          %ds:(%rsi),%rax
8385  DB  73,137,193                          ; mov           %rax,%r9
8386  DB  77,133,201                          ; test          %r9,%r9
8387  DB  116,5                               ; je            38c9 <_sk_gather_i8_avx+0xf>
8388  DB  76,137,200                          ; mov           %r9,%rax
8389  DB  235,2                               ; jmp           38cb <_sk_gather_i8_avx+0x11>
8390  DB  72,173                              ; lods          %ds:(%rsi),%rax
8391  DB  83                                  ; push          %rbx
8392  DB  76,139,16                           ; mov           (%rax),%r10
8393  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
8394  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
8395  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
8396  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
8397  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
8398  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
8399  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
8400  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
8401  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8402  DB  196,193,249,126,211                 ; vmovq         %xmm2,%r11
8403  DB  68,137,216                          ; mov           %r11d,%eax
8404  DB  196,195,121,32,28,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm3
8405  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
8406  DB  73,193,235,32                       ; shr           $0x20,%r11
8407  DB  196,131,97,32,20,26,1               ; vpinsrb       $0x1,(%r10,%r11,1),%xmm3,%xmm2
8408  DB  65,137,195                          ; mov           %eax,%r11d
8409  DB  72,193,232,32                       ; shr           $0x20,%rax
8410  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8411  DB  196,131,105,32,12,26,2              ; vpinsrb       $0x2,(%r10,%r11,1),%xmm2,%xmm1
8412  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
8413  DB  196,195,113,32,12,2,3               ; vpinsrb       $0x3,(%r10,%rax,1),%xmm1,%xmm1
8414  DB  68,137,216                          ; mov           %r11d,%eax
8415  DB  196,195,121,32,20,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm2
8416  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
8417  DB  73,193,235,32                       ; shr           $0x20,%r11
8418  DB  196,131,105,32,4,26,1               ; vpinsrb       $0x1,(%r10,%r11,1),%xmm2,%xmm0
8419  DB  137,216                             ; mov           %ebx,%eax
8420  DB  196,195,121,32,4,2,2                ; vpinsrb       $0x2,(%r10,%rax,1),%xmm0,%xmm0
8421  DB  72,193,235,32                       ; shr           $0x20,%rbx
8422  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
8423  DB  196,195,121,32,4,26,3               ; vpinsrb       $0x3,(%r10,%rbx,1),%xmm0,%xmm0
8424  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
8425  DB  77,139,89,8                         ; mov           0x8(%r9),%r11
8426  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
8427  DB  69,137,209                          ; mov           %r10d,%r9d
8428  DB  73,193,234,30                       ; shr           $0x1e,%r10
8429  DB  196,129,121,110,20,139              ; vmovd         (%r11,%r9,4),%xmm2
8430  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
8431  DB  196,131,105,34,4,19,1               ; vpinsrd       $0x1,(%r11,%r10,1),%xmm2,%xmm0
8432  DB  137,216                             ; mov           %ebx,%eax
8433  DB  196,195,121,34,4,131,2              ; vpinsrd       $0x2,(%r11,%rax,4),%xmm0,%xmm0
8434  DB  196,225,249,126,200                 ; vmovq         %xmm1,%rax
8435  DB  72,193,235,30                       ; shr           $0x1e,%rbx
8436  DB  196,67,121,34,4,27,3                ; vpinsrd       $0x3,(%r11,%rbx,1),%xmm0,%xmm8
8437  DB  137,195                             ; mov           %eax,%ebx
8438  DB  196,193,121,110,4,155               ; vmovd         (%r11,%rbx,4),%xmm0
8439  DB  196,227,249,22,203,1                ; vpextrq       $0x1,%xmm1,%rbx
8440  DB  72,193,232,30                       ; shr           $0x1e,%rax
8441  DB  196,195,121,34,4,3,1                ; vpinsrd       $0x1,(%r11,%rax,1),%xmm0,%xmm0
8442  DB  137,216                             ; mov           %ebx,%eax
8443  DB  196,195,121,34,4,131,2              ; vpinsrd       $0x2,(%r11,%rax,4),%xmm0,%xmm0
8444  DB  72,193,235,30                       ; shr           $0x1e,%rbx
8445  DB  196,195,121,34,28,27,3              ; vpinsrd       $0x3,(%r11,%rbx,1),%xmm0,%xmm3
8446  DB  196,227,61,24,195,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm0
8447  DB  197,124,40,21,87,49,0,0             ; vmovaps       0x3157(%rip),%ymm10        # 6b40 <_sk_callback_avx+0x63c>
8448  DB  196,193,124,84,194                  ; vandps        %ymm10,%ymm0,%ymm0
8449  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8450  DB  196,98,125,24,13,165,46,0,0         ; vbroadcastss  0x2ea5(%rip),%ymm9        # 68a0 <_sk_callback_avx+0x39c>
8451  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
8452  DB  196,193,113,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm1
8453  DB  197,233,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm2
8454  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8455  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
8456  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8457  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
8458  DB  196,193,33,114,208,16               ; vpsrld        $0x10,%xmm8,%xmm11
8459  DB  197,233,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm2
8460  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
8461  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
8462  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8463  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
8464  DB  196,193,57,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm8
8465  DB  197,225,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm3
8466  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
8467  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
8468  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
8469  DB  72,173                              ; lods          %ds:(%rsi),%rax
8470  DB  91                                  ; pop           %rbx
8471  DB  255,224                             ; jmpq          *%rax
8472
8473PUBLIC _sk_load_565_avx
8474_sk_load_565_avx LABEL PROC
8475  DB  72,173                              ; lods          %ds:(%rsi),%rax
8476  DB  76,139,24                           ; mov           (%rax),%r11
8477  DB  77,133,192                          ; test          %r8,%r8
8478  DB  15,133,128,0,0,0                    ; jne           3aeb <_sk_load_565_avx+0x8e>
8479  DB  196,193,122,111,4,83                ; vmovdqu       (%r11,%rdx,2),%xmm0
8480  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
8481  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
8482  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8483  DB  196,227,125,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm2
8484  DB  196,226,125,24,5,23,46,0,0          ; vbroadcastss  0x2e17(%rip),%ymm0        # 68a4 <_sk_callback_avx+0x3a0>
8485  DB  197,236,84,192                      ; vandps        %ymm0,%ymm2,%ymm0
8486  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8487  DB  196,226,125,24,13,10,46,0,0         ; vbroadcastss  0x2e0a(%rip),%ymm1        # 68a8 <_sk_callback_avx+0x3a4>
8488  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
8489  DB  196,226,125,24,13,1,46,0,0          ; vbroadcastss  0x2e01(%rip),%ymm1        # 68ac <_sk_callback_avx+0x3a8>
8490  DB  197,236,84,201                      ; vandps        %ymm1,%ymm2,%ymm1
8491  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8492  DB  196,226,125,24,29,244,45,0,0        ; vbroadcastss  0x2df4(%rip),%ymm3        # 68b0 <_sk_callback_avx+0x3ac>
8493  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
8494  DB  196,226,125,24,29,235,45,0,0        ; vbroadcastss  0x2deb(%rip),%ymm3        # 68b4 <_sk_callback_avx+0x3b0>
8495  DB  197,236,84,211                      ; vandps        %ymm3,%ymm2,%ymm2
8496  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8497  DB  196,226,125,24,29,222,45,0,0        ; vbroadcastss  0x2dde(%rip),%ymm3        # 68b8 <_sk_callback_avx+0x3b4>
8498  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
8499  DB  72,173                              ; lods          %ds:(%rsi),%rax
8500  DB  196,226,125,24,29,211,45,0,0        ; vbroadcastss  0x2dd3(%rip),%ymm3        # 68bc <_sk_callback_avx+0x3b8>
8501  DB  255,224                             ; jmpq          *%rax
8502  DB  69,137,193                          ; mov           %r8d,%r9d
8503  DB  65,128,225,7                        ; and           $0x7,%r9b
8504  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8505  DB  65,254,201                          ; dec           %r9b
8506  DB  65,128,249,6                        ; cmp           $0x6,%r9b
8507  DB  15,135,110,255,255,255              ; ja            3a71 <_sk_load_565_avx+0x14>
8508  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
8509  DB  76,141,21,74,0,0,0                  ; lea           0x4a(%rip),%r10        # 3b58 <_sk_load_565_avx+0xfb>
8510  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
8511  DB  76,1,208                            ; add           %r10,%rax
8512  DB  255,224                             ; jmpq          *%rax
8513  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8514  DB  196,193,121,196,68,83,12,6          ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm0,%xmm0
8515  DB  196,193,121,196,68,83,10,5          ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm0,%xmm0
8516  DB  196,193,121,196,68,83,8,4           ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm0,%xmm0
8517  DB  196,193,121,196,68,83,6,3           ; vpinsrw       $0x3,0x6(%r11,%rdx,2),%xmm0,%xmm0
8518  DB  196,193,121,196,68,83,4,2           ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm0,%xmm0
8519  DB  196,193,121,196,68,83,2,1           ; vpinsrw       $0x1,0x2(%r11,%rdx,2),%xmm0,%xmm0
8520  DB  196,193,121,196,4,83,0              ; vpinsrw       $0x0,(%r11,%rdx,2),%xmm0,%xmm0
8521  DB  233,26,255,255,255                  ; jmpq          3a71 <_sk_load_565_avx+0x14>
8522  DB  144                                 ; nop
8523  DB  243,255                             ; repz          (bad)
8524  DB  255                                 ; (bad)
8525  DB  255                                 ; (bad)
8526  DB  235,255                             ; jmp           3b5d <_sk_load_565_avx+0x100>
8527  DB  255                                 ; (bad)
8528  DB  255,227                             ; jmpq          *%rbx
8529  DB  255                                 ; (bad)
8530  DB  255                                 ; (bad)
8531  DB  255                                 ; (bad)
8532  DB  219,255                             ; (bad)
8533  DB  255                                 ; (bad)
8534  DB  255,211                             ; callq         *%rbx
8535  DB  255                                 ; (bad)
8536  DB  255                                 ; (bad)
8537  DB  255,203                             ; dec           %ebx
8538  DB  255                                 ; (bad)
8539  DB  255                                 ; (bad)
8540  DB  255                                 ; (bad)
8541  DB  191                                 ; .byte         0xbf
8542  DB  255                                 ; (bad)
8543  DB  255                                 ; (bad)
8544  DB  255                                 ; .byte         0xff
8545
8546PUBLIC _sk_gather_565_avx
8547_sk_gather_565_avx LABEL PROC
8548  DB  72,173                              ; lods          %ds:(%rsi),%rax
8549  DB  76,139,8                            ; mov           (%rax),%r9
8550  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
8551  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
8552  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
8553  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
8554  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
8555  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
8556  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
8557  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
8558  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8559  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
8560  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
8561  DB  68,137,208                          ; mov           %r10d,%eax
8562  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8563  DB  197,249,110,208                     ; vmovd         %eax,%xmm2
8564  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
8565  DB  73,193,234,32                       ; shr           $0x20,%r10
8566  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
8567  DB  197,233,196,200,1                   ; vpinsrw       $0x1,%eax,%xmm2,%xmm1
8568  DB  68,137,216                          ; mov           %r11d,%eax
8569  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8570  DB  197,241,196,200,2                   ; vpinsrw       $0x2,%eax,%xmm1,%xmm1
8571  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
8572  DB  73,193,235,32                       ; shr           $0x20,%r11
8573  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
8574  DB  197,241,196,200,3                   ; vpinsrw       $0x3,%eax,%xmm1,%xmm1
8575  DB  68,137,208                          ; mov           %r10d,%eax
8576  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8577  DB  197,241,196,200,4                   ; vpinsrw       $0x4,%eax,%xmm1,%xmm1
8578  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
8579  DB  73,193,234,32                       ; shr           $0x20,%r10
8580  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
8581  DB  197,241,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm1,%xmm0
8582  DB  68,137,216                          ; mov           %r11d,%eax
8583  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8584  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
8585  DB  73,193,235,32                       ; shr           $0x20,%r11
8586  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
8587  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
8588  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
8589  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
8590  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8591  DB  196,227,125,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm2
8592  DB  196,226,125,24,5,122,44,0,0         ; vbroadcastss  0x2c7a(%rip),%ymm0        # 68c0 <_sk_callback_avx+0x3bc>
8593  DB  197,236,84,192                      ; vandps        %ymm0,%ymm2,%ymm0
8594  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8595  DB  196,226,125,24,13,109,44,0,0        ; vbroadcastss  0x2c6d(%rip),%ymm1        # 68c4 <_sk_callback_avx+0x3c0>
8596  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
8597  DB  196,226,125,24,13,100,44,0,0        ; vbroadcastss  0x2c64(%rip),%ymm1        # 68c8 <_sk_callback_avx+0x3c4>
8598  DB  197,236,84,201                      ; vandps        %ymm1,%ymm2,%ymm1
8599  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8600  DB  196,226,125,24,29,87,44,0,0         ; vbroadcastss  0x2c57(%rip),%ymm3        # 68cc <_sk_callback_avx+0x3c8>
8601  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
8602  DB  196,226,125,24,29,78,44,0,0         ; vbroadcastss  0x2c4e(%rip),%ymm3        # 68d0 <_sk_callback_avx+0x3cc>
8603  DB  197,236,84,211                      ; vandps        %ymm3,%ymm2,%ymm2
8604  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8605  DB  196,226,125,24,29,65,44,0,0         ; vbroadcastss  0x2c41(%rip),%ymm3        # 68d4 <_sk_callback_avx+0x3d0>
8606  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
8607  DB  72,173                              ; lods          %ds:(%rsi),%rax
8608  DB  196,226,125,24,29,54,44,0,0         ; vbroadcastss  0x2c36(%rip),%ymm3        # 68d8 <_sk_callback_avx+0x3d4>
8609  DB  255,224                             ; jmpq          *%rax
8610
8611PUBLIC _sk_store_565_avx
8612_sk_store_565_avx LABEL PROC
8613  DB  72,173                              ; lods          %ds:(%rsi),%rax
8614  DB  76,139,24                           ; mov           (%rax),%r11
8615  DB  196,98,125,24,5,42,44,0,0           ; vbroadcastss  0x2c2a(%rip),%ymm8        # 68dc <_sk_callback_avx+0x3d8>
8616  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
8617  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
8618  DB  196,193,41,114,241,11               ; vpslld        $0xb,%xmm9,%xmm10
8619  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
8620  DB  196,193,49,114,241,11               ; vpslld        $0xb,%xmm9,%xmm9
8621  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
8622  DB  196,98,125,24,21,3,44,0,0           ; vbroadcastss  0x2c03(%rip),%ymm10        # 68e0 <_sk_callback_avx+0x3dc>
8623  DB  196,65,116,89,210                   ; vmulps        %ymm10,%ymm1,%ymm10
8624  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
8625  DB  196,193,33,114,242,5                ; vpslld        $0x5,%xmm10,%xmm11
8626  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
8627  DB  196,193,41,114,242,5                ; vpslld        $0x5,%xmm10,%xmm10
8628  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
8629  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
8630  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
8631  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
8632  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
8633  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
8634  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
8635  DB  77,133,192                          ; test          %r8,%r8
8636  DB  117,10                              ; jne           3d2d <_sk_store_565_avx+0x89>
8637  DB  196,65,122,127,4,83                 ; vmovdqu       %xmm8,(%r11,%rdx,2)
8638  DB  72,173                              ; lods          %ds:(%rsi),%rax
8639  DB  255,224                             ; jmpq          *%rax
8640  DB  69,137,193                          ; mov           %r8d,%r9d
8641  DB  65,128,225,7                        ; and           $0x7,%r9b
8642  DB  65,254,201                          ; dec           %r9b
8643  DB  65,128,249,6                        ; cmp           $0x6,%r9b
8644  DB  119,236                             ; ja            3d29 <_sk_store_565_avx+0x85>
8645  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
8646  DB  76,141,21,68,0,0,0                  ; lea           0x44(%rip),%r10        # 3d8c <_sk_store_565_avx+0xe8>
8647  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
8648  DB  76,1,208                            ; add           %r10,%rax
8649  DB  255,224                             ; jmpq          *%rax
8650  DB  196,67,121,21,68,83,12,6            ; vpextrw       $0x6,%xmm8,0xc(%r11,%rdx,2)
8651  DB  196,67,121,21,68,83,10,5            ; vpextrw       $0x5,%xmm8,0xa(%r11,%rdx,2)
8652  DB  196,67,121,21,68,83,8,4             ; vpextrw       $0x4,%xmm8,0x8(%r11,%rdx,2)
8653  DB  196,67,121,21,68,83,6,3             ; vpextrw       $0x3,%xmm8,0x6(%r11,%rdx,2)
8654  DB  196,67,121,21,68,83,4,2             ; vpextrw       $0x2,%xmm8,0x4(%r11,%rdx,2)
8655  DB  196,67,121,21,68,83,2,1             ; vpextrw       $0x1,%xmm8,0x2(%r11,%rdx,2)
8656  DB  196,67,121,21,4,83,0                ; vpextrw       $0x0,%xmm8,(%r11,%rdx,2)
8657  DB  235,159                             ; jmp           3d29 <_sk_store_565_avx+0x85>
8658  DB  102,144                             ; xchg          %ax,%ax
8659  DB  245                                 ; cmc
8660  DB  255                                 ; (bad)
8661  DB  255                                 ; (bad)
8662  DB  255                                 ; (bad)
8663  DB  237                                 ; in            (%dx),%eax
8664  DB  255                                 ; (bad)
8665  DB  255                                 ; (bad)
8666  DB  255,229                             ; jmpq          *%rbp
8667  DB  255                                 ; (bad)
8668  DB  255                                 ; (bad)
8669  DB  255                                 ; (bad)
8670  DB  221,255                             ; (bad)
8671  DB  255                                 ; (bad)
8672  DB  255,213                             ; callq         *%rbp
8673  DB  255                                 ; (bad)
8674  DB  255                                 ; (bad)
8675  DB  255,205                             ; dec           %ebp
8676  DB  255                                 ; (bad)
8677  DB  255                                 ; (bad)
8678  DB  255,197                             ; inc           %ebp
8679  DB  255                                 ; (bad)
8680  DB  255                                 ; (bad)
8681  DB  255                                 ; .byte         0xff
8682
8683PUBLIC _sk_load_4444_avx
8684_sk_load_4444_avx LABEL PROC
8685  DB  72,173                              ; lods          %ds:(%rsi),%rax
8686  DB  76,139,24                           ; mov           (%rax),%r11
8687  DB  77,133,192                          ; test          %r8,%r8
8688  DB  15,133,152,0,0,0                    ; jne           3e4e <_sk_load_4444_avx+0xa6>
8689  DB  196,193,122,111,4,83                ; vmovdqu       (%r11,%rdx,2),%xmm0
8690  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
8691  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
8692  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8693  DB  196,227,125,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm3
8694  DB  196,226,125,24,5,12,43,0,0          ; vbroadcastss  0x2b0c(%rip),%ymm0        # 68e4 <_sk_callback_avx+0x3e0>
8695  DB  197,228,84,192                      ; vandps        %ymm0,%ymm3,%ymm0
8696  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8697  DB  196,226,125,24,13,255,42,0,0        ; vbroadcastss  0x2aff(%rip),%ymm1        # 68e8 <_sk_callback_avx+0x3e4>
8698  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
8699  DB  196,226,125,24,13,246,42,0,0        ; vbroadcastss  0x2af6(%rip),%ymm1        # 68ec <_sk_callback_avx+0x3e8>
8700  DB  197,228,84,201                      ; vandps        %ymm1,%ymm3,%ymm1
8701  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8702  DB  196,226,125,24,21,233,42,0,0        ; vbroadcastss  0x2ae9(%rip),%ymm2        # 68f0 <_sk_callback_avx+0x3ec>
8703  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
8704  DB  196,226,125,24,21,224,42,0,0        ; vbroadcastss  0x2ae0(%rip),%ymm2        # 68f4 <_sk_callback_avx+0x3f0>
8705  DB  197,228,84,210                      ; vandps        %ymm2,%ymm3,%ymm2
8706  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8707  DB  196,98,125,24,5,211,42,0,0          ; vbroadcastss  0x2ad3(%rip),%ymm8        # 68f8 <_sk_callback_avx+0x3f4>
8708  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
8709  DB  196,98,125,24,5,201,42,0,0          ; vbroadcastss  0x2ac9(%rip),%ymm8        # 68fc <_sk_callback_avx+0x3f8>
8710  DB  196,193,100,84,216                  ; vandps        %ymm8,%ymm3,%ymm3
8711  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
8712  DB  196,98,125,24,5,187,42,0,0          ; vbroadcastss  0x2abb(%rip),%ymm8        # 6900 <_sk_callback_avx+0x3fc>
8713  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
8714  DB  72,173                              ; lods          %ds:(%rsi),%rax
8715  DB  255,224                             ; jmpq          *%rax
8716  DB  69,137,193                          ; mov           %r8d,%r9d
8717  DB  65,128,225,7                        ; and           $0x7,%r9b
8718  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8719  DB  65,254,201                          ; dec           %r9b
8720  DB  65,128,249,6                        ; cmp           $0x6,%r9b
8721  DB  15,135,86,255,255,255               ; ja            3dbc <_sk_load_4444_avx+0x14>
8722  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
8723  DB  76,141,21,75,0,0,0                  ; lea           0x4b(%rip),%r10        # 3ebc <_sk_load_4444_avx+0x114>
8724  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
8725  DB  76,1,208                            ; add           %r10,%rax
8726  DB  255,224                             ; jmpq          *%rax
8727  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8728  DB  196,193,121,196,68,83,12,6          ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm0,%xmm0
8729  DB  196,193,121,196,68,83,10,5          ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm0,%xmm0
8730  DB  196,193,121,196,68,83,8,4           ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm0,%xmm0
8731  DB  196,193,121,196,68,83,6,3           ; vpinsrw       $0x3,0x6(%r11,%rdx,2),%xmm0,%xmm0
8732  DB  196,193,121,196,68,83,4,2           ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm0,%xmm0
8733  DB  196,193,121,196,68,83,2,1           ; vpinsrw       $0x1,0x2(%r11,%rdx,2),%xmm0,%xmm0
8734  DB  196,193,121,196,4,83,0              ; vpinsrw       $0x0,(%r11,%rdx,2),%xmm0,%xmm0
8735  DB  233,2,255,255,255                   ; jmpq          3dbc <_sk_load_4444_avx+0x14>
8736  DB  102,144                             ; xchg          %ax,%ax
8737  DB  242,255                             ; repnz         (bad)
8738  DB  255                                 ; (bad)
8739  DB  255                                 ; (bad)
8740  DB  234                                 ; (bad)
8741  DB  255                                 ; (bad)
8742  DB  255                                 ; (bad)
8743  DB  255,226                             ; jmpq          *%rdx
8744  DB  255                                 ; (bad)
8745  DB  255                                 ; (bad)
8746  DB  255                                 ; (bad)
8747  DB  218,255                             ; (bad)
8748  DB  255                                 ; (bad)
8749  DB  255,210                             ; callq         *%rdx
8750  DB  255                                 ; (bad)
8751  DB  255                                 ; (bad)
8752  DB  255,202                             ; dec           %edx
8753  DB  255                                 ; (bad)
8754  DB  255                                 ; (bad)
8755  DB  255                                 ; (bad)
8756  DB  190                                 ; .byte         0xbe
8757  DB  255                                 ; (bad)
8758  DB  255                                 ; (bad)
8759  DB  255                                 ; .byte         0xff
8760
8761PUBLIC _sk_gather_4444_avx
8762_sk_gather_4444_avx LABEL PROC
8763  DB  72,173                              ; lods          %ds:(%rsi),%rax
8764  DB  76,139,8                            ; mov           (%rax),%r9
8765  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
8766  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
8767  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
8768  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
8769  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
8770  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
8771  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
8772  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
8773  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8774  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
8775  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
8776  DB  68,137,208                          ; mov           %r10d,%eax
8777  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8778  DB  197,249,110,208                     ; vmovd         %eax,%xmm2
8779  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
8780  DB  73,193,234,32                       ; shr           $0x20,%r10
8781  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
8782  DB  197,233,196,200,1                   ; vpinsrw       $0x1,%eax,%xmm2,%xmm1
8783  DB  68,137,216                          ; mov           %r11d,%eax
8784  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8785  DB  197,241,196,200,2                   ; vpinsrw       $0x2,%eax,%xmm1,%xmm1
8786  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
8787  DB  73,193,235,32                       ; shr           $0x20,%r11
8788  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
8789  DB  197,241,196,200,3                   ; vpinsrw       $0x3,%eax,%xmm1,%xmm1
8790  DB  68,137,208                          ; mov           %r10d,%eax
8791  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8792  DB  197,241,196,200,4                   ; vpinsrw       $0x4,%eax,%xmm1,%xmm1
8793  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
8794  DB  73,193,234,32                       ; shr           $0x20,%r10
8795  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
8796  DB  197,241,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm1,%xmm0
8797  DB  68,137,216                          ; mov           %r11d,%eax
8798  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8799  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
8800  DB  73,193,235,32                       ; shr           $0x20,%r11
8801  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
8802  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
8803  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
8804  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
8805  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8806  DB  196,227,125,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm3
8807  DB  196,226,125,24,5,90,41,0,0          ; vbroadcastss  0x295a(%rip),%ymm0        # 6904 <_sk_callback_avx+0x400>
8808  DB  197,228,84,192                      ; vandps        %ymm0,%ymm3,%ymm0
8809  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8810  DB  196,226,125,24,13,77,41,0,0         ; vbroadcastss  0x294d(%rip),%ymm1        # 6908 <_sk_callback_avx+0x404>
8811  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
8812  DB  196,226,125,24,13,68,41,0,0         ; vbroadcastss  0x2944(%rip),%ymm1        # 690c <_sk_callback_avx+0x408>
8813  DB  197,228,84,201                      ; vandps        %ymm1,%ymm3,%ymm1
8814  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8815  DB  196,226,125,24,21,55,41,0,0         ; vbroadcastss  0x2937(%rip),%ymm2        # 6910 <_sk_callback_avx+0x40c>
8816  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
8817  DB  196,226,125,24,21,46,41,0,0         ; vbroadcastss  0x292e(%rip),%ymm2        # 6914 <_sk_callback_avx+0x410>
8818  DB  197,228,84,210                      ; vandps        %ymm2,%ymm3,%ymm2
8819  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8820  DB  196,98,125,24,5,33,41,0,0           ; vbroadcastss  0x2921(%rip),%ymm8        # 6918 <_sk_callback_avx+0x414>
8821  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
8822  DB  196,98,125,24,5,23,41,0,0           ; vbroadcastss  0x2917(%rip),%ymm8        # 691c <_sk_callback_avx+0x418>
8823  DB  196,193,100,84,216                  ; vandps        %ymm8,%ymm3,%ymm3
8824  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
8825  DB  196,98,125,24,5,9,41,0,0            ; vbroadcastss  0x2909(%rip),%ymm8        # 6920 <_sk_callback_avx+0x41c>
8826  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
8827  DB  72,173                              ; lods          %ds:(%rsi),%rax
8828  DB  255,224                             ; jmpq          *%rax
8829
8830PUBLIC _sk_store_4444_avx
8831_sk_store_4444_avx LABEL PROC
8832  DB  72,173                              ; lods          %ds:(%rsi),%rax
8833  DB  76,139,24                           ; mov           (%rax),%r11
8834  DB  196,98,125,24,5,246,40,0,0          ; vbroadcastss  0x28f6(%rip),%ymm8        # 6924 <_sk_callback_avx+0x420>
8835  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
8836  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
8837  DB  196,193,41,114,241,12               ; vpslld        $0xc,%xmm9,%xmm10
8838  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
8839  DB  196,193,49,114,241,12               ; vpslld        $0xc,%xmm9,%xmm9
8840  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
8841  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
8842  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
8843  DB  196,193,33,114,242,8                ; vpslld        $0x8,%xmm10,%xmm11
8844  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
8845  DB  196,193,41,114,242,8                ; vpslld        $0x8,%xmm10,%xmm10
8846  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
8847  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
8848  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
8849  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
8850  DB  196,193,33,114,242,4                ; vpslld        $0x4,%xmm10,%xmm11
8851  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
8852  DB  196,193,41,114,242,4                ; vpslld        $0x4,%xmm10,%xmm10
8853  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
8854  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
8855  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
8856  DB  196,65,45,86,192                    ; vorpd         %ymm8,%ymm10,%ymm8
8857  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
8858  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
8859  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
8860  DB  77,133,192                          ; test          %r8,%r8
8861  DB  117,10                              ; jne           40c7 <_sk_store_4444_avx+0xa7>
8862  DB  196,65,122,127,4,83                 ; vmovdqu       %xmm8,(%r11,%rdx,2)
8863  DB  72,173                              ; lods          %ds:(%rsi),%rax
8864  DB  255,224                             ; jmpq          *%rax
8865  DB  69,137,193                          ; mov           %r8d,%r9d
8866  DB  65,128,225,7                        ; and           $0x7,%r9b
8867  DB  65,254,201                          ; dec           %r9b
8868  DB  65,128,249,6                        ; cmp           $0x6,%r9b
8869  DB  119,236                             ; ja            40c3 <_sk_store_4444_avx+0xa3>
8870  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
8871  DB  76,141,21,66,0,0,0                  ; lea           0x42(%rip),%r10        # 4124 <_sk_store_4444_avx+0x104>
8872  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
8873  DB  76,1,208                            ; add           %r10,%rax
8874  DB  255,224                             ; jmpq          *%rax
8875  DB  196,67,121,21,68,83,12,6            ; vpextrw       $0x6,%xmm8,0xc(%r11,%rdx,2)
8876  DB  196,67,121,21,68,83,10,5            ; vpextrw       $0x5,%xmm8,0xa(%r11,%rdx,2)
8877  DB  196,67,121,21,68,83,8,4             ; vpextrw       $0x4,%xmm8,0x8(%r11,%rdx,2)
8878  DB  196,67,121,21,68,83,6,3             ; vpextrw       $0x3,%xmm8,0x6(%r11,%rdx,2)
8879  DB  196,67,121,21,68,83,4,2             ; vpextrw       $0x2,%xmm8,0x4(%r11,%rdx,2)
8880  DB  196,67,121,21,68,83,2,1             ; vpextrw       $0x1,%xmm8,0x2(%r11,%rdx,2)
8881  DB  196,67,121,21,4,83,0                ; vpextrw       $0x0,%xmm8,(%r11,%rdx,2)
8882  DB  235,159                             ; jmp           40c3 <_sk_store_4444_avx+0xa3>
8883  DB  247,255                             ; idiv          %edi
8884  DB  255                                 ; (bad)
8885  DB  255                                 ; (bad)
8886  DB  239                                 ; out           %eax,(%dx)
8887  DB  255                                 ; (bad)
8888  DB  255                                 ; (bad)
8889  DB  255,231                             ; jmpq          *%rdi
8890  DB  255                                 ; (bad)
8891  DB  255                                 ; (bad)
8892  DB  255                                 ; (bad)
8893  DB  223,255                             ; (bad)
8894  DB  255                                 ; (bad)
8895  DB  255,215                             ; callq         *%rdi
8896  DB  255                                 ; (bad)
8897  DB  255                                 ; (bad)
8898  DB  255,207                             ; dec           %edi
8899  DB  255                                 ; (bad)
8900  DB  255                                 ; (bad)
8901  DB  255,199                             ; inc           %edi
8902  DB  255                                 ; (bad)
8903  DB  255                                 ; (bad)
8904  DB  255                                 ; .byte         0xff
8905
8906PUBLIC _sk_load_8888_avx
8907_sk_load_8888_avx LABEL PROC
8908  DB  80                                  ; push          %rax
8909  DB  73,137,201                          ; mov           %rcx,%r9
8910  DB  72,173                              ; lods          %ds:(%rsi),%rax
8911  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
8912  DB  76,3,16                             ; add           (%rax),%r10
8913  DB  77,133,192                          ; test          %r8,%r8
8914  DB  15,133,139,0,0,0                    ; jne           41e5 <_sk_load_8888_avx+0xa5>
8915  DB  196,193,124,16,26                   ; vmovups       (%r10),%ymm3
8916  DB  197,124,40,21,249,41,0,0            ; vmovaps       0x29f9(%rip),%ymm10        # 6b60 <_sk_callback_avx+0x65c>
8917  DB  196,193,100,84,194                  ; vandps        %ymm10,%ymm3,%ymm0
8918  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8919  DB  196,98,125,24,5,175,39,0,0          ; vbroadcastss  0x27af(%rip),%ymm8        # 6928 <_sk_callback_avx+0x424>
8920  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
8921  DB  197,241,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm1
8922  DB  196,195,125,25,217,1                ; vextractf128  $0x1,%ymm3,%xmm9
8923  DB  196,193,105,114,209,8               ; vpsrld        $0x8,%xmm9,%xmm2
8924  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8925  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
8926  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8927  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
8928  DB  197,161,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm11
8929  DB  196,193,105,114,209,16              ; vpsrld        $0x10,%xmm9,%xmm2
8930  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
8931  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
8932  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8933  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
8934  DB  197,169,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm10
8935  DB  196,193,97,114,209,24               ; vpsrld        $0x18,%xmm9,%xmm3
8936  DB  196,227,45,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm10,%ymm3
8937  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
8938  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
8939  DB  72,173                              ; lods          %ds:(%rsi),%rax
8940  DB  76,137,201                          ; mov           %r9,%rcx
8941  DB  65,89                               ; pop           %r9
8942  DB  255,224                             ; jmpq          *%rax
8943  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
8944  DB  68,41,193                           ; sub           %r8d,%ecx
8945  DB  192,225,3                           ; shl           $0x3,%cl
8946  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
8947  DB  72,211,232                          ; shr           %cl,%rax
8948  DB  196,225,249,110,192                 ; vmovq         %rax,%xmm0
8949  DB  196,226,121,48,192                  ; vpmovzxbw     %xmm0,%xmm0
8950  DB  196,226,121,0,13,179,40,0,0         ; vpshufb       0x28b3(%rip),%xmm0,%xmm1        # 6ac0 <_sk_callback_avx+0x5bc>
8951  DB  196,226,121,33,201                  ; vpmovsxbd     %xmm1,%xmm1
8952  DB  196,226,121,0,5,181,40,0,0          ; vpshufb       0x28b5(%rip),%xmm0,%xmm0        # 6ad0 <_sk_callback_avx+0x5cc>
8953  DB  196,226,121,33,192                  ; vpmovsxbd     %xmm0,%xmm0
8954  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
8955  DB  196,194,125,44,26                   ; vmaskmovps    (%r10),%ymm0,%ymm3
8956  DB  233,47,255,255,255                  ; jmpq          415f <_sk_load_8888_avx+0x1f>
8957
8958PUBLIC _sk_gather_8888_avx
8959_sk_gather_8888_avx LABEL PROC
8960  DB  72,173                              ; lods          %ds:(%rsi),%rax
8961  DB  76,139,8                            ; mov           (%rax),%r9
8962  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
8963  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
8964  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
8965  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
8966  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
8967  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
8968  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
8969  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
8970  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8971  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
8972  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
8973  DB  68,137,208                          ; mov           %r10d,%eax
8974  DB  196,193,121,110,20,129              ; vmovd         (%r9,%rax,4),%xmm2
8975  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
8976  DB  73,193,234,32                       ; shr           $0x20,%r10
8977  DB  196,131,105,34,12,145,1             ; vpinsrd       $0x1,(%r9,%r10,4),%xmm2,%xmm1
8978  DB  68,137,216                          ; mov           %r11d,%eax
8979  DB  196,195,113,34,12,129,2             ; vpinsrd       $0x2,(%r9,%rax,4),%xmm1,%xmm1
8980  DB  196,225,249,126,192                 ; vmovq         %xmm0,%rax
8981  DB  73,193,235,32                       ; shr           $0x20,%r11
8982  DB  196,3,113,34,4,153,3                ; vpinsrd       $0x3,(%r9,%r11,4),%xmm1,%xmm8
8983  DB  65,137,194                          ; mov           %eax,%r10d
8984  DB  72,193,232,32                       ; shr           $0x20,%rax
8985  DB  196,129,121,110,12,145              ; vmovd         (%r9,%r10,4),%xmm1
8986  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
8987  DB  196,195,113,34,4,129,1              ; vpinsrd       $0x1,(%r9,%rax,4),%xmm1,%xmm0
8988  DB  68,137,208                          ; mov           %r10d,%eax
8989  DB  196,195,121,34,4,129,2              ; vpinsrd       $0x2,(%r9,%rax,4),%xmm0,%xmm0
8990  DB  73,193,234,32                       ; shr           $0x20,%r10
8991  DB  196,131,121,34,28,145,3             ; vpinsrd       $0x3,(%r9,%r10,4),%xmm0,%xmm3
8992  DB  196,227,61,24,195,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm0
8993  DB  197,124,40,21,165,40,0,0            ; vmovaps       0x28a5(%rip),%ymm10        # 6b80 <_sk_callback_avx+0x67c>
8994  DB  196,193,124,84,194                  ; vandps        %ymm10,%ymm0,%ymm0
8995  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8996  DB  196,98,125,24,13,63,38,0,0          ; vbroadcastss  0x263f(%rip),%ymm9        # 692c <_sk_callback_avx+0x428>
8997  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
8998  DB  196,193,113,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm1
8999  DB  197,233,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm2
9000  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9001  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
9002  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
9003  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
9004  DB  196,193,33,114,208,16               ; vpsrld        $0x10,%xmm8,%xmm11
9005  DB  197,233,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm2
9006  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
9007  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
9008  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
9009  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
9010  DB  196,193,57,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm8
9011  DB  197,225,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm3
9012  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
9013  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
9014  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
9015  DB  72,173                              ; lods          %ds:(%rsi),%rax
9016  DB  255,224                             ; jmpq          *%rax
9017
9018PUBLIC _sk_store_8888_avx
9019_sk_store_8888_avx LABEL PROC
9020  DB  80                                  ; push          %rax
9021  DB  73,137,201                          ; mov           %rcx,%r9
9022  DB  72,173                              ; lods          %ds:(%rsi),%rax
9023  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
9024  DB  76,3,16                             ; add           (%rax),%r10
9025  DB  196,98,125,24,5,200,37,0,0          ; vbroadcastss  0x25c8(%rip),%ymm8        # 6930 <_sk_callback_avx+0x42c>
9026  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
9027  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
9028  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
9029  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
9030  DB  196,193,33,114,242,8                ; vpslld        $0x8,%xmm10,%xmm11
9031  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
9032  DB  196,193,41,114,242,8                ; vpslld        $0x8,%xmm10,%xmm10
9033  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
9034  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
9035  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
9036  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
9037  DB  196,193,33,114,242,16               ; vpslld        $0x10,%xmm10,%xmm11
9038  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
9039  DB  196,193,41,114,242,16               ; vpslld        $0x10,%xmm10,%xmm10
9040  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
9041  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
9042  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
9043  DB  196,193,33,114,240,24               ; vpslld        $0x18,%xmm8,%xmm11
9044  DB  196,67,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm8
9045  DB  196,193,57,114,240,24               ; vpslld        $0x18,%xmm8,%xmm8
9046  DB  196,67,37,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm11,%ymm8
9047  DB  196,65,45,86,192                    ; vorpd         %ymm8,%ymm10,%ymm8
9048  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
9049  DB  77,133,192                          ; test          %r8,%r8
9050  DB  117,14                              ; jne           43fa <_sk_store_8888_avx+0xac>
9051  DB  196,65,124,17,2                     ; vmovups       %ymm8,(%r10)
9052  DB  72,173                              ; lods          %ds:(%rsi),%rax
9053  DB  76,137,201                          ; mov           %r9,%rcx
9054  DB  65,89                               ; pop           %r9
9055  DB  255,224                             ; jmpq          *%rax
9056  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
9057  DB  68,41,193                           ; sub           %r8d,%ecx
9058  DB  192,225,3                           ; shl           $0x3,%cl
9059  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
9060  DB  72,211,232                          ; shr           %cl,%rax
9061  DB  196,97,249,110,200                  ; vmovq         %rax,%xmm9
9062  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
9063  DB  196,98,49,0,21,190,38,0,0           ; vpshufb       0x26be(%rip),%xmm9,%xmm10        # 6ae0 <_sk_callback_avx+0x5dc>
9064  DB  196,66,121,33,210                   ; vpmovsxbd     %xmm10,%xmm10
9065  DB  196,98,49,0,13,192,38,0,0           ; vpshufb       0x26c0(%rip),%xmm9,%xmm9        # 6af0 <_sk_callback_avx+0x5ec>
9066  DB  196,66,121,33,201                   ; vpmovsxbd     %xmm9,%xmm9
9067  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
9068  DB  196,66,53,46,2                      ; vmaskmovps    %ymm8,%ymm9,(%r10)
9069  DB  235,175                             ; jmp           43f1 <_sk_store_8888_avx+0xa3>
9070
9071PUBLIC _sk_load_f16_avx
9072_sk_load_f16_avx LABEL PROC
9073  DB  72,129,236,152,0,0,0                ; sub           $0x98,%rsp
9074  DB  72,173                              ; lods          %ds:(%rsi),%rax
9075  DB  72,139,0                            ; mov           (%rax),%rax
9076  DB  77,133,192                          ; test          %r8,%r8
9077  DB  197,252,17,124,36,96                ; vmovups       %ymm7,0x60(%rsp)
9078  DB  197,252,17,116,36,64                ; vmovups       %ymm6,0x40(%rsp)
9079  DB  197,252,17,108,36,32                ; vmovups       %ymm5,0x20(%rsp)
9080  DB  197,254,127,36,36                   ; vmovdqu       %ymm4,(%rsp)
9081  DB  15,133,143,2,0,0                    ; jne           46fd <_sk_load_f16_avx+0x2bb>
9082  DB  197,121,16,4,208                    ; vmovupd       (%rax,%rdx,8),%xmm8
9083  DB  197,249,16,84,208,16                ; vmovupd       0x10(%rax,%rdx,8),%xmm2
9084  DB  197,249,16,76,208,32                ; vmovupd       0x20(%rax,%rdx,8),%xmm1
9085  DB  197,122,111,76,208,48               ; vmovdqu       0x30(%rax,%rdx,8),%xmm9
9086  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
9087  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
9088  DB  196,193,113,97,217                  ; vpunpcklwd    %xmm9,%xmm1,%xmm3
9089  DB  196,193,113,105,201                 ; vpunpckhwd    %xmm9,%xmm1,%xmm1
9090  DB  197,121,97,250                      ; vpunpcklwd    %xmm2,%xmm0,%xmm15
9091  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
9092  DB  197,225,97,209                      ; vpunpcklwd    %xmm1,%xmm3,%xmm2
9093  DB  197,97,105,201                      ; vpunpckhwd    %xmm1,%xmm3,%xmm9
9094  DB  197,129,108,194                     ; vpunpcklqdq   %xmm2,%xmm15,%xmm0
9095  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
9096  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
9097  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
9098  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
9099  DB  196,98,125,24,37,109,36,0,0         ; vbroadcastss  0x246d(%rip),%ymm12        # 6934 <_sk_callback_avx+0x430>
9100  DB  196,193,124,84,204                  ; vandps        %ymm12,%ymm0,%ymm1
9101  DB  197,252,87,193                      ; vxorps        %ymm1,%ymm0,%ymm0
9102  DB  196,195,125,25,198,1                ; vextractf128  $0x1,%ymm0,%xmm14
9103  DB  196,98,121,24,29,89,36,0,0          ; vbroadcastss  0x2459(%rip),%xmm11        # 6938 <_sk_callback_avx+0x434>
9104  DB  196,193,8,87,219                    ; vxorps        %xmm11,%xmm14,%xmm3
9105  DB  196,98,121,24,45,79,36,0,0          ; vbroadcastss  0x244f(%rip),%xmm13        # 693c <_sk_callback_avx+0x438>
9106  DB  197,145,102,219                     ; vpcmpgtd      %xmm3,%xmm13,%xmm3
9107  DB  196,65,120,87,211                   ; vxorps        %xmm11,%xmm0,%xmm10
9108  DB  196,65,17,102,210                   ; vpcmpgtd      %xmm10,%xmm13,%xmm10
9109  DB  196,99,45,24,211,1                  ; vinsertf128   $0x1,%xmm3,%ymm10,%ymm10
9110  DB  197,225,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm3
9111  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
9112  DB  197,241,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm1
9113  DB  196,227,101,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm1
9114  DB  197,249,114,240,13                  ; vpslld        $0xd,%xmm0,%xmm0
9115  DB  196,193,97,114,246,13               ; vpslld        $0xd,%xmm14,%xmm3
9116  DB  196,227,125,24,195,1                ; vinsertf128   $0x1,%xmm3,%ymm0,%ymm0
9117  DB  197,252,86,193                      ; vorps         %ymm1,%ymm0,%ymm0
9118  DB  196,227,125,25,193,1                ; vextractf128  $0x1,%ymm0,%xmm1
9119  DB  196,226,121,24,29,5,36,0,0          ; vbroadcastss  0x2405(%rip),%xmm3        # 6940 <_sk_callback_avx+0x43c>
9120  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
9121  DB  197,249,254,195                     ; vpaddd        %xmm3,%xmm0,%xmm0
9122  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
9123  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
9124  DB  196,195,125,74,198,160              ; vblendvps     %ymm10,%ymm14,%ymm0,%ymm0
9125  DB  197,129,109,202                     ; vpunpckhqdq   %xmm2,%xmm15,%xmm1
9126  DB  197,217,239,228                     ; vpxor         %xmm4,%xmm4,%xmm4
9127  DB  197,241,105,212                     ; vpunpckhwd    %xmm4,%xmm1,%xmm2
9128  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
9129  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9130  DB  196,193,116,84,212                  ; vandps        %ymm12,%ymm1,%ymm2
9131  DB  197,244,87,202                      ; vxorps        %ymm2,%ymm1,%ymm1
9132  DB  196,195,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm10
9133  DB  196,193,40,87,251                   ; vxorps        %xmm11,%xmm10,%xmm7
9134  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
9135  DB  196,193,112,87,243                  ; vxorps        %xmm11,%xmm1,%xmm6
9136  DB  197,145,102,246                     ; vpcmpgtd      %xmm6,%xmm13,%xmm6
9137  DB  196,227,77,24,247,1                 ; vinsertf128   $0x1,%xmm7,%ymm6,%ymm6
9138  DB  197,193,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm7
9139  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
9140  DB  197,233,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm2
9141  DB  196,227,69,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm7,%ymm2
9142  DB  197,241,114,241,13                  ; vpslld        $0xd,%xmm1,%xmm1
9143  DB  196,193,65,114,242,13               ; vpslld        $0xd,%xmm10,%xmm7
9144  DB  196,227,117,24,207,1                ; vinsertf128   $0x1,%xmm7,%ymm1,%ymm1
9145  DB  197,244,86,202                      ; vorps         %ymm2,%ymm1,%ymm1
9146  DB  196,227,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm2
9147  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
9148  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
9149  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9150  DB  196,195,117,74,206,96               ; vblendvps     %ymm6,%ymm14,%ymm1,%ymm1
9151  DB  196,193,57,108,209                  ; vpunpcklqdq   %xmm9,%xmm8,%xmm2
9152  DB  197,233,105,244                     ; vpunpckhwd    %xmm4,%xmm2,%xmm6
9153  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
9154  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
9155  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
9156  DB  196,193,108,84,244                  ; vandps        %ymm12,%ymm2,%ymm6
9157  DB  197,236,87,214                      ; vxorps        %ymm6,%ymm2,%ymm2
9158  DB  196,227,125,25,215,1                ; vextractf128  $0x1,%ymm2,%xmm7
9159  DB  196,193,64,87,235                   ; vxorps        %xmm11,%xmm7,%xmm5
9160  DB  197,145,102,237                     ; vpcmpgtd      %xmm5,%xmm13,%xmm5
9161  DB  196,193,104,87,227                  ; vxorps        %xmm11,%xmm2,%xmm4
9162  DB  197,145,102,228                     ; vpcmpgtd      %xmm4,%xmm13,%xmm4
9163  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
9164  DB  197,209,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm5
9165  DB  196,227,125,25,246,1                ; vextractf128  $0x1,%ymm6,%xmm6
9166  DB  197,201,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm6
9167  DB  196,227,85,24,238,1                 ; vinsertf128   $0x1,%xmm6,%ymm5,%ymm5
9168  DB  197,233,114,242,13                  ; vpslld        $0xd,%xmm2,%xmm2
9169  DB  197,201,114,247,13                  ; vpslld        $0xd,%xmm7,%xmm6
9170  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
9171  DB  197,236,86,213                      ; vorps         %ymm5,%ymm2,%ymm2
9172  DB  196,227,125,25,213,1                ; vextractf128  $0x1,%ymm2,%xmm5
9173  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
9174  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
9175  DB  196,227,109,24,213,1                ; vinsertf128   $0x1,%xmm5,%ymm2,%ymm2
9176  DB  196,195,109,74,214,64               ; vblendvps     %ymm4,%ymm14,%ymm2,%ymm2
9177  DB  196,193,57,109,225                  ; vpunpckhqdq   %xmm9,%xmm8,%xmm4
9178  DB  196,193,89,105,234                  ; vpunpckhwd    %xmm10,%xmm4,%xmm5
9179  DB  196,226,121,51,228                  ; vpmovzxwd     %xmm4,%xmm4
9180  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
9181  DB  196,193,92,84,236                   ; vandps        %ymm12,%ymm4,%ymm5
9182  DB  197,220,87,229                      ; vxorps        %ymm5,%ymm4,%ymm4
9183  DB  196,227,125,25,230,1                ; vextractf128  $0x1,%ymm4,%xmm6
9184  DB  196,193,72,87,251                   ; vxorps        %xmm11,%xmm6,%xmm7
9185  DB  197,17,102,199                      ; vpcmpgtd      %xmm7,%xmm13,%xmm8
9186  DB  196,193,88,87,251                   ; vxorps        %xmm11,%xmm4,%xmm7
9187  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
9188  DB  196,195,69,24,248,1                 ; vinsertf128   $0x1,%xmm8,%ymm7,%ymm7
9189  DB  197,185,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm8
9190  DB  196,227,125,25,237,1                ; vextractf128  $0x1,%ymm5,%xmm5
9191  DB  197,209,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm5
9192  DB  196,227,61,24,237,1                 ; vinsertf128   $0x1,%xmm5,%ymm8,%ymm5
9193  DB  197,217,114,244,13                  ; vpslld        $0xd,%xmm4,%xmm4
9194  DB  197,201,114,246,13                  ; vpslld        $0xd,%xmm6,%xmm6
9195  DB  196,227,93,24,230,1                 ; vinsertf128   $0x1,%xmm6,%ymm4,%ymm4
9196  DB  197,220,86,229                      ; vorps         %ymm5,%ymm4,%ymm4
9197  DB  196,227,125,25,229,1                ; vextractf128  $0x1,%ymm4,%xmm5
9198  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
9199  DB  197,217,254,219                     ; vpaddd        %xmm3,%xmm4,%xmm3
9200  DB  196,227,101,24,221,1                ; vinsertf128   $0x1,%xmm5,%ymm3,%ymm3
9201  DB  196,195,101,74,222,112              ; vblendvps     %ymm7,%ymm14,%ymm3,%ymm3
9202  DB  72,173                              ; lods          %ds:(%rsi),%rax
9203  DB  197,252,16,36,36                    ; vmovups       (%rsp),%ymm4
9204  DB  197,252,16,108,36,32                ; vmovups       0x20(%rsp),%ymm5
9205  DB  197,252,16,116,36,64                ; vmovups       0x40(%rsp),%ymm6
9206  DB  197,252,16,124,36,96                ; vmovups       0x60(%rsp),%ymm7
9207  DB  72,129,196,152,0,0,0                ; add           $0x98,%rsp
9208  DB  255,224                             ; jmpq          *%rax
9209  DB  197,123,16,4,208                    ; vmovsd        (%rax,%rdx,8),%xmm8
9210  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
9211  DB  73,131,248,1                        ; cmp           $0x1,%r8
9212  DB  116,79                              ; je            475c <_sk_load_f16_avx+0x31a>
9213  DB  197,57,22,68,208,8                  ; vmovhpd       0x8(%rax,%rdx,8),%xmm8,%xmm8
9214  DB  73,131,248,3                        ; cmp           $0x3,%r8
9215  DB  114,67                              ; jb            475c <_sk_load_f16_avx+0x31a>
9216  DB  197,251,16,84,208,16                ; vmovsd        0x10(%rax,%rdx,8),%xmm2
9217  DB  73,131,248,3                        ; cmp           $0x3,%r8
9218  DB  116,68                              ; je            4769 <_sk_load_f16_avx+0x327>
9219  DB  197,233,22,84,208,24                ; vmovhpd       0x18(%rax,%rdx,8),%xmm2,%xmm2
9220  DB  73,131,248,5                        ; cmp           $0x5,%r8
9221  DB  114,56                              ; jb            4769 <_sk_load_f16_avx+0x327>
9222  DB  197,251,16,76,208,32                ; vmovsd        0x20(%rax,%rdx,8),%xmm1
9223  DB  73,131,248,5                        ; cmp           $0x5,%r8
9224  DB  15,132,68,253,255,255               ; je            4485 <_sk_load_f16_avx+0x43>
9225  DB  197,241,22,76,208,40                ; vmovhpd       0x28(%rax,%rdx,8),%xmm1,%xmm1
9226  DB  73,131,248,7                        ; cmp           $0x7,%r8
9227  DB  15,130,52,253,255,255               ; jb            4485 <_sk_load_f16_avx+0x43>
9228  DB  197,122,126,76,208,48               ; vmovq         0x30(%rax,%rdx,8),%xmm9
9229  DB  233,41,253,255,255                  ; jmpq          4485 <_sk_load_f16_avx+0x43>
9230  DB  197,241,87,201                      ; vxorpd        %xmm1,%xmm1,%xmm1
9231  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
9232  DB  233,28,253,255,255                  ; jmpq          4485 <_sk_load_f16_avx+0x43>
9233  DB  197,241,87,201                      ; vxorpd        %xmm1,%xmm1,%xmm1
9234  DB  233,19,253,255,255                  ; jmpq          4485 <_sk_load_f16_avx+0x43>
9235
9236PUBLIC _sk_gather_f16_avx
9237_sk_gather_f16_avx LABEL PROC
9238  DB  72,129,236,152,0,0,0                ; sub           $0x98,%rsp
9239  DB  197,252,17,124,36,96                ; vmovups       %ymm7,0x60(%rsp)
9240  DB  197,252,17,116,36,64                ; vmovups       %ymm6,0x40(%rsp)
9241  DB  197,252,17,108,36,32                ; vmovups       %ymm5,0x20(%rsp)
9242  DB  197,254,127,36,36                   ; vmovdqu       %ymm4,(%rsp)
9243  DB  72,173                              ; lods          %ds:(%rsi),%rax
9244  DB  76,139,8                            ; mov           (%rax),%r9
9245  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
9246  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
9247  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
9248  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
9249  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
9250  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
9251  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
9252  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
9253  DB  197,113,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm8
9254  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
9255  DB  196,225,249,126,200                 ; vmovq         %xmm1,%rax
9256  DB  65,137,194                          ; mov           %eax,%r10d
9257  DB  72,193,232,32                       ; shr           $0x20,%rax
9258  DB  196,65,122,126,12,193               ; vmovq         (%r9,%rax,8),%xmm9
9259  DB  196,227,249,22,200,1                ; vpextrq       $0x1,%xmm1,%rax
9260  DB  196,1,122,126,20,209                ; vmovq         (%r9,%r10,8),%xmm10
9261  DB  65,137,194                          ; mov           %eax,%r10d
9262  DB  72,193,232,32                       ; shr           $0x20,%rax
9263  DB  196,65,122,126,28,193               ; vmovq         (%r9,%rax,8),%xmm11
9264  DB  196,97,249,126,192                  ; vmovq         %xmm8,%rax
9265  DB  196,1,122,126,36,209                ; vmovq         (%r9,%r10,8),%xmm12
9266  DB  65,137,194                          ; mov           %eax,%r10d
9267  DB  72,193,232,32                       ; shr           $0x20,%rax
9268  DB  196,65,122,126,44,193               ; vmovq         (%r9,%rax,8),%xmm13
9269  DB  196,67,249,22,195,1                 ; vpextrq       $0x1,%xmm8,%r11
9270  DB  196,1,122,126,4,209                 ; vmovq         (%r9,%r10,8),%xmm8
9271  DB  76,137,216                          ; mov           %r11,%rax
9272  DB  72,193,232,32                       ; shr           $0x20,%rax
9273  DB  196,65,122,126,52,193               ; vmovq         (%r9,%rax,8),%xmm14
9274  DB  68,137,216                          ; mov           %r11d,%eax
9275  DB  196,193,122,126,4,193               ; vmovq         (%r9,%rax,8),%xmm0
9276  DB  196,193,41,108,209                  ; vpunpcklqdq   %xmm9,%xmm10,%xmm2
9277  DB  196,193,25,108,203                  ; vpunpcklqdq   %xmm11,%xmm12,%xmm1
9278  DB  196,193,57,108,221                  ; vpunpcklqdq   %xmm13,%xmm8,%xmm3
9279  DB  196,193,121,108,198                 ; vpunpcklqdq   %xmm14,%xmm0,%xmm0
9280  DB  197,105,97,193                      ; vpunpcklwd    %xmm1,%xmm2,%xmm8
9281  DB  197,233,105,209                     ; vpunpckhwd    %xmm1,%xmm2,%xmm2
9282  DB  197,225,97,200                      ; vpunpcklwd    %xmm0,%xmm3,%xmm1
9283  DB  197,225,105,192                     ; vpunpckhwd    %xmm0,%xmm3,%xmm0
9284  DB  197,57,97,250                       ; vpunpcklwd    %xmm2,%xmm8,%xmm15
9285  DB  197,57,105,194                      ; vpunpckhwd    %xmm2,%xmm8,%xmm8
9286  DB  197,241,97,208                      ; vpunpcklwd    %xmm0,%xmm1,%xmm2
9287  DB  197,113,105,200                     ; vpunpckhwd    %xmm0,%xmm1,%xmm9
9288  DB  197,129,108,194                     ; vpunpcklqdq   %xmm2,%xmm15,%xmm0
9289  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
9290  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
9291  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
9292  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
9293  DB  196,98,125,24,37,198,32,0,0         ; vbroadcastss  0x20c6(%rip),%ymm12        # 6944 <_sk_callback_avx+0x440>
9294  DB  196,193,124,84,204                  ; vandps        %ymm12,%ymm0,%ymm1
9295  DB  197,252,87,193                      ; vxorps        %ymm1,%ymm0,%ymm0
9296  DB  196,195,125,25,198,1                ; vextractf128  $0x1,%ymm0,%xmm14
9297  DB  196,98,121,24,29,178,32,0,0         ; vbroadcastss  0x20b2(%rip),%xmm11        # 6948 <_sk_callback_avx+0x444>
9298  DB  196,193,8,87,219                    ; vxorps        %xmm11,%xmm14,%xmm3
9299  DB  196,98,121,24,45,168,32,0,0         ; vbroadcastss  0x20a8(%rip),%xmm13        # 694c <_sk_callback_avx+0x448>
9300  DB  197,145,102,219                     ; vpcmpgtd      %xmm3,%xmm13,%xmm3
9301  DB  196,65,120,87,211                   ; vxorps        %xmm11,%xmm0,%xmm10
9302  DB  196,65,17,102,210                   ; vpcmpgtd      %xmm10,%xmm13,%xmm10
9303  DB  196,99,45,24,211,1                  ; vinsertf128   $0x1,%xmm3,%ymm10,%ymm10
9304  DB  197,225,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm3
9305  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
9306  DB  197,241,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm1
9307  DB  196,227,101,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm1
9308  DB  197,249,114,240,13                  ; vpslld        $0xd,%xmm0,%xmm0
9309  DB  196,193,97,114,246,13               ; vpslld        $0xd,%xmm14,%xmm3
9310  DB  196,227,125,24,195,1                ; vinsertf128   $0x1,%xmm3,%ymm0,%ymm0
9311  DB  197,252,86,193                      ; vorps         %ymm1,%ymm0,%ymm0
9312  DB  196,227,125,25,193,1                ; vextractf128  $0x1,%ymm0,%xmm1
9313  DB  196,226,121,24,29,94,32,0,0         ; vbroadcastss  0x205e(%rip),%xmm3        # 6950 <_sk_callback_avx+0x44c>
9314  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
9315  DB  197,249,254,195                     ; vpaddd        %xmm3,%xmm0,%xmm0
9316  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
9317  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
9318  DB  196,195,125,74,198,160              ; vblendvps     %ymm10,%ymm14,%ymm0,%ymm0
9319  DB  197,129,109,202                     ; vpunpckhqdq   %xmm2,%xmm15,%xmm1
9320  DB  197,217,239,228                     ; vpxor         %xmm4,%xmm4,%xmm4
9321  DB  197,241,105,212                     ; vpunpckhwd    %xmm4,%xmm1,%xmm2
9322  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
9323  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9324  DB  196,193,116,84,212                  ; vandps        %ymm12,%ymm1,%ymm2
9325  DB  197,244,87,202                      ; vxorps        %ymm2,%ymm1,%ymm1
9326  DB  196,195,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm10
9327  DB  196,193,40,87,251                   ; vxorps        %xmm11,%xmm10,%xmm7
9328  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
9329  DB  196,193,112,87,243                  ; vxorps        %xmm11,%xmm1,%xmm6
9330  DB  197,145,102,246                     ; vpcmpgtd      %xmm6,%xmm13,%xmm6
9331  DB  196,227,77,24,247,1                 ; vinsertf128   $0x1,%xmm7,%ymm6,%ymm6
9332  DB  197,193,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm7
9333  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
9334  DB  197,233,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm2
9335  DB  196,227,69,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm7,%ymm2
9336  DB  197,241,114,241,13                  ; vpslld        $0xd,%xmm1,%xmm1
9337  DB  196,193,65,114,242,13               ; vpslld        $0xd,%xmm10,%xmm7
9338  DB  196,227,117,24,207,1                ; vinsertf128   $0x1,%xmm7,%ymm1,%ymm1
9339  DB  197,244,86,202                      ; vorps         %ymm2,%ymm1,%ymm1
9340  DB  196,227,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm2
9341  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
9342  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
9343  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9344  DB  196,195,117,74,206,96               ; vblendvps     %ymm6,%ymm14,%ymm1,%ymm1
9345  DB  196,193,57,108,209                  ; vpunpcklqdq   %xmm9,%xmm8,%xmm2
9346  DB  197,233,105,244                     ; vpunpckhwd    %xmm4,%xmm2,%xmm6
9347  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
9348  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
9349  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
9350  DB  196,193,108,84,244                  ; vandps        %ymm12,%ymm2,%ymm6
9351  DB  197,236,87,214                      ; vxorps        %ymm6,%ymm2,%ymm2
9352  DB  196,227,125,25,215,1                ; vextractf128  $0x1,%ymm2,%xmm7
9353  DB  196,193,64,87,235                   ; vxorps        %xmm11,%xmm7,%xmm5
9354  DB  197,145,102,237                     ; vpcmpgtd      %xmm5,%xmm13,%xmm5
9355  DB  196,193,104,87,227                  ; vxorps        %xmm11,%xmm2,%xmm4
9356  DB  197,145,102,228                     ; vpcmpgtd      %xmm4,%xmm13,%xmm4
9357  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
9358  DB  197,209,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm5
9359  DB  196,227,125,25,246,1                ; vextractf128  $0x1,%ymm6,%xmm6
9360  DB  197,201,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm6
9361  DB  196,227,85,24,238,1                 ; vinsertf128   $0x1,%xmm6,%ymm5,%ymm5
9362  DB  197,233,114,242,13                  ; vpslld        $0xd,%xmm2,%xmm2
9363  DB  197,201,114,247,13                  ; vpslld        $0xd,%xmm7,%xmm6
9364  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
9365  DB  197,236,86,213                      ; vorps         %ymm5,%ymm2,%ymm2
9366  DB  196,227,125,25,213,1                ; vextractf128  $0x1,%ymm2,%xmm5
9367  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
9368  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
9369  DB  196,227,109,24,213,1                ; vinsertf128   $0x1,%xmm5,%ymm2,%ymm2
9370  DB  196,195,109,74,214,64               ; vblendvps     %ymm4,%ymm14,%ymm2,%ymm2
9371  DB  196,193,57,109,225                  ; vpunpckhqdq   %xmm9,%xmm8,%xmm4
9372  DB  196,193,89,105,234                  ; vpunpckhwd    %xmm10,%xmm4,%xmm5
9373  DB  196,226,121,51,228                  ; vpmovzxwd     %xmm4,%xmm4
9374  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
9375  DB  196,193,92,84,236                   ; vandps        %ymm12,%ymm4,%ymm5
9376  DB  197,220,87,229                      ; vxorps        %ymm5,%ymm4,%ymm4
9377  DB  196,227,125,25,230,1                ; vextractf128  $0x1,%ymm4,%xmm6
9378  DB  196,193,72,87,251                   ; vxorps        %xmm11,%xmm6,%xmm7
9379  DB  197,17,102,199                      ; vpcmpgtd      %xmm7,%xmm13,%xmm8
9380  DB  196,193,88,87,251                   ; vxorps        %xmm11,%xmm4,%xmm7
9381  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
9382  DB  196,195,69,24,248,1                 ; vinsertf128   $0x1,%xmm8,%ymm7,%ymm7
9383  DB  197,185,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm8
9384  DB  196,227,125,25,237,1                ; vextractf128  $0x1,%ymm5,%xmm5
9385  DB  197,209,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm5
9386  DB  196,227,61,24,237,1                 ; vinsertf128   $0x1,%xmm5,%ymm8,%ymm5
9387  DB  197,217,114,244,13                  ; vpslld        $0xd,%xmm4,%xmm4
9388  DB  197,201,114,246,13                  ; vpslld        $0xd,%xmm6,%xmm6
9389  DB  196,227,93,24,230,1                 ; vinsertf128   $0x1,%xmm6,%ymm4,%ymm4
9390  DB  197,220,86,229                      ; vorps         %ymm5,%ymm4,%ymm4
9391  DB  196,227,125,25,229,1                ; vextractf128  $0x1,%ymm4,%xmm5
9392  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
9393  DB  197,217,254,219                     ; vpaddd        %xmm3,%xmm4,%xmm3
9394  DB  196,227,101,24,221,1                ; vinsertf128   $0x1,%xmm5,%ymm3,%ymm3
9395  DB  196,195,101,74,222,112              ; vblendvps     %ymm7,%ymm14,%ymm3,%ymm3
9396  DB  72,173                              ; lods          %ds:(%rsi),%rax
9397  DB  197,252,16,36,36                    ; vmovups       (%rsp),%ymm4
9398  DB  197,252,16,108,36,32                ; vmovups       0x20(%rsp),%ymm5
9399  DB  197,252,16,116,36,64                ; vmovups       0x40(%rsp),%ymm6
9400  DB  197,252,16,124,36,96                ; vmovups       0x60(%rsp),%ymm7
9401  DB  72,129,196,152,0,0,0                ; add           $0x98,%rsp
9402  DB  255,224                             ; jmpq          *%rax
9403
9404PUBLIC _sk_store_f16_avx
9405_sk_store_f16_avx LABEL PROC
9406  DB  72,129,236,216,0,0,0                ; sub           $0xd8,%rsp
9407  DB  197,252,17,188,36,160,0,0,0         ; vmovups       %ymm7,0xa0(%rsp)
9408  DB  197,252,17,180,36,128,0,0,0         ; vmovups       %ymm6,0x80(%rsp)
9409  DB  197,252,17,108,36,96                ; vmovups       %ymm5,0x60(%rsp)
9410  DB  197,252,17,100,36,64                ; vmovups       %ymm4,0x40(%rsp)
9411  DB  196,98,125,24,13,114,30,0,0         ; vbroadcastss  0x1e72(%rip),%ymm9        # 6954 <_sk_callback_avx+0x450>
9412  DB  196,65,124,84,209                   ; vandps        %ymm9,%ymm0,%ymm10
9413  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
9414  DB  196,65,124,87,218                   ; vxorps        %ymm10,%ymm0,%ymm11
9415  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
9416  DB  196,98,121,24,5,88,30,0,0           ; vbroadcastss  0x1e58(%rip),%xmm8        # 6958 <_sk_callback_avx+0x454>
9417  DB  196,65,57,102,236                   ; vpcmpgtd      %xmm12,%xmm8,%xmm13
9418  DB  196,65,57,102,243                   ; vpcmpgtd      %xmm11,%xmm8,%xmm14
9419  DB  196,67,13,24,237,1                  ; vinsertf128   $0x1,%xmm13,%ymm14,%ymm13
9420  DB  196,193,9,114,210,16                ; vpsrld        $0x10,%xmm10,%xmm14
9421  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
9422  DB  196,193,41,114,210,16               ; vpsrld        $0x10,%xmm10,%xmm10
9423  DB  196,67,13,24,242,1                  ; vinsertf128   $0x1,%xmm10,%ymm14,%ymm14
9424  DB  196,193,33,114,211,13               ; vpsrld        $0xd,%xmm11,%xmm11
9425  DB  196,193,25,114,212,13               ; vpsrld        $0xd,%xmm12,%xmm12
9426  DB  196,98,125,24,21,31,30,0,0          ; vbroadcastss  0x1e1f(%rip),%ymm10        # 695c <_sk_callback_avx+0x458>
9427  DB  196,65,12,86,242                    ; vorps         %ymm10,%ymm14,%ymm14
9428  DB  196,67,125,25,247,1                 ; vextractf128  $0x1,%ymm14,%xmm15
9429  DB  196,65,1,254,228                    ; vpaddd        %xmm12,%xmm15,%xmm12
9430  DB  196,65,9,254,219                    ; vpaddd        %xmm11,%xmm14,%xmm11
9431  DB  196,67,37,24,228,1                  ; vinsertf128   $0x1,%xmm12,%ymm11,%ymm12
9432  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
9433  DB  196,99,29,74,224,208                ; vblendvps     %ymm13,%ymm0,%ymm12,%ymm12
9434  DB  196,65,116,84,233                   ; vandps        %ymm9,%ymm1,%ymm13
9435  DB  197,252,17,76,36,32                 ; vmovups       %ymm1,0x20(%rsp)
9436  DB  196,65,116,87,245                   ; vxorps        %ymm13,%ymm1,%ymm14
9437  DB  196,67,125,25,247,1                 ; vextractf128  $0x1,%ymm14,%xmm15
9438  DB  196,193,57,102,255                  ; vpcmpgtd      %xmm15,%xmm8,%xmm7
9439  DB  196,65,57,102,222                   ; vpcmpgtd      %xmm14,%xmm8,%xmm11
9440  DB  196,227,37,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm11,%ymm7
9441  DB  196,193,33,114,213,16               ; vpsrld        $0x10,%xmm13,%xmm11
9442  DB  196,99,125,25,238,1                 ; vextractf128  $0x1,%ymm13,%xmm6
9443  DB  197,201,114,214,16                  ; vpsrld        $0x10,%xmm6,%xmm6
9444  DB  196,227,37,24,246,1                 ; vinsertf128   $0x1,%xmm6,%ymm11,%ymm6
9445  DB  196,193,33,114,215,13               ; vpsrld        $0xd,%xmm15,%xmm11
9446  DB  196,193,76,86,242                   ; vorps         %ymm10,%ymm6,%ymm6
9447  DB  196,227,125,25,245,1                ; vextractf128  $0x1,%ymm6,%xmm5
9448  DB  196,193,81,254,235                  ; vpaddd        %xmm11,%xmm5,%xmm5
9449  DB  196,193,89,114,214,13               ; vpsrld        $0xd,%xmm14,%xmm4
9450  DB  197,201,254,228                     ; vpaddd        %xmm4,%xmm6,%xmm4
9451  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
9452  DB  196,99,93,74,232,112                ; vblendvps     %ymm7,%ymm0,%ymm4,%ymm13
9453  DB  196,193,108,84,225                  ; vandps        %ymm9,%ymm2,%ymm4
9454  DB  197,236,87,236                      ; vxorps        %ymm4,%ymm2,%ymm5
9455  DB  196,227,125,25,238,1                ; vextractf128  $0x1,%ymm5,%xmm6
9456  DB  197,185,102,254                     ; vpcmpgtd      %xmm6,%xmm8,%xmm7
9457  DB  197,57,102,221                      ; vpcmpgtd      %xmm5,%xmm8,%xmm11
9458  DB  196,227,37,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm11,%ymm7
9459  DB  197,161,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm11
9460  DB  196,227,125,25,228,1                ; vextractf128  $0x1,%ymm4,%xmm4
9461  DB  197,217,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm4
9462  DB  196,227,37,24,228,1                 ; vinsertf128   $0x1,%xmm4,%ymm11,%ymm4
9463  DB  197,201,114,214,13                  ; vpsrld        $0xd,%xmm6,%xmm6
9464  DB  196,193,92,86,226                   ; vorps         %ymm10,%ymm4,%ymm4
9465  DB  196,227,125,25,225,1                ; vextractf128  $0x1,%ymm4,%xmm1
9466  DB  197,241,254,206                     ; vpaddd        %xmm6,%xmm1,%xmm1
9467  DB  197,209,114,213,13                  ; vpsrld        $0xd,%xmm5,%xmm5
9468  DB  197,217,254,229                     ; vpaddd        %xmm5,%xmm4,%xmm4
9469  DB  196,227,93,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm4,%ymm1
9470  DB  196,99,117,74,216,112               ; vblendvps     %ymm7,%ymm0,%ymm1,%ymm11
9471  DB  196,193,100,84,225                  ; vandps        %ymm9,%ymm3,%ymm4
9472  DB  197,228,87,236                      ; vxorps        %ymm4,%ymm3,%ymm5
9473  DB  196,227,125,25,238,1                ; vextractf128  $0x1,%ymm5,%xmm6
9474  DB  197,185,102,254                     ; vpcmpgtd      %xmm6,%xmm8,%xmm7
9475  DB  197,57,102,197                      ; vpcmpgtd      %xmm5,%xmm8,%xmm8
9476  DB  196,227,61,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm8,%ymm7
9477  DB  197,185,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm8
9478  DB  196,227,125,25,228,1                ; vextractf128  $0x1,%ymm4,%xmm4
9479  DB  197,217,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm4
9480  DB  196,227,61,24,228,1                 ; vinsertf128   $0x1,%xmm4,%ymm8,%ymm4
9481  DB  196,193,92,86,226                   ; vorps         %ymm10,%ymm4,%ymm4
9482  DB  197,201,114,214,13                  ; vpsrld        $0xd,%xmm6,%xmm6
9483  DB  196,227,125,25,225,1                ; vextractf128  $0x1,%ymm4,%xmm1
9484  DB  197,241,254,206                     ; vpaddd        %xmm6,%xmm1,%xmm1
9485  DB  197,209,114,213,13                  ; vpsrld        $0xd,%xmm5,%xmm5
9486  DB  197,217,254,229                     ; vpaddd        %xmm5,%xmm4,%xmm4
9487  DB  196,227,93,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm4,%ymm1
9488  DB  196,227,117,74,200,112              ; vblendvps     %ymm7,%ymm0,%ymm1,%ymm1
9489  DB  196,99,125,25,224,1                 ; vextractf128  $0x1,%ymm12,%xmm0
9490  DB  196,226,25,43,192                   ; vpackusdw     %xmm0,%xmm12,%xmm0
9491  DB  196,99,125,25,236,1                 ; vextractf128  $0x1,%ymm13,%xmm4
9492  DB  196,226,17,43,228                   ; vpackusdw     %xmm4,%xmm13,%xmm4
9493  DB  196,99,125,25,221,1                 ; vextractf128  $0x1,%ymm11,%xmm5
9494  DB  196,226,33,43,245                   ; vpackusdw     %xmm5,%xmm11,%xmm6
9495  DB  196,227,125,25,205,1                ; vextractf128  $0x1,%ymm1,%xmm5
9496  DB  196,226,113,43,205                  ; vpackusdw     %xmm5,%xmm1,%xmm1
9497  DB  197,249,97,236                      ; vpunpcklwd    %xmm4,%xmm0,%xmm5
9498  DB  197,249,105,196                     ; vpunpckhwd    %xmm4,%xmm0,%xmm0
9499  DB  197,201,97,225                      ; vpunpcklwd    %xmm1,%xmm6,%xmm4
9500  DB  197,201,105,201                     ; vpunpckhwd    %xmm1,%xmm6,%xmm1
9501  DB  197,81,98,220                       ; vpunpckldq    %xmm4,%xmm5,%xmm11
9502  DB  197,81,106,212                      ; vpunpckhdq    %xmm4,%xmm5,%xmm10
9503  DB  197,121,98,201                      ; vpunpckldq    %xmm1,%xmm0,%xmm9
9504  DB  197,121,106,193                     ; vpunpckhdq    %xmm1,%xmm0,%xmm8
9505  DB  72,173                              ; lods          %ds:(%rsi),%rax
9506  DB  72,139,0                            ; mov           (%rax),%rax
9507  DB  77,133,192                          ; test          %r8,%r8
9508  DB  117,75                              ; jne           4d24 <_sk_store_f16_avx+0x270>
9509  DB  197,120,17,28,208                   ; vmovups       %xmm11,(%rax,%rdx,8)
9510  DB  197,120,17,84,208,16                ; vmovups       %xmm10,0x10(%rax,%rdx,8)
9511  DB  197,120,17,76,208,32                ; vmovups       %xmm9,0x20(%rax,%rdx,8)
9512  DB  197,122,127,68,208,48               ; vmovdqu       %xmm8,0x30(%rax,%rdx,8)
9513  DB  72,173                              ; lods          %ds:(%rsi),%rax
9514  DB  197,252,16,4,36                     ; vmovups       (%rsp),%ymm0
9515  DB  197,252,16,76,36,32                 ; vmovups       0x20(%rsp),%ymm1
9516  DB  197,252,16,100,36,64                ; vmovups       0x40(%rsp),%ymm4
9517  DB  197,252,16,108,36,96                ; vmovups       0x60(%rsp),%ymm5
9518  DB  197,252,16,180,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm6
9519  DB  197,252,16,188,36,160,0,0,0         ; vmovups       0xa0(%rsp),%ymm7
9520  DB  72,129,196,216,0,0,0                ; add           $0xd8,%rsp
9521  DB  255,224                             ; jmpq          *%rax
9522  DB  197,121,214,28,208                  ; vmovq         %xmm11,(%rax,%rdx,8)
9523  DB  73,131,248,1                        ; cmp           $0x1,%r8
9524  DB  116,193                             ; je            4cf0 <_sk_store_f16_avx+0x23c>
9525  DB  197,121,23,92,208,8                 ; vmovhpd       %xmm11,0x8(%rax,%rdx,8)
9526  DB  73,131,248,3                        ; cmp           $0x3,%r8
9527  DB  114,181                             ; jb            4cf0 <_sk_store_f16_avx+0x23c>
9528  DB  197,121,214,84,208,16               ; vmovq         %xmm10,0x10(%rax,%rdx,8)
9529  DB  116,173                             ; je            4cf0 <_sk_store_f16_avx+0x23c>
9530  DB  197,121,23,84,208,24                ; vmovhpd       %xmm10,0x18(%rax,%rdx,8)
9531  DB  73,131,248,5                        ; cmp           $0x5,%r8
9532  DB  114,161                             ; jb            4cf0 <_sk_store_f16_avx+0x23c>
9533  DB  197,121,214,76,208,32               ; vmovq         %xmm9,0x20(%rax,%rdx,8)
9534  DB  116,153                             ; je            4cf0 <_sk_store_f16_avx+0x23c>
9535  DB  197,121,23,76,208,40                ; vmovhpd       %xmm9,0x28(%rax,%rdx,8)
9536  DB  73,131,248,7                        ; cmp           $0x7,%r8
9537  DB  114,141                             ; jb            4cf0 <_sk_store_f16_avx+0x23c>
9538  DB  197,121,214,68,208,48               ; vmovq         %xmm8,0x30(%rax,%rdx,8)
9539  DB  235,133                             ; jmp           4cf0 <_sk_store_f16_avx+0x23c>
9540
9541PUBLIC _sk_load_u16_be_avx
9542_sk_load_u16_be_avx LABEL PROC
9543  DB  72,173                              ; lods          %ds:(%rsi),%rax
9544  DB  76,139,8                            ; mov           (%rax),%r9
9545  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
9546  DB  77,133,192                          ; test          %r8,%r8
9547  DB  15,133,253,0,0,0                    ; jne           4e7e <_sk_load_u16_be_avx+0x113>
9548  DB  196,65,121,16,4,65                  ; vmovupd       (%r9,%rax,2),%xmm8
9549  DB  196,193,121,16,84,65,16             ; vmovupd       0x10(%r9,%rax,2),%xmm2
9550  DB  196,193,121,16,92,65,32             ; vmovupd       0x20(%r9,%rax,2),%xmm3
9551  DB  196,65,122,111,76,65,48             ; vmovdqu       0x30(%r9,%rax,2),%xmm9
9552  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
9553  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
9554  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
9555  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
9556  DB  197,121,97,202                      ; vpunpcklwd    %xmm2,%xmm0,%xmm9
9557  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
9558  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
9559  DB  197,113,105,227                     ; vpunpckhwd    %xmm3,%xmm1,%xmm12
9560  DB  197,177,108,194                     ; vpunpcklqdq   %xmm2,%xmm9,%xmm0
9561  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
9562  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
9563  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
9564  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
9565  DB  196,193,121,105,202                 ; vpunpckhwd    %xmm10,%xmm0,%xmm1
9566  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
9567  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
9568  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
9569  DB  196,98,125,24,29,110,27,0,0         ; vbroadcastss  0x1b6e(%rip),%ymm11        # 6960 <_sk_callback_avx+0x45c>
9570  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
9571  DB  197,177,109,202                     ; vpunpckhqdq   %xmm2,%xmm9,%xmm1
9572  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
9573  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
9574  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
9575  DB  196,193,113,105,210                 ; vpunpckhwd    %xmm10,%xmm1,%xmm2
9576  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
9577  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9578  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
9579  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
9580  DB  196,193,57,108,212                  ; vpunpcklqdq   %xmm12,%xmm8,%xmm2
9581  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
9582  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
9583  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
9584  DB  196,193,105,105,218                 ; vpunpckhwd    %xmm10,%xmm2,%xmm3
9585  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
9586  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
9587  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
9588  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
9589  DB  196,193,57,109,220                  ; vpunpckhqdq   %xmm12,%xmm8,%xmm3
9590  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
9591  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
9592  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
9593  DB  196,65,97,105,194                   ; vpunpckhwd    %xmm10,%xmm3,%xmm8
9594  DB  196,226,121,51,219                  ; vpmovzxwd     %xmm3,%xmm3
9595  DB  196,195,101,24,216,1                ; vinsertf128   $0x1,%xmm8,%ymm3,%ymm3
9596  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
9597  DB  196,193,100,89,219                  ; vmulps        %ymm11,%ymm3,%ymm3
9598  DB  72,173                              ; lods          %ds:(%rsi),%rax
9599  DB  255,224                             ; jmpq          *%rax
9600  DB  196,65,123,16,4,65                  ; vmovsd        (%r9,%rax,2),%xmm8
9601  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
9602  DB  73,131,248,1                        ; cmp           $0x1,%r8
9603  DB  116,85                              ; je            4ee4 <_sk_load_u16_be_avx+0x179>
9604  DB  196,65,57,22,68,65,8                ; vmovhpd       0x8(%r9,%rax,2),%xmm8,%xmm8
9605  DB  73,131,248,3                        ; cmp           $0x3,%r8
9606  DB  114,72                              ; jb            4ee4 <_sk_load_u16_be_avx+0x179>
9607  DB  196,193,123,16,84,65,16             ; vmovsd        0x10(%r9,%rax,2),%xmm2
9608  DB  73,131,248,3                        ; cmp           $0x3,%r8
9609  DB  116,72                              ; je            4ef1 <_sk_load_u16_be_avx+0x186>
9610  DB  196,193,105,22,84,65,24             ; vmovhpd       0x18(%r9,%rax,2),%xmm2,%xmm2
9611  DB  73,131,248,5                        ; cmp           $0x5,%r8
9612  DB  114,59                              ; jb            4ef1 <_sk_load_u16_be_avx+0x186>
9613  DB  196,193,123,16,92,65,32             ; vmovsd        0x20(%r9,%rax,2),%xmm3
9614  DB  73,131,248,5                        ; cmp           $0x5,%r8
9615  DB  15,132,213,254,255,255              ; je            4d9c <_sk_load_u16_be_avx+0x31>
9616  DB  196,193,97,22,92,65,40              ; vmovhpd       0x28(%r9,%rax,2),%xmm3,%xmm3
9617  DB  73,131,248,7                        ; cmp           $0x7,%r8
9618  DB  15,130,196,254,255,255              ; jb            4d9c <_sk_load_u16_be_avx+0x31>
9619  DB  196,65,122,126,76,65,48             ; vmovq         0x30(%r9,%rax,2),%xmm9
9620  DB  233,184,254,255,255                 ; jmpq          4d9c <_sk_load_u16_be_avx+0x31>
9621  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
9622  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
9623  DB  233,171,254,255,255                 ; jmpq          4d9c <_sk_load_u16_be_avx+0x31>
9624  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
9625  DB  233,162,254,255,255                 ; jmpq          4d9c <_sk_load_u16_be_avx+0x31>
9626
9627PUBLIC _sk_load_rgb_u16_be_avx
9628_sk_load_rgb_u16_be_avx LABEL PROC
9629  DB  72,173                              ; lods          %ds:(%rsi),%rax
9630  DB  76,139,8                            ; mov           (%rax),%r9
9631  DB  72,141,4,82                         ; lea           (%rdx,%rdx,2),%rax
9632  DB  77,133,192                          ; test          %r8,%r8
9633  DB  15,133,243,0,0,0                    ; jne           4fff <_sk_load_rgb_u16_be_avx+0x105>
9634  DB  196,193,122,111,4,65                ; vmovdqu       (%r9,%rax,2),%xmm0
9635  DB  196,193,122,111,84,65,12            ; vmovdqu       0xc(%r9,%rax,2),%xmm2
9636  DB  196,193,122,111,76,65,24            ; vmovdqu       0x18(%r9,%rax,2),%xmm1
9637  DB  196,193,122,111,92,65,32            ; vmovdqu       0x20(%r9,%rax,2),%xmm3
9638  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
9639  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
9640  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
9641  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
9642  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
9643  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
9644  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
9645  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
9646  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
9647  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
9648  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
9649  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
9650  DB  197,113,105,211                     ; vpunpckhwd    %xmm3,%xmm1,%xmm10
9651  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
9652  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
9653  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
9654  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
9655  DB  196,65,25,239,228                   ; vpxor         %xmm12,%xmm12,%xmm12
9656  DB  196,193,121,105,204                 ; vpunpckhwd    %xmm12,%xmm0,%xmm1
9657  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
9658  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
9659  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
9660  DB  196,98,125,24,29,206,25,0,0         ; vbroadcastss  0x19ce(%rip),%ymm11        # 6964 <_sk_callback_avx+0x460>
9661  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
9662  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
9663  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
9664  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
9665  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
9666  DB  196,193,113,105,212                 ; vpunpckhwd    %xmm12,%xmm1,%xmm2
9667  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
9668  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9669  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
9670  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
9671  DB  196,193,49,108,210                  ; vpunpcklqdq   %xmm10,%xmm9,%xmm2
9672  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
9673  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
9674  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
9675  DB  196,193,105,105,220                 ; vpunpckhwd    %xmm12,%xmm2,%xmm3
9676  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
9677  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
9678  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
9679  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
9680  DB  72,173                              ; lods          %ds:(%rsi),%rax
9681  DB  196,226,125,24,29,107,25,0,0        ; vbroadcastss  0x196b(%rip),%ymm3        # 6968 <_sk_callback_avx+0x464>
9682  DB  255,224                             ; jmpq          *%rax
9683  DB  196,193,121,110,4,65                ; vmovd         (%r9,%rax,2),%xmm0
9684  DB  196,193,121,196,68,65,4,2           ; vpinsrw       $0x2,0x4(%r9,%rax,2),%xmm0,%xmm0
9685  DB  73,131,248,1                        ; cmp           $0x1,%r8
9686  DB  117,5                               ; jne           5018 <_sk_load_rgb_u16_be_avx+0x11e>
9687  DB  233,40,255,255,255                  ; jmpq          4f40 <_sk_load_rgb_u16_be_avx+0x46>
9688  DB  196,193,121,110,76,65,6             ; vmovd         0x6(%r9,%rax,2),%xmm1
9689  DB  196,65,113,196,68,65,10,2           ; vpinsrw       $0x2,0xa(%r9,%rax,2),%xmm1,%xmm8
9690  DB  73,131,248,3                        ; cmp           $0x3,%r8
9691  DB  114,26                              ; jb            5047 <_sk_load_rgb_u16_be_avx+0x14d>
9692  DB  196,193,121,110,76,65,12            ; vmovd         0xc(%r9,%rax,2),%xmm1
9693  DB  196,193,113,196,84,65,16,2          ; vpinsrw       $0x2,0x10(%r9,%rax,2),%xmm1,%xmm2
9694  DB  73,131,248,3                        ; cmp           $0x3,%r8
9695  DB  117,10                              ; jne           504c <_sk_load_rgb_u16_be_avx+0x152>
9696  DB  233,249,254,255,255                 ; jmpq          4f40 <_sk_load_rgb_u16_be_avx+0x46>
9697  DB  233,244,254,255,255                 ; jmpq          4f40 <_sk_load_rgb_u16_be_avx+0x46>
9698  DB  196,193,121,110,76,65,18            ; vmovd         0x12(%r9,%rax,2),%xmm1
9699  DB  196,65,113,196,76,65,22,2           ; vpinsrw       $0x2,0x16(%r9,%rax,2),%xmm1,%xmm9
9700  DB  73,131,248,5                        ; cmp           $0x5,%r8
9701  DB  114,26                              ; jb            507b <_sk_load_rgb_u16_be_avx+0x181>
9702  DB  196,193,121,110,76,65,24            ; vmovd         0x18(%r9,%rax,2),%xmm1
9703  DB  196,193,113,196,76,65,28,2          ; vpinsrw       $0x2,0x1c(%r9,%rax,2),%xmm1,%xmm1
9704  DB  73,131,248,5                        ; cmp           $0x5,%r8
9705  DB  117,10                              ; jne           5080 <_sk_load_rgb_u16_be_avx+0x186>
9706  DB  233,197,254,255,255                 ; jmpq          4f40 <_sk_load_rgb_u16_be_avx+0x46>
9707  DB  233,192,254,255,255                 ; jmpq          4f40 <_sk_load_rgb_u16_be_avx+0x46>
9708  DB  196,193,121,110,92,65,30            ; vmovd         0x1e(%r9,%rax,2),%xmm3
9709  DB  196,65,97,196,92,65,34,2            ; vpinsrw       $0x2,0x22(%r9,%rax,2),%xmm3,%xmm11
9710  DB  73,131,248,7                        ; cmp           $0x7,%r8
9711  DB  114,20                              ; jb            50a9 <_sk_load_rgb_u16_be_avx+0x1af>
9712  DB  196,193,121,110,92,65,36            ; vmovd         0x24(%r9,%rax,2),%xmm3
9713  DB  196,193,97,196,92,65,40,2           ; vpinsrw       $0x2,0x28(%r9,%rax,2),%xmm3,%xmm3
9714  DB  233,151,254,255,255                 ; jmpq          4f40 <_sk_load_rgb_u16_be_avx+0x46>
9715  DB  233,146,254,255,255                 ; jmpq          4f40 <_sk_load_rgb_u16_be_avx+0x46>
9716
9717PUBLIC _sk_store_u16_be_avx
9718_sk_store_u16_be_avx LABEL PROC
9719  DB  72,173                              ; lods          %ds:(%rsi),%rax
9720  DB  76,139,8                            ; mov           (%rax),%r9
9721  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
9722  DB  196,98,125,24,5,168,24,0,0          ; vbroadcastss  0x18a8(%rip),%ymm8        # 696c <_sk_callback_avx+0x468>
9723  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
9724  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
9725  DB  196,67,125,25,202,1                 ; vextractf128  $0x1,%ymm9,%xmm10
9726  DB  196,66,49,43,202                    ; vpackusdw     %xmm10,%xmm9,%xmm9
9727  DB  196,193,41,113,241,8                ; vpsllw        $0x8,%xmm9,%xmm10
9728  DB  196,193,49,113,209,8                ; vpsrlw        $0x8,%xmm9,%xmm9
9729  DB  196,65,41,235,201                   ; vpor          %xmm9,%xmm10,%xmm9
9730  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
9731  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
9732  DB  196,67,125,25,211,1                 ; vextractf128  $0x1,%ymm10,%xmm11
9733  DB  196,66,41,43,211                    ; vpackusdw     %xmm11,%xmm10,%xmm10
9734  DB  196,193,33,113,242,8                ; vpsllw        $0x8,%xmm10,%xmm11
9735  DB  196,193,41,113,210,8                ; vpsrlw        $0x8,%xmm10,%xmm10
9736  DB  196,65,33,235,210                   ; vpor          %xmm10,%xmm11,%xmm10
9737  DB  196,65,108,89,216                   ; vmulps        %ymm8,%ymm2,%ymm11
9738  DB  196,65,125,91,219                   ; vcvtps2dq     %ymm11,%ymm11
9739  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
9740  DB  196,66,33,43,220                    ; vpackusdw     %xmm12,%xmm11,%xmm11
9741  DB  196,193,25,113,243,8                ; vpsllw        $0x8,%xmm11,%xmm12
9742  DB  196,193,33,113,211,8                ; vpsrlw        $0x8,%xmm11,%xmm11
9743  DB  196,65,25,235,219                   ; vpor          %xmm11,%xmm12,%xmm11
9744  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
9745  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
9746  DB  196,67,125,25,196,1                 ; vextractf128  $0x1,%ymm8,%xmm12
9747  DB  196,66,57,43,196                    ; vpackusdw     %xmm12,%xmm8,%xmm8
9748  DB  196,193,25,113,240,8                ; vpsllw        $0x8,%xmm8,%xmm12
9749  DB  196,193,57,113,208,8                ; vpsrlw        $0x8,%xmm8,%xmm8
9750  DB  196,65,25,235,192                   ; vpor          %xmm8,%xmm12,%xmm8
9751  DB  196,65,49,97,226                    ; vpunpcklwd    %xmm10,%xmm9,%xmm12
9752  DB  196,65,49,105,234                   ; vpunpckhwd    %xmm10,%xmm9,%xmm13
9753  DB  196,65,33,97,200                    ; vpunpcklwd    %xmm8,%xmm11,%xmm9
9754  DB  196,65,33,105,192                   ; vpunpckhwd    %xmm8,%xmm11,%xmm8
9755  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
9756  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
9757  DB  196,65,17,98,200                    ; vpunpckldq    %xmm8,%xmm13,%xmm9
9758  DB  196,65,17,106,192                   ; vpunpckhdq    %xmm8,%xmm13,%xmm8
9759  DB  77,133,192                          ; test          %r8,%r8
9760  DB  117,31                              ; jne           51a8 <_sk_store_u16_be_avx+0xfa>
9761  DB  196,65,120,17,28,65                 ; vmovups       %xmm11,(%r9,%rax,2)
9762  DB  196,65,120,17,84,65,16              ; vmovups       %xmm10,0x10(%r9,%rax,2)
9763  DB  196,65,120,17,76,65,32              ; vmovups       %xmm9,0x20(%r9,%rax,2)
9764  DB  196,65,122,127,68,65,48             ; vmovdqu       %xmm8,0x30(%r9,%rax,2)
9765  DB  72,173                              ; lods          %ds:(%rsi),%rax
9766  DB  255,224                             ; jmpq          *%rax
9767  DB  196,65,121,214,28,65                ; vmovq         %xmm11,(%r9,%rax,2)
9768  DB  73,131,248,1                        ; cmp           $0x1,%r8
9769  DB  116,240                             ; je            51a4 <_sk_store_u16_be_avx+0xf6>
9770  DB  196,65,121,23,92,65,8               ; vmovhpd       %xmm11,0x8(%r9,%rax,2)
9771  DB  73,131,248,3                        ; cmp           $0x3,%r8
9772  DB  114,227                             ; jb            51a4 <_sk_store_u16_be_avx+0xf6>
9773  DB  196,65,121,214,84,65,16             ; vmovq         %xmm10,0x10(%r9,%rax,2)
9774  DB  116,218                             ; je            51a4 <_sk_store_u16_be_avx+0xf6>
9775  DB  196,65,121,23,84,65,24              ; vmovhpd       %xmm10,0x18(%r9,%rax,2)
9776  DB  73,131,248,5                        ; cmp           $0x5,%r8
9777  DB  114,205                             ; jb            51a4 <_sk_store_u16_be_avx+0xf6>
9778  DB  196,65,121,214,76,65,32             ; vmovq         %xmm9,0x20(%r9,%rax,2)
9779  DB  116,196                             ; je            51a4 <_sk_store_u16_be_avx+0xf6>
9780  DB  196,65,121,23,76,65,40              ; vmovhpd       %xmm9,0x28(%r9,%rax,2)
9781  DB  73,131,248,7                        ; cmp           $0x7,%r8
9782  DB  114,183                             ; jb            51a4 <_sk_store_u16_be_avx+0xf6>
9783  DB  196,65,121,214,68,65,48             ; vmovq         %xmm8,0x30(%r9,%rax,2)
9784  DB  235,174                             ; jmp           51a4 <_sk_store_u16_be_avx+0xf6>
9785
9786PUBLIC _sk_load_f32_avx
9787_sk_load_f32_avx LABEL PROC
9788  DB  72,173                              ; lods          %ds:(%rsi),%rax
9789  DB  73,131,248,7                        ; cmp           $0x7,%r8
9790  DB  119,110                             ; ja            526c <_sk_load_f32_avx+0x76>
9791  DB  76,139,8                            ; mov           (%rax),%r9
9792  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
9793  DB  76,141,29,132,0,0,0                 ; lea           0x84(%rip),%r11        # 5294 <_sk_load_f32_avx+0x9e>
9794  DB  75,99,4,131                         ; movslq        (%r11,%r8,4),%rax
9795  DB  76,1,216                            ; add           %r11,%rax
9796  DB  255,224                             ; jmpq          *%rax
9797  DB  196,3,125,24,68,145,112,1           ; vinsertf128   $0x1,0x70(%r9,%r10,4),%ymm0,%ymm8
9798  DB  196,131,125,24,92,145,96,1          ; vinsertf128   $0x1,0x60(%r9,%r10,4),%ymm0,%ymm3
9799  DB  196,131,125,24,76,145,80,1          ; vinsertf128   $0x1,0x50(%r9,%r10,4),%ymm0,%ymm1
9800  DB  196,131,125,24,84,145,64,1          ; vinsertf128   $0x1,0x40(%r9,%r10,4),%ymm0,%ymm2
9801  DB  196,129,121,16,68,145,48            ; vmovupd       0x30(%r9,%r10,4),%xmm0
9802  DB  196,195,125,13,192,12               ; vblendpd      $0xc,%ymm8,%ymm0,%ymm0
9803  DB  196,1,121,16,68,145,32              ; vmovupd       0x20(%r9,%r10,4),%xmm8
9804  DB  196,99,61,13,203,12                 ; vblendpd      $0xc,%ymm3,%ymm8,%ymm9
9805  DB  196,129,121,16,92,145,16            ; vmovupd       0x10(%r9,%r10,4),%xmm3
9806  DB  196,99,101,13,209,12                ; vblendpd      $0xc,%ymm1,%ymm3,%ymm10
9807  DB  196,129,121,16,12,145               ; vmovupd       (%r9,%r10,4),%xmm1
9808  DB  196,227,117,13,202,12               ; vblendpd      $0xc,%ymm2,%ymm1,%ymm1
9809  DB  196,193,116,20,210                  ; vunpcklps     %ymm10,%ymm1,%ymm2
9810  DB  196,193,116,21,218                  ; vunpckhps     %ymm10,%ymm1,%ymm3
9811  DB  197,180,20,200                      ; vunpcklps     %ymm0,%ymm9,%ymm1
9812  DB  197,52,21,192                       ; vunpckhps     %ymm0,%ymm9,%ymm8
9813  DB  197,237,20,193                      ; vunpcklpd     %ymm1,%ymm2,%ymm0
9814  DB  197,237,21,201                      ; vunpckhpd     %ymm1,%ymm2,%ymm1
9815  DB  196,193,101,20,208                  ; vunpcklpd     %ymm8,%ymm3,%ymm2
9816  DB  196,193,101,21,216                  ; vunpckhpd     %ymm8,%ymm3,%ymm3
9817  DB  72,173                              ; lods          %ds:(%rsi),%rax
9818  DB  255,224                             ; jmpq          *%rax
9819  DB  133,255                             ; test          %edi,%edi
9820  DB  255                                 ; (bad)
9821  DB  255,204                             ; dec           %esp
9822  DB  255                                 ; (bad)
9823  DB  255                                 ; (bad)
9824  DB  255                                 ; (bad)
9825  DB  191,255,255,255,178                 ; mov           $0xb2ffffff,%edi
9826  DB  255                                 ; (bad)
9827  DB  255                                 ; (bad)
9828  DB  255,165,255,255,255,157             ; jmpq          *-0x62000001(%rbp)
9829  DB  255                                 ; (bad)
9830  DB  255                                 ; (bad)
9831  DB  255,149,255,255,255,141             ; callq         *-0x72000001(%rbp)
9832  DB  255                                 ; (bad)
9833  DB  255                                 ; (bad)
9834  DB  255                                 ; .byte         0xff
9835
9836PUBLIC _sk_store_f32_avx
9837_sk_store_f32_avx LABEL PROC
9838  DB  72,173                              ; lods          %ds:(%rsi),%rax
9839  DB  76,139,8                            ; mov           (%rax),%r9
9840  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
9841  DB  197,124,20,193                      ; vunpcklps     %ymm1,%ymm0,%ymm8
9842  DB  197,124,21,217                      ; vunpckhps     %ymm1,%ymm0,%ymm11
9843  DB  197,108,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm9
9844  DB  197,108,21,227                      ; vunpckhps     %ymm3,%ymm2,%ymm12
9845  DB  196,65,61,20,209                    ; vunpcklpd     %ymm9,%ymm8,%ymm10
9846  DB  196,65,61,21,201                    ; vunpckhpd     %ymm9,%ymm8,%ymm9
9847  DB  196,65,37,20,196                    ; vunpcklpd     %ymm12,%ymm11,%ymm8
9848  DB  196,65,37,21,220                    ; vunpckhpd     %ymm12,%ymm11,%ymm11
9849  DB  77,133,192                          ; test          %r8,%r8
9850  DB  117,55                              ; jne           5321 <_sk_store_f32_avx+0x6d>
9851  DB  196,67,45,24,225,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm12
9852  DB  196,67,61,24,235,1                  ; vinsertf128   $0x1,%xmm11,%ymm8,%ymm13
9853  DB  196,67,45,6,201,49                  ; vperm2f128    $0x31,%ymm9,%ymm10,%ymm9
9854  DB  196,67,61,6,195,49                  ; vperm2f128    $0x31,%ymm11,%ymm8,%ymm8
9855  DB  196,65,125,17,36,129                ; vmovupd       %ymm12,(%r9,%rax,4)
9856  DB  196,65,125,17,108,129,32            ; vmovupd       %ymm13,0x20(%r9,%rax,4)
9857  DB  196,65,125,17,76,129,64             ; vmovupd       %ymm9,0x40(%r9,%rax,4)
9858  DB  196,65,125,17,68,129,96             ; vmovupd       %ymm8,0x60(%r9,%rax,4)
9859  DB  72,173                              ; lods          %ds:(%rsi),%rax
9860  DB  255,224                             ; jmpq          *%rax
9861  DB  196,65,121,17,20,129                ; vmovupd       %xmm10,(%r9,%rax,4)
9862  DB  73,131,248,1                        ; cmp           $0x1,%r8
9863  DB  116,240                             ; je            531d <_sk_store_f32_avx+0x69>
9864  DB  196,65,121,17,76,129,16             ; vmovupd       %xmm9,0x10(%r9,%rax,4)
9865  DB  73,131,248,3                        ; cmp           $0x3,%r8
9866  DB  114,227                             ; jb            531d <_sk_store_f32_avx+0x69>
9867  DB  196,65,121,17,68,129,32             ; vmovupd       %xmm8,0x20(%r9,%rax,4)
9868  DB  116,218                             ; je            531d <_sk_store_f32_avx+0x69>
9869  DB  196,65,121,17,92,129,48             ; vmovupd       %xmm11,0x30(%r9,%rax,4)
9870  DB  73,131,248,5                        ; cmp           $0x5,%r8
9871  DB  114,205                             ; jb            531d <_sk_store_f32_avx+0x69>
9872  DB  196,67,125,25,84,129,64,1           ; vextractf128  $0x1,%ymm10,0x40(%r9,%rax,4)
9873  DB  116,195                             ; je            531d <_sk_store_f32_avx+0x69>
9874  DB  196,67,125,25,76,129,80,1           ; vextractf128  $0x1,%ymm9,0x50(%r9,%rax,4)
9875  DB  73,131,248,7                        ; cmp           $0x7,%r8
9876  DB  114,181                             ; jb            531d <_sk_store_f32_avx+0x69>
9877  DB  196,67,125,25,68,129,96,1           ; vextractf128  $0x1,%ymm8,0x60(%r9,%rax,4)
9878  DB  235,171                             ; jmp           531d <_sk_store_f32_avx+0x69>
9879
9880PUBLIC _sk_clamp_x_avx
9881_sk_clamp_x_avx LABEL PROC
9882  DB  72,173                              ; lods          %ds:(%rsi),%rax
9883  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
9884  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
9885  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
9886  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
9887  DB  72,173                              ; lods          %ds:(%rsi),%rax
9888  DB  255,224                             ; jmpq          *%rax
9889
9890PUBLIC _sk_clamp_y_avx
9891_sk_clamp_y_avx LABEL PROC
9892  DB  72,173                              ; lods          %ds:(%rsi),%rax
9893  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
9894  DB  197,188,95,201                      ; vmaxps        %ymm1,%ymm8,%ymm1
9895  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
9896  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
9897  DB  72,173                              ; lods          %ds:(%rsi),%rax
9898  DB  255,224                             ; jmpq          *%rax
9899
9900PUBLIC _sk_repeat_x_avx
9901_sk_repeat_x_avx LABEL PROC
9902  DB  72,173                              ; lods          %ds:(%rsi),%rax
9903  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
9904  DB  196,65,124,94,200                   ; vdivps        %ymm8,%ymm0,%ymm9
9905  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
9906  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9907  DB  196,193,124,92,192                  ; vsubps        %ymm8,%ymm0,%ymm0
9908  DB  72,173                              ; lods          %ds:(%rsi),%rax
9909  DB  255,224                             ; jmpq          *%rax
9910
9911PUBLIC _sk_repeat_y_avx
9912_sk_repeat_y_avx LABEL PROC
9913  DB  72,173                              ; lods          %ds:(%rsi),%rax
9914  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
9915  DB  196,65,116,94,200                   ; vdivps        %ymm8,%ymm1,%ymm9
9916  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
9917  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
9918  DB  196,193,116,92,200                  ; vsubps        %ymm8,%ymm1,%ymm1
9919  DB  72,173                              ; lods          %ds:(%rsi),%rax
9920  DB  255,224                             ; jmpq          *%rax
9921
9922PUBLIC _sk_mirror_x_avx
9923_sk_mirror_x_avx LABEL PROC
9924  DB  72,173                              ; lods          %ds:(%rsi),%rax
9925  DB  197,121,110,0                       ; vmovd         (%rax),%xmm8
9926  DB  196,65,121,112,200,0                ; vpshufd       $0x0,%xmm8,%xmm9
9927  DB  196,67,53,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm9,%ymm9
9928  DB  196,65,124,92,209                   ; vsubps        %ymm9,%ymm0,%ymm10
9929  DB  196,193,58,88,192                   ; vaddss        %xmm8,%xmm8,%xmm0
9930  DB  196,227,121,4,192,0                 ; vpermilps     $0x0,%xmm0,%xmm0
9931  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
9932  DB  197,44,94,192                       ; vdivps        %ymm0,%ymm10,%ymm8
9933  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
9934  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
9935  DB  197,172,92,192                      ; vsubps        %ymm0,%ymm10,%ymm0
9936  DB  196,193,124,92,193                  ; vsubps        %ymm9,%ymm0,%ymm0
9937  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
9938  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
9939  DB  197,188,84,192                      ; vandps        %ymm0,%ymm8,%ymm0
9940  DB  72,173                              ; lods          %ds:(%rsi),%rax
9941  DB  255,224                             ; jmpq          *%rax
9942
9943PUBLIC _sk_mirror_y_avx
9944_sk_mirror_y_avx LABEL PROC
9945  DB  72,173                              ; lods          %ds:(%rsi),%rax
9946  DB  197,121,110,0                       ; vmovd         (%rax),%xmm8
9947  DB  196,65,121,112,200,0                ; vpshufd       $0x0,%xmm8,%xmm9
9948  DB  196,67,53,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm9,%ymm9
9949  DB  196,65,116,92,209                   ; vsubps        %ymm9,%ymm1,%ymm10
9950  DB  196,193,58,88,200                   ; vaddss        %xmm8,%xmm8,%xmm1
9951  DB  196,227,121,4,201,0                 ; vpermilps     $0x0,%xmm1,%xmm1
9952  DB  196,227,117,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm1,%ymm1
9953  DB  197,44,94,193                       ; vdivps        %ymm1,%ymm10,%ymm8
9954  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
9955  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
9956  DB  197,172,92,201                      ; vsubps        %ymm1,%ymm10,%ymm1
9957  DB  196,193,116,92,201                  ; vsubps        %ymm9,%ymm1,%ymm1
9958  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
9959  DB  197,60,92,193                       ; vsubps        %ymm1,%ymm8,%ymm8
9960  DB  197,188,84,201                      ; vandps        %ymm1,%ymm8,%ymm1
9961  DB  72,173                              ; lods          %ds:(%rsi),%rax
9962  DB  255,224                             ; jmpq          *%rax
9963
9964PUBLIC _sk_clamp_x_1_avx
9965_sk_clamp_x_1_avx LABEL PROC
9966  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
9967  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
9968  DB  196,98,125,24,5,218,20,0,0          ; vbroadcastss  0x14da(%rip),%ymm8        # 6970 <_sk_callback_avx+0x46c>
9969  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
9970  DB  72,173                              ; lods          %ds:(%rsi),%rax
9971  DB  255,224                             ; jmpq          *%rax
9972
9973PUBLIC _sk_repeat_x_1_avx
9974_sk_repeat_x_1_avx LABEL PROC
9975  DB  196,99,125,8,192,1                  ; vroundps      $0x1,%ymm0,%ymm8
9976  DB  196,193,124,92,192                  ; vsubps        %ymm8,%ymm0,%ymm0
9977  DB  72,173                              ; lods          %ds:(%rsi),%rax
9978  DB  255,224                             ; jmpq          *%rax
9979
9980PUBLIC _sk_mirror_x_1_avx
9981_sk_mirror_x_1_avx LABEL PROC
9982  DB  196,98,125,24,5,189,20,0,0          ; vbroadcastss  0x14bd(%rip),%ymm8        # 6974 <_sk_callback_avx+0x470>
9983  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
9984  DB  196,98,125,24,13,179,20,0,0         ; vbroadcastss  0x14b3(%rip),%ymm9        # 6978 <_sk_callback_avx+0x474>
9985  DB  196,65,124,89,201                   ; vmulps        %ymm9,%ymm0,%ymm9
9986  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
9987  DB  196,65,52,88,201                    ; vaddps        %ymm9,%ymm9,%ymm9
9988  DB  196,193,124,92,193                  ; vsubps        %ymm9,%ymm0,%ymm0
9989  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
9990  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
9991  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
9992  DB  197,188,84,192                      ; vandps        %ymm0,%ymm8,%ymm0
9993  DB  72,173                              ; lods          %ds:(%rsi),%rax
9994  DB  255,224                             ; jmpq          *%rax
9995
9996PUBLIC _sk_luminance_to_alpha_avx
9997_sk_luminance_to_alpha_avx LABEL PROC
9998  DB  196,226,125,24,29,131,20,0,0        ; vbroadcastss  0x1483(%rip),%ymm3        # 697c <_sk_callback_avx+0x478>
9999  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
10000  DB  196,226,125,24,29,122,20,0,0        ; vbroadcastss  0x147a(%rip),%ymm3        # 6980 <_sk_callback_avx+0x47c>
10001  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
10002  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10003  DB  196,226,125,24,13,109,20,0,0        ; vbroadcastss  0x146d(%rip),%ymm1        # 6984 <_sk_callback_avx+0x480>
10004  DB  197,236,89,201                      ; vmulps        %ymm1,%ymm2,%ymm1
10005  DB  197,252,88,217                      ; vaddps        %ymm1,%ymm0,%ymm3
10006  DB  72,173                              ; lods          %ds:(%rsi),%rax
10007  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
10008  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
10009  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
10010  DB  255,224                             ; jmpq          *%rax
10011
10012PUBLIC _sk_matrix_2x3_avx
10013_sk_matrix_2x3_avx LABEL PROC
10014  DB  72,173                              ; lods          %ds:(%rsi),%rax
10015  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
10016  DB  196,98,125,24,72,8                  ; vbroadcastss  0x8(%rax),%ymm9
10017  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
10018  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
10019  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10020  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
10021  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10022  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
10023  DB  196,98,125,24,80,12                 ; vbroadcastss  0xc(%rax),%ymm10
10024  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
10025  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
10026  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
10027  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
10028  DB  197,252,88,201                      ; vaddps        %ymm1,%ymm0,%ymm1
10029  DB  72,173                              ; lods          %ds:(%rsi),%rax
10030  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10031  DB  255,224                             ; jmpq          *%rax
10032
10033PUBLIC _sk_matrix_3x4_avx
10034_sk_matrix_3x4_avx LABEL PROC
10035  DB  72,173                              ; lods          %ds:(%rsi),%rax
10036  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
10037  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
10038  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
10039  DB  196,98,125,24,88,36                 ; vbroadcastss  0x24(%rax),%ymm11
10040  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
10041  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10042  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
10043  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10044  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
10045  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10046  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
10047  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
10048  DB  196,98,125,24,88,28                 ; vbroadcastss  0x1c(%rax),%ymm11
10049  DB  196,98,125,24,96,40                 ; vbroadcastss  0x28(%rax),%ymm12
10050  DB  197,36,89,218                       ; vmulps        %ymm2,%ymm11,%ymm11
10051  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
10052  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
10053  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10054  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
10055  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10056  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
10057  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
10058  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
10059  DB  196,98,125,24,104,44                ; vbroadcastss  0x2c(%rax),%ymm13
10060  DB  197,156,89,210                      ; vmulps        %ymm2,%ymm12,%ymm2
10061  DB  196,193,108,88,213                  ; vaddps        %ymm13,%ymm2,%ymm2
10062  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
10063  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
10064  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
10065  DB  197,252,88,209                      ; vaddps        %ymm1,%ymm0,%ymm2
10066  DB  72,173                              ; lods          %ds:(%rsi),%rax
10067  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10068  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
10069  DB  255,224                             ; jmpq          *%rax
10070
10071PUBLIC _sk_matrix_4x5_avx
10072_sk_matrix_4x5_avx LABEL PROC
10073  DB  72,173                              ; lods          %ds:(%rsi),%rax
10074  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
10075  DB  196,98,125,24,72,16                 ; vbroadcastss  0x10(%rax),%ymm9
10076  DB  196,98,125,24,80,32                 ; vbroadcastss  0x20(%rax),%ymm10
10077  DB  196,98,125,24,88,48                 ; vbroadcastss  0x30(%rax),%ymm11
10078  DB  196,98,125,24,96,64                 ; vbroadcastss  0x40(%rax),%ymm12
10079  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
10080  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
10081  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
10082  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10083  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
10084  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10085  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
10086  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10087  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
10088  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
10089  DB  196,98,125,24,88,36                 ; vbroadcastss  0x24(%rax),%ymm11
10090  DB  196,98,125,24,96,52                 ; vbroadcastss  0x34(%rax),%ymm12
10091  DB  196,98,125,24,104,68                ; vbroadcastss  0x44(%rax),%ymm13
10092  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
10093  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
10094  DB  197,36,89,218                       ; vmulps        %ymm2,%ymm11,%ymm11
10095  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
10096  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
10097  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10098  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
10099  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10100  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
10101  DB  196,98,125,24,88,24                 ; vbroadcastss  0x18(%rax),%ymm11
10102  DB  196,98,125,24,96,40                 ; vbroadcastss  0x28(%rax),%ymm12
10103  DB  196,98,125,24,104,56                ; vbroadcastss  0x38(%rax),%ymm13
10104  DB  196,98,125,24,112,72                ; vbroadcastss  0x48(%rax),%ymm14
10105  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
10106  DB  196,65,20,88,238                    ; vaddps        %ymm14,%ymm13,%ymm13
10107  DB  197,28,89,226                       ; vmulps        %ymm2,%ymm12,%ymm12
10108  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
10109  DB  197,36,89,217                       ; vmulps        %ymm1,%ymm11,%ymm11
10110  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
10111  DB  197,44,89,208                       ; vmulps        %ymm0,%ymm10,%ymm10
10112  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10113  DB  196,98,125,24,88,12                 ; vbroadcastss  0xc(%rax),%ymm11
10114  DB  196,98,125,24,96,28                 ; vbroadcastss  0x1c(%rax),%ymm12
10115  DB  196,98,125,24,104,44                ; vbroadcastss  0x2c(%rax),%ymm13
10116  DB  196,98,125,24,112,60                ; vbroadcastss  0x3c(%rax),%ymm14
10117  DB  196,98,125,24,120,76                ; vbroadcastss  0x4c(%rax),%ymm15
10118  DB  197,140,89,219                      ; vmulps        %ymm3,%ymm14,%ymm3
10119  DB  196,193,100,88,223                  ; vaddps        %ymm15,%ymm3,%ymm3
10120  DB  197,148,89,210                      ; vmulps        %ymm2,%ymm13,%ymm2
10121  DB  197,236,88,211                      ; vaddps        %ymm3,%ymm2,%ymm2
10122  DB  197,156,89,201                      ; vmulps        %ymm1,%ymm12,%ymm1
10123  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
10124  DB  197,164,89,192                      ; vmulps        %ymm0,%ymm11,%ymm0
10125  DB  197,252,88,217                      ; vaddps        %ymm1,%ymm0,%ymm3
10126  DB  72,173                              ; lods          %ds:(%rsi),%rax
10127  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10128  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
10129  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
10130  DB  255,224                             ; jmpq          *%rax
10131
10132PUBLIC _sk_matrix_4x3_avx
10133_sk_matrix_4x3_avx LABEL PROC
10134  DB  72,173                              ; lods          %ds:(%rsi),%rax
10135  DB  196,226,125,24,16                   ; vbroadcastss  (%rax),%ymm2
10136  DB  196,226,125,24,88,16                ; vbroadcastss  0x10(%rax),%ymm3
10137  DB  196,98,125,24,64,32                 ; vbroadcastss  0x20(%rax),%ymm8
10138  DB  197,228,89,217                      ; vmulps        %ymm1,%ymm3,%ymm3
10139  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
10140  DB  197,236,89,208                      ; vmulps        %ymm0,%ymm2,%ymm2
10141  DB  197,108,88,195                      ; vaddps        %ymm3,%ymm2,%ymm8
10142  DB  196,226,125,24,80,4                 ; vbroadcastss  0x4(%rax),%ymm2
10143  DB  196,226,125,24,88,20                ; vbroadcastss  0x14(%rax),%ymm3
10144  DB  196,98,125,24,72,36                 ; vbroadcastss  0x24(%rax),%ymm9
10145  DB  197,228,89,217                      ; vmulps        %ymm1,%ymm3,%ymm3
10146  DB  196,193,100,88,217                  ; vaddps        %ymm9,%ymm3,%ymm3
10147  DB  197,236,89,208                      ; vmulps        %ymm0,%ymm2,%ymm2
10148  DB  197,108,88,203                      ; vaddps        %ymm3,%ymm2,%ymm9
10149  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
10150  DB  196,226,125,24,88,24                ; vbroadcastss  0x18(%rax),%ymm3
10151  DB  196,98,125,24,80,40                 ; vbroadcastss  0x28(%rax),%ymm10
10152  DB  197,228,89,217                      ; vmulps        %ymm1,%ymm3,%ymm3
10153  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
10154  DB  197,236,89,208                      ; vmulps        %ymm0,%ymm2,%ymm2
10155  DB  197,236,88,211                      ; vaddps        %ymm3,%ymm2,%ymm2
10156  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
10157  DB  196,98,125,24,80,28                 ; vbroadcastss  0x1c(%rax),%ymm10
10158  DB  196,98,125,24,88,44                 ; vbroadcastss  0x2c(%rax),%ymm11
10159  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
10160  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
10161  DB  197,228,89,192                      ; vmulps        %ymm0,%ymm3,%ymm0
10162  DB  197,252,88,217                      ; vaddps        %ymm1,%ymm0,%ymm3
10163  DB  72,173                              ; lods          %ds:(%rsi),%rax
10164  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10165  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
10166  DB  255,224                             ; jmpq          *%rax
10167
10168PUBLIC _sk_matrix_perspective_avx
10169_sk_matrix_perspective_avx LABEL PROC
10170  DB  72,173                              ; lods          %ds:(%rsi),%rax
10171  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
10172  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
10173  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
10174  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
10175  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10176  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
10177  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10178  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
10179  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
10180  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
10181  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
10182  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10183  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
10184  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10185  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
10186  DB  196,98,125,24,88,28                 ; vbroadcastss  0x1c(%rax),%ymm11
10187  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
10188  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
10189  DB  196,193,116,88,204                  ; vaddps        %ymm12,%ymm1,%ymm1
10190  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
10191  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10192  DB  197,252,83,200                      ; vrcpps        %ymm0,%ymm1
10193  DB  197,188,89,193                      ; vmulps        %ymm1,%ymm8,%ymm0
10194  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
10195  DB  72,173                              ; lods          %ds:(%rsi),%rax
10196  DB  255,224                             ; jmpq          *%rax
10197
10198PUBLIC _sk_evenly_spaced_gradient_avx
10199_sk_evenly_spaced_gradient_avx LABEL PROC
10200  DB  85                                  ; push          %rbp
10201  DB  65,87                               ; push          %r15
10202  DB  65,86                               ; push          %r14
10203  DB  65,85                               ; push          %r13
10204  DB  65,84                               ; push          %r12
10205  DB  83                                  ; push          %rbx
10206  DB  72,131,236,40                       ; sub           $0x28,%rsp
10207  DB  197,252,17,60,36                    ; vmovups       %ymm7,(%rsp)
10208  DB  72,173                              ; lods          %ds:(%rsi),%rax
10209  DB  72,139,24                           ; mov           (%rax),%rbx
10210  DB  72,139,104,8                        ; mov           0x8(%rax),%rbp
10211  DB  72,255,203                          ; dec           %rbx
10212  DB  120,7                               ; js            5876 <_sk_evenly_spaced_gradient_avx+0x28>
10213  DB  196,225,242,42,203                  ; vcvtsi2ss     %rbx,%xmm1,%xmm1
10214  DB  235,21                              ; jmp           588b <_sk_evenly_spaced_gradient_avx+0x3d>
10215  DB  73,137,217                          ; mov           %rbx,%r9
10216  DB  73,209,233                          ; shr           %r9
10217  DB  131,227,1                           ; and           $0x1,%ebx
10218  DB  76,9,203                            ; or            %r9,%rbx
10219  DB  196,225,242,42,203                  ; vcvtsi2ss     %rbx,%xmm1,%xmm1
10220  DB  197,242,88,201                      ; vaddss        %xmm1,%xmm1,%xmm1
10221  DB  196,227,121,4,201,0                 ; vpermilps     $0x0,%xmm1,%xmm1
10222  DB  196,227,117,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm1,%ymm1
10223  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
10224  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
10225  DB  196,195,249,22,201,1                ; vpextrq       $0x1,%xmm1,%r9
10226  DB  69,137,202                          ; mov           %r9d,%r10d
10227  DB  73,193,233,32                       ; shr           $0x20,%r9
10228  DB  196,193,249,126,203                 ; vmovq         %xmm1,%r11
10229  DB  69,137,222                          ; mov           %r11d,%r14d
10230  DB  73,193,235,32                       ; shr           $0x20,%r11
10231  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
10232  DB  196,195,249,22,204,1                ; vpextrq       $0x1,%xmm1,%r12
10233  DB  69,137,231                          ; mov           %r12d,%r15d
10234  DB  73,193,236,32                       ; shr           $0x20,%r12
10235  DB  196,225,249,126,203                 ; vmovq         %xmm1,%rbx
10236  DB  65,137,221                          ; mov           %ebx,%r13d
10237  DB  72,193,235,32                       ; shr           $0x20,%rbx
10238  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10239  DB  196,227,113,33,76,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm1
10240  DB  196,161,122,16,84,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm2
10241  DB  196,33,122,16,68,165,0              ; vmovss        0x0(%rbp,%r12,4),%xmm8
10242  DB  196,161,122,16,92,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm3
10243  DB  196,35,97,33,76,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm3,%xmm9
10244  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10245  DB  196,33,122,16,92,141,0              ; vmovss        0x0(%rbp,%r9,4),%xmm11
10246  DB  196,99,113,33,226,32                ; vinsertps     $0x20,%xmm2,%xmm1,%xmm12
10247  DB  72,139,104,40                       ; mov           0x28(%rax),%rbp
10248  DB  196,161,122,16,84,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm2
10249  DB  196,99,105,33,108,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm2,%xmm13
10250  DB  196,161,122,16,92,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm3
10251  DB  196,161,122,16,76,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm1
10252  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10253  DB  196,35,105,33,116,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm14
10254  DB  196,33,122,16,124,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm15
10255  DB  196,33,122,16,84,141,0              ; vmovss        0x0(%rbp,%r9,4),%xmm10
10256  DB  196,67,25,33,192,48                 ; vinsertps     $0x30,%xmm8,%xmm12,%xmm8
10257  DB  196,227,49,33,215,32                ; vinsertps     $0x20,%xmm7,%xmm9,%xmm2
10258  DB  196,195,105,33,211,48               ; vinsertps     $0x30,%xmm11,%xmm2,%xmm2
10259  DB  196,67,109,24,192,1                 ; vinsertf128   $0x1,%xmm8,%ymm2,%ymm8
10260  DB  196,227,17,33,211,32                ; vinsertps     $0x20,%xmm3,%xmm13,%xmm2
10261  DB  196,99,105,33,201,48                ; vinsertps     $0x30,%xmm1,%xmm2,%xmm9
10262  DB  72,139,104,16                       ; mov           0x10(%rax),%rbp
10263  DB  196,161,122,16,84,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm2
10264  DB  196,99,105,33,92,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm2,%xmm11
10265  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10266  DB  196,161,122,16,76,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm1
10267  DB  196,161,122,16,124,181,0            ; vmovss        0x0(%rbp,%r14,4),%xmm7
10268  DB  196,163,65,33,124,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm7,%xmm7
10269  DB  196,161,122,16,92,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm3
10270  DB  196,33,122,16,108,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm13
10271  DB  196,195,9,33,215,32                 ; vinsertps     $0x20,%xmm15,%xmm14,%xmm2
10272  DB  196,195,105,33,210,48               ; vinsertps     $0x30,%xmm10,%xmm2,%xmm2
10273  DB  196,67,109,24,241,1                 ; vinsertf128   $0x1,%xmm9,%ymm2,%ymm14
10274  DB  196,195,33,33,212,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm2
10275  DB  196,99,105,33,201,48                ; vinsertps     $0x30,%xmm1,%xmm2,%xmm9
10276  DB  196,99,65,33,211,32                 ; vinsertps     $0x20,%xmm3,%xmm7,%xmm10
10277  DB  72,139,104,48                       ; mov           0x30(%rax),%rbp
10278  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
10279  DB  196,99,97,33,92,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm3,%xmm11
10280  DB  196,33,122,16,124,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm15
10281  DB  196,33,122,16,100,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm12
10282  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10283  DB  196,163,105,33,84,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm2
10284  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10285  DB  196,161,122,16,92,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm3
10286  DB  196,67,41,33,213,48                 ; vinsertps     $0x30,%xmm13,%xmm10,%xmm10
10287  DB  196,67,45,24,233,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm13
10288  DB  196,195,33,33,207,32                ; vinsertps     $0x20,%xmm15,%xmm11,%xmm1
10289  DB  196,67,113,33,204,48                ; vinsertps     $0x30,%xmm12,%xmm1,%xmm9
10290  DB  196,227,105,33,215,32               ; vinsertps     $0x20,%xmm7,%xmm2,%xmm2
10291  DB  196,99,105,33,211,48                ; vinsertps     $0x30,%xmm3,%xmm2,%xmm10
10292  DB  72,139,104,24                       ; mov           0x18(%rax),%rbp
10293  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
10294  DB  196,99,97,33,92,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm3,%xmm11
10295  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10296  DB  196,33,122,16,124,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm15
10297  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10298  DB  196,163,105,33,84,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm2
10299  DB  196,161,122,16,92,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm3
10300  DB  196,161,122,16,124,141,0            ; vmovss        0x0(%rbp,%r9,4),%xmm7
10301  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
10302  DB  196,195,33,33,204,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm1
10303  DB  196,195,113,33,207,48               ; vinsertps     $0x30,%xmm15,%xmm1,%xmm1
10304  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
10305  DB  196,227,105,33,215,48               ; vinsertps     $0x30,%xmm7,%xmm2,%xmm2
10306  DB  196,99,109,24,209,1                 ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm10
10307  DB  72,139,104,56                       ; mov           0x38(%rax),%rbp
10308  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10309  DB  196,99,113,33,92,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm11
10310  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10311  DB  196,33,122,16,124,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm15
10312  DB  196,161,122,16,124,181,0            ; vmovss        0x0(%rbp,%r14,4),%xmm7
10313  DB  196,163,65,33,124,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm7,%xmm7
10314  DB  196,161,122,16,76,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm1
10315  DB  196,161,122,16,84,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm2
10316  DB  196,195,33,33,220,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm3
10317  DB  196,195,97,33,223,48                ; vinsertps     $0x30,%xmm15,%xmm3,%xmm3
10318  DB  196,227,65,33,201,32                ; vinsertps     $0x20,%xmm1,%xmm7,%xmm1
10319  DB  196,227,113,33,202,48               ; vinsertps     $0x30,%xmm2,%xmm1,%xmm1
10320  DB  196,99,117,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm1,%ymm11
10321  DB  72,139,104,32                       ; mov           0x20(%rax),%rbp
10322  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10323  DB  196,227,113,33,76,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm1
10324  DB  196,161,122,16,84,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm2
10325  DB  196,227,113,33,202,32               ; vinsertps     $0x20,%xmm2,%xmm1,%xmm1
10326  DB  196,161,122,16,84,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm2
10327  DB  196,161,122,16,92,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm3
10328  DB  196,35,97,33,100,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm3,%xmm12
10329  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10330  DB  196,161,122,16,92,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm3
10331  DB  196,99,113,33,250,48                ; vinsertps     $0x30,%xmm2,%xmm1,%xmm15
10332  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
10333  DB  196,161,122,16,20,168               ; vmovss        (%rax,%r13,4),%xmm2
10334  DB  196,227,105,33,20,152,16            ; vinsertps     $0x10,(%rax,%rbx,4),%xmm2,%xmm2
10335  DB  196,227,25,33,255,32                ; vinsertps     $0x20,%xmm7,%xmm12,%xmm7
10336  DB  196,161,122,16,12,184               ; vmovss        (%rax,%r15,4),%xmm1
10337  DB  196,227,65,33,219,48                ; vinsertps     $0x30,%xmm3,%xmm7,%xmm3
10338  DB  196,161,122,16,60,160               ; vmovss        (%rax,%r12,4),%xmm7
10339  DB  196,67,101,24,231,1                 ; vinsertf128   $0x1,%xmm15,%ymm3,%ymm12
10340  DB  196,161,122,16,28,176               ; vmovss        (%rax,%r14,4),%xmm3
10341  DB  196,163,97,33,28,152,16             ; vinsertps     $0x10,(%rax,%r11,4),%xmm3,%xmm3
10342  DB  196,227,105,33,201,32               ; vinsertps     $0x20,%xmm1,%xmm2,%xmm1
10343  DB  196,161,122,16,20,144               ; vmovss        (%rax,%r10,4),%xmm2
10344  DB  196,227,113,33,207,48               ; vinsertps     $0x30,%xmm7,%xmm1,%xmm1
10345  DB  196,161,122,16,60,136               ; vmovss        (%rax,%r9,4),%xmm7
10346  DB  196,227,97,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm3,%xmm2
10347  DB  196,227,105,33,215,48               ; vinsertps     $0x30,%xmm7,%xmm2,%xmm2
10348  DB  196,227,109,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm3
10349  DB  197,188,89,200                      ; vmulps        %ymm0,%ymm8,%ymm1
10350  DB  196,65,116,88,198                   ; vaddps        %ymm14,%ymm1,%ymm8
10351  DB  197,148,89,200                      ; vmulps        %ymm0,%ymm13,%ymm1
10352  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
10353  DB  197,172,89,208                      ; vmulps        %ymm0,%ymm10,%ymm2
10354  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
10355  DB  197,156,89,192                      ; vmulps        %ymm0,%ymm12,%ymm0
10356  DB  197,252,88,219                      ; vaddps        %ymm3,%ymm0,%ymm3
10357  DB  72,173                              ; lods          %ds:(%rsi),%rax
10358  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10359  DB  197,252,16,60,36                    ; vmovups       (%rsp),%ymm7
10360  DB  72,131,196,40                       ; add           $0x28,%rsp
10361  DB  91                                  ; pop           %rbx
10362  DB  65,92                               ; pop           %r12
10363  DB  65,93                               ; pop           %r13
10364  DB  65,94                               ; pop           %r14
10365  DB  65,95                               ; pop           %r15
10366  DB  93                                  ; pop           %rbp
10367  DB  255,224                             ; jmpq          *%rax
10368
10369PUBLIC _sk_gauss_a_to_rgba_avx
10370_sk_gauss_a_to_rgba_avx LABEL PROC
10371  DB  196,226,125,24,5,150,13,0,0         ; vbroadcastss  0xd96(%rip),%ymm0        # 6988 <_sk_callback_avx+0x484>
10372  DB  197,228,89,192                      ; vmulps        %ymm0,%ymm3,%ymm0
10373  DB  196,226,125,24,13,141,13,0,0        ; vbroadcastss  0xd8d(%rip),%ymm1        # 698c <_sk_callback_avx+0x488>
10374  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10375  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
10376  DB  196,226,125,24,13,128,13,0,0        ; vbroadcastss  0xd80(%rip),%ymm1        # 6990 <_sk_callback_avx+0x48c>
10377  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10378  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
10379  DB  196,226,125,24,13,115,13,0,0        ; vbroadcastss  0xd73(%rip),%ymm1        # 6994 <_sk_callback_avx+0x490>
10380  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10381  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
10382  DB  196,226,125,24,13,102,13,0,0        ; vbroadcastss  0xd66(%rip),%ymm1        # 6998 <_sk_callback_avx+0x494>
10383  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10384  DB  72,173                              ; lods          %ds:(%rsi),%rax
10385  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
10386  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
10387  DB  197,252,40,216                      ; vmovaps       %ymm0,%ymm3
10388  DB  255,224                             ; jmpq          *%rax
10389
10390PUBLIC _sk_gradient_avx
10391_sk_gradient_avx LABEL PROC
10392  DB  85                                  ; push          %rbp
10393  DB  65,87                               ; push          %r15
10394  DB  65,86                               ; push          %r14
10395  DB  65,85                               ; push          %r13
10396  DB  65,84                               ; push          %r12
10397  DB  83                                  ; push          %rbx
10398  DB  72,131,236,40                       ; sub           $0x28,%rsp
10399  DB  197,252,17,60,36                    ; vmovups       %ymm7,(%rsp)
10400  DB  72,173                              ; lods          %ds:(%rsi),%rax
10401  DB  76,139,8                            ; mov           (%rax),%r9
10402  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
10403  DB  73,131,249,2                        ; cmp           $0x2,%r9
10404  DB  114,80                              ; jb            5cb8 <_sk_gradient_avx+0x72>
10405  DB  72,139,88,72                        ; mov           0x48(%rax),%rbx
10406  DB  73,255,201                          ; dec           %r9
10407  DB  72,131,195,4                        ; add           $0x4,%rbx
10408  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
10409  DB  196,98,125,24,21,27,13,0,0          ; vbroadcastss  0xd1b(%rip),%ymm10        # 699c <_sk_callback_avx+0x498>
10410  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
10411  DB  196,98,125,24,3                     ; vbroadcastss  (%rbx),%ymm8
10412  DB  197,60,194,192,2                    ; vcmpleps      %ymm0,%ymm8,%ymm8
10413  DB  196,67,53,74,194,128                ; vblendvps     %ymm8,%ymm10,%ymm9,%ymm8
10414  DB  196,99,125,25,194,1                 ; vextractf128  $0x1,%ymm8,%xmm2
10415  DB  196,227,125,25,203,1                ; vextractf128  $0x1,%ymm1,%xmm3
10416  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
10417  DB  197,185,254,201                     ; vpaddd        %xmm1,%xmm8,%xmm1
10418  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
10419  DB  72,131,195,4                        ; add           $0x4,%rbx
10420  DB  73,255,201                          ; dec           %r9
10421  DB  117,205                             ; jne           5c85 <_sk_gradient_avx+0x3f>
10422  DB  196,195,249,22,201,1                ; vpextrq       $0x1,%xmm1,%r9
10423  DB  69,137,202                          ; mov           %r9d,%r10d
10424  DB  73,193,233,32                       ; shr           $0x20,%r9
10425  DB  196,193,249,126,203                 ; vmovq         %xmm1,%r11
10426  DB  69,137,222                          ; mov           %r11d,%r14d
10427  DB  73,193,235,32                       ; shr           $0x20,%r11
10428  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
10429  DB  196,195,249,22,204,1                ; vpextrq       $0x1,%xmm1,%r12
10430  DB  69,137,231                          ; mov           %r12d,%r15d
10431  DB  73,193,236,32                       ; shr           $0x20,%r12
10432  DB  196,225,249,126,203                 ; vmovq         %xmm1,%rbx
10433  DB  65,137,221                          ; mov           %ebx,%r13d
10434  DB  72,193,235,32                       ; shr           $0x20,%rbx
10435  DB  72,139,104,8                        ; mov           0x8(%rax),%rbp
10436  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10437  DB  196,227,113,33,76,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm1
10438  DB  196,161,122,16,84,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm2
10439  DB  196,33,122,16,68,165,0              ; vmovss        0x0(%rbp,%r12,4),%xmm8
10440  DB  196,161,122,16,92,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm3
10441  DB  196,35,97,33,76,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm3,%xmm9
10442  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10443  DB  196,33,122,16,92,141,0              ; vmovss        0x0(%rbp,%r9,4),%xmm11
10444  DB  196,99,113,33,226,32                ; vinsertps     $0x20,%xmm2,%xmm1,%xmm12
10445  DB  72,139,104,40                       ; mov           0x28(%rax),%rbp
10446  DB  196,161,122,16,84,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm2
10447  DB  196,99,105,33,108,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm2,%xmm13
10448  DB  196,161,122,16,92,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm3
10449  DB  196,161,122,16,76,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm1
10450  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10451  DB  196,35,105,33,116,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm14
10452  DB  196,33,122,16,124,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm15
10453  DB  196,33,122,16,84,141,0              ; vmovss        0x0(%rbp,%r9,4),%xmm10
10454  DB  196,67,25,33,192,48                 ; vinsertps     $0x30,%xmm8,%xmm12,%xmm8
10455  DB  196,227,49,33,215,32                ; vinsertps     $0x20,%xmm7,%xmm9,%xmm2
10456  DB  196,195,105,33,211,48               ; vinsertps     $0x30,%xmm11,%xmm2,%xmm2
10457  DB  196,67,109,24,192,1                 ; vinsertf128   $0x1,%xmm8,%ymm2,%ymm8
10458  DB  196,227,17,33,211,32                ; vinsertps     $0x20,%xmm3,%xmm13,%xmm2
10459  DB  196,99,105,33,201,48                ; vinsertps     $0x30,%xmm1,%xmm2,%xmm9
10460  DB  72,139,104,16                       ; mov           0x10(%rax),%rbp
10461  DB  196,161,122,16,84,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm2
10462  DB  196,99,105,33,92,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm2,%xmm11
10463  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10464  DB  196,161,122,16,76,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm1
10465  DB  196,161,122,16,124,181,0            ; vmovss        0x0(%rbp,%r14,4),%xmm7
10466  DB  196,163,65,33,124,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm7,%xmm7
10467  DB  196,161,122,16,92,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm3
10468  DB  196,33,122,16,108,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm13
10469  DB  196,195,9,33,215,32                 ; vinsertps     $0x20,%xmm15,%xmm14,%xmm2
10470  DB  196,195,105,33,210,48               ; vinsertps     $0x30,%xmm10,%xmm2,%xmm2
10471  DB  196,67,109,24,241,1                 ; vinsertf128   $0x1,%xmm9,%ymm2,%ymm14
10472  DB  196,195,33,33,212,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm2
10473  DB  196,99,105,33,201,48                ; vinsertps     $0x30,%xmm1,%xmm2,%xmm9
10474  DB  196,99,65,33,211,32                 ; vinsertps     $0x20,%xmm3,%xmm7,%xmm10
10475  DB  72,139,104,48                       ; mov           0x30(%rax),%rbp
10476  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
10477  DB  196,99,97,33,92,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm3,%xmm11
10478  DB  196,33,122,16,124,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm15
10479  DB  196,33,122,16,100,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm12
10480  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10481  DB  196,163,105,33,84,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm2
10482  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10483  DB  196,161,122,16,92,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm3
10484  DB  196,67,41,33,213,48                 ; vinsertps     $0x30,%xmm13,%xmm10,%xmm10
10485  DB  196,67,45,24,233,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm13
10486  DB  196,195,33,33,207,32                ; vinsertps     $0x20,%xmm15,%xmm11,%xmm1
10487  DB  196,67,113,33,204,48                ; vinsertps     $0x30,%xmm12,%xmm1,%xmm9
10488  DB  196,227,105,33,215,32               ; vinsertps     $0x20,%xmm7,%xmm2,%xmm2
10489  DB  196,99,105,33,211,48                ; vinsertps     $0x30,%xmm3,%xmm2,%xmm10
10490  DB  72,139,104,24                       ; mov           0x18(%rax),%rbp
10491  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
10492  DB  196,99,97,33,92,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm3,%xmm11
10493  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10494  DB  196,33,122,16,124,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm15
10495  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10496  DB  196,163,105,33,84,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm2
10497  DB  196,161,122,16,92,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm3
10498  DB  196,161,122,16,124,141,0            ; vmovss        0x0(%rbp,%r9,4),%xmm7
10499  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
10500  DB  196,195,33,33,204,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm1
10501  DB  196,195,113,33,207,48               ; vinsertps     $0x30,%xmm15,%xmm1,%xmm1
10502  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
10503  DB  196,227,105,33,215,48               ; vinsertps     $0x30,%xmm7,%xmm2,%xmm2
10504  DB  196,99,109,24,209,1                 ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm10
10505  DB  72,139,104,56                       ; mov           0x38(%rax),%rbp
10506  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10507  DB  196,99,113,33,92,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm11
10508  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10509  DB  196,33,122,16,124,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm15
10510  DB  196,161,122,16,124,181,0            ; vmovss        0x0(%rbp,%r14,4),%xmm7
10511  DB  196,163,65,33,124,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm7,%xmm7
10512  DB  196,161,122,16,76,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm1
10513  DB  196,161,122,16,84,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm2
10514  DB  196,195,33,33,220,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm3
10515  DB  196,195,97,33,223,48                ; vinsertps     $0x30,%xmm15,%xmm3,%xmm3
10516  DB  196,227,65,33,201,32                ; vinsertps     $0x20,%xmm1,%xmm7,%xmm1
10517  DB  196,227,113,33,202,48               ; vinsertps     $0x30,%xmm2,%xmm1,%xmm1
10518  DB  196,99,117,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm1,%ymm11
10519  DB  72,139,104,32                       ; mov           0x20(%rax),%rbp
10520  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10521  DB  196,227,113,33,76,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm1
10522  DB  196,161,122,16,84,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm2
10523  DB  196,227,113,33,202,32               ; vinsertps     $0x20,%xmm2,%xmm1,%xmm1
10524  DB  196,161,122,16,84,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm2
10525  DB  196,161,122,16,92,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm3
10526  DB  196,35,97,33,100,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm3,%xmm12
10527  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10528  DB  196,161,122,16,92,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm3
10529  DB  196,99,113,33,250,48                ; vinsertps     $0x30,%xmm2,%xmm1,%xmm15
10530  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
10531  DB  196,161,122,16,20,168               ; vmovss        (%rax,%r13,4),%xmm2
10532  DB  196,227,105,33,20,152,16            ; vinsertps     $0x10,(%rax,%rbx,4),%xmm2,%xmm2
10533  DB  196,227,25,33,255,32                ; vinsertps     $0x20,%xmm7,%xmm12,%xmm7
10534  DB  196,161,122,16,12,184               ; vmovss        (%rax,%r15,4),%xmm1
10535  DB  196,227,65,33,219,48                ; vinsertps     $0x30,%xmm3,%xmm7,%xmm3
10536  DB  196,161,122,16,60,160               ; vmovss        (%rax,%r12,4),%xmm7
10537  DB  196,67,101,24,231,1                 ; vinsertf128   $0x1,%xmm15,%ymm3,%ymm12
10538  DB  196,161,122,16,28,176               ; vmovss        (%rax,%r14,4),%xmm3
10539  DB  196,163,97,33,28,152,16             ; vinsertps     $0x10,(%rax,%r11,4),%xmm3,%xmm3
10540  DB  196,227,105,33,201,32               ; vinsertps     $0x20,%xmm1,%xmm2,%xmm1
10541  DB  196,161,122,16,20,144               ; vmovss        (%rax,%r10,4),%xmm2
10542  DB  196,227,113,33,207,48               ; vinsertps     $0x30,%xmm7,%xmm1,%xmm1
10543  DB  196,161,122,16,60,136               ; vmovss        (%rax,%r9,4),%xmm7
10544  DB  196,227,97,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm3,%xmm2
10545  DB  196,227,105,33,215,48               ; vinsertps     $0x30,%xmm7,%xmm2,%xmm2
10546  DB  196,227,109,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm3
10547  DB  197,188,89,200                      ; vmulps        %ymm0,%ymm8,%ymm1
10548  DB  196,65,116,88,198                   ; vaddps        %ymm14,%ymm1,%ymm8
10549  DB  197,148,89,200                      ; vmulps        %ymm0,%ymm13,%ymm1
10550  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
10551  DB  197,172,89,208                      ; vmulps        %ymm0,%ymm10,%ymm2
10552  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
10553  DB  197,156,89,192                      ; vmulps        %ymm0,%ymm12,%ymm0
10554  DB  197,252,88,219                      ; vaddps        %ymm3,%ymm0,%ymm3
10555  DB  72,173                              ; lods          %ds:(%rsi),%rax
10556  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10557  DB  197,252,16,60,36                    ; vmovups       (%rsp),%ymm7
10558  DB  72,131,196,40                       ; add           $0x28,%rsp
10559  DB  91                                  ; pop           %rbx
10560  DB  65,92                               ; pop           %r12
10561  DB  65,93                               ; pop           %r13
10562  DB  65,94                               ; pop           %r14
10563  DB  65,95                               ; pop           %r15
10564  DB  93                                  ; pop           %rbp
10565  DB  255,224                             ; jmpq          *%rax
10566
10567PUBLIC _sk_evenly_spaced_2_stop_gradient_avx
10568_sk_evenly_spaced_2_stop_gradient_avx LABEL PROC
10569  DB  72,173                              ; lods          %ds:(%rsi),%rax
10570  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
10571  DB  196,226,125,24,80,16                ; vbroadcastss  0x10(%rax),%ymm2
10572  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
10573  DB  197,116,88,194                      ; vaddps        %ymm2,%ymm1,%ymm8
10574  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
10575  DB  196,226,125,24,80,20                ; vbroadcastss  0x14(%rax),%ymm2
10576  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
10577  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
10578  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
10579  DB  196,226,125,24,88,24                ; vbroadcastss  0x18(%rax),%ymm3
10580  DB  197,236,89,208                      ; vmulps        %ymm0,%ymm2,%ymm2
10581  DB  197,236,88,211                      ; vaddps        %ymm3,%ymm2,%ymm2
10582  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
10583  DB  196,98,125,24,72,28                 ; vbroadcastss  0x1c(%rax),%ymm9
10584  DB  197,228,89,192                      ; vmulps        %ymm0,%ymm3,%ymm0
10585  DB  196,193,124,88,217                  ; vaddps        %ymm9,%ymm0,%ymm3
10586  DB  72,173                              ; lods          %ds:(%rsi),%rax
10587  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10588  DB  255,224                             ; jmpq          *%rax
10589
10590PUBLIC _sk_xy_to_unit_angle_avx
10591_sk_xy_to_unit_angle_avx LABEL PROC
10592  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
10593  DB  197,60,92,200                       ; vsubps        %ymm0,%ymm8,%ymm9
10594  DB  197,52,84,200                       ; vandps        %ymm0,%ymm9,%ymm9
10595  DB  197,60,92,209                       ; vsubps        %ymm1,%ymm8,%ymm10
10596  DB  197,44,84,209                       ; vandps        %ymm1,%ymm10,%ymm10
10597  DB  196,65,52,93,218                    ; vminps        %ymm10,%ymm9,%ymm11
10598  DB  196,65,52,95,226                    ; vmaxps        %ymm10,%ymm9,%ymm12
10599  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
10600  DB  196,65,36,89,227                    ; vmulps        %ymm11,%ymm11,%ymm12
10601  DB  196,98,125,24,45,14,9,0,0           ; vbroadcastss  0x90e(%rip),%ymm13        # 69a0 <_sk_callback_avx+0x49c>
10602  DB  196,65,28,89,237                    ; vmulps        %ymm13,%ymm12,%ymm13
10603  DB  196,98,125,24,53,4,9,0,0            ; vbroadcastss  0x904(%rip),%ymm14        # 69a4 <_sk_callback_avx+0x4a0>
10604  DB  196,65,20,88,238                    ; vaddps        %ymm14,%ymm13,%ymm13
10605  DB  196,65,28,89,237                    ; vmulps        %ymm13,%ymm12,%ymm13
10606  DB  196,98,125,24,53,245,8,0,0          ; vbroadcastss  0x8f5(%rip),%ymm14        # 69a8 <_sk_callback_avx+0x4a4>
10607  DB  196,65,20,88,238                    ; vaddps        %ymm14,%ymm13,%ymm13
10608  DB  196,65,28,89,229                    ; vmulps        %ymm13,%ymm12,%ymm12
10609  DB  196,98,125,24,45,230,8,0,0          ; vbroadcastss  0x8e6(%rip),%ymm13        # 69ac <_sk_callback_avx+0x4a8>
10610  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
10611  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
10612  DB  196,65,52,194,202,1                 ; vcmpltps      %ymm10,%ymm9,%ymm9
10613  DB  196,98,125,24,21,209,8,0,0          ; vbroadcastss  0x8d1(%rip),%ymm10        # 69b0 <_sk_callback_avx+0x4ac>
10614  DB  196,65,44,92,211                    ; vsubps        %ymm11,%ymm10,%ymm10
10615  DB  196,67,37,74,202,144                ; vblendvps     %ymm9,%ymm10,%ymm11,%ymm9
10616  DB  196,193,124,194,192,1               ; vcmpltps      %ymm8,%ymm0,%ymm0
10617  DB  196,98,125,24,21,187,8,0,0          ; vbroadcastss  0x8bb(%rip),%ymm10        # 69b4 <_sk_callback_avx+0x4b0>
10618  DB  196,65,44,92,209                    ; vsubps        %ymm9,%ymm10,%ymm10
10619  DB  196,195,53,74,194,0                 ; vblendvps     %ymm0,%ymm10,%ymm9,%ymm0
10620  DB  196,65,116,194,200,1                ; vcmpltps      %ymm8,%ymm1,%ymm9
10621  DB  196,98,125,24,21,165,8,0,0          ; vbroadcastss  0x8a5(%rip),%ymm10        # 69b8 <_sk_callback_avx+0x4b4>
10622  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
10623  DB  196,195,125,74,194,144              ; vblendvps     %ymm9,%ymm10,%ymm0,%ymm0
10624  DB  196,65,124,194,200,3                ; vcmpunordps   %ymm8,%ymm0,%ymm9
10625  DB  196,195,125,74,192,144              ; vblendvps     %ymm9,%ymm8,%ymm0,%ymm0
10626  DB  72,173                              ; lods          %ds:(%rsi),%rax
10627  DB  255,224                             ; jmpq          *%rax
10628
10629PUBLIC _sk_xy_to_radius_avx
10630_sk_xy_to_radius_avx LABEL PROC
10631  DB  197,252,89,192                      ; vmulps        %ymm0,%ymm0,%ymm0
10632  DB  197,116,89,193                      ; vmulps        %ymm1,%ymm1,%ymm8
10633  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
10634  DB  197,252,81,192                      ; vsqrtps       %ymm0,%ymm0
10635  DB  72,173                              ; lods          %ds:(%rsi),%rax
10636  DB  255,224                             ; jmpq          *%rax
10637
10638PUBLIC _sk_save_xy_avx
10639_sk_save_xy_avx LABEL PROC
10640  DB  72,173                              ; lods          %ds:(%rsi),%rax
10641  DB  196,98,125,24,5,111,8,0,0           ; vbroadcastss  0x86f(%rip),%ymm8        # 69bc <_sk_callback_avx+0x4b8>
10642  DB  196,65,124,88,200                   ; vaddps        %ymm8,%ymm0,%ymm9
10643  DB  196,67,125,8,209,1                  ; vroundps      $0x1,%ymm9,%ymm10
10644  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
10645  DB  196,65,116,88,192                   ; vaddps        %ymm8,%ymm1,%ymm8
10646  DB  196,67,125,8,208,1                  ; vroundps      $0x1,%ymm8,%ymm10
10647  DB  196,65,60,92,194                    ; vsubps        %ymm10,%ymm8,%ymm8
10648  DB  197,252,17,0                        ; vmovups       %ymm0,(%rax)
10649  DB  197,252,17,72,32                    ; vmovups       %ymm1,0x20(%rax)
10650  DB  197,124,17,72,64                    ; vmovups       %ymm9,0x40(%rax)
10651  DB  197,124,17,64,96                    ; vmovups       %ymm8,0x60(%rax)
10652  DB  72,173                              ; lods          %ds:(%rsi),%rax
10653  DB  255,224                             ; jmpq          *%rax
10654
10655PUBLIC _sk_accumulate_avx
10656_sk_accumulate_avx LABEL PROC
10657  DB  72,173                              ; lods          %ds:(%rsi),%rax
10658  DB  197,124,16,128,128,0,0,0            ; vmovups       0x80(%rax),%ymm8
10659  DB  197,60,89,128,160,0,0,0             ; vmulps        0xa0(%rax),%ymm8,%ymm8
10660  DB  197,60,89,200                       ; vmulps        %ymm0,%ymm8,%ymm9
10661  DB  197,180,88,228                      ; vaddps        %ymm4,%ymm9,%ymm4
10662  DB  197,60,89,201                       ; vmulps        %ymm1,%ymm8,%ymm9
10663  DB  197,180,88,237                      ; vaddps        %ymm5,%ymm9,%ymm5
10664  DB  197,60,89,202                       ; vmulps        %ymm2,%ymm8,%ymm9
10665  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
10666  DB  197,60,89,195                       ; vmulps        %ymm3,%ymm8,%ymm8
10667  DB  197,188,88,255                      ; vaddps        %ymm7,%ymm8,%ymm7
10668  DB  72,173                              ; lods          %ds:(%rsi),%rax
10669  DB  255,224                             ; jmpq          *%rax
10670
10671PUBLIC _sk_bilinear_nx_avx
10672_sk_bilinear_nx_avx LABEL PROC
10673  DB  72,173                              ; lods          %ds:(%rsi),%rax
10674  DB  196,226,125,24,5,251,7,0,0          ; vbroadcastss  0x7fb(%rip),%ymm0        # 69c0 <_sk_callback_avx+0x4bc>
10675  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
10676  DB  196,98,125,24,5,242,7,0,0           ; vbroadcastss  0x7f2(%rip),%ymm8        # 69c4 <_sk_callback_avx+0x4c0>
10677  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
10678  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
10679  DB  72,173                              ; lods          %ds:(%rsi),%rax
10680  DB  255,224                             ; jmpq          *%rax
10681
10682PUBLIC _sk_bilinear_px_avx
10683_sk_bilinear_px_avx LABEL PROC
10684  DB  72,173                              ; lods          %ds:(%rsi),%rax
10685  DB  196,226,125,24,5,218,7,0,0          ; vbroadcastss  0x7da(%rip),%ymm0        # 69c8 <_sk_callback_avx+0x4c4>
10686  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
10687  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
10688  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
10689  DB  72,173                              ; lods          %ds:(%rsi),%rax
10690  DB  255,224                             ; jmpq          *%rax
10691
10692PUBLIC _sk_bilinear_ny_avx
10693_sk_bilinear_ny_avx LABEL PROC
10694  DB  72,173                              ; lods          %ds:(%rsi),%rax
10695  DB  196,226,125,24,13,190,7,0,0         ; vbroadcastss  0x7be(%rip),%ymm1        # 69cc <_sk_callback_avx+0x4c8>
10696  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
10697  DB  196,98,125,24,5,180,7,0,0           ; vbroadcastss  0x7b4(%rip),%ymm8        # 69d0 <_sk_callback_avx+0x4cc>
10698  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
10699  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
10700  DB  72,173                              ; lods          %ds:(%rsi),%rax
10701  DB  255,224                             ; jmpq          *%rax
10702
10703PUBLIC _sk_bilinear_py_avx
10704_sk_bilinear_py_avx LABEL PROC
10705  DB  72,173                              ; lods          %ds:(%rsi),%rax
10706  DB  196,226,125,24,13,156,7,0,0         ; vbroadcastss  0x79c(%rip),%ymm1        # 69d4 <_sk_callback_avx+0x4d0>
10707  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
10708  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
10709  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
10710  DB  72,173                              ; lods          %ds:(%rsi),%rax
10711  DB  255,224                             ; jmpq          *%rax
10712
10713PUBLIC _sk_bicubic_n3x_avx
10714_sk_bicubic_n3x_avx LABEL PROC
10715  DB  72,173                              ; lods          %ds:(%rsi),%rax
10716  DB  196,226,125,24,5,127,7,0,0          ; vbroadcastss  0x77f(%rip),%ymm0        # 69d8 <_sk_callback_avx+0x4d4>
10717  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
10718  DB  196,98,125,24,5,118,7,0,0           ; vbroadcastss  0x776(%rip),%ymm8        # 69dc <_sk_callback_avx+0x4d8>
10719  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
10720  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
10721  DB  196,98,125,24,21,103,7,0,0          ; vbroadcastss  0x767(%rip),%ymm10        # 69e0 <_sk_callback_avx+0x4dc>
10722  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
10723  DB  196,98,125,24,21,93,7,0,0           ; vbroadcastss  0x75d(%rip),%ymm10        # 69e4 <_sk_callback_avx+0x4e0>
10724  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
10725  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
10726  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
10727  DB  72,173                              ; lods          %ds:(%rsi),%rax
10728  DB  255,224                             ; jmpq          *%rax
10729
10730PUBLIC _sk_bicubic_n1x_avx
10731_sk_bicubic_n1x_avx LABEL PROC
10732  DB  72,173                              ; lods          %ds:(%rsi),%rax
10733  DB  196,226,125,24,5,64,7,0,0           ; vbroadcastss  0x740(%rip),%ymm0        # 69e8 <_sk_callback_avx+0x4e4>
10734  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
10735  DB  196,98,125,24,5,55,7,0,0            ; vbroadcastss  0x737(%rip),%ymm8        # 69ec <_sk_callback_avx+0x4e8>
10736  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
10737  DB  196,98,125,24,13,45,7,0,0           ; vbroadcastss  0x72d(%rip),%ymm9        # 69f0 <_sk_callback_avx+0x4ec>
10738  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
10739  DB  196,98,125,24,21,35,7,0,0           ; vbroadcastss  0x723(%rip),%ymm10        # 69f4 <_sk_callback_avx+0x4f0>
10740  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10741  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
10742  DB  196,98,125,24,21,20,7,0,0           ; vbroadcastss  0x714(%rip),%ymm10        # 69f8 <_sk_callback_avx+0x4f4>
10743  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10744  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
10745  DB  196,98,125,24,13,5,7,0,0            ; vbroadcastss  0x705(%rip),%ymm9        # 69fc <_sk_callback_avx+0x4f8>
10746  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10747  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
10748  DB  72,173                              ; lods          %ds:(%rsi),%rax
10749  DB  255,224                             ; jmpq          *%rax
10750
10751PUBLIC _sk_bicubic_p1x_avx
10752_sk_bicubic_p1x_avx LABEL PROC
10753  DB  72,173                              ; lods          %ds:(%rsi),%rax
10754  DB  196,98,125,24,5,237,6,0,0           ; vbroadcastss  0x6ed(%rip),%ymm8        # 6a00 <_sk_callback_avx+0x4fc>
10755  DB  197,188,88,0                        ; vaddps        (%rax),%ymm8,%ymm0
10756  DB  197,124,16,72,64                    ; vmovups       0x40(%rax),%ymm9
10757  DB  196,98,125,24,21,223,6,0,0          ; vbroadcastss  0x6df(%rip),%ymm10        # 6a04 <_sk_callback_avx+0x500>
10758  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
10759  DB  196,98,125,24,29,213,6,0,0          ; vbroadcastss  0x6d5(%rip),%ymm11        # 6a08 <_sk_callback_avx+0x504>
10760  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10761  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
10762  DB  196,65,44,88,192                    ; vaddps        %ymm8,%ymm10,%ymm8
10763  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
10764  DB  196,98,125,24,13,188,6,0,0          ; vbroadcastss  0x6bc(%rip),%ymm9        # 6a0c <_sk_callback_avx+0x508>
10765  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10766  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
10767  DB  72,173                              ; lods          %ds:(%rsi),%rax
10768  DB  255,224                             ; jmpq          *%rax
10769
10770PUBLIC _sk_bicubic_p3x_avx
10771_sk_bicubic_p3x_avx LABEL PROC
10772  DB  72,173                              ; lods          %ds:(%rsi),%rax
10773  DB  196,226,125,24,5,164,6,0,0          ; vbroadcastss  0x6a4(%rip),%ymm0        # 6a10 <_sk_callback_avx+0x50c>
10774  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
10775  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
10776  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
10777  DB  196,98,125,24,21,145,6,0,0          ; vbroadcastss  0x691(%rip),%ymm10        # 6a14 <_sk_callback_avx+0x510>
10778  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
10779  DB  196,98,125,24,21,135,6,0,0          ; vbroadcastss  0x687(%rip),%ymm10        # 6a18 <_sk_callback_avx+0x514>
10780  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
10781  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
10782  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
10783  DB  72,173                              ; lods          %ds:(%rsi),%rax
10784  DB  255,224                             ; jmpq          *%rax
10785
10786PUBLIC _sk_bicubic_n3y_avx
10787_sk_bicubic_n3y_avx LABEL PROC
10788  DB  72,173                              ; lods          %ds:(%rsi),%rax
10789  DB  196,226,125,24,13,106,6,0,0         ; vbroadcastss  0x66a(%rip),%ymm1        # 6a1c <_sk_callback_avx+0x518>
10790  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
10791  DB  196,98,125,24,5,96,6,0,0            ; vbroadcastss  0x660(%rip),%ymm8        # 6a20 <_sk_callback_avx+0x51c>
10792  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
10793  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
10794  DB  196,98,125,24,21,81,6,0,0           ; vbroadcastss  0x651(%rip),%ymm10        # 6a24 <_sk_callback_avx+0x520>
10795  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
10796  DB  196,98,125,24,21,71,6,0,0           ; vbroadcastss  0x647(%rip),%ymm10        # 6a28 <_sk_callback_avx+0x524>
10797  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
10798  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
10799  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
10800  DB  72,173                              ; lods          %ds:(%rsi),%rax
10801  DB  255,224                             ; jmpq          *%rax
10802
10803PUBLIC _sk_bicubic_n1y_avx
10804_sk_bicubic_n1y_avx LABEL PROC
10805  DB  72,173                              ; lods          %ds:(%rsi),%rax
10806  DB  196,226,125,24,13,42,6,0,0          ; vbroadcastss  0x62a(%rip),%ymm1        # 6a2c <_sk_callback_avx+0x528>
10807  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
10808  DB  196,98,125,24,5,32,6,0,0            ; vbroadcastss  0x620(%rip),%ymm8        # 6a30 <_sk_callback_avx+0x52c>
10809  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
10810  DB  196,98,125,24,13,22,6,0,0           ; vbroadcastss  0x616(%rip),%ymm9        # 6a34 <_sk_callback_avx+0x530>
10811  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
10812  DB  196,98,125,24,21,12,6,0,0           ; vbroadcastss  0x60c(%rip),%ymm10        # 6a38 <_sk_callback_avx+0x534>
10813  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10814  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
10815  DB  196,98,125,24,21,253,5,0,0          ; vbroadcastss  0x5fd(%rip),%ymm10        # 6a3c <_sk_callback_avx+0x538>
10816  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10817  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
10818  DB  196,98,125,24,13,238,5,0,0          ; vbroadcastss  0x5ee(%rip),%ymm9        # 6a40 <_sk_callback_avx+0x53c>
10819  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10820  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
10821  DB  72,173                              ; lods          %ds:(%rsi),%rax
10822  DB  255,224                             ; jmpq          *%rax
10823
10824PUBLIC _sk_bicubic_p1y_avx
10825_sk_bicubic_p1y_avx LABEL PROC
10826  DB  72,173                              ; lods          %ds:(%rsi),%rax
10827  DB  196,98,125,24,5,214,5,0,0           ; vbroadcastss  0x5d6(%rip),%ymm8        # 6a44 <_sk_callback_avx+0x540>
10828  DB  197,188,88,72,32                    ; vaddps        0x20(%rax),%ymm8,%ymm1
10829  DB  197,124,16,72,96                    ; vmovups       0x60(%rax),%ymm9
10830  DB  196,98,125,24,21,199,5,0,0          ; vbroadcastss  0x5c7(%rip),%ymm10        # 6a48 <_sk_callback_avx+0x544>
10831  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
10832  DB  196,98,125,24,29,189,5,0,0          ; vbroadcastss  0x5bd(%rip),%ymm11        # 6a4c <_sk_callback_avx+0x548>
10833  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10834  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
10835  DB  196,65,44,88,192                    ; vaddps        %ymm8,%ymm10,%ymm8
10836  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
10837  DB  196,98,125,24,13,164,5,0,0          ; vbroadcastss  0x5a4(%rip),%ymm9        # 6a50 <_sk_callback_avx+0x54c>
10838  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10839  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
10840  DB  72,173                              ; lods          %ds:(%rsi),%rax
10841  DB  255,224                             ; jmpq          *%rax
10842
10843PUBLIC _sk_bicubic_p3y_avx
10844_sk_bicubic_p3y_avx LABEL PROC
10845  DB  72,173                              ; lods          %ds:(%rsi),%rax
10846  DB  196,226,125,24,13,140,5,0,0         ; vbroadcastss  0x58c(%rip),%ymm1        # 6a54 <_sk_callback_avx+0x550>
10847  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
10848  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
10849  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
10850  DB  196,98,125,24,21,120,5,0,0          ; vbroadcastss  0x578(%rip),%ymm10        # 6a58 <_sk_callback_avx+0x554>
10851  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
10852  DB  196,98,125,24,21,110,5,0,0          ; vbroadcastss  0x56e(%rip),%ymm10        # 6a5c <_sk_callback_avx+0x558>
10853  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
10854  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
10855  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
10856  DB  72,173                              ; lods          %ds:(%rsi),%rax
10857  DB  255,224                             ; jmpq          *%rax
10858
10859PUBLIC _sk_callback_avx
10860_sk_callback_avx LABEL PROC
10861  DB  85                                  ; push          %rbp
10862  DB  72,137,229                          ; mov           %rsp,%rbp
10863  DB  65,87                               ; push          %r15
10864  DB  65,86                               ; push          %r14
10865  DB  65,84                               ; push          %r12
10866  DB  83                                  ; push          %rbx
10867  DB  72,131,228,224                      ; and           $0xffffffffffffffe0,%rsp
10868  DB  72,129,236,192,0,0,0                ; sub           $0xc0,%rsp
10869  DB  197,252,41,188,36,128,0,0,0         ; vmovaps       %ymm7,0x80(%rsp)
10870  DB  197,252,41,116,36,96                ; vmovaps       %ymm6,0x60(%rsp)
10871  DB  197,252,41,108,36,64                ; vmovaps       %ymm5,0x40(%rsp)
10872  DB  197,252,41,100,36,32                ; vmovaps       %ymm4,0x20(%rsp)
10873  DB  77,137,196                          ; mov           %r8,%r12
10874  DB  73,137,206                          ; mov           %rcx,%r14
10875  DB  73,137,215                          ; mov           %rdx,%r15
10876  DB  72,173                              ; lods          %ds:(%rsi),%rax
10877  DB  72,137,195                          ; mov           %rax,%rbx
10878  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
10879  DB  197,252,21,193                      ; vunpckhps     %ymm1,%ymm0,%ymm0
10880  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
10881  DB  197,236,21,211                      ; vunpckhps     %ymm3,%ymm2,%ymm2
10882  DB  197,221,20,217                      ; vunpcklpd     %ymm1,%ymm4,%ymm3
10883  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
10884  DB  197,253,20,226                      ; vunpcklpd     %ymm2,%ymm0,%ymm4
10885  DB  197,253,21,194                      ; vunpckhpd     %ymm2,%ymm0,%ymm0
10886  DB  196,227,101,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm2
10887  DB  196,227,93,24,232,1                 ; vinsertf128   $0x1,%xmm0,%ymm4,%ymm5
10888  DB  196,227,101,6,201,49                ; vperm2f128    $0x31,%ymm1,%ymm3,%ymm1
10889  DB  196,227,93,6,192,49                 ; vperm2f128    $0x31,%ymm0,%ymm4,%ymm0
10890  DB  197,253,17,83,8                     ; vmovupd       %ymm2,0x8(%rbx)
10891  DB  197,253,17,107,40                   ; vmovupd       %ymm5,0x28(%rbx)
10892  DB  197,253,17,75,72                    ; vmovupd       %ymm1,0x48(%rbx)
10893  DB  197,253,17,67,104                   ; vmovupd       %ymm0,0x68(%rbx)
10894  DB  77,133,228                          ; test          %r12,%r12
10895  DB  186,8,0,0,0                         ; mov           $0x8,%edx
10896  DB  65,15,69,212                        ; cmovne        %r12d,%edx
10897  DB  72,137,217                          ; mov           %rbx,%rcx
10898  DB  197,248,119                         ; vzeroupper
10899  DB  255,19                              ; callq         *(%rbx)
10900  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
10901  DB  197,248,16,0                        ; vmovups       (%rax),%xmm0
10902  DB  197,248,16,72,16                    ; vmovups       0x10(%rax),%xmm1
10903  DB  197,248,16,80,32                    ; vmovups       0x20(%rax),%xmm2
10904  DB  197,248,16,88,48                    ; vmovups       0x30(%rax),%xmm3
10905  DB  196,227,101,24,88,112,1             ; vinsertf128   $0x1,0x70(%rax),%ymm3,%ymm3
10906  DB  196,227,109,24,80,96,1              ; vinsertf128   $0x1,0x60(%rax),%ymm2,%ymm2
10907  DB  196,227,117,24,72,80,1              ; vinsertf128   $0x1,0x50(%rax),%ymm1,%ymm1
10908  DB  196,227,125,24,64,64,1              ; vinsertf128   $0x1,0x40(%rax),%ymm0,%ymm0
10909  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
10910  DB  197,252,21,233                      ; vunpckhps     %ymm1,%ymm0,%ymm5
10911  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
10912  DB  197,236,21,219                      ; vunpckhps     %ymm3,%ymm2,%ymm3
10913  DB  197,221,20,193                      ; vunpcklpd     %ymm1,%ymm4,%ymm0
10914  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
10915  DB  197,213,20,211                      ; vunpcklpd     %ymm3,%ymm5,%ymm2
10916  DB  197,213,21,219                      ; vunpckhpd     %ymm3,%ymm5,%ymm3
10917  DB  72,173                              ; lods          %ds:(%rsi),%rax
10918  DB  76,137,250                          ; mov           %r15,%rdx
10919  DB  76,137,241                          ; mov           %r14,%rcx
10920  DB  77,137,224                          ; mov           %r12,%r8
10921  DB  197,252,40,100,36,32                ; vmovaps       0x20(%rsp),%ymm4
10922  DB  197,252,40,108,36,64                ; vmovaps       0x40(%rsp),%ymm5
10923  DB  197,252,40,116,36,96                ; vmovaps       0x60(%rsp),%ymm6
10924  DB  197,252,40,188,36,128,0,0,0         ; vmovaps       0x80(%rsp),%ymm7
10925  DB  72,141,101,224                      ; lea           -0x20(%rbp),%rsp
10926  DB  91                                  ; pop           %rbx
10927  DB  65,92                               ; pop           %r12
10928  DB  65,94                               ; pop           %r14
10929  DB  65,95                               ; pop           %r15
10930  DB  93                                  ; pop           %rbp
10931  DB  255,224                             ; jmpq          *%rax
10932
10933ALIGN 4
10934  DB  0,0                                 ; add           %al,(%rax)
10935  DB  0,63                                ; add           %bh,(%rdi)
10936  DB  0,0                                 ; add           %al,(%rax)
10937  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
10938  DB  0,0                                 ; add           %al,(%rax)
10939  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
10940  DB  0,0                                 ; add           %al,(%rax)
10941  DB  2,0                                 ; add           (%rax),%al
10942  DB  0,0                                 ; add           %al,(%rax)
10943  DB  0,0                                 ; add           %al,(%rax)
10944  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
10945  DB  252                                 ; cld
10946  DB  190,0,0,128,63                      ; mov           $0x3f800000,%esi
10947  DB  0,0                                 ; add           %al,(%rax)
10948  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
10949  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
10950  DB  63                                  ; (bad)
10951  DB  0,0                                 ; add           %al,(%rax)
10952  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
10953  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
10954  DB  63                                  ; (bad)
10955  DB  0,0                                 ; add           %al,(%rax)
10956  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
10957  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
10958  DB  63                                  ; (bad)
10959  DB  0,0                                 ; add           %al,(%rax)
10960  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
10961  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
10962  DB  63                                  ; (bad)
10963  DB  0,0                                 ; add           %al,(%rax)
10964  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
10965  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
10966  DB  63                                  ; (bad)
10967  DB  0,0                                 ; add           %al,(%rax)
10968  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
10969  DB  0,128,191,0,0,224                   ; add           %al,-0x1fffff41(%rax)
10970  DB  64,154                              ; rex           (bad)
10971  DB  153                                 ; cltd
10972  DB  153                                 ; cltd
10973  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
10974  DB  71,225,61                           ; rex.RXB       loope 66e1 <.literal4+0xb1>
10975  DB  0,0                                 ; add           %al,(%rax)
10976  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
10977  DB  153                                 ; cltd
10978  DB  153                                 ; cltd
10979  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
10980  DB  71,225,61                           ; rex.RXB       loope 66f1 <.literal4+0xc1>
10981  DB  0,0                                 ; add           %al,(%rax)
10982  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
10983  DB  153                                 ; cltd
10984  DB  153                                 ; cltd
10985  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
10986  DB  71,225,61                           ; rex.RXB       loope 6701 <.literal4+0xd1>
10987  DB  0,0                                 ; add           %al,(%rax)
10988  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
10989  DB  153                                 ; cltd
10990  DB  153                                 ; cltd
10991  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
10992  DB  71,225,61                           ; rex.RXB       loope 6711 <.literal4+0xe1>
10993  DB  0,0                                 ; add           %al,(%rax)
10994  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
10995  DB  0,128,63,0,0,127                    ; add           %al,0x7f00003f(%rax)
10996  DB  67,0,0                              ; rex.XB        add %al,(%r8)
10997  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
10998  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
10999  DB  63                                  ; (bad)
11000  DB  145                                 ; xchg          %eax,%ecx
11001  DB  131,158,61,154,153,153,62           ; sbbl          $0x3e,-0x666665c3(%rsi)
11002  DB  92                                  ; pop           %rsp
11003  DB  143                                 ; (bad)
11004  DB  50,63                               ; xor           (%rdi),%bh
11005  DB  10,215                              ; or            %bh,%dl
11006  DB  35,59                               ; and           (%rbx),%edi
11007  DB  174                                 ; scas          %es:(%rdi),%al
11008  DB  71,97                               ; rex.RXB       (bad)
11009  DB  61,82,184,78,65                     ; cmp           $0x414eb852,%eax
11010  DB  57,215                              ; cmp           %edx,%edi
11011  DB  32,187,186,159,98,60                ; and           %bh,0x3c629fba(%rbx)
11012  DB  109                                 ; insl          (%dx),%es:(%rdi)
11013  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
11014  DB  144                                 ; nop
11015  DB  63                                  ; (bad)
11016  DB  252                                 ; cld
11017  DB  191,16,62,168,177                   ; mov           $0xb1a83e10,%edi
11018  DB  152                                 ; cwtl
11019  DB  59,0                                ; cmp           (%rax),%eax
11020  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
11021  DB  64,0,0                              ; add           %al,(%rax)
11022  DB  0,64,0                              ; add           %al,0x0(%rax)
11023  DB  0,128,64,171,170,42                 ; add           %al,0x2aaaab40(%rax)
11024  DB  62,0,0                              ; add           %al,%ds:(%rax)
11025  DB  0,63                                ; add           %bh,(%rdi)
11026  DB  0,0                                 ; add           %al,(%rax)
11027  DB  0,63                                ; add           %bh,(%rdi)
11028  DB  171                                 ; stos          %eax,%es:(%rdi)
11029  DB  170                                 ; stos          %al,%es:(%rdi)
11030  DB  170                                 ; stos          %al,%es:(%rdi)
11031  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
11032  DB  170                                 ; stos          %al,%es:(%rdi)
11033  DB  42,63                               ; sub           (%rdi),%bh
11034  DB  0,0                                 ; add           %al,(%rax)
11035  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
11036  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
11037  DB  42,62                               ; sub           (%rsi),%bh
11038  DB  171                                 ; stos          %eax,%es:(%rdi)
11039  DB  170                                 ; stos          %al,%es:(%rdi)
11040  DB  170                                 ; stos          %al,%es:(%rdi)
11041  DB  190,129,128,128,59                  ; mov           $0x3b808081,%esi
11042  DB  129,128,128,59,0,248,0,0,8,33       ; addl          $0x21080000,-0x7ffc480(%rax)
11043  DB  132,55                              ; test          %dh,(%rdi)
11044  DB  224,7                               ; loopne        6765 <.literal4+0x135>
11045  DB  0,0                                 ; add           %al,(%rax)
11046  DB  33,8                                ; and           %ecx,(%rax)
11047  DB  2,58                                ; add           (%rdx),%bh
11048  DB  31                                  ; (bad)
11049  DB  0,0                                 ; add           %al,(%rax)
11050  DB  0,8                                 ; add           %cl,(%rax)
11051  DB  33,4,61,129,128,128,59              ; and           %eax,0x3b808081(,%rdi,1)
11052  DB  128,0,128                           ; addb          $0x80,(%rax)
11053  DB  55                                  ; (bad)
11054  DB  0,0                                 ; add           %al,(%rax)
11055  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11056  DB  0,127,67                            ; add           %bh,0x43(%rdi)
11057  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
11058  DB  0,52,255                            ; add           %dh,(%rdi,%rdi,8)
11059  DB  255                                 ; (bad)
11060  DB  127,0                               ; jg            678c <.literal4+0x15c>
11061  DB  0,0                                 ; add           %al,(%rax)
11062  DB  0,63                                ; add           %bh,(%rdi)
11063  DB  119,115                             ; ja            6805 <.literal4+0x1d5>
11064  DB  248                                 ; clc
11065  DB  194,117,191                         ; retq          $0xbf75
11066  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
11067  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
11068  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
11069  DB  154                                 ; (bad)
11070  DB  64,254                              ; rex           (bad)
11071  DB  210,221                             ; rcr           %cl,%ch
11072  DB  65,0,0                              ; add           %al,(%r8)
11073  DB  0,75,0                              ; add           %cl,0x0(%rbx)
11074  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
11075  DB  52,255                              ; xor           $0xff,%al
11076  DB  255                                 ; (bad)
11077  DB  127,0                               ; jg            67c0 <.literal4+0x190>
11078  DB  0,0                                 ; add           %al,(%rax)
11079  DB  0,63                                ; add           %bh,(%rdi)
11080  DB  119,115                             ; ja            6839 <.literal4+0x209>
11081  DB  248                                 ; clc
11082  DB  194,117,191                         ; retq          $0xbf75
11083  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
11084  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
11085  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
11086  DB  154                                 ; (bad)
11087  DB  64,254                              ; rex           (bad)
11088  DB  210,221                             ; rcr           %cl,%ch
11089  DB  65,0,0                              ; add           %al,(%r8)
11090  DB  0,75,0                              ; add           %cl,0x0(%rbx)
11091  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
11092  DB  52,255                              ; xor           $0xff,%al
11093  DB  255                                 ; (bad)
11094  DB  127,0                               ; jg            67f4 <.literal4+0x1c4>
11095  DB  0,0                                 ; add           %al,(%rax)
11096  DB  0,63                                ; add           %bh,(%rdi)
11097  DB  119,115                             ; ja            686d <.literal4+0x23d>
11098  DB  248                                 ; clc
11099  DB  194,117,191                         ; retq          $0xbf75
11100  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
11101  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
11102  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
11103  DB  154                                 ; (bad)
11104  DB  64,254                              ; rex           (bad)
11105  DB  210,221                             ; rcr           %cl,%ch
11106  DB  65,0,0                              ; add           %al,(%r8)
11107  DB  0,75,0                              ; add           %cl,0x0(%rbx)
11108  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
11109  DB  52,255                              ; xor           $0xff,%al
11110  DB  255                                 ; (bad)
11111  DB  127,0                               ; jg            6828 <.literal4+0x1f8>
11112  DB  0,0                                 ; add           %al,(%rax)
11113  DB  0,63                                ; add           %bh,(%rdi)
11114  DB  119,115                             ; ja            68a1 <.literal4+0x271>
11115  DB  248                                 ; clc
11116  DB  194,117,191                         ; retq          $0xbf75
11117  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
11118  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
11119  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
11120  DB  154                                 ; (bad)
11121  DB  64,254                              ; rex           (bad)
11122  DB  210,221                             ; rcr           %cl,%ch
11123  DB  65,0,0                              ; add           %al,(%r8)
11124  DB  0,75,0                              ; add           %cl,0x0(%rbx)
11125  DB  0,128,63,0,0,200                    ; add           %al,-0x37ffffc1(%rax)
11126  DB  66,0,0                              ; rex.X         add %al,(%rax)
11127  DB  127,67                              ; jg            689f <.literal4+0x26f>
11128  DB  0,0                                 ; add           %al,(%rax)
11129  DB  0,195                               ; add           %al,%bl
11130  DB  0,0                                 ; add           %al,(%rax)
11131  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
11132  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
11133  DB  59,10                               ; cmp           (%rdx),%ecx
11134  DB  215                                 ; xlat          %ds:(%rbx)
11135  DB  163,59,194,24,17,60,203,61,13       ; movabs        %eax,0xd3dcb3c1118c23b
11136  DB  190,80,128,3,62                     ; mov           $0x3e038050,%esi
11137  DB  31                                  ; (bad)
11138  DB  215                                 ; xlat          %ds:(%rbx)
11139  DB  118,63                              ; jbe           68bf <.literal4+0x28f>
11140  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
11141  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
11142  DB  127,67                              ; jg            68d3 <.literal4+0x2a3>
11143  DB  129,128,128,59,0,0,128,63,129,128   ; addl          $0x80813f80,0x3b80(%rax)
11144  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
11145  DB  0,128,63,129,128,128                ; add           %al,-0x7f7f7ec1(%rax)
11146  DB  59,0                                ; cmp           (%rax),%eax
11147  DB  248                                 ; clc
11148  DB  0,0                                 ; add           %al,(%rax)
11149  DB  8,33                                ; or            %ah,(%rcx)
11150  DB  132,55                              ; test          %dh,(%rdi)
11151  DB  224,7                               ; loopne        68b5 <.literal4+0x285>
11152  DB  0,0                                 ; add           %al,(%rax)
11153  DB  33,8                                ; and           %ecx,(%rax)
11154  DB  2,58                                ; add           (%rdx),%bh
11155  DB  31                                  ; (bad)
11156  DB  0,0                                 ; add           %al,(%rax)
11157  DB  0,8                                 ; add           %cl,(%rax)
11158  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
11159  DB  0,248                               ; add           %bh,%al
11160  DB  0,0                                 ; add           %al,(%rax)
11161  DB  8,33                                ; or            %ah,(%rcx)
11162  DB  132,55                              ; test          %dh,(%rdi)
11163  DB  224,7                               ; loopne        68d1 <.literal4+0x2a1>
11164  DB  0,0                                 ; add           %al,(%rax)
11165  DB  33,8                                ; and           %ecx,(%rax)
11166  DB  2,58                                ; add           (%rdx),%bh
11167  DB  31                                  ; (bad)
11168  DB  0,0                                 ; add           %al,(%rax)
11169  DB  0,8                                 ; add           %cl,(%rax)
11170  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
11171  DB  0,0                                 ; add           %al,(%rax)
11172  DB  248                                 ; clc
11173  DB  65,0,0                              ; add           %al,(%r8)
11174  DB  124,66                              ; jl            6926 <.literal4+0x2f6>
11175  DB  0,240                               ; add           %dh,%al
11176  DB  0,0                                 ; add           %al,(%rax)
11177  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
11178  DB  0,0                                 ; add           %al,(%rax)
11179  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
11180  DB  0,0                                 ; add           %al,(%rax)
11181  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
11182  DB  0,0                                 ; add           %al,(%rax)
11183  DB  137,136,136,61,0,240                ; mov           %ecx,-0xfffc278(%rax)
11184  DB  0,0                                 ; add           %al,(%rax)
11185  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
11186  DB  0,0                                 ; add           %al,(%rax)
11187  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
11188  DB  0,0                                 ; add           %al,(%rax)
11189  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
11190  DB  0,0                                 ; add           %al,(%rax)
11191  DB  137,136,136,61,0,0                  ; mov           %ecx,0x3d88(%rax)
11192  DB  112,65                              ; jo            6969 <.literal4+0x339>
11193  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
11194  DB  127,67                              ; jg            6977 <.literal4+0x347>
11195  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
11196  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
11197  DB  0,0                                 ; add           %al,(%rax)
11198  DB  0,56                                ; add           %bh,(%rax)
11199  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
11200  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
11201  DB  0,0                                 ; add           %al,(%rax)
11202  DB  0,56                                ; add           %bh,(%rax)
11203  DB  0,0                                 ; add           %al,(%rax)
11204  DB  0,128,0,0,128,56                    ; add           %al,0x38800000(%rax)
11205  DB  0,64,254                            ; add           %al,-0x2(%rax)
11206  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
11207  DB  0,128,55,0,0,128                    ; add           %al,-0x7fffffc9(%rax)
11208  DB  63                                  ; (bad)
11209  DB  0,255                               ; add           %bh,%bh
11210  DB  127,71                              ; jg            69b7 <.literal4+0x387>
11211  DB  0,0                                 ; add           %al,(%rax)
11212  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11213  DB  0,128,191,0,0,0                     ; add           %al,0xbf(%rax)
11214  DB  63                                  ; (bad)
11215  DB  208                                 ; (bad)
11216  DB  179,89                              ; mov           $0x59,%bl
11217  DB  62,89                               ; ds            pop %rcx
11218  DB  23                                  ; (bad)
11219  DB  55                                  ; (bad)
11220  DB  63                                  ; (bad)
11221  DB  152                                 ; cwtl
11222  DB  221,147,61,45,16,17                 ; fstl          0x11102d3d(%rbx)
11223  DB  192,18,120                          ; rclb          $0x78,(%rdx)
11224  DB  57,64,32                            ; cmp           %eax,0x20(%rax)
11225  DB  148                                 ; xchg          %eax,%esp
11226  DB  90                                  ; pop           %rdx
11227  DB  62,4,157                            ; ds            add $0x9d,%al
11228  DB  30                                  ; (bad)
11229  DB  62,0,24                             ; add           %bl,%ds:(%rax)
11230  DB  161,57,1,0,0,0,111,43,231           ; movabs        0xe72b6f0000000139,%eax
11231  DB  187,159,215,202,60                  ; mov           $0x3ccad79f,%ebx
11232  DB  212                                 ; (bad)
11233  DB  100,84                              ; fs            push %rsp
11234  DB  189,169,240,34,62                   ; mov           $0x3e22f0a9,%ebp
11235  DB  0,0                                 ; add           %al,(%rax)
11236  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
11237  DB  0,0                                 ; add           %al,(%rax)
11238  DB  63                                  ; (bad)
11239  DB  0,0                                 ; add           %al,(%rax)
11240  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11241  DB  0,0                                 ; add           %al,(%rax)
11242  DB  63                                  ; (bad)
11243  DB  0,0                                 ; add           %al,(%rax)
11244  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
11245  DB  0,0                                 ; add           %al,(%rax)
11246  DB  0,63                                ; add           %bh,(%rdi)
11247  DB  0,0                                 ; add           %al,(%rax)
11248  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
11249  DB  0,0                                 ; add           %al,(%rax)
11250  DB  0,63                                ; add           %bh,(%rdi)
11251  DB  0,0                                 ; add           %al,(%rax)
11252  DB  192,191,0,0,128,63,114              ; sarb          $0x72,0x3f800000(%rdi)
11253  DB  28,199                              ; sbb           $0xc7,%al
11254  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
11255  DB  170                                 ; stos          %al,%es:(%rdi)
11256  DB  170                                 ; stos          %al,%es:(%rdi)
11257  DB  190,0,0,0,191                       ; mov           $0xbf000000,%esi
11258  DB  0,0                                 ; add           %al,(%rax)
11259  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
11260  DB  85                                  ; push          %rbp
11261  DB  149                                 ; xchg          %eax,%ebp
11262  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
11263  DB  0,0                                 ; add           %al,(%rax)
11264  DB  0,63                                ; add           %bh,(%rdi)
11265  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
11266  DB  0,63                                ; add           %bh,(%rdi)
11267  DB  85                                  ; push          %rbp
11268  DB  85                                  ; push          %rbp
11269  DB  149                                 ; xchg          %eax,%ebp
11270  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
11271  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
11272  DB  192,63,114                          ; sarb          $0x72,(%rdi)
11273  DB  28,199                              ; sbb           $0xc7,%al
11274  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
11275  DB  170                                 ; stos          %al,%es:(%rdi)
11276  DB  170                                 ; stos          %al,%es:(%rdi)
11277  DB  190,0,0,192,191                     ; mov           $0xbfc00000,%esi
11278  DB  0,0                                 ; add           %al,(%rax)
11279  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
11280  DB  28,199                              ; sbb           $0xc7,%al
11281  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
11282  DB  170                                 ; stos          %al,%es:(%rdi)
11283  DB  170                                 ; stos          %al,%es:(%rdi)
11284  DB  190,0,0,0,191                       ; mov           $0xbf000000,%esi
11285  DB  0,0                                 ; add           %al,(%rax)
11286  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
11287  DB  85                                  ; push          %rbp
11288  DB  149                                 ; xchg          %eax,%ebp
11289  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
11290  DB  0,0                                 ; add           %al,(%rax)
11291  DB  0,63                                ; add           %bh,(%rdi)
11292  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
11293  DB  0,63                                ; add           %bh,(%rdi)
11294  DB  85                                  ; push          %rbp
11295  DB  85                                  ; push          %rbp
11296  DB  149                                 ; xchg          %eax,%ebp
11297  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
11298  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
11299  DB  192,63,114                          ; sarb          $0x72,(%rdi)
11300  DB  28,199                              ; sbb           $0xc7,%al
11301  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
11302  DB  170                                 ; stos          %al,%es:(%rdi)
11303  DB  170                                 ; stos          %al,%es:(%rdi)
11304  DB  190                                 ; .byte         0xbe
11305
11306ALIGN 16
11307  DB  0,2                                 ; add           %al,(%rdx)
11308  DB  4,6                                 ; add           $0x6,%al
11309  DB  0,0                                 ; add           %al,(%rax)
11310  DB  0,0                                 ; add           %al,(%rax)
11311  DB  0,0                                 ; add           %al,(%rax)
11312  DB  0,0                                 ; add           %al,(%rax)
11313  DB  0,0                                 ; add           %al,(%rax)
11314  DB  0,0                                 ; add           %al,(%rax)
11315  DB  8,10                                ; or            %cl,(%rdx)
11316  DB  12,14                               ; or            $0xe,%al
11317  DB  0,0                                 ; add           %al,(%rax)
11318  DB  0,0                                 ; add           %al,(%rax)
11319  DB  0,0                                 ; add           %al,(%rax)
11320  DB  0,0                                 ; add           %al,(%rax)
11321  DB  0,0                                 ; add           %al,(%rax)
11322  DB  0,0                                 ; add           %al,(%rax)
11323  DB  0,2                                 ; add           %al,(%rdx)
11324  DB  4,6                                 ; add           $0x6,%al
11325  DB  0,0                                 ; add           %al,(%rax)
11326  DB  0,0                                 ; add           %al,(%rax)
11327  DB  0,0                                 ; add           %al,(%rax)
11328  DB  0,0                                 ; add           %al,(%rax)
11329  DB  0,0                                 ; add           %al,(%rax)
11330  DB  0,0                                 ; add           %al,(%rax)
11331  DB  8,10                                ; or            %cl,(%rdx)
11332  DB  12,14                               ; or            $0xe,%al
11333  DB  0,0                                 ; add           %al,(%rax)
11334  DB  0,0                                 ; add           %al,(%rax)
11335  DB  0,0                                 ; add           %al,(%rax)
11336  DB  0,0                                 ; add           %al,(%rax)
11337  DB  0,0                                 ; add           %al,(%rax)
11338  DB  0,0                                 ; add           %al,(%rax)
11339  DB  255,0                               ; incl          (%rax)
11340  DB  255,0                               ; incl          (%rax)
11341  DB  255,0                               ; incl          (%rax)
11342  DB  255,0                               ; incl          (%rax)
11343  DB  255,0                               ; incl          (%rax)
11344  DB  255,0                               ; incl          (%rax)
11345  DB  255,0                               ; incl          (%rax)
11346  DB  255,0                               ; incl          (%rax)
11347  DB  255,0                               ; incl          (%rax)
11348  DB  255,0                               ; incl          (%rax)
11349  DB  255,0                               ; incl          (%rax)
11350  DB  255,0                               ; incl          (%rax)
11351  DB  255,0                               ; incl          (%rax)
11352  DB  255,0                               ; incl          (%rax)
11353  DB  255,0                               ; incl          (%rax)
11354  DB  255,0                               ; incl          (%rax)
11355  DB  0,2                                 ; add           %al,(%rdx)
11356  DB  4,6                                 ; add           $0x6,%al
11357  DB  0,0                                 ; add           %al,(%rax)
11358  DB  0,0                                 ; add           %al,(%rax)
11359  DB  0,0                                 ; add           %al,(%rax)
11360  DB  0,0                                 ; add           %al,(%rax)
11361  DB  0,0                                 ; add           %al,(%rax)
11362  DB  0,0                                 ; add           %al,(%rax)
11363  DB  8,10                                ; or            %cl,(%rdx)
11364  DB  12,14                               ; or            $0xe,%al
11365  DB  0,0                                 ; add           %al,(%rax)
11366  DB  0,0                                 ; add           %al,(%rax)
11367  DB  0,0                                 ; add           %al,(%rax)
11368  DB  0,0                                 ; add           %al,(%rax)
11369  DB  0,0                                 ; add           %al,(%rax)
11370  DB  0,0                                 ; add           %al,(%rax)
11371  DB  0,2                                 ; add           %al,(%rdx)
11372  DB  4,6                                 ; add           $0x6,%al
11373  DB  0,0                                 ; add           %al,(%rax)
11374  DB  0,0                                 ; add           %al,(%rax)
11375  DB  0,0                                 ; add           %al,(%rax)
11376  DB  0,0                                 ; add           %al,(%rax)
11377  DB  0,0                                 ; add           %al,(%rax)
11378  DB  0,0                                 ; add           %al,(%rax)
11379  DB  8,10                                ; or            %cl,(%rdx)
11380  DB  12,14                               ; or            $0xe,%al
11381  DB  0,0                                 ; add           %al,(%rax)
11382  DB  0,0                                 ; add           %al,(%rax)
11383  DB  0,0                                 ; add           %al,(%rax)
11384  DB  0,0                                 ; add           %al,(%rax)
11385  DB  0,0                                 ; add           %al,(%rax)
11386  DB  0,0                                 ; add           %al,(%rax)
11387
11388ALIGN 32
11389  DB  255,0                               ; incl          (%rax)
11390  DB  0,0                                 ; add           %al,(%rax)
11391  DB  255,0                               ; incl          (%rax)
11392  DB  0,0                                 ; add           %al,(%rax)
11393  DB  255,0                               ; incl          (%rax)
11394  DB  0,0                                 ; add           %al,(%rax)
11395  DB  255,0                               ; incl          (%rax)
11396  DB  0,0                                 ; add           %al,(%rax)
11397  DB  255,0                               ; incl          (%rax)
11398  DB  0,0                                 ; add           %al,(%rax)
11399  DB  255,0                               ; incl          (%rax)
11400  DB  0,0                                 ; add           %al,(%rax)
11401  DB  255,0                               ; incl          (%rax)
11402  DB  0,0                                 ; add           %al,(%rax)
11403  DB  255,0                               ; incl          (%rax)
11404  DB  0,0                                 ; add           %al,(%rax)
11405  DB  255,0                               ; incl          (%rax)
11406  DB  0,0                                 ; add           %al,(%rax)
11407  DB  255,0                               ; incl          (%rax)
11408  DB  0,0                                 ; add           %al,(%rax)
11409  DB  255,0                               ; incl          (%rax)
11410  DB  0,0                                 ; add           %al,(%rax)
11411  DB  255,0                               ; incl          (%rax)
11412  DB  0,0                                 ; add           %al,(%rax)
11413  DB  255,0                               ; incl          (%rax)
11414  DB  0,0                                 ; add           %al,(%rax)
11415  DB  255,0                               ; incl          (%rax)
11416  DB  0,0                                 ; add           %al,(%rax)
11417  DB  255,0                               ; incl          (%rax)
11418  DB  0,0                                 ; add           %al,(%rax)
11419  DB  255,0                               ; incl          (%rax)
11420  DB  0,0                                 ; add           %al,(%rax)
11421  DB  255,0                               ; incl          (%rax)
11422  DB  0,0                                 ; add           %al,(%rax)
11423  DB  255,0                               ; incl          (%rax)
11424  DB  0,0                                 ; add           %al,(%rax)
11425  DB  255,0                               ; incl          (%rax)
11426  DB  0,0                                 ; add           %al,(%rax)
11427  DB  255,0                               ; incl          (%rax)
11428  DB  0,0                                 ; add           %al,(%rax)
11429  DB  255,0                               ; incl          (%rax)
11430  DB  0,0                                 ; add           %al,(%rax)
11431  DB  255,0                               ; incl          (%rax)
11432  DB  0,0                                 ; add           %al,(%rax)
11433  DB  255,0                               ; incl          (%rax)
11434  DB  0,0                                 ; add           %al,(%rax)
11435  DB  255,0                               ; incl          (%rax)
11436  DB  0,0                                 ; add           %al,(%rax)
11437  DB  255,0                               ; incl          (%rax)
11438  DB  0,0                                 ; add           %al,(%rax)
11439  DB  255,0                               ; incl          (%rax)
11440  DB  0,0                                 ; add           %al,(%rax)
11441  DB  255,0                               ; incl          (%rax)
11442  DB  0,0                                 ; add           %al,(%rax)
11443  DB  255,0                               ; incl          (%rax)
11444  DB  0,0                                 ; add           %al,(%rax)
11445  DB  255,0                               ; incl          (%rax)
11446  DB  0,0                                 ; add           %al,(%rax)
11447  DB  255,0                               ; incl          (%rax)
11448  DB  0,0                                 ; add           %al,(%rax)
11449  DB  255,0                               ; incl          (%rax)
11450  DB  0,0                                 ; add           %al,(%rax)
11451  DB  255,0                               ; incl          (%rax)
11452  DB  0,0                                 ; add           %al,(%rax)
11453  DB  255,0                               ; incl          (%rax)
11454  DB  0,0                                 ; add           %al,(%rax)
11455  DB  255,0                               ; incl          (%rax)
11456  DB  0,0                                 ; add           %al,(%rax)
11457  DB  255,0                               ; incl          (%rax)
11458  DB  0,0                                 ; add           %al,(%rax)
11459  DB  255,0                               ; incl          (%rax)
11460  DB  0,0                                 ; add           %al,(%rax)
11461  DB  255,0                               ; incl          (%rax)
11462  DB  0,0                                 ; add           %al,(%rax)
11463  DB  255,0                               ; incl          (%rax)
11464  DB  0,0                                 ; add           %al,(%rax)
11465  DB  255,0                               ; incl          (%rax)
11466  DB  0,0                                 ; add           %al,(%rax)
11467  DB  255,0                               ; incl          (%rax)
11468  DB  0,0                                 ; add           %al,(%rax)
11469ALIGN 32
11470
11471PUBLIC _sk_start_pipeline_sse41
11472_sk_start_pipeline_sse41 LABEL PROC
11473  DB  85                                  ; push          %rbp
11474  DB  72,137,229                          ; mov           %rsp,%rbp
11475  DB  65,87                               ; push          %r15
11476  DB  65,86                               ; push          %r14
11477  DB  65,85                               ; push          %r13
11478  DB  65,84                               ; push          %r12
11479  DB  86                                  ; push          %rsi
11480  DB  87                                  ; push          %rdi
11481  DB  83                                  ; push          %rbx
11482  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
11483  DB  68,15,41,125,176                    ; movaps        %xmm15,-0x50(%rbp)
11484  DB  68,15,41,117,160                    ; movaps        %xmm14,-0x60(%rbp)
11485  DB  68,15,41,109,144                    ; movaps        %xmm13,-0x70(%rbp)
11486  DB  68,15,41,101,128                    ; movaps        %xmm12,-0x80(%rbp)
11487  DB  68,15,41,157,112,255,255,255        ; movaps        %xmm11,-0x90(%rbp)
11488  DB  68,15,41,149,96,255,255,255         ; movaps        %xmm10,-0xa0(%rbp)
11489  DB  68,15,41,141,80,255,255,255         ; movaps        %xmm9,-0xb0(%rbp)
11490  DB  68,15,41,133,64,255,255,255         ; movaps        %xmm8,-0xc0(%rbp)
11491  DB  15,41,189,48,255,255,255            ; movaps        %xmm7,-0xd0(%rbp)
11492  DB  15,41,181,32,255,255,255            ; movaps        %xmm6,-0xe0(%rbp)
11493  DB  72,137,211                          ; mov           %rdx,%rbx
11494  DB  73,137,207                          ; mov           %rcx,%r15
11495  DB  76,139,117,48                       ; mov           0x30(%rbp),%r14
11496  DB  76,137,206                          ; mov           %r9,%rsi
11497  DB  72,173                              ; lods          %ds:(%rsi),%rax
11498  DB  73,137,197                          ; mov           %rax,%r13
11499  DB  73,137,244                          ; mov           %rsi,%r12
11500  DB  73,141,79,4                         ; lea           0x4(%r15),%rcx
11501  DB  76,57,193                           ; cmp           %r8,%rcx
11502  DB  118,5                               ; jbe           7b <_sk_start_pipeline_sse41+0x7b>
11503  DB  76,137,250                          ; mov           %r15,%rdx
11504  DB  235,75                              ; jmp           c6 <_sk_start_pipeline_sse41+0xc6>
11505  DB  76,137,133,24,255,255,255           ; mov           %r8,-0xe8(%rbp)
11506  DB  65,184,0,0,0,0                      ; mov           $0x0,%r8d
11507  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11508  DB  15,87,201                           ; xorps         %xmm1,%xmm1
11509  DB  15,87,210                           ; xorps         %xmm2,%xmm2
11510  DB  15,87,219                           ; xorps         %xmm3,%xmm3
11511  DB  15,87,228                           ; xorps         %xmm4,%xmm4
11512  DB  15,87,237                           ; xorps         %xmm5,%xmm5
11513  DB  15,87,246                           ; xorps         %xmm6,%xmm6
11514  DB  15,87,255                           ; xorps         %xmm7,%xmm7
11515  DB  76,137,247                          ; mov           %r14,%rdi
11516  DB  76,137,230                          ; mov           %r12,%rsi
11517  DB  76,137,250                          ; mov           %r15,%rdx
11518  DB  72,137,217                          ; mov           %rbx,%rcx
11519  DB  65,255,213                          ; callq         *%r13
11520  DB  76,139,133,24,255,255,255           ; mov           -0xe8(%rbp),%r8
11521  DB  73,141,87,4                         ; lea           0x4(%r15),%rdx
11522  DB  73,131,199,8                        ; add           $0x8,%r15
11523  DB  77,57,199                           ; cmp           %r8,%r15
11524  DB  73,137,215                          ; mov           %rdx,%r15
11525  DB  118,188                             ; jbe           82 <_sk_start_pipeline_sse41+0x82>
11526  DB  73,41,208                           ; sub           %rdx,%r8
11527  DB  116,36                              ; je            ef <_sk_start_pipeline_sse41+0xef>
11528  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11529  DB  15,87,201                           ; xorps         %xmm1,%xmm1
11530  DB  15,87,210                           ; xorps         %xmm2,%xmm2
11531  DB  15,87,219                           ; xorps         %xmm3,%xmm3
11532  DB  15,87,228                           ; xorps         %xmm4,%xmm4
11533  DB  15,87,237                           ; xorps         %xmm5,%xmm5
11534  DB  15,87,246                           ; xorps         %xmm6,%xmm6
11535  DB  15,87,255                           ; xorps         %xmm7,%xmm7
11536  DB  76,137,247                          ; mov           %r14,%rdi
11537  DB  76,137,230                          ; mov           %r12,%rsi
11538  DB  72,137,217                          ; mov           %rbx,%rcx
11539  DB  65,255,213                          ; callq         *%r13
11540  DB  15,40,181,32,255,255,255            ; movaps        -0xe0(%rbp),%xmm6
11541  DB  15,40,189,48,255,255,255            ; movaps        -0xd0(%rbp),%xmm7
11542  DB  68,15,40,133,64,255,255,255         ; movaps        -0xc0(%rbp),%xmm8
11543  DB  68,15,40,141,80,255,255,255         ; movaps        -0xb0(%rbp),%xmm9
11544  DB  68,15,40,149,96,255,255,255         ; movaps        -0xa0(%rbp),%xmm10
11545  DB  68,15,40,157,112,255,255,255        ; movaps        -0x90(%rbp),%xmm11
11546  DB  68,15,40,101,128                    ; movaps        -0x80(%rbp),%xmm12
11547  DB  68,15,40,109,144                    ; movaps        -0x70(%rbp),%xmm13
11548  DB  68,15,40,117,160                    ; movaps        -0x60(%rbp),%xmm14
11549  DB  68,15,40,125,176                    ; movaps        -0x50(%rbp),%xmm15
11550  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
11551  DB  91                                  ; pop           %rbx
11552  DB  95                                  ; pop           %rdi
11553  DB  94                                  ; pop           %rsi
11554  DB  65,92                               ; pop           %r12
11555  DB  65,93                               ; pop           %r13
11556  DB  65,94                               ; pop           %r14
11557  DB  65,95                               ; pop           %r15
11558  DB  93                                  ; pop           %rbp
11559  DB  195                                 ; retq
11560
11561PUBLIC _sk_just_return_sse41
11562_sk_just_return_sse41 LABEL PROC
11563  DB  195                                 ; retq
11564
11565PUBLIC _sk_seed_shader_sse41
11566_sk_seed_shader_sse41 LABEL PROC
11567  DB  102,15,110,194                      ; movd          %edx,%xmm0
11568  DB  102,15,112,192,0                    ; pshufd        $0x0,%xmm0,%xmm0
11569  DB  15,91,200                           ; cvtdq2ps      %xmm0,%xmm1
11570  DB  15,40,21,23,80,0,0                  ; movaps        0x5017(%rip),%xmm2        # 5170 <_sk_callback_sse41+0xd6>
11571  DB  15,88,202                           ; addps         %xmm2,%xmm1
11572  DB  15,16,7                             ; movups        (%rdi),%xmm0
11573  DB  15,88,193                           ; addps         %xmm1,%xmm0
11574  DB  102,15,110,201                      ; movd          %ecx,%xmm1
11575  DB  102,15,112,201,0                    ; pshufd        $0x0,%xmm1,%xmm1
11576  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
11577  DB  15,88,202                           ; addps         %xmm2,%xmm1
11578  DB  72,173                              ; lods          %ds:(%rsi),%rax
11579  DB  15,40,21,6,80,0,0                   ; movaps        0x5006(%rip),%xmm2        # 5180 <_sk_callback_sse41+0xe6>
11580  DB  15,87,219                           ; xorps         %xmm3,%xmm3
11581  DB  15,87,228                           ; xorps         %xmm4,%xmm4
11582  DB  15,87,237                           ; xorps         %xmm5,%xmm5
11583  DB  15,87,246                           ; xorps         %xmm6,%xmm6
11584  DB  15,87,255                           ; xorps         %xmm7,%xmm7
11585  DB  255,224                             ; jmpq          *%rax
11586
11587PUBLIC _sk_dither_sse41
11588_sk_dither_sse41 LABEL PROC
11589  DB  72,173                              ; lods          %ds:(%rsi),%rax
11590  DB  102,68,15,110,194                   ; movd          %edx,%xmm8
11591  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11592  DB  243,68,15,111,79,32                 ; movdqu        0x20(%rdi),%xmm9
11593  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
11594  DB  102,68,15,110,193                   ; movd          %ecx,%xmm8
11595  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
11596  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
11597  DB  102,68,15,111,21,212,79,0,0         ; movdqa        0x4fd4(%rip),%xmm10        # 5190 <_sk_callback_sse41+0xf6>
11598  DB  102,69,15,111,216                   ; movdqa        %xmm8,%xmm11
11599  DB  102,69,15,219,218                   ; pand          %xmm10,%xmm11
11600  DB  102,65,15,114,243,5                 ; pslld         $0x5,%xmm11
11601  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
11602  DB  102,65,15,114,242,4                 ; pslld         $0x4,%xmm10
11603  DB  102,68,15,111,37,192,79,0,0         ; movdqa        0x4fc0(%rip),%xmm12        # 51a0 <_sk_callback_sse41+0x106>
11604  DB  102,68,15,111,45,199,79,0,0         ; movdqa        0x4fc7(%rip),%xmm13        # 51b0 <_sk_callback_sse41+0x116>
11605  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
11606  DB  102,69,15,219,245                   ; pand          %xmm13,%xmm14
11607  DB  102,65,15,114,246,2                 ; pslld         $0x2,%xmm14
11608  DB  102,69,15,219,233                   ; pand          %xmm9,%xmm13
11609  DB  102,69,15,254,237                   ; paddd         %xmm13,%xmm13
11610  DB  102,69,15,219,196                   ; pand          %xmm12,%xmm8
11611  DB  102,65,15,114,208,1                 ; psrld         $0x1,%xmm8
11612  DB  102,69,15,219,204                   ; pand          %xmm12,%xmm9
11613  DB  102,65,15,114,209,2                 ; psrld         $0x2,%xmm9
11614  DB  102,69,15,235,234                   ; por           %xmm10,%xmm13
11615  DB  102,69,15,235,233                   ; por           %xmm9,%xmm13
11616  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
11617  DB  102,69,15,235,245                   ; por           %xmm13,%xmm14
11618  DB  102,69,15,235,240                   ; por           %xmm8,%xmm14
11619  DB  69,15,91,198                        ; cvtdq2ps      %xmm14,%xmm8
11620  DB  68,15,89,5,130,79,0,0               ; mulps         0x4f82(%rip),%xmm8        # 51c0 <_sk_callback_sse41+0x126>
11621  DB  68,15,88,5,138,79,0,0               ; addps         0x4f8a(%rip),%xmm8        # 51d0 <_sk_callback_sse41+0x136>
11622  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
11623  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
11624  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
11625  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
11626  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
11627  DB  68,15,88,210                        ; addps         %xmm2,%xmm10
11628  DB  15,93,195                           ; minps         %xmm3,%xmm0
11629  DB  15,87,210                           ; xorps         %xmm2,%xmm2
11630  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
11631  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
11632  DB  15,93,203                           ; minps         %xmm3,%xmm1
11633  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
11634  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
11635  DB  68,15,93,211                        ; minps         %xmm3,%xmm10
11636  DB  65,15,95,210                        ; maxps         %xmm10,%xmm2
11637  DB  72,173                              ; lods          %ds:(%rsi),%rax
11638  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
11639  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
11640  DB  255,224                             ; jmpq          *%rax
11641
11642PUBLIC _sk_constant_color_sse41
11643_sk_constant_color_sse41 LABEL PROC
11644  DB  72,173                              ; lods          %ds:(%rsi),%rax
11645  DB  243,15,16,0                         ; movss         (%rax),%xmm0
11646  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
11647  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
11648  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
11649  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
11650  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
11651  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
11652  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
11653  DB  72,173                              ; lods          %ds:(%rsi),%rax
11654  DB  255,224                             ; jmpq          *%rax
11655
11656PUBLIC _sk_load_rgba_sse41
11657_sk_load_rgba_sse41 LABEL PROC
11658  DB  72,173                              ; lods          %ds:(%rsi),%rax
11659  DB  15,16,0                             ; movups        (%rax),%xmm0
11660  DB  15,16,72,16                         ; movups        0x10(%rax),%xmm1
11661  DB  15,16,80,32                         ; movups        0x20(%rax),%xmm2
11662  DB  15,16,88,48                         ; movups        0x30(%rax),%xmm3
11663  DB  72,173                              ; lods          %ds:(%rsi),%rax
11664  DB  255,224                             ; jmpq          *%rax
11665
11666PUBLIC _sk_store_rgba_sse41
11667_sk_store_rgba_sse41 LABEL PROC
11668  DB  72,173                              ; lods          %ds:(%rsi),%rax
11669  DB  15,17,0                             ; movups        %xmm0,(%rax)
11670  DB  15,17,72,16                         ; movups        %xmm1,0x10(%rax)
11671  DB  15,17,80,32                         ; movups        %xmm2,0x20(%rax)
11672  DB  15,17,88,48                         ; movups        %xmm3,0x30(%rax)
11673  DB  72,173                              ; lods          %ds:(%rsi),%rax
11674  DB  255,224                             ; jmpq          *%rax
11675
11676PUBLIC _sk_clear_sse41
11677_sk_clear_sse41 LABEL PROC
11678  DB  72,173                              ; lods          %ds:(%rsi),%rax
11679  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11680  DB  15,87,201                           ; xorps         %xmm1,%xmm1
11681  DB  15,87,210                           ; xorps         %xmm2,%xmm2
11682  DB  15,87,219                           ; xorps         %xmm3,%xmm3
11683  DB  255,224                             ; jmpq          *%rax
11684
11685PUBLIC _sk_srcatop_sse41
11686_sk_srcatop_sse41 LABEL PROC
11687  DB  15,89,199                           ; mulps         %xmm7,%xmm0
11688  DB  68,15,40,5,228,78,0,0               ; movaps        0x4ee4(%rip),%xmm8        # 51e0 <_sk_callback_sse41+0x146>
11689  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
11690  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
11691  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
11692  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
11693  DB  15,89,207                           ; mulps         %xmm7,%xmm1
11694  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
11695  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
11696  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
11697  DB  15,89,215                           ; mulps         %xmm7,%xmm2
11698  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
11699  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
11700  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
11701  DB  15,89,223                           ; mulps         %xmm7,%xmm3
11702  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
11703  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
11704  DB  72,173                              ; lods          %ds:(%rsi),%rax
11705  DB  255,224                             ; jmpq          *%rax
11706
11707PUBLIC _sk_dstatop_sse41
11708_sk_dstatop_sse41 LABEL PROC
11709  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
11710  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
11711  DB  68,15,40,13,167,78,0,0              ; movaps        0x4ea7(%rip),%xmm9        # 51f0 <_sk_callback_sse41+0x156>
11712  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
11713  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
11714  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
11715  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
11716  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
11717  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
11718  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
11719  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
11720  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
11721  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
11722  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
11723  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
11724  DB  15,89,223                           ; mulps         %xmm7,%xmm3
11725  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
11726  DB  72,173                              ; lods          %ds:(%rsi),%rax
11727  DB  255,224                             ; jmpq          *%rax
11728
11729PUBLIC _sk_srcin_sse41
11730_sk_srcin_sse41 LABEL PROC
11731  DB  15,89,199                           ; mulps         %xmm7,%xmm0
11732  DB  15,89,207                           ; mulps         %xmm7,%xmm1
11733  DB  15,89,215                           ; mulps         %xmm7,%xmm2
11734  DB  15,89,223                           ; mulps         %xmm7,%xmm3
11735  DB  72,173                              ; lods          %ds:(%rsi),%rax
11736  DB  255,224                             ; jmpq          *%rax
11737
11738PUBLIC _sk_dstin_sse41
11739_sk_dstin_sse41 LABEL PROC
11740  DB  15,40,195                           ; movaps        %xmm3,%xmm0
11741  DB  15,89,196                           ; mulps         %xmm4,%xmm0
11742  DB  15,40,203                           ; movaps        %xmm3,%xmm1
11743  DB  15,89,205                           ; mulps         %xmm5,%xmm1
11744  DB  15,40,211                           ; movaps        %xmm3,%xmm2
11745  DB  15,89,214                           ; mulps         %xmm6,%xmm2
11746  DB  15,89,223                           ; mulps         %xmm7,%xmm3
11747  DB  72,173                              ; lods          %ds:(%rsi),%rax
11748  DB  255,224                             ; jmpq          *%rax
11749
11750PUBLIC _sk_srcout_sse41
11751_sk_srcout_sse41 LABEL PROC
11752  DB  68,15,40,5,75,78,0,0                ; movaps        0x4e4b(%rip),%xmm8        # 5200 <_sk_callback_sse41+0x166>
11753  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
11754  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11755  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11756  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11757  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11758  DB  72,173                              ; lods          %ds:(%rsi),%rax
11759  DB  255,224                             ; jmpq          *%rax
11760
11761PUBLIC _sk_dstout_sse41
11762_sk_dstout_sse41 LABEL PROC
11763  DB  68,15,40,5,59,78,0,0                ; movaps        0x4e3b(%rip),%xmm8        # 5210 <_sk_callback_sse41+0x176>
11764  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
11765  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
11766  DB  15,89,196                           ; mulps         %xmm4,%xmm0
11767  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
11768  DB  15,89,205                           ; mulps         %xmm5,%xmm1
11769  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
11770  DB  15,89,214                           ; mulps         %xmm6,%xmm2
11771  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
11772  DB  72,173                              ; lods          %ds:(%rsi),%rax
11773  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
11774  DB  255,224                             ; jmpq          *%rax
11775
11776PUBLIC _sk_srcover_sse41
11777_sk_srcover_sse41 LABEL PROC
11778  DB  68,15,40,5,30,78,0,0                ; movaps        0x4e1e(%rip),%xmm8        # 5220 <_sk_callback_sse41+0x186>
11779  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
11780  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
11781  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
11782  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
11783  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
11784  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
11785  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
11786  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
11787  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
11788  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
11789  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
11790  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
11791  DB  72,173                              ; lods          %ds:(%rsi),%rax
11792  DB  255,224                             ; jmpq          *%rax
11793
11794PUBLIC _sk_dstover_sse41
11795_sk_dstover_sse41 LABEL PROC
11796  DB  68,15,40,5,242,77,0,0               ; movaps        0x4df2(%rip),%xmm8        # 5230 <_sk_callback_sse41+0x196>
11797  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
11798  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
11799  DB  15,88,196                           ; addps         %xmm4,%xmm0
11800  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
11801  DB  15,88,205                           ; addps         %xmm5,%xmm1
11802  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
11803  DB  15,88,214                           ; addps         %xmm6,%xmm2
11804  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
11805  DB  15,88,223                           ; addps         %xmm7,%xmm3
11806  DB  72,173                              ; lods          %ds:(%rsi),%rax
11807  DB  255,224                             ; jmpq          *%rax
11808
11809PUBLIC _sk_modulate_sse41
11810_sk_modulate_sse41 LABEL PROC
11811  DB  15,89,196                           ; mulps         %xmm4,%xmm0
11812  DB  15,89,205                           ; mulps         %xmm5,%xmm1
11813  DB  15,89,214                           ; mulps         %xmm6,%xmm2
11814  DB  15,89,223                           ; mulps         %xmm7,%xmm3
11815  DB  72,173                              ; lods          %ds:(%rsi),%rax
11816  DB  255,224                             ; jmpq          *%rax
11817
11818PUBLIC _sk_multiply_sse41
11819_sk_multiply_sse41 LABEL PROC
11820  DB  68,15,40,5,198,77,0,0               ; movaps        0x4dc6(%rip),%xmm8        # 5240 <_sk_callback_sse41+0x1a6>
11821  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
11822  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
11823  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
11824  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
11825  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
11826  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
11827  DB  68,15,89,220                        ; mulps         %xmm4,%xmm11
11828  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
11829  DB  15,89,196                           ; mulps         %xmm4,%xmm0
11830  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
11831  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
11832  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
11833  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
11834  DB  68,15,89,221                        ; mulps         %xmm5,%xmm11
11835  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
11836  DB  15,89,205                           ; mulps         %xmm5,%xmm1
11837  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
11838  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
11839  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
11840  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
11841  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
11842  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
11843  DB  15,89,214                           ; mulps         %xmm6,%xmm2
11844  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
11845  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
11846  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
11847  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
11848  DB  15,89,223                           ; mulps         %xmm7,%xmm3
11849  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
11850  DB  72,173                              ; lods          %ds:(%rsi),%rax
11851  DB  255,224                             ; jmpq          *%rax
11852
11853PUBLIC _sk_plus__sse41
11854_sk_plus__sse41 LABEL PROC
11855  DB  15,88,196                           ; addps         %xmm4,%xmm0
11856  DB  15,88,205                           ; addps         %xmm5,%xmm1
11857  DB  15,88,214                           ; addps         %xmm6,%xmm2
11858  DB  15,88,223                           ; addps         %xmm7,%xmm3
11859  DB  72,173                              ; lods          %ds:(%rsi),%rax
11860  DB  255,224                             ; jmpq          *%rax
11861
11862PUBLIC _sk_screen_sse41
11863_sk_screen_sse41 LABEL PROC
11864  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
11865  DB  15,88,196                           ; addps         %xmm4,%xmm0
11866  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
11867  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
11868  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
11869  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
11870  DB  15,89,205                           ; mulps         %xmm5,%xmm1
11871  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
11872  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
11873  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
11874  DB  15,89,214                           ; mulps         %xmm6,%xmm2
11875  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
11876  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
11877  DB  68,15,88,215                        ; addps         %xmm7,%xmm10
11878  DB  15,89,223                           ; mulps         %xmm7,%xmm3
11879  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
11880  DB  72,173                              ; lods          %ds:(%rsi),%rax
11881  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
11882  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
11883  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
11884  DB  255,224                             ; jmpq          *%rax
11885
11886PUBLIC _sk_xor__sse41
11887_sk_xor__sse41 LABEL PROC
11888  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
11889  DB  15,40,29,251,76,0,0                 ; movaps        0x4cfb(%rip),%xmm3        # 5250 <_sk_callback_sse41+0x1b6>
11890  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
11891  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
11892  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
11893  DB  65,15,92,216                        ; subps         %xmm8,%xmm3
11894  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
11895  DB  68,15,89,212                        ; mulps         %xmm4,%xmm10
11896  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
11897  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
11898  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
11899  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
11900  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
11901  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
11902  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
11903  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
11904  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
11905  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
11906  DB  15,89,223                           ; mulps         %xmm7,%xmm3
11907  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
11908  DB  72,173                              ; lods          %ds:(%rsi),%rax
11909  DB  255,224                             ; jmpq          *%rax
11910
11911PUBLIC _sk_darken_sse41
11912_sk_darken_sse41 LABEL PROC
11913  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
11914  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
11915  DB  15,88,196                           ; addps         %xmm4,%xmm0
11916  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
11917  DB  15,40,203                           ; movaps        %xmm3,%xmm1
11918  DB  15,89,204                           ; mulps         %xmm4,%xmm1
11919  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
11920  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
11921  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
11922  DB  15,88,205                           ; addps         %xmm5,%xmm1
11923  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
11924  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
11925  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
11926  DB  69,15,95,193                        ; maxps         %xmm9,%xmm8
11927  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
11928  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
11929  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
11930  DB  15,89,215                           ; mulps         %xmm7,%xmm2
11931  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
11932  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
11933  DB  65,15,95,209                        ; maxps         %xmm9,%xmm2
11934  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
11935  DB  15,40,21,102,76,0,0                 ; movaps        0x4c66(%rip),%xmm2        # 5260 <_sk_callback_sse41+0x1c6>
11936  DB  15,92,211                           ; subps         %xmm3,%xmm2
11937  DB  15,89,215                           ; mulps         %xmm7,%xmm2
11938  DB  15,88,218                           ; addps         %xmm2,%xmm3
11939  DB  72,173                              ; lods          %ds:(%rsi),%rax
11940  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
11941  DB  255,224                             ; jmpq          *%rax
11942
11943PUBLIC _sk_lighten_sse41
11944_sk_lighten_sse41 LABEL PROC
11945  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
11946  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
11947  DB  15,88,196                           ; addps         %xmm4,%xmm0
11948  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
11949  DB  15,40,203                           ; movaps        %xmm3,%xmm1
11950  DB  15,89,204                           ; mulps         %xmm4,%xmm1
11951  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
11952  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
11953  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
11954  DB  15,88,205                           ; addps         %xmm5,%xmm1
11955  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
11956  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
11957  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
11958  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
11959  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
11960  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
11961  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
11962  DB  15,89,215                           ; mulps         %xmm7,%xmm2
11963  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
11964  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
11965  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
11966  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
11967  DB  15,40,21,11,76,0,0                  ; movaps        0x4c0b(%rip),%xmm2        # 5270 <_sk_callback_sse41+0x1d6>
11968  DB  15,92,211                           ; subps         %xmm3,%xmm2
11969  DB  15,89,215                           ; mulps         %xmm7,%xmm2
11970  DB  15,88,218                           ; addps         %xmm2,%xmm3
11971  DB  72,173                              ; lods          %ds:(%rsi),%rax
11972  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
11973  DB  255,224                             ; jmpq          *%rax
11974
11975PUBLIC _sk_difference_sse41
11976_sk_difference_sse41 LABEL PROC
11977  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
11978  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
11979  DB  15,88,196                           ; addps         %xmm4,%xmm0
11980  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
11981  DB  15,40,203                           ; movaps        %xmm3,%xmm1
11982  DB  15,89,204                           ; mulps         %xmm4,%xmm1
11983  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
11984  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
11985  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
11986  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
11987  DB  15,88,205                           ; addps         %xmm5,%xmm1
11988  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
11989  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
11990  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
11991  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
11992  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
11993  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
11994  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
11995  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
11996  DB  15,89,215                           ; mulps         %xmm7,%xmm2
11997  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
11998  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
11999  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
12000  DB  15,88,210                           ; addps         %xmm2,%xmm2
12001  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
12002  DB  15,40,21,165,75,0,0                 ; movaps        0x4ba5(%rip),%xmm2        # 5280 <_sk_callback_sse41+0x1e6>
12003  DB  15,92,211                           ; subps         %xmm3,%xmm2
12004  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12005  DB  15,88,218                           ; addps         %xmm2,%xmm3
12006  DB  72,173                              ; lods          %ds:(%rsi),%rax
12007  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
12008  DB  255,224                             ; jmpq          *%rax
12009
12010PUBLIC _sk_exclusion_sse41
12011_sk_exclusion_sse41 LABEL PROC
12012  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
12013  DB  15,40,200                           ; movaps        %xmm0,%xmm1
12014  DB  15,88,196                           ; addps         %xmm4,%xmm0
12015  DB  15,89,204                           ; mulps         %xmm4,%xmm1
12016  DB  15,88,201                           ; addps         %xmm1,%xmm1
12017  DB  15,92,193                           ; subps         %xmm1,%xmm0
12018  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
12019  DB  15,88,205                           ; addps         %xmm5,%xmm1
12020  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
12021  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
12022  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
12023  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
12024  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
12025  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12026  DB  15,88,210                           ; addps         %xmm2,%xmm2
12027  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
12028  DB  15,40,21,101,75,0,0                 ; movaps        0x4b65(%rip),%xmm2        # 5290 <_sk_callback_sse41+0x1f6>
12029  DB  15,92,211                           ; subps         %xmm3,%xmm2
12030  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12031  DB  15,88,218                           ; addps         %xmm2,%xmm3
12032  DB  72,173                              ; lods          %ds:(%rsi),%rax
12033  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
12034  DB  255,224                             ; jmpq          *%rax
12035
12036PUBLIC _sk_colorburn_sse41
12037_sk_colorburn_sse41 LABEL PROC
12038  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12039  DB  68,15,40,21,88,75,0,0               ; movaps        0x4b58(%rip),%xmm10        # 52a0 <_sk_callback_sse41+0x206>
12040  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
12041  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
12042  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
12043  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12044  DB  15,40,199                           ; movaps        %xmm7,%xmm0
12045  DB  15,92,196                           ; subps         %xmm4,%xmm0
12046  DB  15,89,195                           ; mulps         %xmm3,%xmm0
12047  DB  65,15,94,192                        ; divps         %xmm8,%xmm0
12048  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
12049  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
12050  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12051  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
12052  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
12053  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
12054  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
12055  DB  68,15,88,228                        ; addps         %xmm4,%xmm12
12056  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
12057  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12058  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
12059  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
12060  DB  102,69,15,56,20,232                 ; blendvps      %xmm0,%xmm8,%xmm13
12061  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
12062  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
12063  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12064  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
12065  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
12066  DB  102,69,15,56,20,196                 ; blendvps      %xmm0,%xmm12,%xmm8
12067  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
12068  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
12069  DB  15,40,199                           ; movaps        %xmm7,%xmm0
12070  DB  15,92,197                           ; subps         %xmm5,%xmm0
12071  DB  15,89,195                           ; mulps         %xmm3,%xmm0
12072  DB  15,94,193                           ; divps         %xmm1,%xmm0
12073  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12074  DB  68,15,93,232                        ; minps         %xmm0,%xmm13
12075  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
12076  DB  69,15,92,245                        ; subps         %xmm13,%xmm14
12077  DB  15,40,193                           ; movaps        %xmm1,%xmm0
12078  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
12079  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
12080  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
12081  DB  102,68,15,56,20,241                 ; blendvps      %xmm0,%xmm1,%xmm14
12082  DB  68,15,88,229                        ; addps         %xmm5,%xmm12
12083  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
12084  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12085  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
12086  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12087  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
12088  DB  102,65,15,56,20,204                 ; blendvps      %xmm0,%xmm12,%xmm1
12089  DB  15,40,199                           ; movaps        %xmm7,%xmm0
12090  DB  15,92,198                           ; subps         %xmm6,%xmm0
12091  DB  15,89,195                           ; mulps         %xmm3,%xmm0
12092  DB  15,94,194                           ; divps         %xmm2,%xmm0
12093  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
12094  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
12095  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12096  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
12097  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12098  DB  68,15,194,202,0                     ; cmpeqps       %xmm2,%xmm9
12099  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
12100  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
12101  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12102  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
12103  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
12104  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
12105  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12106  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
12107  DB  15,40,198                           ; movaps        %xmm6,%xmm0
12108  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
12109  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
12110  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
12111  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
12112  DB  72,173                              ; lods          %ds:(%rsi),%rax
12113  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12114  DB  255,224                             ; jmpq          *%rax
12115
12116PUBLIC _sk_colordodge_sse41
12117_sk_colordodge_sse41 LABEL PROC
12118  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12119  DB  68,15,40,21,54,74,0,0               ; movaps        0x4a36(%rip),%xmm10        # 52b0 <_sk_callback_sse41+0x216>
12120  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
12121  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
12122  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
12123  DB  69,15,89,224                        ; mulps         %xmm8,%xmm12
12124  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
12125  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
12126  DB  15,40,195                           ; movaps        %xmm3,%xmm0
12127  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
12128  DB  68,15,94,200                        ; divps         %xmm0,%xmm9
12129  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12130  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
12131  DB  69,15,93,241                        ; minps         %xmm9,%xmm14
12132  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12133  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
12134  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
12135  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
12136  DB  102,69,15,56,20,240                 ; blendvps      %xmm0,%xmm8,%xmm14
12137  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
12138  DB  68,15,88,228                        ; addps         %xmm4,%xmm12
12139  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
12140  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
12141  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
12142  DB  69,15,88,198                        ; addps         %xmm14,%xmm8
12143  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12144  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
12145  DB  102,69,15,56,20,196                 ; blendvps      %xmm0,%xmm12,%xmm8
12146  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
12147  DB  68,15,89,229                        ; mulps         %xmm5,%xmm12
12148  DB  15,40,195                           ; movaps        %xmm3,%xmm0
12149  DB  15,92,193                           ; subps         %xmm1,%xmm0
12150  DB  68,15,94,224                        ; divps         %xmm0,%xmm12
12151  DB  69,15,40,243                        ; movaps        %xmm11,%xmm14
12152  DB  68,15,89,241                        ; mulps         %xmm1,%xmm14
12153  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
12154  DB  15,40,193                           ; movaps        %xmm1,%xmm0
12155  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
12156  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
12157  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
12158  DB  102,68,15,56,20,233                 ; blendvps      %xmm0,%xmm1,%xmm13
12159  DB  68,15,88,245                        ; addps         %xmm5,%xmm14
12160  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
12161  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12162  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
12163  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12164  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
12165  DB  102,65,15,56,20,206                 ; blendvps      %xmm0,%xmm14,%xmm1
12166  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
12167  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
12168  DB  15,40,195                           ; movaps        %xmm3,%xmm0
12169  DB  15,92,194                           ; subps         %xmm2,%xmm0
12170  DB  68,15,94,224                        ; divps         %xmm0,%xmm12
12171  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12172  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12173  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
12174  DB  15,40,194                           ; movaps        %xmm2,%xmm0
12175  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
12176  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
12177  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
12178  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
12179  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
12180  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12181  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
12182  DB  68,15,194,206,0                     ; cmpeqps       %xmm6,%xmm9
12183  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
12184  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12185  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
12186  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
12187  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
12188  DB  72,173                              ; lods          %ds:(%rsi),%rax
12189  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12190  DB  255,224                             ; jmpq          *%rax
12191
12192PUBLIC _sk_hardlight_sse41
12193_sk_hardlight_sse41 LABEL PROC
12194  DB  72,131,236,24                       ; sub           $0x18,%rsp
12195  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
12196  DB  68,15,40,229                        ; movaps        %xmm5,%xmm12
12197  DB  15,40,244                           ; movaps        %xmm4,%xmm6
12198  DB  15,40,227                           ; movaps        %xmm3,%xmm4
12199  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12200  DB  68,15,40,21,12,73,0,0               ; movaps        0x490c(%rip),%xmm10        # 52c0 <_sk_callback_sse41+0x226>
12201  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
12202  DB  15,92,239                           ; subps         %xmm7,%xmm5
12203  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12204  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
12205  DB  68,15,92,212                        ; subps         %xmm4,%xmm10
12206  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
12207  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
12208  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
12209  DB  68,15,40,252                        ; movaps        %xmm4,%xmm15
12210  DB  69,15,92,249                        ; subps         %xmm9,%xmm15
12211  DB  15,89,223                           ; mulps         %xmm7,%xmm3
12212  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12213  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
12214  DB  15,40,199                           ; movaps        %xmm7,%xmm0
12215  DB  15,92,198                           ; subps         %xmm6,%xmm0
12216  DB  65,15,89,199                        ; mulps         %xmm15,%xmm0
12217  DB  15,88,192                           ; addps         %xmm0,%xmm0
12218  DB  68,15,40,251                        ; movaps        %xmm3,%xmm15
12219  DB  68,15,92,248                        ; subps         %xmm0,%xmm15
12220  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12221  DB  15,88,192                           ; addps         %xmm0,%xmm0
12222  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
12223  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
12224  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
12225  DB  102,69,15,56,20,249                 ; blendvps      %xmm0,%xmm9,%xmm15
12226  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
12227  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
12228  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12229  DB  15,92,193                           ; subps         %xmm1,%xmm0
12230  DB  69,15,40,204                        ; movaps        %xmm12,%xmm9
12231  DB  69,15,92,233                        ; subps         %xmm9,%xmm13
12232  DB  68,15,89,232                        ; mulps         %xmm0,%xmm13
12233  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
12234  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
12235  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
12236  DB  15,40,193                           ; movaps        %xmm1,%xmm0
12237  DB  15,88,192                           ; addps         %xmm0,%xmm0
12238  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
12239  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
12240  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
12241  DB  15,88,201                           ; addps         %xmm1,%xmm1
12242  DB  102,68,15,56,20,225                 ; blendvps      %xmm0,%xmm1,%xmm12
12243  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
12244  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
12245  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
12246  DB  69,15,88,199                        ; addps         %xmm15,%xmm8
12247  DB  65,15,89,205                        ; mulps         %xmm13,%xmm1
12248  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
12249  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
12250  DB  15,89,234                           ; mulps         %xmm2,%xmm5
12251  DB  68,15,40,28,36                      ; movaps        (%rsp),%xmm11
12252  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
12253  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
12254  DB  15,40,194                           ; movaps        %xmm2,%xmm0
12255  DB  15,88,192                           ; addps         %xmm0,%xmm0
12256  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
12257  DB  15,40,236                           ; movaps        %xmm4,%xmm5
12258  DB  15,92,234                           ; subps         %xmm2,%xmm5
12259  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
12260  DB  15,88,210                           ; addps         %xmm2,%xmm2
12261  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
12262  DB  68,15,89,245                        ; mulps         %xmm5,%xmm14
12263  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
12264  DB  65,15,92,222                        ; subps         %xmm14,%xmm3
12265  DB  102,15,56,20,218                    ; blendvps      %xmm0,%xmm2,%xmm3
12266  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
12267  DB  65,15,88,226                        ; addps         %xmm10,%xmm4
12268  DB  72,173                              ; lods          %ds:(%rsi),%rax
12269  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12270  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
12271  DB  15,40,220                           ; movaps        %xmm4,%xmm3
12272  DB  15,40,230                           ; movaps        %xmm6,%xmm4
12273  DB  65,15,40,237                        ; movaps        %xmm13,%xmm5
12274  DB  65,15,40,243                        ; movaps        %xmm11,%xmm6
12275  DB  72,131,196,24                       ; add           $0x18,%rsp
12276  DB  255,224                             ; jmpq          *%rax
12277
12278PUBLIC _sk_overlay_sse41
12279_sk_overlay_sse41 LABEL PROC
12280  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
12281  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
12282  DB  68,15,40,21,238,71,0,0              ; movaps        0x47ee(%rip),%xmm10        # 52d0 <_sk_callback_sse41+0x236>
12283  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
12284  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
12285  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
12286  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
12287  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
12288  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
12289  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
12290  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
12291  DB  68,15,40,235                        ; movaps        %xmm3,%xmm13
12292  DB  69,15,92,238                        ; subps         %xmm14,%xmm13
12293  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
12294  DB  15,40,207                           ; movaps        %xmm7,%xmm1
12295  DB  15,92,204                           ; subps         %xmm4,%xmm1
12296  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12297  DB  15,88,192                           ; addps         %xmm0,%xmm0
12298  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12299  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
12300  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
12301  DB  68,15,89,231                        ; mulps         %xmm7,%xmm12
12302  DB  65,15,89,205                        ; mulps         %xmm13,%xmm1
12303  DB  15,88,201                           ; addps         %xmm1,%xmm1
12304  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
12305  DB  68,15,92,233                        ; subps         %xmm1,%xmm13
12306  DB  102,69,15,56,20,238                 ; blendvps      %xmm0,%xmm14,%xmm13
12307  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
12308  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
12309  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
12310  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
12311  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12312  DB  15,88,200                           ; addps         %xmm0,%xmm1
12313  DB  68,15,40,235                        ; movaps        %xmm3,%xmm13
12314  DB  69,15,92,233                        ; subps         %xmm9,%xmm13
12315  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
12316  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
12317  DB  68,15,92,245                        ; subps         %xmm5,%xmm14
12318  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12319  DB  15,88,192                           ; addps         %xmm0,%xmm0
12320  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12321  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
12322  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
12323  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
12324  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
12325  DB  69,15,92,238                        ; subps         %xmm14,%xmm13
12326  DB  102,69,15,56,20,233                 ; blendvps      %xmm0,%xmm9,%xmm13
12327  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
12328  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12329  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
12330  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
12331  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
12332  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
12333  DB  68,15,92,218                        ; subps         %xmm2,%xmm11
12334  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12335  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12336  DB  68,15,92,238                        ; subps         %xmm6,%xmm13
12337  DB  15,40,198                           ; movaps        %xmm6,%xmm0
12338  DB  15,88,192                           ; addps         %xmm0,%xmm0
12339  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12340  DB  15,88,210                           ; addps         %xmm2,%xmm2
12341  DB  69,15,89,235                        ; mulps         %xmm11,%xmm13
12342  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
12343  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
12344  DB  102,68,15,56,20,226                 ; blendvps      %xmm0,%xmm2,%xmm12
12345  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
12346  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
12347  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
12348  DB  72,173                              ; lods          %ds:(%rsi),%rax
12349  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12350  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
12351  DB  255,224                             ; jmpq          *%rax
12352
12353PUBLIC _sk_softlight_sse41
12354_sk_softlight_sse41 LABEL PROC
12355  DB  72,131,236,72                       ; sub           $0x48,%rsp
12356  DB  15,41,116,36,32                     ; movaps        %xmm6,0x20(%rsp)
12357  DB  15,40,244                           ; movaps        %xmm4,%xmm6
12358  DB  15,41,84,36,48                      ; movaps        %xmm2,0x30(%rsp)
12359  DB  15,41,76,36,16                      ; movaps        %xmm1,0x10(%rsp)
12360  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12361  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
12362  DB  68,15,194,207,1                     ; cmpltps       %xmm7,%xmm9
12363  DB  15,40,198                           ; movaps        %xmm6,%xmm0
12364  DB  15,94,199                           ; divps         %xmm7,%xmm0
12365  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
12366  DB  15,40,13,193,70,0,0                 ; movaps        0x46c1(%rip),%xmm1        # 52e0 <_sk_callback_sse41+0x246>
12367  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
12368  DB  68,15,92,208                        ; subps         %xmm0,%xmm10
12369  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
12370  DB  68,15,40,248                        ; movaps        %xmm0,%xmm15
12371  DB  15,82,208                           ; rsqrtps       %xmm0,%xmm2
12372  DB  68,15,83,218                        ; rcpps         %xmm2,%xmm11
12373  DB  68,15,92,216                        ; subps         %xmm0,%xmm11
12374  DB  15,88,192                           ; addps         %xmm0,%xmm0
12375  DB  15,88,192                           ; addps         %xmm0,%xmm0
12376  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12377  DB  15,89,210                           ; mulps         %xmm2,%xmm2
12378  DB  15,88,208                           ; addps         %xmm0,%xmm2
12379  DB  68,15,40,45,159,70,0,0              ; movaps        0x469f(%rip),%xmm13        # 52f0 <_sk_callback_sse41+0x256>
12380  DB  69,15,88,245                        ; addps         %xmm13,%xmm14
12381  DB  68,15,89,242                        ; mulps         %xmm2,%xmm14
12382  DB  68,15,40,37,159,70,0,0              ; movaps        0x469f(%rip),%xmm12        # 5300 <_sk_callback_sse41+0x266>
12383  DB  69,15,89,252                        ; mulps         %xmm12,%xmm15
12384  DB  69,15,88,254                        ; addps         %xmm14,%xmm15
12385  DB  15,40,198                           ; movaps        %xmm6,%xmm0
12386  DB  15,88,192                           ; addps         %xmm0,%xmm0
12387  DB  15,88,192                           ; addps         %xmm0,%xmm0
12388  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12389  DB  102,69,15,56,20,223                 ; blendvps      %xmm0,%xmm15,%xmm11
12390  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12391  DB  15,88,192                           ; addps         %xmm0,%xmm0
12392  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12393  DB  15,92,211                           ; subps         %xmm3,%xmm2
12394  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
12395  DB  68,15,88,211                        ; addps         %xmm3,%xmm10
12396  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
12397  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12398  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12399  DB  15,40,211                           ; movaps        %xmm3,%xmm2
12400  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12401  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
12402  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
12403  DB  102,69,15,56,20,218                 ; blendvps      %xmm0,%xmm10,%xmm11
12404  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
12405  DB  68,15,94,215                        ; divps         %xmm7,%xmm10
12406  DB  69,15,84,209                        ; andps         %xmm9,%xmm10
12407  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12408  DB  15,88,192                           ; addps         %xmm0,%xmm0
12409  DB  15,88,192                           ; addps         %xmm0,%xmm0
12410  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12411  DB  15,89,210                           ; mulps         %xmm2,%xmm2
12412  DB  15,88,208                           ; addps         %xmm0,%xmm2
12413  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12414  DB  65,15,88,197                        ; addps         %xmm13,%xmm0
12415  DB  15,89,194                           ; mulps         %xmm2,%xmm0
12416  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
12417  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
12418  DB  15,88,208                           ; addps         %xmm0,%xmm2
12419  DB  65,15,82,194                        ; rsqrtps       %xmm10,%xmm0
12420  DB  68,15,83,240                        ; rcpps         %xmm0,%xmm14
12421  DB  69,15,92,242                        ; subps         %xmm10,%xmm14
12422  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12423  DB  15,40,229                           ; movaps        %xmm5,%xmm4
12424  DB  15,88,192                           ; addps         %xmm0,%xmm0
12425  DB  15,88,192                           ; addps         %xmm0,%xmm0
12426  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12427  DB  102,68,15,56,20,242                 ; blendvps      %xmm0,%xmm2,%xmm14
12428  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
12429  DB  69,15,92,250                        ; subps         %xmm10,%xmm15
12430  DB  15,40,108,36,16                     ; movaps        0x10(%rsp),%xmm5
12431  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12432  DB  15,88,192                           ; addps         %xmm0,%xmm0
12433  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12434  DB  15,92,211                           ; subps         %xmm3,%xmm2
12435  DB  68,15,89,250                        ; mulps         %xmm2,%xmm15
12436  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12437  DB  68,15,89,242                        ; mulps         %xmm2,%xmm14
12438  DB  15,40,211                           ; movaps        %xmm3,%xmm2
12439  DB  15,41,36,36                         ; movaps        %xmm4,(%rsp)
12440  DB  15,89,212                           ; mulps         %xmm4,%xmm2
12441  DB  68,15,88,242                        ; addps         %xmm2,%xmm14
12442  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
12443  DB  68,15,89,252                        ; mulps         %xmm4,%xmm15
12444  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
12445  DB  102,69,15,56,20,247                 ; blendvps      %xmm0,%xmm15,%xmm14
12446  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
12447  DB  15,40,100,36,32                     ; movaps        0x20(%rsp),%xmm4
12448  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12449  DB  15,94,199                           ; divps         %xmm7,%xmm0
12450  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
12451  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
12452  DB  15,92,200                           ; subps         %xmm0,%xmm1
12453  DB  68,15,88,232                        ; addps         %xmm0,%xmm13
12454  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
12455  DB  15,82,208                           ; rsqrtps       %xmm0,%xmm2
12456  DB  68,15,83,202                        ; rcpps         %xmm2,%xmm9
12457  DB  68,15,92,200                        ; subps         %xmm0,%xmm9
12458  DB  15,88,192                           ; addps         %xmm0,%xmm0
12459  DB  15,88,192                           ; addps         %xmm0,%xmm0
12460  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12461  DB  15,89,210                           ; mulps         %xmm2,%xmm2
12462  DB  15,88,208                           ; addps         %xmm0,%xmm2
12463  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
12464  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
12465  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12466  DB  15,88,192                           ; addps         %xmm0,%xmm0
12467  DB  15,88,192                           ; addps         %xmm0,%xmm0
12468  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12469  DB  102,69,15,56,20,204                 ; blendvps      %xmm0,%xmm12,%xmm9
12470  DB  68,15,40,100,36,48                  ; movaps        0x30(%rsp),%xmm12
12471  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
12472  DB  15,88,192                           ; addps         %xmm0,%xmm0
12473  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12474  DB  15,92,211                           ; subps         %xmm3,%xmm2
12475  DB  15,89,202                           ; mulps         %xmm2,%xmm1
12476  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12477  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
12478  DB  15,40,211                           ; movaps        %xmm3,%xmm2
12479  DB  15,89,212                           ; mulps         %xmm4,%xmm2
12480  DB  68,15,88,202                        ; addps         %xmm2,%xmm9
12481  DB  15,88,203                           ; addps         %xmm3,%xmm1
12482  DB  15,89,204                           ; mulps         %xmm4,%xmm1
12483  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
12484  DB  102,68,15,56,20,201                 ; blendvps      %xmm0,%xmm1,%xmm9
12485  DB  68,15,92,255                        ; subps         %xmm7,%xmm15
12486  DB  69,15,89,199                        ; mulps         %xmm15,%xmm8
12487  DB  15,40,205                           ; movaps        %xmm5,%xmm1
12488  DB  65,15,89,207                        ; mulps         %xmm15,%xmm1
12489  DB  69,15,89,252                        ; mulps         %xmm12,%xmm15
12490  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
12491  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12492  DB  15,89,198                           ; mulps         %xmm6,%xmm0
12493  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
12494  DB  69,15,88,195                        ; addps         %xmm11,%xmm8
12495  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12496  DB  15,40,44,36                         ; movaps        (%rsp),%xmm5
12497  DB  15,89,197                           ; mulps         %xmm5,%xmm0
12498  DB  15,88,200                           ; addps         %xmm0,%xmm1
12499  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
12500  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12501  DB  15,89,196                           ; mulps         %xmm4,%xmm0
12502  DB  15,40,212                           ; movaps        %xmm4,%xmm2
12503  DB  65,15,88,199                        ; addps         %xmm15,%xmm0
12504  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
12505  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
12506  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
12507  DB  72,173                              ; lods          %ds:(%rsi),%rax
12508  DB  15,40,230                           ; movaps        %xmm6,%xmm4
12509  DB  15,40,242                           ; movaps        %xmm2,%xmm6
12510  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12511  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
12512  DB  72,131,196,72                       ; add           $0x48,%rsp
12513  DB  255,224                             ; jmpq          *%rax
12514
12515PUBLIC _sk_hue_sse41
12516_sk_hue_sse41 LABEL PROC
12517  DB  72,131,236,104                      ; sub           $0x68,%rsp
12518  DB  15,41,60,36                         ; movaps        %xmm7,(%rsp)
12519  DB  68,15,40,246                        ; movaps        %xmm6,%xmm14
12520  DB  15,40,244                           ; movaps        %xmm4,%xmm6
12521  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
12522  DB  15,41,84,36,80                      ; movaps        %xmm2,0x50(%rsp)
12523  DB  15,41,76,36,64                      ; movaps        %xmm1,0x40(%rsp)
12524  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
12525  DB  68,15,41,84,36,48                   ; movaps        %xmm10,0x30(%rsp)
12526  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
12527  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12528  DB  68,15,40,234                        ; movaps        %xmm2,%xmm13
12529  DB  69,15,89,232                        ; mulps         %xmm8,%xmm13
12530  DB  68,15,40,205                        ; movaps        %xmm5,%xmm9
12531  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
12532  DB  15,41,108,36,32                     ; movaps        %xmm5,0x20(%rsp)
12533  DB  69,15,95,222                        ; maxps         %xmm14,%xmm11
12534  DB  15,40,254                           ; movaps        %xmm6,%xmm7
12535  DB  68,15,40,230                        ; movaps        %xmm6,%xmm12
12536  DB  15,40,214                           ; movaps        %xmm6,%xmm2
12537  DB  65,15,95,211                        ; maxps         %xmm11,%xmm2
12538  DB  65,15,40,230                        ; movaps        %xmm14,%xmm4
12539  DB  15,41,100,36,16                     ; movaps        %xmm4,0x10(%rsp)
12540  DB  68,15,93,204                        ; minps         %xmm4,%xmm9
12541  DB  65,15,93,249                        ; minps         %xmm9,%xmm7
12542  DB  15,92,215                           ; subps         %xmm7,%xmm2
12543  DB  15,40,249                           ; movaps        %xmm1,%xmm7
12544  DB  65,15,93,253                        ; minps         %xmm13,%xmm7
12545  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
12546  DB  15,93,223                           ; minps         %xmm7,%xmm3
12547  DB  15,40,249                           ; movaps        %xmm1,%xmm7
12548  DB  65,15,95,253                        ; maxps         %xmm13,%xmm7
12549  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12550  DB  15,95,199                           ; maxps         %xmm7,%xmm0
12551  DB  15,40,253                           ; movaps        %xmm5,%xmm7
12552  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12553  DB  15,92,195                           ; subps         %xmm3,%xmm0
12554  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
12555  DB  15,92,203                           ; subps         %xmm3,%xmm1
12556  DB  68,15,92,235                        ; subps         %xmm3,%xmm13
12557  DB  15,87,219                           ; xorps         %xmm3,%xmm3
12558  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
12559  DB  68,15,94,208                        ; divps         %xmm0,%xmm10
12560  DB  15,89,202                           ; mulps         %xmm2,%xmm1
12561  DB  15,94,200                           ; divps         %xmm0,%xmm1
12562  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
12563  DB  68,15,94,232                        ; divps         %xmm0,%xmm13
12564  DB  15,194,195,4                        ; cmpneqps      %xmm3,%xmm0
12565  DB  68,15,84,208                        ; andps         %xmm0,%xmm10
12566  DB  15,84,200                           ; andps         %xmm0,%xmm1
12567  DB  68,15,84,232                        ; andps         %xmm0,%xmm13
12568  DB  15,40,5,5,68,0,0                    ; movaps        0x4405(%rip),%xmm0        # 5310 <_sk_callback_sse41+0x276>
12569  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
12570  DB  15,40,21,10,68,0,0                  ; movaps        0x440a(%rip),%xmm2        # 5320 <_sk_callback_sse41+0x286>
12571  DB  15,89,250                           ; mulps         %xmm2,%xmm7
12572  DB  65,15,88,252                        ; addps         %xmm12,%xmm7
12573  DB  68,15,40,53,11,68,0,0               ; movaps        0x440b(%rip),%xmm14        # 5330 <_sk_callback_sse41+0x296>
12574  DB  68,15,40,252                        ; movaps        %xmm4,%xmm15
12575  DB  69,15,89,254                        ; mulps         %xmm14,%xmm15
12576  DB  68,15,88,255                        ; addps         %xmm7,%xmm15
12577  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
12578  DB  15,89,216                           ; mulps         %xmm0,%xmm3
12579  DB  15,40,249                           ; movaps        %xmm1,%xmm7
12580  DB  15,89,250                           ; mulps         %xmm2,%xmm7
12581  DB  15,88,251                           ; addps         %xmm3,%xmm7
12582  DB  65,15,40,221                        ; movaps        %xmm13,%xmm3
12583  DB  65,15,89,222                        ; mulps         %xmm14,%xmm3
12584  DB  15,88,223                           ; addps         %xmm7,%xmm3
12585  DB  69,15,89,248                        ; mulps         %xmm8,%xmm15
12586  DB  68,15,92,251                        ; subps         %xmm3,%xmm15
12587  DB  69,15,88,215                        ; addps         %xmm15,%xmm10
12588  DB  65,15,88,207                        ; addps         %xmm15,%xmm1
12589  DB  69,15,88,253                        ; addps         %xmm13,%xmm15
12590  DB  15,40,217                           ; movaps        %xmm1,%xmm3
12591  DB  65,15,93,223                        ; minps         %xmm15,%xmm3
12592  DB  65,15,40,250                        ; movaps        %xmm10,%xmm7
12593  DB  15,93,251                           ; minps         %xmm3,%xmm7
12594  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
12595  DB  15,89,209                           ; mulps         %xmm1,%xmm2
12596  DB  15,88,208                           ; addps         %xmm0,%xmm2
12597  DB  69,15,89,247                        ; mulps         %xmm15,%xmm14
12598  DB  68,15,88,242                        ; addps         %xmm2,%xmm14
12599  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
12600  DB  68,15,194,207,2                     ; cmpleps       %xmm7,%xmm9
12601  DB  65,15,40,222                        ; movaps        %xmm14,%xmm3
12602  DB  15,92,223                           ; subps         %xmm7,%xmm3
12603  DB  69,15,40,234                        ; movaps        %xmm10,%xmm13
12604  DB  69,15,92,238                        ; subps         %xmm14,%xmm13
12605  DB  69,15,89,238                        ; mulps         %xmm14,%xmm13
12606  DB  68,15,94,235                        ; divps         %xmm3,%xmm13
12607  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
12608  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12609  DB  102,69,15,56,20,234                 ; blendvps      %xmm0,%xmm10,%xmm13
12610  DB  15,40,193                           ; movaps        %xmm1,%xmm0
12611  DB  65,15,95,199                        ; maxps         %xmm15,%xmm0
12612  DB  68,15,95,208                        ; maxps         %xmm0,%xmm10
12613  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
12614  DB  15,40,44,36                         ; movaps        (%rsp),%xmm5
12615  DB  15,89,253                           ; mulps         %xmm5,%xmm7
12616  DB  15,40,231                           ; movaps        %xmm7,%xmm4
12617  DB  65,15,194,226,1                     ; cmpltps       %xmm10,%xmm4
12618  DB  65,15,40,213                        ; movaps        %xmm13,%xmm2
12619  DB  65,15,92,214                        ; subps         %xmm14,%xmm2
12620  DB  68,15,40,223                        ; movaps        %xmm7,%xmm11
12621  DB  69,15,92,222                        ; subps         %xmm14,%xmm11
12622  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
12623  DB  69,15,92,214                        ; subps         %xmm14,%xmm10
12624  DB  65,15,94,210                        ; divps         %xmm10,%xmm2
12625  DB  65,15,88,214                        ; addps         %xmm14,%xmm2
12626  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12627  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
12628  DB  68,15,40,225                        ; movaps        %xmm1,%xmm12
12629  DB  69,15,92,230                        ; subps         %xmm14,%xmm12
12630  DB  69,15,89,230                        ; mulps         %xmm14,%xmm12
12631  DB  68,15,94,227                        ; divps         %xmm3,%xmm12
12632  DB  69,15,88,230                        ; addps         %xmm14,%xmm12
12633  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12634  DB  102,68,15,56,20,225                 ; blendvps      %xmm0,%xmm1,%xmm12
12635  DB  65,15,40,204                        ; movaps        %xmm12,%xmm1
12636  DB  65,15,92,206                        ; subps         %xmm14,%xmm1
12637  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
12638  DB  65,15,94,202                        ; divps         %xmm10,%xmm1
12639  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
12640  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12641  DB  102,68,15,56,20,225                 ; blendvps      %xmm0,%xmm1,%xmm12
12642  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
12643  DB  65,15,92,206                        ; subps         %xmm14,%xmm1
12644  DB  65,15,89,206                        ; mulps         %xmm14,%xmm1
12645  DB  15,94,203                           ; divps         %xmm3,%xmm1
12646  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
12647  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12648  DB  102,65,15,56,20,207                 ; blendvps      %xmm0,%xmm15,%xmm1
12649  DB  15,40,209                           ; movaps        %xmm1,%xmm2
12650  DB  65,15,92,214                        ; subps         %xmm14,%xmm2
12651  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
12652  DB  65,15,94,210                        ; divps         %xmm10,%xmm2
12653  DB  65,15,88,214                        ; addps         %xmm14,%xmm2
12654  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12655  DB  102,15,56,20,202                    ; blendvps      %xmm0,%xmm2,%xmm1
12656  DB  68,15,40,13,208,66,0,0              ; movaps        0x42d0(%rip),%xmm9        # 5340 <_sk_callback_sse41+0x2a6>
12657  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
12658  DB  15,92,229                           ; subps         %xmm5,%xmm4
12659  DB  15,40,68,36,48                      ; movaps        0x30(%rsp),%xmm0
12660  DB  15,89,196                           ; mulps         %xmm4,%xmm0
12661  DB  15,40,92,36,64                      ; movaps        0x40(%rsp),%xmm3
12662  DB  15,89,220                           ; mulps         %xmm4,%xmm3
12663  DB  15,89,100,36,80                     ; mulps         0x50(%rsp),%xmm4
12664  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
12665  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
12666  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
12667  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
12668  DB  15,87,210                           ; xorps         %xmm2,%xmm2
12669  DB  68,15,95,234                        ; maxps         %xmm2,%xmm13
12670  DB  68,15,95,226                        ; maxps         %xmm2,%xmm12
12671  DB  15,95,202                           ; maxps         %xmm2,%xmm1
12672  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
12673  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12674  DB  15,88,194                           ; addps         %xmm2,%xmm0
12675  DB  65,15,88,197                        ; addps         %xmm13,%xmm0
12676  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
12677  DB  15,40,108,36,32                     ; movaps        0x20(%rsp),%xmm5
12678  DB  15,89,213                           ; mulps         %xmm5,%xmm2
12679  DB  15,88,218                           ; addps         %xmm2,%xmm3
12680  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
12681  DB  15,40,211                           ; movaps        %xmm3,%xmm2
12682  DB  15,40,92,36,16                      ; movaps        0x10(%rsp),%xmm3
12683  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
12684  DB  68,15,88,204                        ; addps         %xmm4,%xmm9
12685  DB  68,15,88,201                        ; addps         %xmm1,%xmm9
12686  DB  72,173                              ; lods          %ds:(%rsi),%rax
12687  DB  15,40,230                           ; movaps        %xmm6,%xmm4
12688  DB  15,40,243                           ; movaps        %xmm3,%xmm6
12689  DB  15,40,202                           ; movaps        %xmm2,%xmm1
12690  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
12691  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
12692  DB  65,15,40,250                        ; movaps        %xmm10,%xmm7
12693  DB  72,131,196,104                      ; add           $0x68,%rsp
12694  DB  255,224                             ; jmpq          *%rax
12695
12696PUBLIC _sk_saturation_sse41
12697_sk_saturation_sse41 LABEL PROC
12698  DB  72,131,236,88                       ; sub           $0x58,%rsp
12699  DB  68,15,40,206                        ; movaps        %xmm6,%xmm9
12700  DB  15,40,245                           ; movaps        %xmm5,%xmm6
12701  DB  15,40,236                           ; movaps        %xmm4,%xmm5
12702  DB  15,40,227                           ; movaps        %xmm3,%xmm4
12703  DB  15,41,76,36,48                      ; movaps        %xmm1,0x30(%rsp)
12704  DB  15,41,68,36,32                      ; movaps        %xmm0,0x20(%rsp)
12705  DB  68,15,40,212                        ; movaps        %xmm4,%xmm10
12706  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
12707  DB  68,15,40,220                        ; movaps        %xmm4,%xmm11
12708  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
12709  DB  68,15,40,196                        ; movaps        %xmm4,%xmm8
12710  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
12711  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
12712  DB  68,15,41,116,36,16                  ; movaps        %xmm14,0x10(%rsp)
12713  DB  15,40,217                           ; movaps        %xmm1,%xmm3
12714  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
12715  DB  68,15,41,76,36,64                   ; movaps        %xmm9,0x40(%rsp)
12716  DB  65,15,95,217                        ; maxps         %xmm9,%xmm3
12717  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12718  DB  15,95,211                           ; maxps         %xmm3,%xmm2
12719  DB  68,15,40,225                        ; movaps        %xmm1,%xmm12
12720  DB  69,15,93,225                        ; minps         %xmm9,%xmm12
12721  DB  15,40,216                           ; movaps        %xmm0,%xmm3
12722  DB  65,15,93,220                        ; minps         %xmm12,%xmm3
12723  DB  15,92,211                           ; subps         %xmm3,%xmm2
12724  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12725  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
12726  DB  68,15,41,36,36                      ; movaps        %xmm12,(%rsp)
12727  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
12728  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
12729  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
12730  DB  15,93,216                           ; minps         %xmm0,%xmm3
12731  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
12732  DB  65,15,95,192                        ; maxps         %xmm8,%xmm0
12733  DB  65,15,40,250                        ; movaps        %xmm10,%xmm7
12734  DB  15,95,248                           ; maxps         %xmm0,%xmm7
12735  DB  15,92,251                           ; subps         %xmm3,%xmm7
12736  DB  15,87,192                           ; xorps         %xmm0,%xmm0
12737  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
12738  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
12739  DB  68,15,94,215                        ; divps         %xmm7,%xmm10
12740  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
12741  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12742  DB  68,15,94,223                        ; divps         %xmm7,%xmm11
12743  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
12744  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
12745  DB  68,15,94,199                        ; divps         %xmm7,%xmm8
12746  DB  15,194,248,4                        ; cmpneqps      %xmm0,%xmm7
12747  DB  68,15,84,215                        ; andps         %xmm7,%xmm10
12748  DB  68,15,84,223                        ; andps         %xmm7,%xmm11
12749  DB  68,15,84,199                        ; andps         %xmm7,%xmm8
12750  DB  15,40,21,131,65,0,0                 ; movaps        0x4183(%rip),%xmm2        # 5350 <_sk_callback_sse41+0x2b6>
12751  DB  15,40,221                           ; movaps        %xmm5,%xmm3
12752  DB  15,89,218                           ; mulps         %xmm2,%xmm3
12753  DB  15,40,13,134,65,0,0                 ; movaps        0x4186(%rip),%xmm1        # 5360 <_sk_callback_sse41+0x2c6>
12754  DB  15,40,254                           ; movaps        %xmm6,%xmm7
12755  DB  15,89,249                           ; mulps         %xmm1,%xmm7
12756  DB  15,88,251                           ; addps         %xmm3,%xmm7
12757  DB  68,15,40,45,133,65,0,0              ; movaps        0x4185(%rip),%xmm13        # 5370 <_sk_callback_sse41+0x2d6>
12758  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
12759  DB  68,15,88,247                        ; addps         %xmm7,%xmm14
12760  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
12761  DB  15,89,218                           ; mulps         %xmm2,%xmm3
12762  DB  65,15,40,251                        ; movaps        %xmm11,%xmm7
12763  DB  15,89,249                           ; mulps         %xmm1,%xmm7
12764  DB  15,88,251                           ; addps         %xmm3,%xmm7
12765  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
12766  DB  65,15,89,221                        ; mulps         %xmm13,%xmm3
12767  DB  15,88,223                           ; addps         %xmm7,%xmm3
12768  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
12769  DB  68,15,92,243                        ; subps         %xmm3,%xmm14
12770  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
12771  DB  69,15,88,222                        ; addps         %xmm14,%xmm11
12772  DB  69,15,88,240                        ; addps         %xmm8,%xmm14
12773  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
12774  DB  65,15,93,198                        ; minps         %xmm14,%xmm0
12775  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
12776  DB  15,93,216                           ; minps         %xmm0,%xmm3
12777  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
12778  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
12779  DB  15,88,202                           ; addps         %xmm2,%xmm1
12780  DB  69,15,89,238                        ; mulps         %xmm14,%xmm13
12781  DB  68,15,88,233                        ; addps         %xmm1,%xmm13
12782  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
12783  DB  68,15,194,203,2                     ; cmpleps       %xmm3,%xmm9
12784  DB  65,15,40,253                        ; movaps        %xmm13,%xmm7
12785  DB  15,92,251                           ; subps         %xmm3,%xmm7
12786  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
12787  DB  69,15,92,253                        ; subps         %xmm13,%xmm15
12788  DB  69,15,89,253                        ; mulps         %xmm13,%xmm15
12789  DB  68,15,94,255                        ; divps         %xmm7,%xmm15
12790  DB  69,15,88,253                        ; addps         %xmm13,%xmm15
12791  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12792  DB  102,69,15,56,20,250                 ; blendvps      %xmm0,%xmm10,%xmm15
12793  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
12794  DB  65,15,95,198                        ; maxps         %xmm14,%xmm0
12795  DB  68,15,95,208                        ; maxps         %xmm0,%xmm10
12796  DB  15,40,212                           ; movaps        %xmm4,%xmm2
12797  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
12798  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
12799  DB  69,15,194,194,1                     ; cmpltps       %xmm10,%xmm8
12800  DB  65,15,40,223                        ; movaps        %xmm15,%xmm3
12801  DB  65,15,92,221                        ; subps         %xmm13,%xmm3
12802  DB  15,40,202                           ; movaps        %xmm2,%xmm1
12803  DB  65,15,92,205                        ; subps         %xmm13,%xmm1
12804  DB  15,89,217                           ; mulps         %xmm1,%xmm3
12805  DB  69,15,92,213                        ; subps         %xmm13,%xmm10
12806  DB  65,15,94,218                        ; divps         %xmm10,%xmm3
12807  DB  65,15,88,221                        ; addps         %xmm13,%xmm3
12808  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12809  DB  102,68,15,56,20,251                 ; blendvps      %xmm0,%xmm3,%xmm15
12810  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
12811  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
12812  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
12813  DB  68,15,94,231                        ; divps         %xmm7,%xmm12
12814  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
12815  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12816  DB  102,69,15,56,20,227                 ; blendvps      %xmm0,%xmm11,%xmm12
12817  DB  65,15,40,220                        ; movaps        %xmm12,%xmm3
12818  DB  65,15,92,221                        ; subps         %xmm13,%xmm3
12819  DB  15,89,217                           ; mulps         %xmm1,%xmm3
12820  DB  65,15,94,218                        ; divps         %xmm10,%xmm3
12821  DB  65,15,88,221                        ; addps         %xmm13,%xmm3
12822  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12823  DB  102,68,15,56,20,227                 ; blendvps      %xmm0,%xmm3,%xmm12
12824  DB  69,15,40,222                        ; movaps        %xmm14,%xmm11
12825  DB  69,15,92,221                        ; subps         %xmm13,%xmm11
12826  DB  69,15,89,221                        ; mulps         %xmm13,%xmm11
12827  DB  68,15,94,223                        ; divps         %xmm7,%xmm11
12828  DB  69,15,88,221                        ; addps         %xmm13,%xmm11
12829  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12830  DB  102,69,15,56,20,222                 ; blendvps      %xmm0,%xmm14,%xmm11
12831  DB  65,15,40,251                        ; movaps        %xmm11,%xmm7
12832  DB  65,15,92,253                        ; subps         %xmm13,%xmm7
12833  DB  15,89,249                           ; mulps         %xmm1,%xmm7
12834  DB  65,15,94,250                        ; divps         %xmm10,%xmm7
12835  DB  65,15,88,253                        ; addps         %xmm13,%xmm7
12836  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12837  DB  102,68,15,56,20,223                 ; blendvps      %xmm0,%xmm7,%xmm11
12838  DB  68,15,40,13,75,64,0,0               ; movaps        0x404b(%rip),%xmm9        # 5380 <_sk_callback_sse41+0x2e6>
12839  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
12840  DB  68,15,92,204                        ; subps         %xmm4,%xmm9
12841  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
12842  DB  15,88,231                           ; addps         %xmm7,%xmm4
12843  DB  15,92,226                           ; subps         %xmm2,%xmm4
12844  DB  15,40,220                           ; movaps        %xmm4,%xmm3
12845  DB  15,87,192                           ; xorps         %xmm0,%xmm0
12846  DB  68,15,95,248                        ; maxps         %xmm0,%xmm15
12847  DB  68,15,95,224                        ; maxps         %xmm0,%xmm12
12848  DB  68,15,95,216                        ; maxps         %xmm0,%xmm11
12849  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
12850  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12851  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
12852  DB  15,40,68,36,32                      ; movaps        0x20(%rsp),%xmm0
12853  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12854  DB  15,88,193                           ; addps         %xmm1,%xmm0
12855  DB  65,15,88,199                        ; addps         %xmm15,%xmm0
12856  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
12857  DB  15,89,206                           ; mulps         %xmm6,%xmm1
12858  DB  15,40,84,36,48                      ; movaps        0x30(%rsp),%xmm2
12859  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12860  DB  15,88,209                           ; addps         %xmm1,%xmm2
12861  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
12862  DB  15,40,202                           ; movaps        %xmm2,%xmm1
12863  DB  68,15,89,68,36,64                   ; mulps         0x40(%rsp),%xmm8
12864  DB  15,40,84,36,16                      ; movaps        0x10(%rsp),%xmm2
12865  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
12866  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
12867  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
12868  DB  72,173                              ; lods          %ds:(%rsi),%rax
12869  DB  15,40,229                           ; movaps        %xmm5,%xmm4
12870  DB  15,40,238                           ; movaps        %xmm6,%xmm5
12871  DB  15,40,242                           ; movaps        %xmm2,%xmm6
12872  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
12873  DB  72,131,196,88                       ; add           $0x58,%rsp
12874  DB  255,224                             ; jmpq          *%rax
12875
12876PUBLIC _sk_color_sse41
12877_sk_color_sse41 LABEL PROC
12878  DB  72,131,236,72                       ; sub           $0x48,%rsp
12879  DB  68,15,40,230                        ; movaps        %xmm6,%xmm12
12880  DB  68,15,41,100,36,16                  ; movaps        %xmm12,0x10(%rsp)
12881  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
12882  DB  68,15,41,92,36,32                   ; movaps        %xmm11,0x20(%rsp)
12883  DB  68,15,40,212                        ; movaps        %xmm4,%xmm10
12884  DB  68,15,41,84,36,48                   ; movaps        %xmm10,0x30(%rsp)
12885  DB  15,40,243                           ; movaps        %xmm3,%xmm6
12886  DB  15,41,20,36                         ; movaps        %xmm2,(%rsp)
12887  DB  15,40,233                           ; movaps        %xmm1,%xmm5
12888  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12889  DB  69,15,40,240                        ; movaps        %xmm8,%xmm14
12890  DB  15,40,231                           ; movaps        %xmm7,%xmm4
12891  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
12892  DB  15,89,204                           ; mulps         %xmm4,%xmm1
12893  DB  68,15,40,13,144,63,0,0              ; movaps        0x3f90(%rip),%xmm9        # 5390 <_sk_callback_sse41+0x2f6>
12894  DB  65,15,40,250                        ; movaps        %xmm10,%xmm7
12895  DB  65,15,89,249                        ; mulps         %xmm9,%xmm7
12896  DB  68,15,40,21,144,63,0,0              ; movaps        0x3f90(%rip),%xmm10        # 53a0 <_sk_callback_sse41+0x306>
12897  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
12898  DB  65,15,89,218                        ; mulps         %xmm10,%xmm3
12899  DB  15,88,223                           ; addps         %xmm7,%xmm3
12900  DB  68,15,40,29,141,63,0,0              ; movaps        0x3f8d(%rip),%xmm11        # 53b0 <_sk_callback_sse41+0x316>
12901  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
12902  DB  69,15,89,235                        ; mulps         %xmm11,%xmm13
12903  DB  68,15,88,235                        ; addps         %xmm3,%xmm13
12904  DB  65,15,40,222                        ; movaps        %xmm14,%xmm3
12905  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
12906  DB  15,40,249                           ; movaps        %xmm1,%xmm7
12907  DB  65,15,89,250                        ; mulps         %xmm10,%xmm7
12908  DB  15,88,251                           ; addps         %xmm3,%xmm7
12909  DB  15,40,194                           ; movaps        %xmm2,%xmm0
12910  DB  15,89,196                           ; mulps         %xmm4,%xmm0
12911  DB  15,40,216                           ; movaps        %xmm0,%xmm3
12912  DB  65,15,89,219                        ; mulps         %xmm11,%xmm3
12913  DB  15,88,223                           ; addps         %xmm7,%xmm3
12914  DB  68,15,89,238                        ; mulps         %xmm6,%xmm13
12915  DB  68,15,92,235                        ; subps         %xmm3,%xmm13
12916  DB  69,15,88,245                        ; addps         %xmm13,%xmm14
12917  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
12918  DB  68,15,88,232                        ; addps         %xmm0,%xmm13
12919  DB  15,40,193                           ; movaps        %xmm1,%xmm0
12920  DB  65,15,93,197                        ; minps         %xmm13,%xmm0
12921  DB  65,15,40,222                        ; movaps        %xmm14,%xmm3
12922  DB  15,93,216                           ; minps         %xmm0,%xmm3
12923  DB  69,15,89,206                        ; mulps         %xmm14,%xmm9
12924  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
12925  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
12926  DB  69,15,89,221                        ; mulps         %xmm13,%xmm11
12927  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
12928  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
12929  DB  68,15,194,203,2                     ; cmpleps       %xmm3,%xmm9
12930  DB  69,15,40,230                        ; movaps        %xmm14,%xmm12
12931  DB  69,15,92,227                        ; subps         %xmm11,%xmm12
12932  DB  69,15,89,227                        ; mulps         %xmm11,%xmm12
12933  DB  65,15,40,251                        ; movaps        %xmm11,%xmm7
12934  DB  15,92,251                           ; subps         %xmm3,%xmm7
12935  DB  68,15,94,231                        ; divps         %xmm7,%xmm12
12936  DB  69,15,88,227                        ; addps         %xmm11,%xmm12
12937  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12938  DB  102,69,15,56,20,230                 ; blendvps      %xmm0,%xmm14,%xmm12
12939  DB  15,40,193                           ; movaps        %xmm1,%xmm0
12940  DB  65,15,95,197                        ; maxps         %xmm13,%xmm0
12941  DB  65,15,40,214                        ; movaps        %xmm14,%xmm2
12942  DB  15,95,208                           ; maxps         %xmm0,%xmm2
12943  DB  15,40,222                           ; movaps        %xmm6,%xmm3
12944  DB  15,89,220                           ; mulps         %xmm4,%xmm3
12945  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
12946  DB  68,15,194,210,1                     ; cmpltps       %xmm2,%xmm10
12947  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
12948  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
12949  DB  68,15,40,251                        ; movaps        %xmm3,%xmm15
12950  DB  69,15,92,251                        ; subps         %xmm11,%xmm15
12951  DB  69,15,89,247                        ; mulps         %xmm15,%xmm14
12952  DB  65,15,92,211                        ; subps         %xmm11,%xmm2
12953  DB  68,15,94,242                        ; divps         %xmm2,%xmm14
12954  DB  69,15,88,243                        ; addps         %xmm11,%xmm14
12955  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12956  DB  102,69,15,56,20,230                 ; blendvps      %xmm0,%xmm14,%xmm12
12957  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
12958  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
12959  DB  69,15,89,243                        ; mulps         %xmm11,%xmm14
12960  DB  68,15,94,247                        ; divps         %xmm7,%xmm14
12961  DB  69,15,88,243                        ; addps         %xmm11,%xmm14
12962  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12963  DB  102,68,15,56,20,241                 ; blendvps      %xmm0,%xmm1,%xmm14
12964  DB  65,15,40,206                        ; movaps        %xmm14,%xmm1
12965  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
12966  DB  65,15,89,207                        ; mulps         %xmm15,%xmm1
12967  DB  15,94,202                           ; divps         %xmm2,%xmm1
12968  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
12969  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12970  DB  102,68,15,56,20,241                 ; blendvps      %xmm0,%xmm1,%xmm14
12971  DB  65,15,40,205                        ; movaps        %xmm13,%xmm1
12972  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
12973  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
12974  DB  15,94,207                           ; divps         %xmm7,%xmm1
12975  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
12976  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12977  DB  102,65,15,56,20,205                 ; blendvps      %xmm0,%xmm13,%xmm1
12978  DB  15,40,249                           ; movaps        %xmm1,%xmm7
12979  DB  65,15,92,251                        ; subps         %xmm11,%xmm7
12980  DB  65,15,89,255                        ; mulps         %xmm15,%xmm7
12981  DB  15,94,250                           ; divps         %xmm2,%xmm7
12982  DB  65,15,88,251                        ; addps         %xmm11,%xmm7
12983  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12984  DB  102,15,56,20,207                    ; blendvps      %xmm0,%xmm7,%xmm1
12985  DB  68,15,40,13,73,62,0,0               ; movaps        0x3e49(%rip),%xmm9        # 53c0 <_sk_callback_sse41+0x326>
12986  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12987  DB  15,92,196                           ; subps         %xmm4,%xmm0
12988  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
12989  DB  15,89,232                           ; mulps         %xmm0,%xmm5
12990  DB  15,89,4,36                          ; mulps         (%rsp),%xmm0
12991  DB  68,15,92,206                        ; subps         %xmm6,%xmm9
12992  DB  15,88,244                           ; addps         %xmm4,%xmm6
12993  DB  15,40,252                           ; movaps        %xmm4,%xmm7
12994  DB  15,92,243                           ; subps         %xmm3,%xmm6
12995  DB  15,40,222                           ; movaps        %xmm6,%xmm3
12996  DB  15,87,210                           ; xorps         %xmm2,%xmm2
12997  DB  68,15,95,226                        ; maxps         %xmm2,%xmm12
12998  DB  68,15,95,242                        ; maxps         %xmm2,%xmm14
12999  DB  15,95,202                           ; maxps         %xmm2,%xmm1
13000  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13001  DB  15,40,100,36,48                     ; movaps        0x30(%rsp),%xmm4
13002  DB  15,89,212                           ; mulps         %xmm4,%xmm2
13003  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
13004  DB  69,15,88,196                        ; addps         %xmm12,%xmm8
13005  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13006  DB  15,40,116,36,32                     ; movaps        0x20(%rsp),%xmm6
13007  DB  15,89,214                           ; mulps         %xmm6,%xmm2
13008  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
13009  DB  68,15,88,210                        ; addps         %xmm2,%xmm10
13010  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
13011  DB  15,40,84,36,16                      ; movaps        0x10(%rsp),%xmm2
13012  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
13013  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
13014  DB  68,15,88,201                        ; addps         %xmm1,%xmm9
13015  DB  72,173                              ; lods          %ds:(%rsi),%rax
13016  DB  15,40,238                           ; movaps        %xmm6,%xmm5
13017  DB  15,40,242                           ; movaps        %xmm2,%xmm6
13018  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13019  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
13020  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13021  DB  72,131,196,72                       ; add           $0x48,%rsp
13022  DB  255,224                             ; jmpq          *%rax
13023
13024PUBLIC _sk_luminosity_sse41
13025_sk_luminosity_sse41 LABEL PROC
13026  DB  72,131,236,72                       ; sub           $0x48,%rsp
13027  DB  15,41,116,36,16                     ; movaps        %xmm6,0x10(%rsp)
13028  DB  15,41,108,36,48                     ; movaps        %xmm5,0x30(%rsp)
13029  DB  68,15,40,196                        ; movaps        %xmm4,%xmm8
13030  DB  68,15,41,68,36,32                   ; movaps        %xmm8,0x20(%rsp)
13031  DB  15,41,20,36                         ; movaps        %xmm2,(%rsp)
13032  DB  15,40,224                           ; movaps        %xmm0,%xmm4
13033  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
13034  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
13035  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
13036  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
13037  DB  68,15,40,5,155,61,0,0               ; movaps        0x3d9b(%rip),%xmm8        # 53d0 <_sk_callback_sse41+0x336>
13038  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13039  DB  68,15,40,21,159,61,0,0              ; movaps        0x3d9f(%rip),%xmm10        # 53e0 <_sk_callback_sse41+0x346>
13040  DB  15,40,233                           ; movaps        %xmm1,%xmm5
13041  DB  65,15,89,234                        ; mulps         %xmm10,%xmm5
13042  DB  15,88,232                           ; addps         %xmm0,%xmm5
13043  DB  68,15,40,37,157,61,0,0              ; movaps        0x3d9d(%rip),%xmm12        # 53f0 <_sk_callback_sse41+0x356>
13044  DB  68,15,40,242                        ; movaps        %xmm2,%xmm14
13045  DB  69,15,89,244                        ; mulps         %xmm12,%xmm14
13046  DB  68,15,88,245                        ; addps         %xmm5,%xmm14
13047  DB  65,15,40,235                        ; movaps        %xmm11,%xmm5
13048  DB  65,15,89,232                        ; mulps         %xmm8,%xmm5
13049  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13050  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
13051  DB  15,88,213                           ; addps         %xmm5,%xmm2
13052  DB  15,40,195                           ; movaps        %xmm3,%xmm0
13053  DB  15,89,198                           ; mulps         %xmm6,%xmm0
13054  DB  15,40,232                           ; movaps        %xmm0,%xmm5
13055  DB  65,15,89,236                        ; mulps         %xmm12,%xmm5
13056  DB  15,88,234                           ; addps         %xmm2,%xmm5
13057  DB  68,15,89,247                        ; mulps         %xmm7,%xmm14
13058  DB  68,15,92,245                        ; subps         %xmm5,%xmm14
13059  DB  69,15,88,222                        ; addps         %xmm14,%xmm11
13060  DB  69,15,88,206                        ; addps         %xmm14,%xmm9
13061  DB  68,15,88,240                        ; addps         %xmm0,%xmm14
13062  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13063  DB  65,15,93,198                        ; minps         %xmm14,%xmm0
13064  DB  65,15,40,235                        ; movaps        %xmm11,%xmm5
13065  DB  15,93,232                           ; minps         %xmm0,%xmm5
13066  DB  69,15,89,195                        ; mulps         %xmm11,%xmm8
13067  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13068  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
13069  DB  69,15,89,230                        ; mulps         %xmm14,%xmm12
13070  DB  69,15,88,226                        ; addps         %xmm10,%xmm12
13071  DB  69,15,87,210                        ; xorps         %xmm10,%xmm10
13072  DB  68,15,194,213,2                     ; cmpleps       %xmm5,%xmm10
13073  DB  69,15,40,235                        ; movaps        %xmm11,%xmm13
13074  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
13075  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
13076  DB  65,15,40,244                        ; movaps        %xmm12,%xmm6
13077  DB  15,92,245                           ; subps         %xmm5,%xmm6
13078  DB  68,15,94,238                        ; divps         %xmm6,%xmm13
13079  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
13080  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13081  DB  102,69,15,56,20,235                 ; blendvps      %xmm0,%xmm11,%xmm13
13082  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13083  DB  65,15,95,198                        ; maxps         %xmm14,%xmm0
13084  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
13085  DB  15,95,208                           ; maxps         %xmm0,%xmm2
13086  DB  15,40,235                           ; movaps        %xmm3,%xmm5
13087  DB  15,89,239                           ; mulps         %xmm7,%xmm5
13088  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
13089  DB  68,15,194,218,1                     ; cmpltps       %xmm2,%xmm11
13090  DB  69,15,40,197                        ; movaps        %xmm13,%xmm8
13091  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
13092  DB  68,15,40,253                        ; movaps        %xmm5,%xmm15
13093  DB  69,15,92,252                        ; subps         %xmm12,%xmm15
13094  DB  69,15,89,199                        ; mulps         %xmm15,%xmm8
13095  DB  65,15,92,212                        ; subps         %xmm12,%xmm2
13096  DB  68,15,94,194                        ; divps         %xmm2,%xmm8
13097  DB  69,15,88,196                        ; addps         %xmm12,%xmm8
13098  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13099  DB  102,69,15,56,20,232                 ; blendvps      %xmm0,%xmm8,%xmm13
13100  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13101  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
13102  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
13103  DB  68,15,94,198                        ; divps         %xmm6,%xmm8
13104  DB  69,15,88,196                        ; addps         %xmm12,%xmm8
13105  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13106  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
13107  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
13108  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
13109  DB  69,15,89,207                        ; mulps         %xmm15,%xmm9
13110  DB  68,15,94,202                        ; divps         %xmm2,%xmm9
13111  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
13112  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13113  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
13114  DB  69,15,40,206                        ; movaps        %xmm14,%xmm9
13115  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
13116  DB  69,15,89,204                        ; mulps         %xmm12,%xmm9
13117  DB  68,15,94,206                        ; divps         %xmm6,%xmm9
13118  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
13119  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13120  DB  102,69,15,56,20,206                 ; blendvps      %xmm0,%xmm14,%xmm9
13121  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
13122  DB  65,15,92,244                        ; subps         %xmm12,%xmm6
13123  DB  65,15,89,247                        ; mulps         %xmm15,%xmm6
13124  DB  15,94,242                           ; divps         %xmm2,%xmm6
13125  DB  65,15,88,244                        ; addps         %xmm12,%xmm6
13126  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13127  DB  102,68,15,56,20,206                 ; blendvps      %xmm0,%xmm6,%xmm9
13128  DB  15,40,5,83,60,0,0                   ; movaps        0x3c53(%rip),%xmm0        # 5400 <_sk_callback_sse41+0x366>
13129  DB  15,40,208                           ; movaps        %xmm0,%xmm2
13130  DB  15,92,215                           ; subps         %xmm7,%xmm2
13131  DB  15,89,226                           ; mulps         %xmm2,%xmm4
13132  DB  15,89,202                           ; mulps         %xmm2,%xmm1
13133  DB  15,89,20,36                         ; mulps         (%rsp),%xmm2
13134  DB  15,92,195                           ; subps         %xmm3,%xmm0
13135  DB  15,88,223                           ; addps         %xmm7,%xmm3
13136  DB  15,92,221                           ; subps         %xmm5,%xmm3
13137  DB  15,87,237                           ; xorps         %xmm5,%xmm5
13138  DB  68,15,95,237                        ; maxps         %xmm5,%xmm13
13139  DB  68,15,95,197                        ; maxps         %xmm5,%xmm8
13140  DB  68,15,95,205                        ; maxps         %xmm5,%xmm9
13141  DB  15,40,232                           ; movaps        %xmm0,%xmm5
13142  DB  68,15,40,84,36,32                   ; movaps        0x20(%rsp),%xmm10
13143  DB  65,15,89,234                        ; mulps         %xmm10,%xmm5
13144  DB  15,88,229                           ; addps         %xmm5,%xmm4
13145  DB  65,15,88,229                        ; addps         %xmm13,%xmm4
13146  DB  15,40,240                           ; movaps        %xmm0,%xmm6
13147  DB  15,40,108,36,48                     ; movaps        0x30(%rsp),%xmm5
13148  DB  15,89,245                           ; mulps         %xmm5,%xmm6
13149  DB  15,88,206                           ; addps         %xmm6,%xmm1
13150  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
13151  DB  15,40,116,36,16                     ; movaps        0x10(%rsp),%xmm6
13152  DB  15,89,198                           ; mulps         %xmm6,%xmm0
13153  DB  15,88,194                           ; addps         %xmm2,%xmm0
13154  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
13155  DB  72,173                              ; lods          %ds:(%rsi),%rax
13156  DB  15,40,196                           ; movaps        %xmm4,%xmm0
13157  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13158  DB  65,15,40,226                        ; movaps        %xmm10,%xmm4
13159  DB  72,131,196,72                       ; add           $0x48,%rsp
13160  DB  255,224                             ; jmpq          *%rax
13161
13162PUBLIC _sk_srcover_rgba_8888_sse41
13163_sk_srcover_rgba_8888_sse41 LABEL PROC
13164  DB  72,173                              ; lods          %ds:(%rsi),%rax
13165  DB  72,139,0                            ; mov           (%rax),%rax
13166  DB  77,133,192                          ; test          %r8,%r8
13167  DB  15,133,217,0,0,0                    ; jne           1904 <_sk_srcover_rgba_8888_sse41+0xe7>
13168  DB  243,15,111,60,144                   ; movdqu        (%rax,%rdx,4),%xmm7
13169  DB  77,133,192                          ; test          %r8,%r8
13170  DB  102,15,111,37,213,59,0,0            ; movdqa        0x3bd5(%rip),%xmm4        # 5410 <_sk_callback_sse41+0x376>
13171  DB  102,15,219,231                      ; pand          %xmm7,%xmm4
13172  DB  15,91,228                           ; cvtdq2ps      %xmm4,%xmm4
13173  DB  102,15,111,239                      ; movdqa        %xmm7,%xmm5
13174  DB  102,15,56,0,45,209,59,0,0           ; pshufb        0x3bd1(%rip),%xmm5        # 5420 <_sk_callback_sse41+0x386>
13175  DB  15,91,237                           ; cvtdq2ps      %xmm5,%xmm5
13176  DB  102,15,111,247                      ; movdqa        %xmm7,%xmm6
13177  DB  102,15,56,0,53,209,59,0,0           ; pshufb        0x3bd1(%rip),%xmm6        # 5430 <_sk_callback_sse41+0x396>
13178  DB  15,91,246                           ; cvtdq2ps      %xmm6,%xmm6
13179  DB  102,15,114,215,24                   ; psrld         $0x18,%xmm7
13180  DB  15,91,255                           ; cvtdq2ps      %xmm7,%xmm7
13181  DB  68,15,40,5,206,59,0,0               ; movaps        0x3bce(%rip),%xmm8        # 5440 <_sk_callback_sse41+0x3a6>
13182  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
13183  DB  68,15,40,37,210,59,0,0              ; movaps        0x3bd2(%rip),%xmm12        # 5450 <_sk_callback_sse41+0x3b6>
13184  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
13185  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
13186  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
13187  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
13188  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
13189  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
13190  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
13191  DB  68,15,88,209                        ; addps         %xmm1,%xmm10
13192  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
13193  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
13194  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
13195  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
13196  DB  65,15,89,220                        ; mulps         %xmm12,%xmm3
13197  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
13198  DB  68,15,88,195                        ; addps         %xmm3,%xmm8
13199  DB  102,65,15,91,193                    ; cvtps2dq      %xmm9,%xmm0
13200  DB  102,65,15,91,202                    ; cvtps2dq      %xmm10,%xmm1
13201  DB  102,15,114,241,8                    ; pslld         $0x8,%xmm1
13202  DB  102,15,235,200                      ; por           %xmm0,%xmm1
13203  DB  102,65,15,91,211                    ; cvtps2dq      %xmm11,%xmm2
13204  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
13205  DB  102,65,15,91,192                    ; cvtps2dq      %xmm8,%xmm0
13206  DB  102,15,114,240,24                   ; pslld         $0x18,%xmm0
13207  DB  102,15,235,194                      ; por           %xmm2,%xmm0
13208  DB  102,15,235,193                      ; por           %xmm1,%xmm0
13209  DB  117,89                              ; jne           1944 <_sk_srcover_rgba_8888_sse41+0x127>
13210  DB  243,15,127,4,144                    ; movdqu        %xmm0,(%rax,%rdx,4)
13211  DB  72,173                              ; lods          %ds:(%rsi),%rax
13212  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13213  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
13214  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
13215  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
13216  DB  255,224                             ; jmpq          *%rax
13217  DB  69,137,193                          ; mov           %r8d,%r9d
13218  DB  65,128,225,3                        ; and           $0x3,%r9b
13219  DB  102,15,239,255                      ; pxor          %xmm7,%xmm7
13220  DB  65,128,249,1                        ; cmp           $0x1,%r9b
13221  DB  116,35                              ; je            1938 <_sk_srcover_rgba_8888_sse41+0x11b>
13222  DB  65,128,249,2                        ; cmp           $0x2,%r9b
13223  DB  116,21                              ; je            1930 <_sk_srcover_rgba_8888_sse41+0x113>
13224  DB  65,128,249,3                        ; cmp           $0x3,%r9b
13225  DB  15,133,11,255,255,255               ; jne           1830 <_sk_srcover_rgba_8888_sse41+0x13>
13226  DB  102,15,110,100,144,8                ; movd          0x8(%rax,%rdx,4),%xmm4
13227  DB  102,15,112,252,69                   ; pshufd        $0x45,%xmm4,%xmm7
13228  DB  102,15,58,34,124,144,4,1            ; pinsrd        $0x1,0x4(%rax,%rdx,4),%xmm7
13229  DB  102,15,58,34,60,144,0               ; pinsrd        $0x0,(%rax,%rdx,4),%xmm7
13230  DB  233,236,254,255,255                 ; jmpq          1830 <_sk_srcover_rgba_8888_sse41+0x13>
13231  DB  69,137,193                          ; mov           %r8d,%r9d
13232  DB  65,128,225,3                        ; and           $0x3,%r9b
13233  DB  65,128,249,1                        ; cmp           $0x1,%r9b
13234  DB  116,28                              ; je            196d <_sk_srcover_rgba_8888_sse41+0x150>
13235  DB  65,128,249,2                        ; cmp           $0x2,%r9b
13236  DB  116,14                              ; je            1965 <_sk_srcover_rgba_8888_sse41+0x148>
13237  DB  65,128,249,3                        ; cmp           $0x3,%r9b
13238  DB  117,147                             ; jne           18f0 <_sk_srcover_rgba_8888_sse41+0xd3>
13239  DB  102,15,58,22,68,144,8,2             ; pextrd        $0x2,%xmm0,0x8(%rax,%rdx,4)
13240  DB  102,15,58,22,68,144,4,1             ; pextrd        $0x1,%xmm0,0x4(%rax,%rdx,4)
13241  DB  102,15,126,4,144                    ; movd          %xmm0,(%rax,%rdx,4)
13242  DB  233,121,255,255,255                 ; jmpq          18f0 <_sk_srcover_rgba_8888_sse41+0xd3>
13243
13244PUBLIC _sk_clamp_0_sse41
13245_sk_clamp_0_sse41 LABEL PROC
13246  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
13247  DB  65,15,95,192                        ; maxps         %xmm8,%xmm0
13248  DB  65,15,95,200                        ; maxps         %xmm8,%xmm1
13249  DB  65,15,95,208                        ; maxps         %xmm8,%xmm2
13250  DB  65,15,95,216                        ; maxps         %xmm8,%xmm3
13251  DB  72,173                              ; lods          %ds:(%rsi),%rax
13252  DB  255,224                             ; jmpq          *%rax
13253
13254PUBLIC _sk_clamp_1_sse41
13255_sk_clamp_1_sse41 LABEL PROC
13256  DB  68,15,40,5,201,58,0,0               ; movaps        0x3ac9(%rip),%xmm8        # 5460 <_sk_callback_sse41+0x3c6>
13257  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
13258  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
13259  DB  65,15,93,208                        ; minps         %xmm8,%xmm2
13260  DB  65,15,93,216                        ; minps         %xmm8,%xmm3
13261  DB  72,173                              ; lods          %ds:(%rsi),%rax
13262  DB  255,224                             ; jmpq          *%rax
13263
13264PUBLIC _sk_clamp_a_sse41
13265_sk_clamp_a_sse41 LABEL PROC
13266  DB  15,93,29,190,58,0,0                 ; minps         0x3abe(%rip),%xmm3        # 5470 <_sk_callback_sse41+0x3d6>
13267  DB  15,93,195                           ; minps         %xmm3,%xmm0
13268  DB  15,93,203                           ; minps         %xmm3,%xmm1
13269  DB  15,93,211                           ; minps         %xmm3,%xmm2
13270  DB  72,173                              ; lods          %ds:(%rsi),%rax
13271  DB  255,224                             ; jmpq          *%rax
13272
13273PUBLIC _sk_set_rgb_sse41
13274_sk_set_rgb_sse41 LABEL PROC
13275  DB  72,173                              ; lods          %ds:(%rsi),%rax
13276  DB  243,15,16,0                         ; movss         (%rax),%xmm0
13277  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
13278  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
13279  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
13280  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
13281  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13282  DB  72,173                              ; lods          %ds:(%rsi),%rax
13283  DB  255,224                             ; jmpq          *%rax
13284
13285PUBLIC _sk_swap_rb_sse41
13286_sk_swap_rb_sse41 LABEL PROC
13287  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13288  DB  72,173                              ; lods          %ds:(%rsi),%rax
13289  DB  15,40,194                           ; movaps        %xmm2,%xmm0
13290  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
13291  DB  255,224                             ; jmpq          *%rax
13292
13293PUBLIC _sk_swap_sse41
13294_sk_swap_sse41 LABEL PROC
13295  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
13296  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
13297  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
13298  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
13299  DB  72,173                              ; lods          %ds:(%rsi),%rax
13300  DB  15,40,196                           ; movaps        %xmm4,%xmm0
13301  DB  15,40,205                           ; movaps        %xmm5,%xmm1
13302  DB  15,40,214                           ; movaps        %xmm6,%xmm2
13303  DB  15,40,223                           ; movaps        %xmm7,%xmm3
13304  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
13305  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
13306  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
13307  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
13308  DB  255,224                             ; jmpq          *%rax
13309
13310PUBLIC _sk_move_src_dst_sse41
13311_sk_move_src_dst_sse41 LABEL PROC
13312  DB  72,173                              ; lods          %ds:(%rsi),%rax
13313  DB  15,40,224                           ; movaps        %xmm0,%xmm4
13314  DB  15,40,233                           ; movaps        %xmm1,%xmm5
13315  DB  15,40,242                           ; movaps        %xmm2,%xmm6
13316  DB  15,40,251                           ; movaps        %xmm3,%xmm7
13317  DB  255,224                             ; jmpq          *%rax
13318
13319PUBLIC _sk_move_dst_src_sse41
13320_sk_move_dst_src_sse41 LABEL PROC
13321  DB  72,173                              ; lods          %ds:(%rsi),%rax
13322  DB  15,40,196                           ; movaps        %xmm4,%xmm0
13323  DB  15,40,205                           ; movaps        %xmm5,%xmm1
13324  DB  15,40,214                           ; movaps        %xmm6,%xmm2
13325  DB  15,40,223                           ; movaps        %xmm7,%xmm3
13326  DB  255,224                             ; jmpq          *%rax
13327
13328PUBLIC _sk_premul_sse41
13329_sk_premul_sse41 LABEL PROC
13330  DB  15,89,195                           ; mulps         %xmm3,%xmm0
13331  DB  15,89,203                           ; mulps         %xmm3,%xmm1
13332  DB  15,89,211                           ; mulps         %xmm3,%xmm2
13333  DB  72,173                              ; lods          %ds:(%rsi),%rax
13334  DB  255,224                             ; jmpq          *%rax
13335
13336PUBLIC _sk_unpremul_sse41
13337_sk_unpremul_sse41 LABEL PROC
13338  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
13339  DB  68,15,40,13,41,58,0,0               ; movaps        0x3a29(%rip),%xmm9        # 5480 <_sk_callback_sse41+0x3e6>
13340  DB  68,15,94,203                        ; divps         %xmm3,%xmm9
13341  DB  68,15,194,195,4                     ; cmpneqps      %xmm3,%xmm8
13342  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
13343  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13344  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
13345  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
13346  DB  72,173                              ; lods          %ds:(%rsi),%rax
13347  DB  255,224                             ; jmpq          *%rax
13348
13349PUBLIC _sk_from_srgb_sse41
13350_sk_from_srgb_sse41 LABEL PROC
13351  DB  68,15,40,29,20,58,0,0               ; movaps        0x3a14(%rip),%xmm11        # 5490 <_sk_callback_sse41+0x3f6>
13352  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
13353  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
13354  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
13355  DB  69,15,89,210                        ; mulps         %xmm10,%xmm10
13356  DB  68,15,40,37,12,58,0,0               ; movaps        0x3a0c(%rip),%xmm12        # 54a0 <_sk_callback_sse41+0x406>
13357  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13358  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
13359  DB  68,15,40,45,12,58,0,0               ; movaps        0x3a0c(%rip),%xmm13        # 54b0 <_sk_callback_sse41+0x416>
13360  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
13361  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
13362  DB  68,15,40,53,12,58,0,0               ; movaps        0x3a0c(%rip),%xmm14        # 54c0 <_sk_callback_sse41+0x426>
13363  DB  69,15,88,198                        ; addps         %xmm14,%xmm8
13364  DB  68,15,40,61,16,58,0,0               ; movaps        0x3a10(%rip),%xmm15        # 54d0 <_sk_callback_sse41+0x436>
13365  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
13366  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
13367  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
13368  DB  69,15,89,211                        ; mulps         %xmm11,%xmm10
13369  DB  15,40,193                           ; movaps        %xmm1,%xmm0
13370  DB  15,89,192                           ; mulps         %xmm0,%xmm0
13371  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
13372  DB  69,15,89,204                        ; mulps         %xmm12,%xmm9
13373  DB  69,15,88,205                        ; addps         %xmm13,%xmm9
13374  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
13375  DB  69,15,88,206                        ; addps         %xmm14,%xmm9
13376  DB  65,15,194,207,1                     ; cmpltps       %xmm15,%xmm1
13377  DB  15,40,193                           ; movaps        %xmm1,%xmm0
13378  DB  102,69,15,56,20,202                 ; blendvps      %xmm0,%xmm10,%xmm9
13379  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
13380  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
13381  DB  69,15,89,210                        ; mulps         %xmm10,%xmm10
13382  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
13383  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
13384  DB  69,15,89,212                        ; mulps         %xmm12,%xmm10
13385  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
13386  DB  65,15,194,215,1                     ; cmpltps       %xmm15,%xmm2
13387  DB  15,40,194                           ; movaps        %xmm2,%xmm0
13388  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
13389  DB  72,173                              ; lods          %ds:(%rsi),%rax
13390  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13391  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
13392  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
13393  DB  255,224                             ; jmpq          *%rax
13394
13395PUBLIC _sk_to_srgb_sse41
13396_sk_to_srgb_sse41 LABEL PROC
13397  DB  72,131,236,24                       ; sub           $0x18,%rsp
13398  DB  15,41,60,36                         ; movaps        %xmm7,(%rsp)
13399  DB  15,40,254                           ; movaps        %xmm6,%xmm7
13400  DB  15,40,245                           ; movaps        %xmm5,%xmm6
13401  DB  15,40,236                           ; movaps        %xmm4,%xmm5
13402  DB  15,40,227                           ; movaps        %xmm3,%xmm4
13403  DB  15,40,218                           ; movaps        %xmm2,%xmm3
13404  DB  15,40,209                           ; movaps        %xmm1,%xmm2
13405  DB  68,15,82,192                        ; rsqrtps       %xmm0,%xmm8
13406  DB  68,15,40,29,133,57,0,0              ; movaps        0x3985(%rip),%xmm11        # 54e0 <_sk_callback_sse41+0x446>
13407  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
13408  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
13409  DB  68,15,40,37,133,57,0,0              ; movaps        0x3985(%rip),%xmm12        # 54f0 <_sk_callback_sse41+0x456>
13410  DB  69,15,40,248                        ; movaps        %xmm8,%xmm15
13411  DB  69,15,89,252                        ; mulps         %xmm12,%xmm15
13412  DB  68,15,40,21,133,57,0,0              ; movaps        0x3985(%rip),%xmm10        # 5500 <_sk_callback_sse41+0x466>
13413  DB  69,15,88,250                        ; addps         %xmm10,%xmm15
13414  DB  69,15,89,248                        ; mulps         %xmm8,%xmm15
13415  DB  68,15,40,45,133,57,0,0              ; movaps        0x3985(%rip),%xmm13        # 5510 <_sk_callback_sse41+0x476>
13416  DB  69,15,88,253                        ; addps         %xmm13,%xmm15
13417  DB  68,15,40,53,137,57,0,0              ; movaps        0x3989(%rip),%xmm14        # 5520 <_sk_callback_sse41+0x486>
13418  DB  69,15,88,198                        ; addps         %xmm14,%xmm8
13419  DB  69,15,83,192                        ; rcpps         %xmm8,%xmm8
13420  DB  69,15,89,199                        ; mulps         %xmm15,%xmm8
13421  DB  68,15,40,61,133,57,0,0              ; movaps        0x3985(%rip),%xmm15        # 5530 <_sk_callback_sse41+0x496>
13422  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
13423  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
13424  DB  68,15,82,202                        ; rsqrtps       %xmm2,%xmm9
13425  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13426  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
13427  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
13428  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
13429  DB  65,15,88,197                        ; addps         %xmm13,%xmm0
13430  DB  69,15,88,206                        ; addps         %xmm14,%xmm9
13431  DB  69,15,83,201                        ; rcpps         %xmm9,%xmm9
13432  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
13433  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
13434  DB  65,15,194,215,1                     ; cmpltps       %xmm15,%xmm2
13435  DB  15,40,194                           ; movaps        %xmm2,%xmm0
13436  DB  102,68,15,56,20,201                 ; blendvps      %xmm0,%xmm1,%xmm9
13437  DB  15,82,195                           ; rsqrtps       %xmm3,%xmm0
13438  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
13439  DB  69,15,88,226                        ; addps         %xmm10,%xmm12
13440  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
13441  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
13442  DB  65,15,88,198                        ; addps         %xmm14,%xmm0
13443  DB  68,15,83,208                        ; rcpps         %xmm0,%xmm10
13444  DB  69,15,89,212                        ; mulps         %xmm12,%xmm10
13445  DB  68,15,89,219                        ; mulps         %xmm3,%xmm11
13446  DB  65,15,194,223,1                     ; cmpltps       %xmm15,%xmm3
13447  DB  15,40,195                           ; movaps        %xmm3,%xmm0
13448  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
13449  DB  72,173                              ; lods          %ds:(%rsi),%rax
13450  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13451  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
13452  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
13453  DB  15,40,220                           ; movaps        %xmm4,%xmm3
13454  DB  15,40,229                           ; movaps        %xmm5,%xmm4
13455  DB  15,40,238                           ; movaps        %xmm6,%xmm5
13456  DB  15,40,247                           ; movaps        %xmm7,%xmm6
13457  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
13458  DB  72,131,196,24                       ; add           $0x18,%rsp
13459  DB  255,224                             ; jmpq          *%rax
13460
13461PUBLIC _sk_rgb_to_hsl_sse41
13462_sk_rgb_to_hsl_sse41 LABEL PROC
13463  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
13464  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13465  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
13466  DB  69,15,95,217                        ; maxps         %xmm9,%xmm11
13467  DB  68,15,95,218                        ; maxps         %xmm2,%xmm11
13468  DB  69,15,40,224                        ; movaps        %xmm8,%xmm12
13469  DB  69,15,93,225                        ; minps         %xmm9,%xmm12
13470  DB  68,15,93,226                        ; minps         %xmm2,%xmm12
13471  DB  65,15,40,203                        ; movaps        %xmm11,%xmm1
13472  DB  65,15,92,204                        ; subps         %xmm12,%xmm1
13473  DB  68,15,40,53,207,56,0,0              ; movaps        0x38cf(%rip),%xmm14        # 5540 <_sk_callback_sse41+0x4a6>
13474  DB  68,15,94,241                        ; divps         %xmm1,%xmm14
13475  DB  69,15,40,211                        ; movaps        %xmm11,%xmm10
13476  DB  69,15,194,208,0                     ; cmpeqps       %xmm8,%xmm10
13477  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13478  DB  15,92,194                           ; subps         %xmm2,%xmm0
13479  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
13480  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
13481  DB  68,15,194,250,1                     ; cmpltps       %xmm2,%xmm15
13482  DB  68,15,84,61,182,56,0,0              ; andps         0x38b6(%rip),%xmm15        # 5550 <_sk_callback_sse41+0x4b6>
13483  DB  68,15,88,248                        ; addps         %xmm0,%xmm15
13484  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13485  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
13486  DB  65,15,92,208                        ; subps         %xmm8,%xmm2
13487  DB  65,15,89,214                        ; mulps         %xmm14,%xmm2
13488  DB  68,15,40,45,169,56,0,0              ; movaps        0x38a9(%rip),%xmm13        # 5560 <_sk_callback_sse41+0x4c6>
13489  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
13490  DB  69,15,92,193                        ; subps         %xmm9,%xmm8
13491  DB  69,15,89,198                        ; mulps         %xmm14,%xmm8
13492  DB  68,15,88,5,165,56,0,0               ; addps         0x38a5(%rip),%xmm8        # 5570 <_sk_callback_sse41+0x4d6>
13493  DB  102,68,15,56,20,194                 ; blendvps      %xmm0,%xmm2,%xmm8
13494  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13495  DB  102,69,15,56,20,199                 ; blendvps      %xmm0,%xmm15,%xmm8
13496  DB  68,15,89,5,157,56,0,0               ; mulps         0x389d(%rip),%xmm8        # 5580 <_sk_callback_sse41+0x4e6>
13497  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
13498  DB  69,15,194,204,4                     ; cmpneqps      %xmm12,%xmm9
13499  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
13500  DB  69,15,92,235                        ; subps         %xmm11,%xmm13
13501  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
13502  DB  15,40,5,145,56,0,0                  ; movaps        0x3891(%rip),%xmm0        # 5590 <_sk_callback_sse41+0x4f6>
13503  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
13504  DB  15,89,208                           ; mulps         %xmm0,%xmm2
13505  DB  15,194,194,1                        ; cmpltps       %xmm2,%xmm0
13506  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
13507  DB  102,69,15,56,20,221                 ; blendvps      %xmm0,%xmm13,%xmm11
13508  DB  65,15,94,203                        ; divps         %xmm11,%xmm1
13509  DB  65,15,84,201                        ; andps         %xmm9,%xmm1
13510  DB  72,173                              ; lods          %ds:(%rsi),%rax
13511  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13512  DB  255,224                             ; jmpq          *%rax
13513
13514PUBLIC _sk_hsl_to_rgb_sse41
13515_sk_hsl_to_rgb_sse41 LABEL PROC
13516  DB  72,131,236,104                      ; sub           $0x68,%rsp
13517  DB  15,41,124,36,80                     ; movaps        %xmm7,0x50(%rsp)
13518  DB  15,41,116,36,64                     ; movaps        %xmm6,0x40(%rsp)
13519  DB  15,41,108,36,48                     ; movaps        %xmm5,0x30(%rsp)
13520  DB  15,41,100,36,32                     ; movaps        %xmm4,0x20(%rsp)
13521  DB  15,41,92,36,16                      ; movaps        %xmm3,0x10(%rsp)
13522  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
13523  DB  68,15,40,13,83,56,0,0               ; movaps        0x3853(%rip),%xmm9        # 55a0 <_sk_callback_sse41+0x506>
13524  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13525  DB  15,194,194,2                        ; cmpleps       %xmm2,%xmm0
13526  DB  15,40,217                           ; movaps        %xmm1,%xmm3
13527  DB  15,40,233                           ; movaps        %xmm1,%xmm5
13528  DB  15,89,234                           ; mulps         %xmm2,%xmm5
13529  DB  15,92,221                           ; subps         %xmm5,%xmm3
13530  DB  102,15,56,20,235                    ; blendvps      %xmm0,%xmm3,%xmm5
13531  DB  15,88,234                           ; addps         %xmm2,%xmm5
13532  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
13533  DB  15,41,20,36                         ; movaps        %xmm2,(%rsp)
13534  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
13535  DB  68,15,92,197                        ; subps         %xmm5,%xmm8
13536  DB  68,15,40,53,47,56,0,0               ; movaps        0x382f(%rip),%xmm14        # 55b0 <_sk_callback_sse41+0x516>
13537  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
13538  DB  102,65,15,58,8,198,1                ; roundps       $0x1,%xmm14,%xmm0
13539  DB  68,15,92,240                        ; subps         %xmm0,%xmm14
13540  DB  68,15,40,29,40,56,0,0               ; movaps        0x3828(%rip),%xmm11        # 55c0 <_sk_callback_sse41+0x526>
13541  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13542  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
13543  DB  15,40,245                           ; movaps        %xmm5,%xmm6
13544  DB  65,15,92,240                        ; subps         %xmm8,%xmm6
13545  DB  15,40,61,33,56,0,0                  ; movaps        0x3821(%rip),%xmm7        # 55d0 <_sk_callback_sse41+0x536>
13546  DB  69,15,40,238                        ; movaps        %xmm14,%xmm13
13547  DB  68,15,89,239                        ; mulps         %xmm7,%xmm13
13548  DB  15,40,29,34,56,0,0                  ; movaps        0x3822(%rip),%xmm3        # 55e0 <_sk_callback_sse41+0x546>
13549  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
13550  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
13551  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
13552  DB  69,15,88,224                        ; addps         %xmm8,%xmm12
13553  DB  102,69,15,56,20,224                 ; blendvps      %xmm0,%xmm8,%xmm12
13554  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13555  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
13556  DB  68,15,40,253                        ; movaps        %xmm5,%xmm15
13557  DB  102,69,15,56,20,252                 ; blendvps      %xmm0,%xmm12,%xmm15
13558  DB  68,15,40,37,1,56,0,0                ; movaps        0x3801(%rip),%xmm12        # 55f0 <_sk_callback_sse41+0x556>
13559  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
13560  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
13561  DB  68,15,89,238                        ; mulps         %xmm6,%xmm13
13562  DB  69,15,88,232                        ; addps         %xmm8,%xmm13
13563  DB  102,69,15,56,20,239                 ; blendvps      %xmm0,%xmm15,%xmm13
13564  DB  69,15,87,246                        ; xorps         %xmm14,%xmm14
13565  DB  68,15,194,241,0                     ; cmpeqps       %xmm1,%xmm14
13566  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
13567  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
13568  DB  102,65,15,58,8,194,1                ; roundps       $0x1,%xmm10,%xmm0
13569  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
13570  DB  68,15,92,248                        ; subps         %xmm0,%xmm15
13571  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13572  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
13573  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
13574  DB  15,89,207                           ; mulps         %xmm7,%xmm1
13575  DB  15,40,211                           ; movaps        %xmm3,%xmm2
13576  DB  15,92,209                           ; subps         %xmm1,%xmm2
13577  DB  15,89,214                           ; mulps         %xmm6,%xmm2
13578  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
13579  DB  102,65,15,56,20,208                 ; blendvps      %xmm0,%xmm8,%xmm2
13580  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13581  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
13582  DB  15,40,229                           ; movaps        %xmm5,%xmm4
13583  DB  102,15,56,20,226                    ; blendvps      %xmm0,%xmm2,%xmm4
13584  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
13585  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
13586  DB  15,89,206                           ; mulps         %xmm6,%xmm1
13587  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
13588  DB  102,15,56,20,204                    ; blendvps      %xmm0,%xmm4,%xmm1
13589  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
13590  DB  15,40,20,36                         ; movaps        (%rsp),%xmm2
13591  DB  102,15,56,20,202                    ; blendvps      %xmm0,%xmm2,%xmm1
13592  DB  68,15,88,21,122,55,0,0              ; addps         0x377a(%rip),%xmm10        # 5600 <_sk_callback_sse41+0x566>
13593  DB  102,65,15,58,8,194,1                ; roundps       $0x1,%xmm10,%xmm0
13594  DB  68,15,92,208                        ; subps         %xmm0,%xmm10
13595  DB  69,15,194,218,2                     ; cmpleps       %xmm10,%xmm11
13596  DB  65,15,89,250                        ; mulps         %xmm10,%xmm7
13597  DB  15,92,223                           ; subps         %xmm7,%xmm3
13598  DB  15,89,222                           ; mulps         %xmm6,%xmm3
13599  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
13600  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13601  DB  102,65,15,56,20,216                 ; blendvps      %xmm0,%xmm8,%xmm3
13602  DB  69,15,194,202,2                     ; cmpleps       %xmm10,%xmm9
13603  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13604  DB  102,15,56,20,235                    ; blendvps      %xmm0,%xmm3,%xmm5
13605  DB  69,15,194,226,2                     ; cmpleps       %xmm10,%xmm12
13606  DB  15,89,254                           ; mulps         %xmm6,%xmm7
13607  DB  68,15,88,199                        ; addps         %xmm7,%xmm8
13608  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
13609  DB  102,68,15,56,20,197                 ; blendvps      %xmm0,%xmm5,%xmm8
13610  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
13611  DB  102,68,15,56,20,194                 ; blendvps      %xmm0,%xmm2,%xmm8
13612  DB  72,173                              ; lods          %ds:(%rsi),%rax
13613  DB  65,15,40,197                        ; movaps        %xmm13,%xmm0
13614  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
13615  DB  15,40,92,36,16                      ; movaps        0x10(%rsp),%xmm3
13616  DB  15,40,100,36,32                     ; movaps        0x20(%rsp),%xmm4
13617  DB  15,40,108,36,48                     ; movaps        0x30(%rsp),%xmm5
13618  DB  15,40,116,36,64                     ; movaps        0x40(%rsp),%xmm6
13619  DB  15,40,124,36,80                     ; movaps        0x50(%rsp),%xmm7
13620  DB  72,131,196,104                      ; add           $0x68,%rsp
13621  DB  255,224                             ; jmpq          *%rax
13622
13623PUBLIC _sk_scale_1_float_sse41
13624_sk_scale_1_float_sse41 LABEL PROC
13625  DB  72,173                              ; lods          %ds:(%rsi),%rax
13626  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
13627  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
13628  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13629  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
13630  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
13631  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
13632  DB  72,173                              ; lods          %ds:(%rsi),%rax
13633  DB  255,224                             ; jmpq          *%rax
13634
13635PUBLIC _sk_scale_u8_sse41
13636_sk_scale_u8_sse41 LABEL PROC
13637  DB  72,173                              ; lods          %ds:(%rsi),%rax
13638  DB  76,139,16                           ; mov           (%rax),%r10
13639  DB  77,133,192                          ; test          %r8,%r8
13640  DB  117,52                              ; jne           1f63 <_sk_scale_u8_sse41+0x3e>
13641  DB  102,69,15,56,49,4,18                ; pmovzxbd      (%r10,%rdx,1),%xmm8
13642  DB  102,68,15,219,5,209,54,0,0          ; pand          0x36d1(%rip),%xmm8        # 5610 <_sk_callback_sse41+0x576>
13643  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
13644  DB  68,15,89,5,213,54,0,0               ; mulps         0x36d5(%rip),%xmm8        # 5620 <_sk_callback_sse41+0x586>
13645  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13646  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
13647  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
13648  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
13649  DB  72,173                              ; lods          %ds:(%rsi),%rax
13650  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
13651  DB  255,224                             ; jmpq          *%rax
13652  DB  69,137,193                          ; mov           %r8d,%r9d
13653  DB  65,128,225,3                        ; and           $0x3,%r9b
13654  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
13655  DB  65,128,249,1                        ; cmp           $0x1,%r9b
13656  DB  116,42                              ; je            1f9f <_sk_scale_u8_sse41+0x7a>
13657  DB  65,128,249,2                        ; cmp           $0x2,%r9b
13658  DB  116,23                              ; je            1f92 <_sk_scale_u8_sse41+0x6d>
13659  DB  65,128,249,3                        ; cmp           $0x3,%r9b
13660  DB  117,181                             ; jne           1f36 <_sk_scale_u8_sse41+0x11>
13661  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
13662  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
13663  DB  102,69,15,112,192,69                ; pshufd        $0x45,%xmm8,%xmm8
13664  DB  65,15,182,68,18,1                   ; movzbl        0x1(%r10,%rdx,1),%eax
13665  DB  102,68,15,58,34,192,1               ; pinsrd        $0x1,%eax,%xmm8
13666  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
13667  DB  102,68,15,58,34,192,0               ; pinsrd        $0x0,%eax,%xmm8
13668  DB  235,137                             ; jmp           1f36 <_sk_scale_u8_sse41+0x11>
13669
13670PUBLIC _sk_lerp_1_float_sse41
13671_sk_lerp_1_float_sse41 LABEL PROC
13672  DB  72,173                              ; lods          %ds:(%rsi),%rax
13673  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
13674  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
13675  DB  15,92,196                           ; subps         %xmm4,%xmm0
13676  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13677  DB  15,88,196                           ; addps         %xmm4,%xmm0
13678  DB  15,92,205                           ; subps         %xmm5,%xmm1
13679  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
13680  DB  15,88,205                           ; addps         %xmm5,%xmm1
13681  DB  15,92,214                           ; subps         %xmm6,%xmm2
13682  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
13683  DB  15,88,214                           ; addps         %xmm6,%xmm2
13684  DB  15,92,223                           ; subps         %xmm7,%xmm3
13685  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
13686  DB  15,88,223                           ; addps         %xmm7,%xmm3
13687  DB  72,173                              ; lods          %ds:(%rsi),%rax
13688  DB  255,224                             ; jmpq          *%rax
13689
13690PUBLIC _sk_lerp_u8_sse41
13691_sk_lerp_u8_sse41 LABEL PROC
13692  DB  72,173                              ; lods          %ds:(%rsi),%rax
13693  DB  76,139,16                           ; mov           (%rax),%r10
13694  DB  77,133,192                          ; test          %r8,%r8
13695  DB  117,72                              ; jne           2037 <_sk_lerp_u8_sse41+0x52>
13696  DB  102,69,15,56,49,4,18                ; pmovzxbd      (%r10,%rdx,1),%xmm8
13697  DB  102,68,15,219,5,49,54,0,0           ; pand          0x3631(%rip),%xmm8        # 5630 <_sk_callback_sse41+0x596>
13698  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
13699  DB  68,15,89,5,53,54,0,0                ; mulps         0x3635(%rip),%xmm8        # 5640 <_sk_callback_sse41+0x5a6>
13700  DB  15,92,196                           ; subps         %xmm4,%xmm0
13701  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13702  DB  15,88,196                           ; addps         %xmm4,%xmm0
13703  DB  15,92,205                           ; subps         %xmm5,%xmm1
13704  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
13705  DB  15,88,205                           ; addps         %xmm5,%xmm1
13706  DB  15,92,214                           ; subps         %xmm6,%xmm2
13707  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
13708  DB  15,88,214                           ; addps         %xmm6,%xmm2
13709  DB  15,92,223                           ; subps         %xmm7,%xmm3
13710  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
13711  DB  15,88,223                           ; addps         %xmm7,%xmm3
13712  DB  72,173                              ; lods          %ds:(%rsi),%rax
13713  DB  255,224                             ; jmpq          *%rax
13714  DB  69,137,193                          ; mov           %r8d,%r9d
13715  DB  65,128,225,3                        ; and           $0x3,%r9b
13716  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
13717  DB  65,128,249,1                        ; cmp           $0x1,%r9b
13718  DB  116,42                              ; je            2073 <_sk_lerp_u8_sse41+0x8e>
13719  DB  65,128,249,2                        ; cmp           $0x2,%r9b
13720  DB  116,23                              ; je            2066 <_sk_lerp_u8_sse41+0x81>
13721  DB  65,128,249,3                        ; cmp           $0x3,%r9b
13722  DB  117,161                             ; jne           1ff6 <_sk_lerp_u8_sse41+0x11>
13723  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
13724  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
13725  DB  102,69,15,112,192,69                ; pshufd        $0x45,%xmm8,%xmm8
13726  DB  65,15,182,68,18,1                   ; movzbl        0x1(%r10,%rdx,1),%eax
13727  DB  102,68,15,58,34,192,1               ; pinsrd        $0x1,%eax,%xmm8
13728  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
13729  DB  102,68,15,58,34,192,0               ; pinsrd        $0x0,%eax,%xmm8
13730  DB  233,114,255,255,255                 ; jmpq          1ff6 <_sk_lerp_u8_sse41+0x11>
13731
13732PUBLIC _sk_lerp_565_sse41
13733_sk_lerp_565_sse41 LABEL PROC
13734  DB  72,173                              ; lods          %ds:(%rsi),%rax
13735  DB  76,139,16                           ; mov           (%rax),%r10
13736  DB  77,133,192                          ; test          %r8,%r8
13737  DB  15,133,152,0,0,0                    ; jne           212a <_sk_lerp_565_sse41+0xa6>
13738  DB  102,69,15,56,51,12,82               ; pmovzxwd      (%r10,%rdx,2),%xmm9
13739  DB  102,68,15,111,5,174,53,0,0          ; movdqa        0x35ae(%rip),%xmm8        # 5650 <_sk_callback_sse41+0x5b6>
13740  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
13741  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
13742  DB  68,15,89,5,173,53,0,0               ; mulps         0x35ad(%rip),%xmm8        # 5660 <_sk_callback_sse41+0x5c6>
13743  DB  102,68,15,111,21,180,53,0,0         ; movdqa        0x35b4(%rip),%xmm10        # 5670 <_sk_callback_sse41+0x5d6>
13744  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
13745  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
13746  DB  68,15,89,21,179,53,0,0              ; mulps         0x35b3(%rip),%xmm10        # 5680 <_sk_callback_sse41+0x5e6>
13747  DB  102,68,15,219,13,186,53,0,0         ; pand          0x35ba(%rip),%xmm9        # 5690 <_sk_callback_sse41+0x5f6>
13748  DB  69,15,91,201                        ; cvtdq2ps      %xmm9,%xmm9
13749  DB  68,15,89,13,190,53,0,0              ; mulps         0x35be(%rip),%xmm9        # 56a0 <_sk_callback_sse41+0x606>
13750  DB  15,92,196                           ; subps         %xmm4,%xmm0
13751  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13752  DB  15,88,196                           ; addps         %xmm4,%xmm0
13753  DB  15,92,205                           ; subps         %xmm5,%xmm1
13754  DB  65,15,89,202                        ; mulps         %xmm10,%xmm1
13755  DB  15,88,205                           ; addps         %xmm5,%xmm1
13756  DB  15,92,214                           ; subps         %xmm6,%xmm2
13757  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
13758  DB  15,88,214                           ; addps         %xmm6,%xmm2
13759  DB  15,92,223                           ; subps         %xmm7,%xmm3
13760  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
13761  DB  68,15,88,199                        ; addps         %xmm7,%xmm8
13762  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
13763  DB  68,15,88,215                        ; addps         %xmm7,%xmm10
13764  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
13765  DB  15,88,223                           ; addps         %xmm7,%xmm3
13766  DB  68,15,95,211                        ; maxps         %xmm3,%xmm10
13767  DB  69,15,95,194                        ; maxps         %xmm10,%xmm8
13768  DB  72,173                              ; lods          %ds:(%rsi),%rax
13769  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
13770  DB  255,224                             ; jmpq          *%rax
13771  DB  69,137,193                          ; mov           %r8d,%r9d
13772  DB  65,128,225,3                        ; and           $0x3,%r9b
13773  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
13774  DB  65,128,249,1                        ; cmp           $0x1,%r9b
13775  DB  116,46                              ; je            216a <_sk_lerp_565_sse41+0xe6>
13776  DB  65,128,249,2                        ; cmp           $0x2,%r9b
13777  DB  116,27                              ; je            215d <_sk_lerp_565_sse41+0xd9>
13778  DB  65,128,249,3                        ; cmp           $0x3,%r9b
13779  DB  15,133,77,255,255,255               ; jne           2099 <_sk_lerp_565_sse41+0x15>
13780  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
13781  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
13782  DB  102,69,15,112,200,69                ; pshufd        $0x45,%xmm8,%xmm9
13783  DB  65,15,183,68,82,2                   ; movzwl        0x2(%r10,%rdx,2),%eax
13784  DB  102,68,15,58,34,200,1               ; pinsrd        $0x1,%eax,%xmm9
13785  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
13786  DB  102,68,15,58,34,200,0               ; pinsrd        $0x0,%eax,%xmm9
13787  DB  233,30,255,255,255                  ; jmpq          2099 <_sk_lerp_565_sse41+0x15>
13788
13789PUBLIC _sk_load_tables_sse41
13790_sk_load_tables_sse41 LABEL PROC
13791  DB  72,173                              ; lods          %ds:(%rsi),%rax
13792  DB  76,139,8                            ; mov           (%rax),%r9
13793  DB  77,133,192                          ; test          %r8,%r8
13794  DB  15,133,24,1,0,0                     ; jne           22a1 <_sk_load_tables_sse41+0x126>
13795  DB  243,69,15,111,4,145                 ; movdqu        (%r9,%rdx,4),%xmm8
13796  DB  65,87                               ; push          %r15
13797  DB  65,86                               ; push          %r14
13798  DB  83                                  ; push          %rbx
13799  DB  102,15,111,5,20,53,0,0              ; movdqa        0x3514(%rip),%xmm0        # 56b0 <_sk_callback_sse41+0x616>
13800  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
13801  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
13802  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
13803  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
13804  DB  73,193,234,30                       ; shr           $0x1e,%r10
13805  DB  69,15,182,241                       ; movzbl        %r9b,%r14d
13806  DB  73,193,233,30                       ; shr           $0x1e,%r9
13807  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
13808  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
13809  DB  243,66,15,16,4,155                  ; movss         (%rbx,%r11,4),%xmm0
13810  DB  102,66,15,58,33,4,19,16             ; insertps      $0x10,(%rbx,%r10,1),%xmm0
13811  DB  102,66,15,58,33,4,179,32            ; insertps      $0x20,(%rbx,%r14,4),%xmm0
13812  DB  102,66,15,58,33,4,11,48             ; insertps      $0x30,(%rbx,%r9,1),%xmm0
13813  DB  102,65,15,111,200                   ; movdqa        %xmm8,%xmm1
13814  DB  102,15,56,0,13,207,52,0,0           ; pshufb        0x34cf(%rip),%xmm1        # 56c0 <_sk_callback_sse41+0x626>
13815  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
13816  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
13817  DB  68,15,182,211                       ; movzbl        %bl,%r10d
13818  DB  72,193,235,30                       ; shr           $0x1e,%rbx
13819  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
13820  DB  73,193,233,30                       ; shr           $0x1e,%r9
13821  DB  243,67,15,16,12,151                 ; movss         (%r15,%r10,4),%xmm1
13822  DB  102,65,15,58,33,12,31,16            ; insertps      $0x10,(%r15,%rbx,1),%xmm1
13823  DB  243,67,15,16,20,159                 ; movss         (%r15,%r11,4),%xmm2
13824  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
13825  DB  243,67,15,16,20,15                  ; movss         (%r15,%r9,1),%xmm2
13826  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
13827  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
13828  DB  102,65,15,111,208                   ; movdqa        %xmm8,%xmm2
13829  DB  102,15,56,0,21,139,52,0,0           ; pshufb        0x348b(%rip),%xmm2        # 56d0 <_sk_callback_sse41+0x636>
13830  DB  102,72,15,58,22,211,1               ; pextrq        $0x1,%xmm2,%rbx
13831  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
13832  DB  68,15,182,208                       ; movzbl        %al,%r10d
13833  DB  72,193,232,30                       ; shr           $0x1e,%rax
13834  DB  68,15,182,219                       ; movzbl        %bl,%r11d
13835  DB  72,193,235,30                       ; shr           $0x1e,%rbx
13836  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
13837  DB  102,65,15,58,33,20,1,16             ; insertps      $0x10,(%r9,%rax,1),%xmm2
13838  DB  243,67,15,16,28,153                 ; movss         (%r9,%r11,4),%xmm3
13839  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
13840  DB  243,65,15,16,28,25                  ; movss         (%r9,%rbx,1),%xmm3
13841  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
13842  DB  102,65,15,114,208,24                ; psrld         $0x18,%xmm8
13843  DB  65,15,91,216                        ; cvtdq2ps      %xmm8,%xmm3
13844  DB  15,89,29,72,52,0,0                  ; mulps         0x3448(%rip),%xmm3        # 56e0 <_sk_callback_sse41+0x646>
13845  DB  72,173                              ; lods          %ds:(%rsi),%rax
13846  DB  91                                  ; pop           %rbx
13847  DB  65,94                               ; pop           %r14
13848  DB  65,95                               ; pop           %r15
13849  DB  255,224                             ; jmpq          *%rax
13850  DB  69,137,194                          ; mov           %r8d,%r10d
13851  DB  65,128,226,3                        ; and           $0x3,%r10b
13852  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
13853  DB  65,128,250,1                        ; cmp           $0x1,%r10b
13854  DB  116,38                              ; je            22d9 <_sk_load_tables_sse41+0x15e>
13855  DB  65,128,250,2                        ; cmp           $0x2,%r10b
13856  DB  116,23                              ; je            22d0 <_sk_load_tables_sse41+0x155>
13857  DB  65,128,250,3                        ; cmp           $0x3,%r10b
13858  DB  15,133,204,254,255,255              ; jne           218f <_sk_load_tables_sse41+0x14>
13859  DB  102,65,15,110,68,145,8              ; movd          0x8(%r9,%rdx,4),%xmm0
13860  DB  102,68,15,112,192,69                ; pshufd        $0x45,%xmm0,%xmm8
13861  DB  102,69,15,58,34,68,145,4,1          ; pinsrd        $0x1,0x4(%r9,%rdx,4),%xmm8
13862  DB  102,69,15,58,34,4,145,0             ; pinsrd        $0x0,(%r9,%rdx,4),%xmm8
13863  DB  233,169,254,255,255                 ; jmpq          218f <_sk_load_tables_sse41+0x14>
13864
13865PUBLIC _sk_load_tables_u16_be_sse41
13866_sk_load_tables_u16_be_sse41 LABEL PROC
13867  DB  72,173                              ; lods          %ds:(%rsi),%rax
13868  DB  76,139,8                            ; mov           (%rax),%r9
13869  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
13870  DB  77,133,192                          ; test          %r8,%r8
13871  DB  15,133,99,1,0,0                     ; jne           245f <_sk_load_tables_u16_be_sse41+0x179>
13872  DB  102,67,15,16,4,81                   ; movupd        (%r9,%r10,2),%xmm0
13873  DB  243,67,15,111,76,81,16              ; movdqu        0x10(%r9,%r10,2),%xmm1
13874  DB  65,87                               ; push          %r15
13875  DB  65,86                               ; push          %r14
13876  DB  83                                  ; push          %rbx
13877  DB  102,68,15,40,200                    ; movapd        %xmm0,%xmm9
13878  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
13879  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
13880  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
13881  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
13882  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
13883  DB  102,68,15,111,5,189,51,0,0          ; movdqa        0x33bd(%rip),%xmm8        # 56f0 <_sk_callback_sse41+0x656>
13884  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
13885  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
13886  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
13887  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
13888  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
13889  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
13890  DB  73,193,234,30                       ; shr           $0x1e,%r10
13891  DB  69,15,182,241                       ; movzbl        %r9b,%r14d
13892  DB  73,193,233,30                       ; shr           $0x1e,%r9
13893  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
13894  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
13895  DB  243,66,15,16,4,155                  ; movss         (%rbx,%r11,4),%xmm0
13896  DB  102,66,15,58,33,4,19,16             ; insertps      $0x10,(%rbx,%r10,1),%xmm0
13897  DB  243,66,15,16,20,179                 ; movss         (%rbx,%r14,4),%xmm2
13898  DB  102,15,58,33,194,32                 ; insertps      $0x20,%xmm2,%xmm0
13899  DB  243,66,15,16,20,11                  ; movss         (%rbx,%r9,1),%xmm2
13900  DB  102,15,58,33,194,48                 ; insertps      $0x30,%xmm2,%xmm0
13901  DB  102,15,56,0,13,108,51,0,0           ; pshufb        0x336c(%rip),%xmm1        # 5700 <_sk_callback_sse41+0x666>
13902  DB  102,15,56,51,201                    ; pmovzxwd      %xmm1,%xmm1
13903  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
13904  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
13905  DB  68,15,182,211                       ; movzbl        %bl,%r10d
13906  DB  72,193,235,30                       ; shr           $0x1e,%rbx
13907  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
13908  DB  73,193,233,30                       ; shr           $0x1e,%r9
13909  DB  243,67,15,16,12,151                 ; movss         (%r15,%r10,4),%xmm1
13910  DB  102,65,15,58,33,12,31,16            ; insertps      $0x10,(%r15,%rbx,1),%xmm1
13911  DB  243,67,15,16,20,159                 ; movss         (%r15,%r11,4),%xmm2
13912  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
13913  DB  243,67,15,16,20,15                  ; movss         (%r15,%r9,1),%xmm2
13914  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
13915  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
13916  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
13917  DB  102,65,15,56,51,208                 ; pmovzxwd      %xmm8,%xmm2
13918  DB  102,72,15,58,22,211,1               ; pextrq        $0x1,%xmm2,%rbx
13919  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
13920  DB  68,15,182,208                       ; movzbl        %al,%r10d
13921  DB  72,193,232,30                       ; shr           $0x1e,%rax
13922  DB  68,15,182,219                       ; movzbl        %bl,%r11d
13923  DB  72,193,235,30                       ; shr           $0x1e,%rbx
13924  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
13925  DB  102,65,15,58,33,20,1,16             ; insertps      $0x10,(%r9,%rax,1),%xmm2
13926  DB  243,67,15,16,28,153                 ; movss         (%r9,%r11,4),%xmm3
13927  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
13928  DB  243,65,15,16,28,25                  ; movss         (%r9,%rbx,1),%xmm3
13929  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
13930  DB  102,65,15,112,217,78                ; pshufd        $0x4e,%xmm9,%xmm3
13931  DB  102,68,15,111,195                   ; movdqa        %xmm3,%xmm8
13932  DB  102,65,15,113,240,8                 ; psllw         $0x8,%xmm8
13933  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
13934  DB  102,65,15,235,216                   ; por           %xmm8,%xmm3
13935  DB  102,15,56,51,219                    ; pmovzxwd      %xmm3,%xmm3
13936  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
13937  DB  15,89,29,186,50,0,0                 ; mulps         0x32ba(%rip),%xmm3        # 5710 <_sk_callback_sse41+0x676>
13938  DB  72,173                              ; lods          %ds:(%rsi),%rax
13939  DB  91                                  ; pop           %rbx
13940  DB  65,94                               ; pop           %r14
13941  DB  65,95                               ; pop           %r15
13942  DB  255,224                             ; jmpq          *%rax
13943  DB  242,67,15,16,4,81                   ; movsd         (%r9,%r10,2),%xmm0
13944  DB  73,131,248,1                        ; cmp           $0x1,%r8
13945  DB  117,13                              ; jne           2478 <_sk_load_tables_u16_be_sse41+0x192>
13946  DB  243,15,126,192                      ; movq          %xmm0,%xmm0
13947  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
13948  DB  233,145,254,255,255                 ; jmpq          2309 <_sk_load_tables_u16_be_sse41+0x23>
13949  DB  102,67,15,22,68,81,8                ; movhpd        0x8(%r9,%r10,2),%xmm0
13950  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
13951  DB  73,131,248,3                        ; cmp           $0x3,%r8
13952  DB  15,130,124,254,255,255              ; jb            2309 <_sk_load_tables_u16_be_sse41+0x23>
13953  DB  243,67,15,126,76,81,16              ; movq          0x10(%r9,%r10,2),%xmm1
13954  DB  233,112,254,255,255                 ; jmpq          2309 <_sk_load_tables_u16_be_sse41+0x23>
13955
13956PUBLIC _sk_load_tables_rgb_u16_be_sse41
13957_sk_load_tables_rgb_u16_be_sse41 LABEL PROC
13958  DB  72,173                              ; lods          %ds:(%rsi),%rax
13959  DB  76,139,8                            ; mov           (%rax),%r9
13960  DB  76,141,20,82                        ; lea           (%rdx,%rdx,2),%r10
13961  DB  77,133,192                          ; test          %r8,%r8
13962  DB  15,133,83,1,0,0                     ; jne           25fe <_sk_load_tables_rgb_u16_be_sse41+0x165>
13963  DB  243,67,15,111,20,81                 ; movdqu        (%r9,%r10,2),%xmm2
13964  DB  243,67,15,111,76,81,8               ; movdqu        0x8(%r9,%r10,2),%xmm1
13965  DB  102,15,115,217,4                    ; psrldq        $0x4,%xmm1
13966  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
13967  DB  102,65,15,115,217,6                 ; psrldq        $0x6,%xmm9
13968  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
13969  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
13970  DB  65,87                               ; push          %r15
13971  DB  65,86                               ; push          %r14
13972  DB  83                                  ; push          %rbx
13973  DB  102,15,97,209                       ; punpcklwd     %xmm1,%xmm2
13974  DB  102,68,15,97,200                    ; punpcklwd     %xmm0,%xmm9
13975  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
13976  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
13977  DB  102,68,15,111,5,47,50,0,0           ; movdqa        0x322f(%rip),%xmm8        # 5720 <_sk_callback_sse41+0x686>
13978  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
13979  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
13980  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
13981  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
13982  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
13983  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
13984  DB  73,193,234,30                       ; shr           $0x1e,%r10
13985  DB  69,15,182,241                       ; movzbl        %r9b,%r14d
13986  DB  73,193,233,30                       ; shr           $0x1e,%r9
13987  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
13988  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
13989  DB  243,66,15,16,4,155                  ; movss         (%rbx,%r11,4),%xmm0
13990  DB  102,66,15,58,33,4,19,16             ; insertps      $0x10,(%rbx,%r10,1),%xmm0
13991  DB  243,66,15,16,28,179                 ; movss         (%rbx,%r14,4),%xmm3
13992  DB  102,15,58,33,195,32                 ; insertps      $0x20,%xmm3,%xmm0
13993  DB  243,66,15,16,28,11                  ; movss         (%rbx,%r9,1),%xmm3
13994  DB  102,15,58,33,195,48                 ; insertps      $0x30,%xmm3,%xmm0
13995  DB  102,15,56,0,13,222,49,0,0           ; pshufb        0x31de(%rip),%xmm1        # 5730 <_sk_callback_sse41+0x696>
13996  DB  102,15,56,51,201                    ; pmovzxwd      %xmm1,%xmm1
13997  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
13998  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
13999  DB  68,15,182,211                       ; movzbl        %bl,%r10d
14000  DB  72,193,235,30                       ; shr           $0x1e,%rbx
14001  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
14002  DB  73,193,233,30                       ; shr           $0x1e,%r9
14003  DB  243,67,15,16,12,151                 ; movss         (%r15,%r10,4),%xmm1
14004  DB  102,65,15,58,33,12,31,16            ; insertps      $0x10,(%r15,%rbx,1),%xmm1
14005  DB  243,67,15,16,28,159                 ; movss         (%r15,%r11,4),%xmm3
14006  DB  102,15,58,33,203,32                 ; insertps      $0x20,%xmm3,%xmm1
14007  DB  243,67,15,16,28,15                  ; movss         (%r15,%r9,1),%xmm3
14008  DB  102,15,58,33,203,48                 ; insertps      $0x30,%xmm3,%xmm1
14009  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
14010  DB  102,65,15,105,209                   ; punpckhwd     %xmm9,%xmm2
14011  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
14012  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
14013  DB  102,72,15,58,22,211,1               ; pextrq        $0x1,%xmm2,%rbx
14014  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
14015  DB  68,15,182,208                       ; movzbl        %al,%r10d
14016  DB  72,193,232,30                       ; shr           $0x1e,%rax
14017  DB  68,15,182,219                       ; movzbl        %bl,%r11d
14018  DB  72,193,235,30                       ; shr           $0x1e,%rbx
14019  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
14020  DB  102,65,15,58,33,20,1,16             ; insertps      $0x10,(%r9,%rax,1),%xmm2
14021  DB  243,67,15,16,28,153                 ; movss         (%r9,%r11,4),%xmm3
14022  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
14023  DB  243,65,15,16,28,25                  ; movss         (%r9,%rbx,1),%xmm3
14024  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
14025  DB  72,173                              ; lods          %ds:(%rsi),%rax
14026  DB  15,40,29,73,49,0,0                  ; movaps        0x3149(%rip),%xmm3        # 5740 <_sk_callback_sse41+0x6a6>
14027  DB  91                                  ; pop           %rbx
14028  DB  65,94                               ; pop           %r14
14029  DB  65,95                               ; pop           %r15
14030  DB  255,224                             ; jmpq          *%rax
14031  DB  102,67,15,110,20,81                 ; movd          (%r9,%r10,2),%xmm2
14032  DB  102,67,15,196,84,81,4,2             ; pinsrw        $0x2,0x4(%r9,%r10,2),%xmm2
14033  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
14034  DB  73,131,248,1                        ; cmp           $0x1,%r8
14035  DB  117,14                              ; jne           2624 <_sk_load_tables_rgb_u16_be_sse41+0x18b>
14036  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
14037  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
14038  DB  233,173,254,255,255                 ; jmpq          24d1 <_sk_load_tables_rgb_u16_be_sse41+0x38>
14039  DB  102,71,15,110,76,81,6               ; movd          0x6(%r9,%r10,2),%xmm9
14040  DB  102,71,15,196,76,81,10,2            ; pinsrw        $0x2,0xa(%r9,%r10,2),%xmm9
14041  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
14042  DB  73,131,248,3                        ; cmp           $0x3,%r8
14043  DB  114,24                              ; jb            2655 <_sk_load_tables_rgb_u16_be_sse41+0x1bc>
14044  DB  102,67,15,110,76,81,12              ; movd          0xc(%r9,%r10,2),%xmm1
14045  DB  102,67,15,196,76,81,16,2            ; pinsrw        $0x2,0x10(%r9,%r10,2),%xmm1
14046  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
14047  DB  233,124,254,255,255                 ; jmpq          24d1 <_sk_load_tables_rgb_u16_be_sse41+0x38>
14048  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
14049  DB  233,115,254,255,255                 ; jmpq          24d1 <_sk_load_tables_rgb_u16_be_sse41+0x38>
14050
14051PUBLIC _sk_byte_tables_sse41
14052_sk_byte_tables_sse41 LABEL PROC
14053  DB  65,87                               ; push          %r15
14054  DB  65,86                               ; push          %r14
14055  DB  65,84                               ; push          %r12
14056  DB  83                                  ; push          %rbx
14057  DB  72,173                              ; lods          %ds:(%rsi),%rax
14058  DB  68,15,40,5,225,48,0,0               ; movaps        0x30e1(%rip),%xmm8        # 5750 <_sk_callback_sse41+0x6b6>
14059  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
14060  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
14061  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
14062  DB  69,137,202                          ; mov           %r9d,%r10d
14063  DB  73,193,233,32                       ; shr           $0x20,%r9
14064  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
14065  DB  69,137,222                          ; mov           %r11d,%r14d
14066  DB  73,193,235,32                       ; shr           $0x20,%r11
14067  DB  76,139,32                           ; mov           (%rax),%r12
14068  DB  76,139,120,8                        ; mov           0x8(%rax),%r15
14069  DB  102,67,15,58,32,4,52,0              ; pinsrb        $0x0,(%r12,%r14,1),%xmm0
14070  DB  102,67,15,58,32,4,28,1              ; pinsrb        $0x1,(%r12,%r11,1),%xmm0
14071  DB  67,15,182,28,20                     ; movzbl        (%r12,%r10,1),%ebx
14072  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
14073  DB  67,15,182,28,12                     ; movzbl        (%r12,%r9,1),%ebx
14074  DB  102,15,58,32,195,3                  ; pinsrb        $0x3,%ebx,%xmm0
14075  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
14076  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
14077  DB  68,15,40,13,146,48,0,0              ; movaps        0x3092(%rip),%xmm9        # 5760 <_sk_callback_sse41+0x6c6>
14078  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
14079  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
14080  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
14081  DB  102,72,15,58,22,203,1               ; pextrq        $0x1,%xmm1,%rbx
14082  DB  65,137,217                          ; mov           %ebx,%r9d
14083  DB  72,193,235,32                       ; shr           $0x20,%rbx
14084  DB  102,73,15,126,202                   ; movq          %xmm1,%r10
14085  DB  69,137,211                          ; mov           %r10d,%r11d
14086  DB  73,193,234,32                       ; shr           $0x20,%r10
14087  DB  102,67,15,58,32,12,31,0             ; pinsrb        $0x0,(%r15,%r11,1),%xmm1
14088  DB  102,67,15,58,32,12,23,1             ; pinsrb        $0x1,(%r15,%r10,1),%xmm1
14089  DB  71,15,182,12,15                     ; movzbl        (%r15,%r9,1),%r9d
14090  DB  102,65,15,58,32,201,2               ; pinsrb        $0x2,%r9d,%xmm1
14091  DB  65,15,182,28,31                     ; movzbl        (%r15,%rbx,1),%ebx
14092  DB  102,15,58,32,203,3                  ; pinsrb        $0x3,%ebx,%xmm1
14093  DB  102,15,56,49,201                    ; pmovzxbd      %xmm1,%xmm1
14094  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
14095  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
14096  DB  76,139,88,16                        ; mov           0x10(%rax),%r11
14097  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
14098  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
14099  DB  102,73,15,58,22,209,1               ; pextrq        $0x1,%xmm2,%r9
14100  DB  69,137,202                          ; mov           %r9d,%r10d
14101  DB  73,193,233,32                       ; shr           $0x20,%r9
14102  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
14103  DB  65,137,222                          ; mov           %ebx,%r14d
14104  DB  72,193,235,32                       ; shr           $0x20,%rbx
14105  DB  102,67,15,58,32,20,51,0             ; pinsrb        $0x0,(%r11,%r14,1),%xmm2
14106  DB  102,65,15,58,32,20,27,1             ; pinsrb        $0x1,(%r11,%rbx,1),%xmm2
14107  DB  67,15,182,28,19                     ; movzbl        (%r11,%r10,1),%ebx
14108  DB  102,15,58,32,211,2                  ; pinsrb        $0x2,%ebx,%xmm2
14109  DB  67,15,182,28,11                     ; movzbl        (%r11,%r9,1),%ebx
14110  DB  102,15,58,32,211,3                  ; pinsrb        $0x3,%ebx,%xmm2
14111  DB  102,15,56,49,210                    ; pmovzxbd      %xmm2,%xmm2
14112  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
14113  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
14114  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
14115  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
14116  DB  102,15,91,219                       ; cvtps2dq      %xmm3,%xmm3
14117  DB  102,72,15,58,22,219,1               ; pextrq        $0x1,%xmm3,%rbx
14118  DB  65,137,217                          ; mov           %ebx,%r9d
14119  DB  72,193,235,32                       ; shr           $0x20,%rbx
14120  DB  102,72,15,126,216                   ; movq          %xmm3,%rax
14121  DB  65,137,195                          ; mov           %eax,%r11d
14122  DB  72,193,232,32                       ; shr           $0x20,%rax
14123  DB  102,67,15,58,32,28,26,0             ; pinsrb        $0x0,(%r10,%r11,1),%xmm3
14124  DB  102,65,15,58,32,28,2,1              ; pinsrb        $0x1,(%r10,%rax,1),%xmm3
14125  DB  67,15,182,4,10                      ; movzbl        (%r10,%r9,1),%eax
14126  DB  102,15,58,32,216,2                  ; pinsrb        $0x2,%eax,%xmm3
14127  DB  65,15,182,4,26                      ; movzbl        (%r10,%rbx,1),%eax
14128  DB  102,15,58,32,216,3                  ; pinsrb        $0x3,%eax,%xmm3
14129  DB  102,15,56,49,219                    ; pmovzxbd      %xmm3,%xmm3
14130  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
14131  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
14132  DB  72,173                              ; lods          %ds:(%rsi),%rax
14133  DB  91                                  ; pop           %rbx
14134  DB  65,92                               ; pop           %r12
14135  DB  65,94                               ; pop           %r14
14136  DB  65,95                               ; pop           %r15
14137  DB  255,224                             ; jmpq          *%rax
14138
14139PUBLIC _sk_byte_tables_rgb_sse41
14140_sk_byte_tables_rgb_sse41 LABEL PROC
14141  DB  65,87                               ; push          %r15
14142  DB  65,86                               ; push          %r14
14143  DB  65,84                               ; push          %r12
14144  DB  83                                  ; push          %rbx
14145  DB  72,173                              ; lods          %ds:(%rsi),%rax
14146  DB  68,139,72,24                        ; mov           0x18(%rax),%r9d
14147  DB  65,255,201                          ; dec           %r9d
14148  DB  102,69,15,110,193                   ; movd          %r9d,%xmm8
14149  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
14150  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14151  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
14152  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
14153  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
14154  DB  69,137,202                          ; mov           %r9d,%r10d
14155  DB  77,137,203                          ; mov           %r9,%r11
14156  DB  73,193,235,32                       ; shr           $0x20,%r11
14157  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
14158  DB  69,137,206                          ; mov           %r9d,%r14d
14159  DB  77,137,207                          ; mov           %r9,%r15
14160  DB  73,193,239,32                       ; shr           $0x20,%r15
14161  DB  76,139,32                           ; mov           (%rax),%r12
14162  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
14163  DB  102,67,15,58,32,4,52,0              ; pinsrb        $0x0,(%r12,%r14,1),%xmm0
14164  DB  102,67,15,58,32,4,60,1              ; pinsrb        $0x1,(%r12,%r15,1),%xmm0
14165  DB  67,15,182,28,20                     ; movzbl        (%r12,%r10,1),%ebx
14166  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
14167  DB  67,15,182,28,28                     ; movzbl        (%r12,%r11,1),%ebx
14168  DB  102,15,58,32,195,3                  ; pinsrb        $0x3,%ebx,%xmm0
14169  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
14170  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
14171  DB  68,15,40,13,10,47,0,0               ; movaps        0x2f0a(%rip),%xmm9        # 5770 <_sk_callback_sse41+0x6d6>
14172  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
14173  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
14174  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
14175  DB  102,72,15,58,22,203,1               ; pextrq        $0x1,%xmm1,%rbx
14176  DB  65,137,218                          ; mov           %ebx,%r10d
14177  DB  72,193,235,32                       ; shr           $0x20,%rbx
14178  DB  102,73,15,126,203                   ; movq          %xmm1,%r11
14179  DB  69,137,222                          ; mov           %r11d,%r14d
14180  DB  73,193,235,32                       ; shr           $0x20,%r11
14181  DB  102,67,15,58,32,12,49,0             ; pinsrb        $0x0,(%r9,%r14,1),%xmm1
14182  DB  102,67,15,58,32,12,25,1             ; pinsrb        $0x1,(%r9,%r11,1),%xmm1
14183  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
14184  DB  102,65,15,58,32,202,2               ; pinsrb        $0x2,%r10d,%xmm1
14185  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
14186  DB  102,15,58,32,203,3                  ; pinsrb        $0x3,%ebx,%xmm1
14187  DB  102,15,56,49,201                    ; pmovzxbd      %xmm1,%xmm1
14188  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
14189  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
14190  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
14191  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
14192  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
14193  DB  102,72,15,58,22,211,1               ; pextrq        $0x1,%xmm2,%rbx
14194  DB  65,137,217                          ; mov           %ebx,%r9d
14195  DB  72,193,235,32                       ; shr           $0x20,%rbx
14196  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
14197  DB  65,137,195                          ; mov           %eax,%r11d
14198  DB  72,193,232,32                       ; shr           $0x20,%rax
14199  DB  102,67,15,58,32,20,26,0             ; pinsrb        $0x0,(%r10,%r11,1),%xmm2
14200  DB  102,65,15,58,32,20,2,1              ; pinsrb        $0x1,(%r10,%rax,1),%xmm2
14201  DB  67,15,182,4,10                      ; movzbl        (%r10,%r9,1),%eax
14202  DB  102,15,58,32,208,2                  ; pinsrb        $0x2,%eax,%xmm2
14203  DB  65,15,182,4,26                      ; movzbl        (%r10,%rbx,1),%eax
14204  DB  102,15,58,32,208,3                  ; pinsrb        $0x3,%eax,%xmm2
14205  DB  102,15,56,49,210                    ; pmovzxbd      %xmm2,%xmm2
14206  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
14207  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
14208  DB  72,173                              ; lods          %ds:(%rsi),%rax
14209  DB  91                                  ; pop           %rbx
14210  DB  65,92                               ; pop           %r12
14211  DB  65,94                               ; pop           %r14
14212  DB  65,95                               ; pop           %r15
14213  DB  255,224                             ; jmpq          *%rax
14214
14215PUBLIC _sk_table_r_sse41
14216_sk_table_r_sse41 LABEL PROC
14217  DB  83                                  ; push          %rbx
14218  DB  72,173                              ; lods          %ds:(%rsi),%rax
14219  DB  76,139,8                            ; mov           (%rax),%r9
14220  DB  139,64,8                            ; mov           0x8(%rax),%eax
14221  DB  255,200                             ; dec           %eax
14222  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14223  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
14224  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14225  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
14226  DB  102,65,15,91,192                    ; cvtps2dq      %xmm8,%xmm0
14227  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
14228  DB  65,137,194                          ; mov           %eax,%r10d
14229  DB  72,193,232,32                       ; shr           $0x20,%rax
14230  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
14231  DB  68,137,219                          ; mov           %r11d,%ebx
14232  DB  73,193,235,32                       ; shr           $0x20,%r11
14233  DB  243,65,15,16,4,153                  ; movss         (%r9,%rbx,4),%xmm0
14234  DB  102,67,15,58,33,4,153,16            ; insertps      $0x10,(%r9,%r11,4),%xmm0
14235  DB  243,71,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm8
14236  DB  102,65,15,58,33,192,32              ; insertps      $0x20,%xmm8,%xmm0
14237  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
14238  DB  102,65,15,58,33,192,48              ; insertps      $0x30,%xmm8,%xmm0
14239  DB  72,173                              ; lods          %ds:(%rsi),%rax
14240  DB  91                                  ; pop           %rbx
14241  DB  255,224                             ; jmpq          *%rax
14242
14243PUBLIC _sk_table_g_sse41
14244_sk_table_g_sse41 LABEL PROC
14245  DB  83                                  ; push          %rbx
14246  DB  72,173                              ; lods          %ds:(%rsi),%rax
14247  DB  76,139,8                            ; mov           (%rax),%r9
14248  DB  139,64,8                            ; mov           0x8(%rax),%eax
14249  DB  255,200                             ; dec           %eax
14250  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14251  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
14252  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14253  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
14254  DB  102,65,15,91,200                    ; cvtps2dq      %xmm8,%xmm1
14255  DB  102,72,15,58,22,200,1               ; pextrq        $0x1,%xmm1,%rax
14256  DB  65,137,194                          ; mov           %eax,%r10d
14257  DB  72,193,232,32                       ; shr           $0x20,%rax
14258  DB  102,73,15,126,203                   ; movq          %xmm1,%r11
14259  DB  68,137,219                          ; mov           %r11d,%ebx
14260  DB  73,193,235,32                       ; shr           $0x20,%r11
14261  DB  243,65,15,16,12,153                 ; movss         (%r9,%rbx,4),%xmm1
14262  DB  102,67,15,58,33,12,153,16           ; insertps      $0x10,(%r9,%r11,4),%xmm1
14263  DB  243,71,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm8
14264  DB  102,65,15,58,33,200,32              ; insertps      $0x20,%xmm8,%xmm1
14265  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
14266  DB  102,65,15,58,33,200,48              ; insertps      $0x30,%xmm8,%xmm1
14267  DB  72,173                              ; lods          %ds:(%rsi),%rax
14268  DB  91                                  ; pop           %rbx
14269  DB  255,224                             ; jmpq          *%rax
14270
14271PUBLIC _sk_table_b_sse41
14272_sk_table_b_sse41 LABEL PROC
14273  DB  83                                  ; push          %rbx
14274  DB  72,173                              ; lods          %ds:(%rsi),%rax
14275  DB  76,139,8                            ; mov           (%rax),%r9
14276  DB  139,64,8                            ; mov           0x8(%rax),%eax
14277  DB  255,200                             ; dec           %eax
14278  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14279  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
14280  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14281  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
14282  DB  102,65,15,91,208                    ; cvtps2dq      %xmm8,%xmm2
14283  DB  102,72,15,58,22,208,1               ; pextrq        $0x1,%xmm2,%rax
14284  DB  65,137,194                          ; mov           %eax,%r10d
14285  DB  72,193,232,32                       ; shr           $0x20,%rax
14286  DB  102,73,15,126,211                   ; movq          %xmm2,%r11
14287  DB  68,137,219                          ; mov           %r11d,%ebx
14288  DB  73,193,235,32                       ; shr           $0x20,%r11
14289  DB  243,65,15,16,20,153                 ; movss         (%r9,%rbx,4),%xmm2
14290  DB  102,67,15,58,33,20,153,16           ; insertps      $0x10,(%r9,%r11,4),%xmm2
14291  DB  243,71,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm8
14292  DB  102,65,15,58,33,208,32              ; insertps      $0x20,%xmm8,%xmm2
14293  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
14294  DB  102,65,15,58,33,208,48              ; insertps      $0x30,%xmm8,%xmm2
14295  DB  72,173                              ; lods          %ds:(%rsi),%rax
14296  DB  91                                  ; pop           %rbx
14297  DB  255,224                             ; jmpq          *%rax
14298
14299PUBLIC _sk_table_a_sse41
14300_sk_table_a_sse41 LABEL PROC
14301  DB  83                                  ; push          %rbx
14302  DB  72,173                              ; lods          %ds:(%rsi),%rax
14303  DB  76,139,8                            ; mov           (%rax),%r9
14304  DB  139,64,8                            ; mov           0x8(%rax),%eax
14305  DB  255,200                             ; dec           %eax
14306  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14307  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
14308  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14309  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
14310  DB  102,65,15,91,216                    ; cvtps2dq      %xmm8,%xmm3
14311  DB  102,72,15,58,22,216,1               ; pextrq        $0x1,%xmm3,%rax
14312  DB  65,137,194                          ; mov           %eax,%r10d
14313  DB  72,193,232,32                       ; shr           $0x20,%rax
14314  DB  102,73,15,126,219                   ; movq          %xmm3,%r11
14315  DB  68,137,219                          ; mov           %r11d,%ebx
14316  DB  73,193,235,32                       ; shr           $0x20,%r11
14317  DB  243,65,15,16,28,153                 ; movss         (%r9,%rbx,4),%xmm3
14318  DB  102,67,15,58,33,28,153,16           ; insertps      $0x10,(%r9,%r11,4),%xmm3
14319  DB  243,71,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm8
14320  DB  102,65,15,58,33,216,32              ; insertps      $0x20,%xmm8,%xmm3
14321  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
14322  DB  102,65,15,58,33,216,48              ; insertps      $0x30,%xmm8,%xmm3
14323  DB  72,173                              ; lods          %ds:(%rsi),%rax
14324  DB  91                                  ; pop           %rbx
14325  DB  255,224                             ; jmpq          *%rax
14326
14327PUBLIC _sk_parametric_r_sse41
14328_sk_parametric_r_sse41 LABEL PROC
14329  DB  72,173                              ; lods          %ds:(%rsi),%rax
14330  DB  243,68,15,16,64,16                  ; movss         0x10(%rax),%xmm8
14331  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
14332  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
14333  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
14334  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
14335  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
14336  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14337  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
14338  DB  65,15,194,192,2                     ; cmpleps       %xmm8,%xmm0
14339  DB  243,68,15,16,64,24                  ; movss         0x18(%rax),%xmm8
14340  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
14341  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
14342  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
14343  DB  243,68,15,16,64,8                   ; movss         0x8(%rax),%xmm8
14344  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
14345  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
14346  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
14347  DB  69,15,91,194                        ; cvtdq2ps      %xmm10,%xmm8
14348  DB  68,15,89,5,82,44,0,0                ; mulps         0x2c52(%rip),%xmm8        # 5780 <_sk_callback_sse41+0x6e6>
14349  DB  68,15,84,21,90,44,0,0               ; andps         0x2c5a(%rip),%xmm10        # 5790 <_sk_callback_sse41+0x6f6>
14350  DB  68,15,86,21,98,44,0,0               ; orps          0x2c62(%rip),%xmm10        # 57a0 <_sk_callback_sse41+0x706>
14351  DB  68,15,88,5,106,44,0,0               ; addps         0x2c6a(%rip),%xmm8        # 57b0 <_sk_callback_sse41+0x716>
14352  DB  68,15,40,37,114,44,0,0              ; movaps        0x2c72(%rip),%xmm12        # 57c0 <_sk_callback_sse41+0x726>
14353  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
14354  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
14355  DB  68,15,88,21,114,44,0,0              ; addps         0x2c72(%rip),%xmm10        # 57d0 <_sk_callback_sse41+0x736>
14356  DB  68,15,40,37,122,44,0,0              ; movaps        0x2c7a(%rip),%xmm12        # 57e0 <_sk_callback_sse41+0x746>
14357  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
14358  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
14359  DB  69,15,89,195                        ; mulps         %xmm11,%xmm8
14360  DB  102,69,15,58,8,208,1                ; roundps       $0x1,%xmm8,%xmm10
14361  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
14362  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
14363  DB  68,15,88,5,103,44,0,0               ; addps         0x2c67(%rip),%xmm8        # 57f0 <_sk_callback_sse41+0x756>
14364  DB  68,15,40,21,111,44,0,0              ; movaps        0x2c6f(%rip),%xmm10        # 5800 <_sk_callback_sse41+0x766>
14365  DB  69,15,89,211                        ; mulps         %xmm11,%xmm10
14366  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
14367  DB  68,15,40,21,111,44,0,0              ; movaps        0x2c6f(%rip),%xmm10        # 5810 <_sk_callback_sse41+0x776>
14368  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
14369  DB  68,15,40,29,115,44,0,0              ; movaps        0x2c73(%rip),%xmm11        # 5820 <_sk_callback_sse41+0x786>
14370  DB  69,15,94,218                        ; divps         %xmm10,%xmm11
14371  DB  69,15,88,216                        ; addps         %xmm8,%xmm11
14372  DB  68,15,89,29,115,44,0,0              ; mulps         0x2c73(%rip),%xmm11        # 5830 <_sk_callback_sse41+0x796>
14373  DB  102,69,15,91,211                    ; cvtps2dq      %xmm11,%xmm10
14374  DB  243,68,15,16,64,20                  ; movss         0x14(%rax),%xmm8
14375  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
14376  DB  69,15,88,194                        ; addps         %xmm10,%xmm8
14377  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
14378  DB  15,87,192                           ; xorps         %xmm0,%xmm0
14379  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
14380  DB  68,15,93,5,90,44,0,0                ; minps         0x2c5a(%rip),%xmm8        # 5840 <_sk_callback_sse41+0x7a6>
14381  DB  72,173                              ; lods          %ds:(%rsi),%rax
14382  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
14383  DB  255,224                             ; jmpq          *%rax
14384
14385PUBLIC _sk_parametric_g_sse41
14386_sk_parametric_g_sse41 LABEL PROC
14387  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
14388  DB  72,173                              ; lods          %ds:(%rsi),%rax
14389  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
14390  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14391  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
14392  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
14393  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
14394  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
14395  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
14396  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
14397  DB  15,40,193                           ; movaps        %xmm1,%xmm0
14398  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
14399  DB  243,15,16,72,24                     ; movss         0x18(%rax),%xmm1
14400  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
14401  DB  68,15,88,201                        ; addps         %xmm1,%xmm9
14402  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
14403  DB  243,15,16,72,8                      ; movss         0x8(%rax),%xmm1
14404  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
14405  DB  68,15,88,217                        ; addps         %xmm1,%xmm11
14406  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14407  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
14408  DB  68,15,89,37,251,43,0,0              ; mulps         0x2bfb(%rip),%xmm12        # 5850 <_sk_callback_sse41+0x7b6>
14409  DB  68,15,84,29,3,44,0,0                ; andps         0x2c03(%rip),%xmm11        # 5860 <_sk_callback_sse41+0x7c6>
14410  DB  68,15,86,29,11,44,0,0               ; orps          0x2c0b(%rip),%xmm11        # 5870 <_sk_callback_sse41+0x7d6>
14411  DB  68,15,88,37,19,44,0,0               ; addps         0x2c13(%rip),%xmm12        # 5880 <_sk_callback_sse41+0x7e6>
14412  DB  15,40,13,28,44,0,0                  ; movaps        0x2c1c(%rip),%xmm1        # 5890 <_sk_callback_sse41+0x7f6>
14413  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
14414  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
14415  DB  68,15,88,29,28,44,0,0               ; addps         0x2c1c(%rip),%xmm11        # 58a0 <_sk_callback_sse41+0x806>
14416  DB  15,40,13,37,44,0,0                  ; movaps        0x2c25(%rip),%xmm1        # 58b0 <_sk_callback_sse41+0x816>
14417  DB  65,15,94,203                        ; divps         %xmm11,%xmm1
14418  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
14419  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
14420  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
14421  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
14422  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
14423  DB  68,15,88,37,18,44,0,0               ; addps         0x2c12(%rip),%xmm12        # 58c0 <_sk_callback_sse41+0x826>
14424  DB  15,40,13,27,44,0,0                  ; movaps        0x2c1b(%rip),%xmm1        # 58d0 <_sk_callback_sse41+0x836>
14425  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
14426  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
14427  DB  68,15,40,21,27,44,0,0               ; movaps        0x2c1b(%rip),%xmm10        # 58e0 <_sk_callback_sse41+0x846>
14428  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
14429  DB  15,40,13,32,44,0,0                  ; movaps        0x2c20(%rip),%xmm1        # 58f0 <_sk_callback_sse41+0x856>
14430  DB  65,15,94,202                        ; divps         %xmm10,%xmm1
14431  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
14432  DB  15,89,13,33,44,0,0                  ; mulps         0x2c21(%rip),%xmm1        # 5900 <_sk_callback_sse41+0x866>
14433  DB  102,68,15,91,209                    ; cvtps2dq      %xmm1,%xmm10
14434  DB  243,15,16,72,20                     ; movss         0x14(%rax),%xmm1
14435  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
14436  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
14437  DB  102,65,15,56,20,201                 ; blendvps      %xmm0,%xmm9,%xmm1
14438  DB  15,87,192                           ; xorps         %xmm0,%xmm0
14439  DB  15,95,200                           ; maxps         %xmm0,%xmm1
14440  DB  15,93,13,12,44,0,0                  ; minps         0x2c0c(%rip),%xmm1        # 5910 <_sk_callback_sse41+0x876>
14441  DB  72,173                              ; lods          %ds:(%rsi),%rax
14442  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
14443  DB  255,224                             ; jmpq          *%rax
14444
14445PUBLIC _sk_parametric_b_sse41
14446_sk_parametric_b_sse41 LABEL PROC
14447  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
14448  DB  72,173                              ; lods          %ds:(%rsi),%rax
14449  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
14450  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14451  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
14452  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
14453  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
14454  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
14455  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
14456  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
14457  DB  15,40,194                           ; movaps        %xmm2,%xmm0
14458  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
14459  DB  243,15,16,80,24                     ; movss         0x18(%rax),%xmm2
14460  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
14461  DB  68,15,88,202                        ; addps         %xmm2,%xmm9
14462  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
14463  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
14464  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
14465  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
14466  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14467  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
14468  DB  68,15,89,37,173,43,0,0              ; mulps         0x2bad(%rip),%xmm12        # 5920 <_sk_callback_sse41+0x886>
14469  DB  68,15,84,29,181,43,0,0              ; andps         0x2bb5(%rip),%xmm11        # 5930 <_sk_callback_sse41+0x896>
14470  DB  68,15,86,29,189,43,0,0              ; orps          0x2bbd(%rip),%xmm11        # 5940 <_sk_callback_sse41+0x8a6>
14471  DB  68,15,88,37,197,43,0,0              ; addps         0x2bc5(%rip),%xmm12        # 5950 <_sk_callback_sse41+0x8b6>
14472  DB  15,40,21,206,43,0,0                 ; movaps        0x2bce(%rip),%xmm2        # 5960 <_sk_callback_sse41+0x8c6>
14473  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
14474  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
14475  DB  68,15,88,29,206,43,0,0              ; addps         0x2bce(%rip),%xmm11        # 5970 <_sk_callback_sse41+0x8d6>
14476  DB  15,40,21,215,43,0,0                 ; movaps        0x2bd7(%rip),%xmm2        # 5980 <_sk_callback_sse41+0x8e6>
14477  DB  65,15,94,211                        ; divps         %xmm11,%xmm2
14478  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
14479  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
14480  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
14481  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
14482  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
14483  DB  68,15,88,37,196,43,0,0              ; addps         0x2bc4(%rip),%xmm12        # 5990 <_sk_callback_sse41+0x8f6>
14484  DB  15,40,21,205,43,0,0                 ; movaps        0x2bcd(%rip),%xmm2        # 59a0 <_sk_callback_sse41+0x906>
14485  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
14486  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
14487  DB  68,15,40,21,205,43,0,0              ; movaps        0x2bcd(%rip),%xmm10        # 59b0 <_sk_callback_sse41+0x916>
14488  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
14489  DB  15,40,21,210,43,0,0                 ; movaps        0x2bd2(%rip),%xmm2        # 59c0 <_sk_callback_sse41+0x926>
14490  DB  65,15,94,210                        ; divps         %xmm10,%xmm2
14491  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
14492  DB  15,89,21,211,43,0,0                 ; mulps         0x2bd3(%rip),%xmm2        # 59d0 <_sk_callback_sse41+0x936>
14493  DB  102,68,15,91,210                    ; cvtps2dq      %xmm2,%xmm10
14494  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
14495  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
14496  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
14497  DB  102,65,15,56,20,209                 ; blendvps      %xmm0,%xmm9,%xmm2
14498  DB  15,87,192                           ; xorps         %xmm0,%xmm0
14499  DB  15,95,208                           ; maxps         %xmm0,%xmm2
14500  DB  15,93,21,190,43,0,0                 ; minps         0x2bbe(%rip),%xmm2        # 59e0 <_sk_callback_sse41+0x946>
14501  DB  72,173                              ; lods          %ds:(%rsi),%rax
14502  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
14503  DB  255,224                             ; jmpq          *%rax
14504
14505PUBLIC _sk_parametric_a_sse41
14506_sk_parametric_a_sse41 LABEL PROC
14507  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
14508  DB  72,173                              ; lods          %ds:(%rsi),%rax
14509  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
14510  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14511  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
14512  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
14513  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
14514  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
14515  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
14516  DB  68,15,89,219                        ; mulps         %xmm3,%xmm11
14517  DB  15,40,195                           ; movaps        %xmm3,%xmm0
14518  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
14519  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
14520  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
14521  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
14522  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
14523  DB  243,15,16,88,8                      ; movss         0x8(%rax),%xmm3
14524  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
14525  DB  68,15,88,219                        ; addps         %xmm3,%xmm11
14526  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14527  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
14528  DB  68,15,89,37,95,43,0,0               ; mulps         0x2b5f(%rip),%xmm12        # 59f0 <_sk_callback_sse41+0x956>
14529  DB  68,15,84,29,103,43,0,0              ; andps         0x2b67(%rip),%xmm11        # 5a00 <_sk_callback_sse41+0x966>
14530  DB  68,15,86,29,111,43,0,0              ; orps          0x2b6f(%rip),%xmm11        # 5a10 <_sk_callback_sse41+0x976>
14531  DB  68,15,88,37,119,43,0,0              ; addps         0x2b77(%rip),%xmm12        # 5a20 <_sk_callback_sse41+0x986>
14532  DB  15,40,29,128,43,0,0                 ; movaps        0x2b80(%rip),%xmm3        # 5a30 <_sk_callback_sse41+0x996>
14533  DB  65,15,89,219                        ; mulps         %xmm11,%xmm3
14534  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
14535  DB  68,15,88,29,128,43,0,0              ; addps         0x2b80(%rip),%xmm11        # 5a40 <_sk_callback_sse41+0x9a6>
14536  DB  15,40,29,137,43,0,0                 ; movaps        0x2b89(%rip),%xmm3        # 5a50 <_sk_callback_sse41+0x9b6>
14537  DB  65,15,94,219                        ; divps         %xmm11,%xmm3
14538  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
14539  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
14540  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
14541  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
14542  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
14543  DB  68,15,88,37,118,43,0,0              ; addps         0x2b76(%rip),%xmm12        # 5a60 <_sk_callback_sse41+0x9c6>
14544  DB  15,40,29,127,43,0,0                 ; movaps        0x2b7f(%rip),%xmm3        # 5a70 <_sk_callback_sse41+0x9d6>
14545  DB  65,15,89,219                        ; mulps         %xmm11,%xmm3
14546  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
14547  DB  68,15,40,21,127,43,0,0              ; movaps        0x2b7f(%rip),%xmm10        # 5a80 <_sk_callback_sse41+0x9e6>
14548  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
14549  DB  15,40,29,132,43,0,0                 ; movaps        0x2b84(%rip),%xmm3        # 5a90 <_sk_callback_sse41+0x9f6>
14550  DB  65,15,94,218                        ; divps         %xmm10,%xmm3
14551  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
14552  DB  15,89,29,133,43,0,0                 ; mulps         0x2b85(%rip),%xmm3        # 5aa0 <_sk_callback_sse41+0xa06>
14553  DB  102,68,15,91,211                    ; cvtps2dq      %xmm3,%xmm10
14554  DB  243,15,16,88,20                     ; movss         0x14(%rax),%xmm3
14555  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
14556  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
14557  DB  102,65,15,56,20,217                 ; blendvps      %xmm0,%xmm9,%xmm3
14558  DB  15,87,192                           ; xorps         %xmm0,%xmm0
14559  DB  15,95,216                           ; maxps         %xmm0,%xmm3
14560  DB  15,93,29,112,43,0,0                 ; minps         0x2b70(%rip),%xmm3        # 5ab0 <_sk_callback_sse41+0xa16>
14561  DB  72,173                              ; lods          %ds:(%rsi),%rax
14562  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
14563  DB  255,224                             ; jmpq          *%rax
14564
14565PUBLIC _sk_lab_to_xyz_sse41
14566_sk_lab_to_xyz_sse41 LABEL PROC
14567  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
14568  DB  68,15,89,5,108,43,0,0               ; mulps         0x2b6c(%rip),%xmm8        # 5ac0 <_sk_callback_sse41+0xa26>
14569  DB  68,15,40,13,116,43,0,0              ; movaps        0x2b74(%rip),%xmm9        # 5ad0 <_sk_callback_sse41+0xa36>
14570  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
14571  DB  15,40,5,121,43,0,0                  ; movaps        0x2b79(%rip),%xmm0        # 5ae0 <_sk_callback_sse41+0xa46>
14572  DB  15,88,200                           ; addps         %xmm0,%xmm1
14573  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
14574  DB  15,88,208                           ; addps         %xmm0,%xmm2
14575  DB  68,15,88,5,119,43,0,0               ; addps         0x2b77(%rip),%xmm8        # 5af0 <_sk_callback_sse41+0xa56>
14576  DB  68,15,89,5,127,43,0,0               ; mulps         0x2b7f(%rip),%xmm8        # 5b00 <_sk_callback_sse41+0xa66>
14577  DB  15,89,13,136,43,0,0                 ; mulps         0x2b88(%rip),%xmm1        # 5b10 <_sk_callback_sse41+0xa76>
14578  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
14579  DB  15,89,21,141,43,0,0                 ; mulps         0x2b8d(%rip),%xmm2        # 5b20 <_sk_callback_sse41+0xa86>
14580  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
14581  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
14582  DB  68,15,40,217                        ; movaps        %xmm1,%xmm11
14583  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
14584  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
14585  DB  68,15,40,13,129,43,0,0              ; movaps        0x2b81(%rip),%xmm9        # 5b30 <_sk_callback_sse41+0xa96>
14586  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
14587  DB  65,15,194,195,1                     ; cmpltps       %xmm11,%xmm0
14588  DB  15,40,21,129,43,0,0                 ; movaps        0x2b81(%rip),%xmm2        # 5b40 <_sk_callback_sse41+0xaa6>
14589  DB  15,88,202                           ; addps         %xmm2,%xmm1
14590  DB  68,15,40,37,134,43,0,0              ; movaps        0x2b86(%rip),%xmm12        # 5b50 <_sk_callback_sse41+0xab6>
14591  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
14592  DB  102,65,15,56,20,203                 ; blendvps      %xmm0,%xmm11,%xmm1
14593  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
14594  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
14595  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
14596  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
14597  DB  65,15,194,195,1                     ; cmpltps       %xmm11,%xmm0
14598  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
14599  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
14600  DB  102,69,15,56,20,195                 ; blendvps      %xmm0,%xmm11,%xmm8
14601  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
14602  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
14603  DB  69,15,89,218                        ; mulps         %xmm10,%xmm11
14604  DB  69,15,194,203,1                     ; cmpltps       %xmm11,%xmm9
14605  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
14606  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
14607  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
14608  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
14609  DB  15,89,13,63,43,0,0                  ; mulps         0x2b3f(%rip),%xmm1        # 5b60 <_sk_callback_sse41+0xac6>
14610  DB  15,89,21,72,43,0,0                  ; mulps         0x2b48(%rip),%xmm2        # 5b70 <_sk_callback_sse41+0xad6>
14611  DB  72,173                              ; lods          %ds:(%rsi),%rax
14612  DB  15,40,193                           ; movaps        %xmm1,%xmm0
14613  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
14614  DB  255,224                             ; jmpq          *%rax
14615
14616PUBLIC _sk_load_a8_sse41
14617_sk_load_a8_sse41 LABEL PROC
14618  DB  72,173                              ; lods          %ds:(%rsi),%rax
14619  DB  76,139,16                           ; mov           (%rax),%r10
14620  DB  77,133,192                          ; test          %r8,%r8
14621  DB  117,38                              ; jne           3063 <_sk_load_a8_sse41+0x30>
14622  DB  102,65,15,56,49,4,18                ; pmovzxbd      (%r10,%rdx,1),%xmm0
14623  DB  102,15,219,5,52,43,0,0              ; pand          0x2b34(%rip),%xmm0        # 5b80 <_sk_callback_sse41+0xae6>
14624  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
14625  DB  15,89,29,58,43,0,0                  ; mulps         0x2b3a(%rip),%xmm3        # 5b90 <_sk_callback_sse41+0xaf6>
14626  DB  72,173                              ; lods          %ds:(%rsi),%rax
14627  DB  15,87,192                           ; xorps         %xmm0,%xmm0
14628  DB  15,87,201                           ; xorps         %xmm1,%xmm1
14629  DB  15,87,210                           ; xorps         %xmm2,%xmm2
14630  DB  255,224                             ; jmpq          *%rax
14631  DB  69,137,193                          ; mov           %r8d,%r9d
14632  DB  65,128,225,3                        ; and           $0x3,%r9b
14633  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
14634  DB  65,128,249,1                        ; cmp           $0x1,%r9b
14635  DB  116,39                              ; je            309b <_sk_load_a8_sse41+0x68>
14636  DB  65,128,249,2                        ; cmp           $0x2,%r9b
14637  DB  116,21                              ; je            308f <_sk_load_a8_sse41+0x5c>
14638  DB  65,128,249,3                        ; cmp           $0x3,%r9b
14639  DB  117,196                             ; jne           3044 <_sk_load_a8_sse41+0x11>
14640  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
14641  DB  102,15,110,192                      ; movd          %eax,%xmm0
14642  DB  102,15,112,192,69                   ; pshufd        $0x45,%xmm0,%xmm0
14643  DB  65,15,182,68,18,1                   ; movzbl        0x1(%r10,%rdx,1),%eax
14644  DB  102,15,58,34,192,1                  ; pinsrd        $0x1,%eax,%xmm0
14645  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
14646  DB  102,15,58,34,192,0                  ; pinsrd        $0x0,%eax,%xmm0
14647  DB  235,156                             ; jmp           3044 <_sk_load_a8_sse41+0x11>
14648
14649PUBLIC _sk_gather_a8_sse41
14650_sk_gather_a8_sse41 LABEL PROC
14651  DB  83                                  ; push          %rbx
14652  DB  72,173                              ; lods          %ds:(%rsi),%rax
14653  DB  76,139,8                            ; mov           (%rax),%r9
14654  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
14655  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
14656  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
14657  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
14658  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
14659  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
14660  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
14661  DB  65,137,194                          ; mov           %eax,%r10d
14662  DB  72,193,232,32                       ; shr           $0x20,%rax
14663  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
14664  DB  68,137,219                          ; mov           %r11d,%ebx
14665  DB  73,193,235,32                       ; shr           $0x20,%r11
14666  DB  102,65,15,58,32,4,25,0              ; pinsrb        $0x0,(%r9,%rbx,1),%xmm0
14667  DB  102,67,15,58,32,4,25,1              ; pinsrb        $0x1,(%r9,%r11,1),%xmm0
14668  DB  67,15,182,28,17                     ; movzbl        (%r9,%r10,1),%ebx
14669  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
14670  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
14671  DB  102,15,58,32,192,3                  ; pinsrb        $0x3,%eax,%xmm0
14672  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
14673  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
14674  DB  15,89,29,136,42,0,0                 ; mulps         0x2a88(%rip),%xmm3        # 5ba0 <_sk_callback_sse41+0xb06>
14675  DB  72,173                              ; lods          %ds:(%rsi),%rax
14676  DB  15,87,192                           ; xorps         %xmm0,%xmm0
14677  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
14678  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
14679  DB  91                                  ; pop           %rbx
14680  DB  255,224                             ; jmpq          *%rax
14681
14682PUBLIC _sk_store_a8_sse41
14683_sk_store_a8_sse41 LABEL PROC
14684  DB  72,131,236,4                        ; sub           $0x4,%rsp
14685  DB  72,173                              ; lods          %ds:(%rsi),%rax
14686  DB  76,139,16                           ; mov           (%rax),%r10
14687  DB  68,15,40,5,119,42,0,0               ; movaps        0x2a77(%rip),%xmm8        # 5bb0 <_sk_callback_sse41+0xb16>
14688  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
14689  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
14690  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
14691  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
14692  DB  77,133,192                          ; test          %r8,%r8
14693  DB  117,17                              ; jne           3163 <_sk_store_a8_sse41+0x3b>
14694  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
14695  DB  65,137,4,18                         ; mov           %eax,(%r10,%rdx,1)
14696  DB  72,173                              ; lods          %ds:(%rsi),%rax
14697  DB  72,131,196,4                        ; add           $0x4,%rsp
14698  DB  255,224                             ; jmpq          *%rax
14699  DB  102,69,15,56,49,192                 ; pmovzxbd      %xmm8,%xmm8
14700  DB  69,137,193                          ; mov           %r8d,%r9d
14701  DB  65,128,225,3                        ; and           $0x3,%r9b
14702  DB  65,128,249,1                        ; cmp           $0x1,%r9b
14703  DB  116,30                              ; je            3194 <_sk_store_a8_sse41+0x6c>
14704  DB  65,128,249,2                        ; cmp           $0x2,%r9b
14705  DB  116,15                              ; je            318b <_sk_store_a8_sse41+0x63>
14706  DB  65,128,249,3                        ; cmp           $0x3,%r9b
14707  DB  117,217                             ; jne           315b <_sk_store_a8_sse41+0x33>
14708  DB  102,69,15,58,20,68,18,2,8           ; pextrb        $0x8,%xmm8,0x2(%r10,%rdx,1)
14709  DB  102,69,15,58,20,68,18,1,4           ; pextrb        $0x4,%xmm8,0x1(%r10,%rdx,1)
14710  DB  102,69,15,58,20,4,18,0              ; pextrb        $0x0,%xmm8,(%r10,%rdx,1)
14711  DB  235,189                             ; jmp           315b <_sk_store_a8_sse41+0x33>
14712
14713PUBLIC _sk_load_g8_sse41
14714_sk_load_g8_sse41 LABEL PROC
14715  DB  72,173                              ; lods          %ds:(%rsi),%rax
14716  DB  76,139,16                           ; mov           (%rax),%r10
14717  DB  77,133,192                          ; test          %r8,%r8
14718  DB  117,42                              ; jne           31d2 <_sk_load_g8_sse41+0x34>
14719  DB  102,65,15,56,49,4,18                ; pmovzxbd      (%r10,%rdx,1),%xmm0
14720  DB  102,15,219,5,9,42,0,0               ; pand          0x2a09(%rip),%xmm0        # 5bc0 <_sk_callback_sse41+0xb26>
14721  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
14722  DB  15,89,5,15,42,0,0                   ; mulps         0x2a0f(%rip),%xmm0        # 5bd0 <_sk_callback_sse41+0xb36>
14723  DB  72,173                              ; lods          %ds:(%rsi),%rax
14724  DB  15,40,29,22,42,0,0                  ; movaps        0x2a16(%rip),%xmm3        # 5be0 <_sk_callback_sse41+0xb46>
14725  DB  15,40,200                           ; movaps        %xmm0,%xmm1
14726  DB  15,40,208                           ; movaps        %xmm0,%xmm2
14727  DB  255,224                             ; jmpq          *%rax
14728  DB  69,137,193                          ; mov           %r8d,%r9d
14729  DB  65,128,225,3                        ; and           $0x3,%r9b
14730  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
14731  DB  65,128,249,1                        ; cmp           $0x1,%r9b
14732  DB  116,39                              ; je            320a <_sk_load_g8_sse41+0x6c>
14733  DB  65,128,249,2                        ; cmp           $0x2,%r9b
14734  DB  116,21                              ; je            31fe <_sk_load_g8_sse41+0x60>
14735  DB  65,128,249,3                        ; cmp           $0x3,%r9b
14736  DB  117,192                             ; jne           31af <_sk_load_g8_sse41+0x11>
14737  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
14738  DB  102,15,110,192                      ; movd          %eax,%xmm0
14739  DB  102,15,112,192,69                   ; pshufd        $0x45,%xmm0,%xmm0
14740  DB  65,15,182,68,18,1                   ; movzbl        0x1(%r10,%rdx,1),%eax
14741  DB  102,15,58,34,192,1                  ; pinsrd        $0x1,%eax,%xmm0
14742  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
14743  DB  102,15,58,34,192,0                  ; pinsrd        $0x0,%eax,%xmm0
14744  DB  235,152                             ; jmp           31af <_sk_load_g8_sse41+0x11>
14745
14746PUBLIC _sk_gather_g8_sse41
14747_sk_gather_g8_sse41 LABEL PROC
14748  DB  83                                  ; push          %rbx
14749  DB  72,173                              ; lods          %ds:(%rsi),%rax
14750  DB  76,139,8                            ; mov           (%rax),%r9
14751  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
14752  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
14753  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
14754  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
14755  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
14756  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
14757  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
14758  DB  65,137,194                          ; mov           %eax,%r10d
14759  DB  72,193,232,32                       ; shr           $0x20,%rax
14760  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
14761  DB  68,137,219                          ; mov           %r11d,%ebx
14762  DB  73,193,235,32                       ; shr           $0x20,%r11
14763  DB  102,65,15,58,32,4,25,0              ; pinsrb        $0x0,(%r9,%rbx,1),%xmm0
14764  DB  102,67,15,58,32,4,25,1              ; pinsrb        $0x1,(%r9,%r11,1),%xmm0
14765  DB  67,15,182,28,17                     ; movzbl        (%r9,%r10,1),%ebx
14766  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
14767  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
14768  DB  102,15,58,32,192,3                  ; pinsrb        $0x3,%eax,%xmm0
14769  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
14770  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
14771  DB  15,89,5,105,41,0,0                  ; mulps         0x2969(%rip),%xmm0        # 5bf0 <_sk_callback_sse41+0xb56>
14772  DB  72,173                              ; lods          %ds:(%rsi),%rax
14773  DB  15,40,29,112,41,0,0                 ; movaps        0x2970(%rip),%xmm3        # 5c00 <_sk_callback_sse41+0xb66>
14774  DB  15,40,200                           ; movaps        %xmm0,%xmm1
14775  DB  15,40,208                           ; movaps        %xmm0,%xmm2
14776  DB  91                                  ; pop           %rbx
14777  DB  255,224                             ; jmpq          *%rax
14778
14779PUBLIC _sk_gather_i8_sse41
14780_sk_gather_i8_sse41 LABEL PROC
14781  DB  72,173                              ; lods          %ds:(%rsi),%rax
14782  DB  73,137,193                          ; mov           %rax,%r9
14783  DB  77,133,201                          ; test          %r9,%r9
14784  DB  116,5                               ; je            32a8 <_sk_gather_i8_sse41+0xf>
14785  DB  76,137,200                          ; mov           %r9,%rax
14786  DB  235,2                               ; jmp           32aa <_sk_gather_i8_sse41+0x11>
14787  DB  72,173                              ; lods          %ds:(%rsi),%rax
14788  DB  65,86                               ; push          %r14
14789  DB  83                                  ; push          %rbx
14790  DB  76,139,16                           ; mov           (%rax),%r10
14791  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
14792  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
14793  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
14794  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
14795  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
14796  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
14797  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
14798  DB  65,137,195                          ; mov           %eax,%r11d
14799  DB  72,193,232,32                       ; shr           $0x20,%rax
14800  DB  102,72,15,126,195                   ; movq          %xmm0,%rbx
14801  DB  65,137,222                          ; mov           %ebx,%r14d
14802  DB  72,193,235,32                       ; shr           $0x20,%rbx
14803  DB  102,67,15,58,32,4,50,0              ; pinsrb        $0x0,(%r10,%r14,1),%xmm0
14804  DB  102,65,15,58,32,4,26,1              ; pinsrb        $0x1,(%r10,%rbx,1),%xmm0
14805  DB  102,67,15,58,32,4,26,2              ; pinsrb        $0x2,(%r10,%r11,1),%xmm0
14806  DB  102,65,15,58,32,4,2,3               ; pinsrb        $0x3,(%r10,%rax,1),%xmm0
14807  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
14808  DB  102,73,15,58,22,194,1               ; pextrq        $0x1,%xmm0,%r10
14809  DB  102,72,15,126,195                   ; movq          %xmm0,%rbx
14810  DB  73,139,65,8                         ; mov           0x8(%r9),%rax
14811  DB  65,137,217                          ; mov           %ebx,%r9d
14812  DB  72,193,235,30                       ; shr           $0x1e,%rbx
14813  DB  69,137,211                          ; mov           %r10d,%r11d
14814  DB  73,193,234,30                       ; shr           $0x1e,%r10
14815  DB  102,66,15,110,28,136                ; movd          (%rax,%r9,4),%xmm3
14816  DB  102,15,58,34,28,24,1                ; pinsrd        $0x1,(%rax,%rbx,1),%xmm3
14817  DB  102,66,15,58,34,28,152,2            ; pinsrd        $0x2,(%rax,%r11,4),%xmm3
14818  DB  102,66,15,58,34,28,16,3             ; pinsrd        $0x3,(%rax,%r10,1),%xmm3
14819  DB  102,15,111,5,195,40,0,0             ; movdqa        0x28c3(%rip),%xmm0        # 5c10 <_sk_callback_sse41+0xb76>
14820  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
14821  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
14822  DB  68,15,40,5,196,40,0,0               ; movaps        0x28c4(%rip),%xmm8        # 5c20 <_sk_callback_sse41+0xb86>
14823  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
14824  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
14825  DB  102,15,56,0,13,195,40,0,0           ; pshufb        0x28c3(%rip),%xmm1        # 5c30 <_sk_callback_sse41+0xb96>
14826  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
14827  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
14828  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
14829  DB  102,15,56,0,21,191,40,0,0           ; pshufb        0x28bf(%rip),%xmm2        # 5c40 <_sk_callback_sse41+0xba6>
14830  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
14831  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
14832  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
14833  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
14834  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
14835  DB  72,173                              ; lods          %ds:(%rsi),%rax
14836  DB  91                                  ; pop           %rbx
14837  DB  65,94                               ; pop           %r14
14838  DB  255,224                             ; jmpq          *%rax
14839
14840PUBLIC _sk_load_565_sse41
14841_sk_load_565_sse41 LABEL PROC
14842  DB  72,173                              ; lods          %ds:(%rsi),%rax
14843  DB  76,139,16                           ; mov           (%rax),%r10
14844  DB  77,133,192                          ; test          %r8,%r8
14845  DB  117,80                              ; jne           33f5 <_sk_load_565_sse41+0x5a>
14846  DB  102,65,15,56,51,20,82               ; pmovzxwd      (%r10,%rdx,2),%xmm2
14847  DB  102,15,111,5,156,40,0,0             ; movdqa        0x289c(%rip),%xmm0        # 5c50 <_sk_callback_sse41+0xbb6>
14848  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
14849  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
14850  DB  15,89,5,158,40,0,0                  ; mulps         0x289e(%rip),%xmm0        # 5c60 <_sk_callback_sse41+0xbc6>
14851  DB  102,15,111,13,166,40,0,0            ; movdqa        0x28a6(%rip),%xmm1        # 5c70 <_sk_callback_sse41+0xbd6>
14852  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
14853  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
14854  DB  15,89,13,168,40,0,0                 ; mulps         0x28a8(%rip),%xmm1        # 5c80 <_sk_callback_sse41+0xbe6>
14855  DB  102,15,219,21,176,40,0,0            ; pand          0x28b0(%rip),%xmm2        # 5c90 <_sk_callback_sse41+0xbf6>
14856  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
14857  DB  15,89,21,182,40,0,0                 ; mulps         0x28b6(%rip),%xmm2        # 5ca0 <_sk_callback_sse41+0xc06>
14858  DB  72,173                              ; lods          %ds:(%rsi),%rax
14859  DB  15,40,29,189,40,0,0                 ; movaps        0x28bd(%rip),%xmm3        # 5cb0 <_sk_callback_sse41+0xc16>
14860  DB  255,224                             ; jmpq          *%rax
14861  DB  69,137,193                          ; mov           %r8d,%r9d
14862  DB  65,128,225,3                        ; and           $0x3,%r9b
14863  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
14864  DB  65,128,249,1                        ; cmp           $0x1,%r9b
14865  DB  116,39                              ; je            342d <_sk_load_565_sse41+0x92>
14866  DB  65,128,249,2                        ; cmp           $0x2,%r9b
14867  DB  116,21                              ; je            3421 <_sk_load_565_sse41+0x86>
14868  DB  65,128,249,3                        ; cmp           $0x3,%r9b
14869  DB  117,154                             ; jne           33ac <_sk_load_565_sse41+0x11>
14870  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
14871  DB  102,15,110,192                      ; movd          %eax,%xmm0
14872  DB  102,15,112,208,69                   ; pshufd        $0x45,%xmm0,%xmm2
14873  DB  65,15,183,68,82,2                   ; movzwl        0x2(%r10,%rdx,2),%eax
14874  DB  102,15,58,34,208,1                  ; pinsrd        $0x1,%eax,%xmm2
14875  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
14876  DB  102,15,58,34,208,0                  ; pinsrd        $0x0,%eax,%xmm2
14877  DB  233,111,255,255,255                 ; jmpq          33ac <_sk_load_565_sse41+0x11>
14878
14879PUBLIC _sk_gather_565_sse41
14880_sk_gather_565_sse41 LABEL PROC
14881  DB  83                                  ; push          %rbx
14882  DB  72,173                              ; lods          %ds:(%rsi),%rax
14883  DB  76,139,8                            ; mov           (%rax),%r9
14884  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
14885  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
14886  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
14887  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
14888  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
14889  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
14890  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
14891  DB  65,137,194                          ; mov           %eax,%r10d
14892  DB  72,193,232,32                       ; shr           $0x20,%rax
14893  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
14894  DB  68,137,219                          ; mov           %r11d,%ebx
14895  DB  73,193,235,32                       ; shr           $0x20,%r11
14896  DB  102,65,15,196,4,89,0                ; pinsrw        $0x0,(%r9,%rbx,2),%xmm0
14897  DB  102,67,15,196,4,89,1                ; pinsrw        $0x1,(%r9,%r11,2),%xmm0
14898  DB  67,15,183,28,81                     ; movzwl        (%r9,%r10,2),%ebx
14899  DB  102,15,196,195,2                    ; pinsrw        $0x2,%ebx,%xmm0
14900  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
14901  DB  102,15,196,192,3                    ; pinsrw        $0x3,%eax,%xmm0
14902  DB  102,15,56,51,208                    ; pmovzxwd      %xmm0,%xmm2
14903  DB  102,15,111,5,25,40,0,0              ; movdqa        0x2819(%rip),%xmm0        # 5cc0 <_sk_callback_sse41+0xc26>
14904  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
14905  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
14906  DB  15,89,5,27,40,0,0                   ; mulps         0x281b(%rip),%xmm0        # 5cd0 <_sk_callback_sse41+0xc36>
14907  DB  102,15,111,13,35,40,0,0             ; movdqa        0x2823(%rip),%xmm1        # 5ce0 <_sk_callback_sse41+0xc46>
14908  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
14909  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
14910  DB  15,89,13,37,40,0,0                  ; mulps         0x2825(%rip),%xmm1        # 5cf0 <_sk_callback_sse41+0xc56>
14911  DB  102,15,219,21,45,40,0,0             ; pand          0x282d(%rip),%xmm2        # 5d00 <_sk_callback_sse41+0xc66>
14912  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
14913  DB  15,89,21,51,40,0,0                  ; mulps         0x2833(%rip),%xmm2        # 5d10 <_sk_callback_sse41+0xc76>
14914  DB  72,173                              ; lods          %ds:(%rsi),%rax
14915  DB  15,40,29,58,40,0,0                  ; movaps        0x283a(%rip),%xmm3        # 5d20 <_sk_callback_sse41+0xc86>
14916  DB  91                                  ; pop           %rbx
14917  DB  255,224                             ; jmpq          *%rax
14918
14919PUBLIC _sk_store_565_sse41
14920_sk_store_565_sse41 LABEL PROC
14921  DB  72,173                              ; lods          %ds:(%rsi),%rax
14922  DB  72,139,0                            ; mov           (%rax),%rax
14923  DB  68,15,40,5,58,40,0,0                ; movaps        0x283a(%rip),%xmm8        # 5d30 <_sk_callback_sse41+0xc96>
14924  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
14925  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
14926  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
14927  DB  102,65,15,114,241,11                ; pslld         $0xb,%xmm9
14928  DB  68,15,40,21,47,40,0,0               ; movaps        0x282f(%rip),%xmm10        # 5d40 <_sk_callback_sse41+0xca6>
14929  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
14930  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
14931  DB  102,65,15,114,242,5                 ; pslld         $0x5,%xmm10
14932  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
14933  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
14934  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
14935  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
14936  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
14937  DB  77,133,192                          ; test          %r8,%r8
14938  DB  117,10                              ; jne           3548 <_sk_store_565_sse41+0x5f>
14939  DB  242,68,15,17,4,80                   ; movsd         %xmm8,(%rax,%rdx,2)
14940  DB  72,173                              ; lods          %ds:(%rsi),%rax
14941  DB  255,224                             ; jmpq          *%rax
14942  DB  102,69,15,56,51,192                 ; pmovzxwd      %xmm8,%xmm8
14943  DB  69,137,193                          ; mov           %r8d,%r9d
14944  DB  65,128,225,3                        ; and           $0x3,%r9b
14945  DB  65,128,249,1                        ; cmp           $0x1,%r9b
14946  DB  116,30                              ; je            3579 <_sk_store_565_sse41+0x90>
14947  DB  65,128,249,2                        ; cmp           $0x2,%r9b
14948  DB  116,15                              ; je            3570 <_sk_store_565_sse41+0x87>
14949  DB  65,128,249,3                        ; cmp           $0x3,%r9b
14950  DB  117,221                             ; jne           3544 <_sk_store_565_sse41+0x5b>
14951  DB  102,68,15,58,21,68,80,4,4           ; pextrw        $0x4,%xmm8,0x4(%rax,%rdx,2)
14952  DB  102,68,15,58,21,68,80,2,2           ; pextrw        $0x2,%xmm8,0x2(%rax,%rdx,2)
14953  DB  102,68,15,58,21,4,80,0              ; pextrw        $0x0,%xmm8,(%rax,%rdx,2)
14954  DB  235,193                             ; jmp           3544 <_sk_store_565_sse41+0x5b>
14955
14956PUBLIC _sk_load_4444_sse41
14957_sk_load_4444_sse41 LABEL PROC
14958  DB  72,173                              ; lods          %ds:(%rsi),%rax
14959  DB  76,139,16                           ; mov           (%rax),%r10
14960  DB  77,133,192                          ; test          %r8,%r8
14961  DB  117,95                              ; jne           35ec <_sk_load_4444_sse41+0x69>
14962  DB  102,65,15,56,51,28,82               ; pmovzxwd      (%r10,%rdx,2),%xmm3
14963  DB  102,15,111,5,180,39,0,0             ; movdqa        0x27b4(%rip),%xmm0        # 5d50 <_sk_callback_sse41+0xcb6>
14964  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
14965  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
14966  DB  15,89,5,182,39,0,0                  ; mulps         0x27b6(%rip),%xmm0        # 5d60 <_sk_callback_sse41+0xcc6>
14967  DB  102,15,111,13,190,39,0,0            ; movdqa        0x27be(%rip),%xmm1        # 5d70 <_sk_callback_sse41+0xcd6>
14968  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
14969  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
14970  DB  15,89,13,192,39,0,0                 ; mulps         0x27c0(%rip),%xmm1        # 5d80 <_sk_callback_sse41+0xce6>
14971  DB  102,15,111,21,200,39,0,0            ; movdqa        0x27c8(%rip),%xmm2        # 5d90 <_sk_callback_sse41+0xcf6>
14972  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
14973  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
14974  DB  15,89,21,202,39,0,0                 ; mulps         0x27ca(%rip),%xmm2        # 5da0 <_sk_callback_sse41+0xd06>
14975  DB  102,15,219,29,210,39,0,0            ; pand          0x27d2(%rip),%xmm3        # 5db0 <_sk_callback_sse41+0xd16>
14976  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
14977  DB  15,89,29,216,39,0,0                 ; mulps         0x27d8(%rip),%xmm3        # 5dc0 <_sk_callback_sse41+0xd26>
14978  DB  72,173                              ; lods          %ds:(%rsi),%rax
14979  DB  255,224                             ; jmpq          *%rax
14980  DB  69,137,193                          ; mov           %r8d,%r9d
14981  DB  65,128,225,3                        ; and           $0x3,%r9b
14982  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
14983  DB  65,128,249,1                        ; cmp           $0x1,%r9b
14984  DB  116,39                              ; je            3624 <_sk_load_4444_sse41+0xa1>
14985  DB  65,128,249,2                        ; cmp           $0x2,%r9b
14986  DB  116,21                              ; je            3618 <_sk_load_4444_sse41+0x95>
14987  DB  65,128,249,3                        ; cmp           $0x3,%r9b
14988  DB  117,139                             ; jne           3594 <_sk_load_4444_sse41+0x11>
14989  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
14990  DB  102,15,110,192                      ; movd          %eax,%xmm0
14991  DB  102,15,112,216,69                   ; pshufd        $0x45,%xmm0,%xmm3
14992  DB  65,15,183,68,82,2                   ; movzwl        0x2(%r10,%rdx,2),%eax
14993  DB  102,15,58,34,216,1                  ; pinsrd        $0x1,%eax,%xmm3
14994  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
14995  DB  102,15,58,34,216,0                  ; pinsrd        $0x0,%eax,%xmm3
14996  DB  233,96,255,255,255                  ; jmpq          3594 <_sk_load_4444_sse41+0x11>
14997
14998PUBLIC _sk_gather_4444_sse41
14999_sk_gather_4444_sse41 LABEL PROC
15000  DB  83                                  ; push          %rbx
15001  DB  72,173                              ; lods          %ds:(%rsi),%rax
15002  DB  76,139,8                            ; mov           (%rax),%r9
15003  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
15004  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
15005  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
15006  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
15007  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
15008  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
15009  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
15010  DB  65,137,194                          ; mov           %eax,%r10d
15011  DB  72,193,232,32                       ; shr           $0x20,%rax
15012  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
15013  DB  68,137,219                          ; mov           %r11d,%ebx
15014  DB  73,193,235,32                       ; shr           $0x20,%r11
15015  DB  102,65,15,196,4,89,0                ; pinsrw        $0x0,(%r9,%rbx,2),%xmm0
15016  DB  102,67,15,196,4,89,1                ; pinsrw        $0x1,(%r9,%r11,2),%xmm0
15017  DB  67,15,183,28,81                     ; movzwl        (%r9,%r10,2),%ebx
15018  DB  102,15,196,195,2                    ; pinsrw        $0x2,%ebx,%xmm0
15019  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
15020  DB  102,15,196,192,3                    ; pinsrw        $0x3,%eax,%xmm0
15021  DB  102,15,56,51,216                    ; pmovzxwd      %xmm0,%xmm3
15022  DB  102,15,111,5,50,39,0,0              ; movdqa        0x2732(%rip),%xmm0        # 5dd0 <_sk_callback_sse41+0xd36>
15023  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
15024  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15025  DB  15,89,5,52,39,0,0                   ; mulps         0x2734(%rip),%xmm0        # 5de0 <_sk_callback_sse41+0xd46>
15026  DB  102,15,111,13,60,39,0,0             ; movdqa        0x273c(%rip),%xmm1        # 5df0 <_sk_callback_sse41+0xd56>
15027  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
15028  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15029  DB  15,89,13,62,39,0,0                  ; mulps         0x273e(%rip),%xmm1        # 5e00 <_sk_callback_sse41+0xd66>
15030  DB  102,15,111,21,70,39,0,0             ; movdqa        0x2746(%rip),%xmm2        # 5e10 <_sk_callback_sse41+0xd76>
15031  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
15032  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15033  DB  15,89,21,72,39,0,0                  ; mulps         0x2748(%rip),%xmm2        # 5e20 <_sk_callback_sse41+0xd86>
15034  DB  102,15,219,29,80,39,0,0             ; pand          0x2750(%rip),%xmm3        # 5e30 <_sk_callback_sse41+0xd96>
15035  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
15036  DB  15,89,29,86,39,0,0                  ; mulps         0x2756(%rip),%xmm3        # 5e40 <_sk_callback_sse41+0xda6>
15037  DB  72,173                              ; lods          %ds:(%rsi),%rax
15038  DB  91                                  ; pop           %rbx
15039  DB  255,224                             ; jmpq          *%rax
15040
15041PUBLIC _sk_store_4444_sse41
15042_sk_store_4444_sse41 LABEL PROC
15043  DB  72,173                              ; lods          %ds:(%rsi),%rax
15044  DB  72,139,0                            ; mov           (%rax),%rax
15045  DB  68,15,40,5,84,39,0,0                ; movaps        0x2754(%rip),%xmm8        # 5e50 <_sk_callback_sse41+0xdb6>
15046  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15047  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15048  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
15049  DB  102,65,15,114,241,12                ; pslld         $0xc,%xmm9
15050  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
15051  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
15052  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
15053  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
15054  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
15055  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
15056  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15057  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
15058  DB  102,65,15,114,241,4                 ; pslld         $0x4,%xmm9
15059  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
15060  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
15061  DB  102,69,15,86,193                    ; orpd          %xmm9,%xmm8
15062  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
15063  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
15064  DB  77,133,192                          ; test          %r8,%r8
15065  DB  117,10                              ; jne           3762 <_sk_store_4444_sse41+0x73>
15066  DB  242,68,15,17,4,80                   ; movsd         %xmm8,(%rax,%rdx,2)
15067  DB  72,173                              ; lods          %ds:(%rsi),%rax
15068  DB  255,224                             ; jmpq          *%rax
15069  DB  102,69,15,56,51,192                 ; pmovzxwd      %xmm8,%xmm8
15070  DB  69,137,193                          ; mov           %r8d,%r9d
15071  DB  65,128,225,3                        ; and           $0x3,%r9b
15072  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15073  DB  116,30                              ; je            3793 <_sk_store_4444_sse41+0xa4>
15074  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15075  DB  116,15                              ; je            378a <_sk_store_4444_sse41+0x9b>
15076  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15077  DB  117,221                             ; jne           375e <_sk_store_4444_sse41+0x6f>
15078  DB  102,68,15,58,21,68,80,4,4           ; pextrw        $0x4,%xmm8,0x4(%rax,%rdx,2)
15079  DB  102,68,15,58,21,68,80,2,2           ; pextrw        $0x2,%xmm8,0x2(%rax,%rdx,2)
15080  DB  102,68,15,58,21,4,80,0              ; pextrw        $0x0,%xmm8,(%rax,%rdx,2)
15081  DB  235,193                             ; jmp           375e <_sk_store_4444_sse41+0x6f>
15082
15083PUBLIC _sk_load_8888_sse41
15084_sk_load_8888_sse41 LABEL PROC
15085  DB  72,173                              ; lods          %ds:(%rsi),%rax
15086  DB  72,139,0                            ; mov           (%rax),%rax
15087  DB  77,133,192                          ; test          %r8,%r8
15088  DB  117,88                              ; jne           37ff <_sk_load_8888_sse41+0x62>
15089  DB  243,15,111,28,144                   ; movdqu        (%rax,%rdx,4),%xmm3
15090  DB  102,15,111,5,172,38,0,0             ; movdqa        0x26ac(%rip),%xmm0        # 5e60 <_sk_callback_sse41+0xdc6>
15091  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
15092  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15093  DB  68,15,40,5,173,38,0,0               ; movaps        0x26ad(%rip),%xmm8        # 5e70 <_sk_callback_sse41+0xdd6>
15094  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15095  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
15096  DB  102,15,56,0,13,172,38,0,0           ; pshufb        0x26ac(%rip),%xmm1        # 5e80 <_sk_callback_sse41+0xde6>
15097  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15098  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15099  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
15100  DB  102,15,56,0,21,168,38,0,0           ; pshufb        0x26a8(%rip),%xmm2        # 5e90 <_sk_callback_sse41+0xdf6>
15101  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15102  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15103  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
15104  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
15105  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
15106  DB  72,173                              ; lods          %ds:(%rsi),%rax
15107  DB  255,224                             ; jmpq          *%rax
15108  DB  69,137,193                          ; mov           %r8d,%r9d
15109  DB  65,128,225,3                        ; and           $0x3,%r9b
15110  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
15111  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15112  DB  116,31                              ; je            382f <_sk_load_8888_sse41+0x92>
15113  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15114  DB  116,17                              ; je            3827 <_sk_load_8888_sse41+0x8a>
15115  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15116  DB  117,144                             ; jne           37ac <_sk_load_8888_sse41+0xf>
15117  DB  102,15,110,68,144,8                 ; movd          0x8(%rax,%rdx,4),%xmm0
15118  DB  102,15,112,216,69                   ; pshufd        $0x45,%xmm0,%xmm3
15119  DB  102,15,58,34,92,144,4,1             ; pinsrd        $0x1,0x4(%rax,%rdx,4),%xmm3
15120  DB  102,15,58,34,28,144,0               ; pinsrd        $0x0,(%rax,%rdx,4),%xmm3
15121  DB  233,113,255,255,255                 ; jmpq          37ac <_sk_load_8888_sse41+0xf>
15122
15123PUBLIC _sk_gather_8888_sse41
15124_sk_gather_8888_sse41 LABEL PROC
15125  DB  83                                  ; push          %rbx
15126  DB  72,173                              ; lods          %ds:(%rsi),%rax
15127  DB  76,139,8                            ; mov           (%rax),%r9
15128  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
15129  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
15130  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
15131  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
15132  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
15133  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
15134  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
15135  DB  65,137,194                          ; mov           %eax,%r10d
15136  DB  72,193,232,32                       ; shr           $0x20,%rax
15137  DB  102,73,15,58,22,195,1               ; pextrq        $0x1,%xmm0,%r11
15138  DB  68,137,219                          ; mov           %r11d,%ebx
15139  DB  73,193,235,32                       ; shr           $0x20,%r11
15140  DB  102,67,15,110,28,145                ; movd          (%r9,%r10,4),%xmm3
15141  DB  102,65,15,58,34,28,129,1            ; pinsrd        $0x1,(%r9,%rax,4),%xmm3
15142  DB  102,65,15,58,34,28,153,2            ; pinsrd        $0x2,(%r9,%rbx,4),%xmm3
15143  DB  102,67,15,58,34,28,153,3            ; pinsrd        $0x3,(%r9,%r11,4),%xmm3
15144  DB  102,15,111,5,4,38,0,0               ; movdqa        0x2604(%rip),%xmm0        # 5ea0 <_sk_callback_sse41+0xe06>
15145  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
15146  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15147  DB  68,15,40,5,5,38,0,0                 ; movaps        0x2605(%rip),%xmm8        # 5eb0 <_sk_callback_sse41+0xe16>
15148  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15149  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
15150  DB  102,15,56,0,13,4,38,0,0             ; pshufb        0x2604(%rip),%xmm1        # 5ec0 <_sk_callback_sse41+0xe26>
15151  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15152  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15153  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
15154  DB  102,15,56,0,21,0,38,0,0             ; pshufb        0x2600(%rip),%xmm2        # 5ed0 <_sk_callback_sse41+0xe36>
15155  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15156  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15157  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
15158  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
15159  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
15160  DB  72,173                              ; lods          %ds:(%rsi),%rax
15161  DB  91                                  ; pop           %rbx
15162  DB  255,224                             ; jmpq          *%rax
15163
15164PUBLIC _sk_store_8888_sse41
15165_sk_store_8888_sse41 LABEL PROC
15166  DB  72,173                              ; lods          %ds:(%rsi),%rax
15167  DB  72,139,0                            ; mov           (%rax),%rax
15168  DB  68,15,40,5,235,37,0,0               ; movaps        0x25eb(%rip),%xmm8        # 5ee0 <_sk_callback_sse41+0xe46>
15169  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15170  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15171  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
15172  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
15173  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
15174  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
15175  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
15176  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
15177  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
15178  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15179  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
15180  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
15181  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
15182  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
15183  DB  102,65,15,114,240,24                ; pslld         $0x18,%xmm8
15184  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
15185  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
15186  DB  77,133,192                          ; test          %r8,%r8
15187  DB  117,10                              ; jne           3955 <_sk_store_8888_sse41+0x6d>
15188  DB  243,68,15,127,4,144                 ; movdqu        %xmm8,(%rax,%rdx,4)
15189  DB  72,173                              ; lods          %ds:(%rsi),%rax
15190  DB  255,224                             ; jmpq          *%rax
15191  DB  69,137,193                          ; mov           %r8d,%r9d
15192  DB  65,128,225,3                        ; and           $0x3,%r9b
15193  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15194  DB  116,30                              ; je            3980 <_sk_store_8888_sse41+0x98>
15195  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15196  DB  116,15                              ; je            3977 <_sk_store_8888_sse41+0x8f>
15197  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15198  DB  117,227                             ; jne           3951 <_sk_store_8888_sse41+0x69>
15199  DB  102,68,15,58,22,68,144,8,2          ; pextrd        $0x2,%xmm8,0x8(%rax,%rdx,4)
15200  DB  102,68,15,58,22,68,144,4,1          ; pextrd        $0x1,%xmm8,0x4(%rax,%rdx,4)
15201  DB  102,68,15,126,4,144                 ; movd          %xmm8,(%rax,%rdx,4)
15202  DB  235,201                             ; jmp           3951 <_sk_store_8888_sse41+0x69>
15203
15204PUBLIC _sk_load_f16_sse41
15205_sk_load_f16_sse41 LABEL PROC
15206  DB  72,173                              ; lods          %ds:(%rsi),%rax
15207  DB  72,139,0                            ; mov           (%rax),%rax
15208  DB  77,133,192                          ; test          %r8,%r8
15209  DB  15,133,60,1,0,0                     ; jne           3ad2 <_sk_load_f16_sse41+0x14a>
15210  DB  102,15,16,4,208                     ; movupd        (%rax,%rdx,8),%xmm0
15211  DB  243,15,111,76,208,16                ; movdqu        0x10(%rax,%rdx,8),%xmm1
15212  DB  102,68,15,40,200                    ; movapd        %xmm0,%xmm9
15213  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
15214  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
15215  DB  102,69,15,111,217                   ; movdqa        %xmm9,%xmm11
15216  DB  102,68,15,97,216                    ; punpcklwd     %xmm0,%xmm11
15217  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
15218  DB  102,65,15,56,51,203                 ; pmovzxwd      %xmm11,%xmm1
15219  DB  102,68,15,111,5,35,37,0,0           ; movdqa        0x2523(%rip),%xmm8        # 5ef0 <_sk_callback_sse41+0xe56>
15220  DB  102,15,111,209                      ; movdqa        %xmm1,%xmm2
15221  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
15222  DB  102,15,239,202                      ; pxor          %xmm2,%xmm1
15223  DB  102,15,111,29,30,37,0,0             ; movdqa        0x251e(%rip),%xmm3        # 5f00 <_sk_callback_sse41+0xe66>
15224  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
15225  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
15226  DB  102,15,56,63,195                    ; pmaxud        %xmm3,%xmm0
15227  DB  102,15,118,193                      ; pcmpeqd       %xmm1,%xmm0
15228  DB  102,15,114,241,13                   ; pslld         $0xd,%xmm1
15229  DB  102,15,235,202                      ; por           %xmm2,%xmm1
15230  DB  102,68,15,111,21,10,37,0,0          ; movdqa        0x250a(%rip),%xmm10        # 5f10 <_sk_callback_sse41+0xe76>
15231  DB  102,65,15,254,202                   ; paddd         %xmm10,%xmm1
15232  DB  102,15,219,193                      ; pand          %xmm1,%xmm0
15233  DB  102,65,15,115,219,8                 ; psrldq        $0x8,%xmm11
15234  DB  102,69,15,56,51,219                 ; pmovzxwd      %xmm11,%xmm11
15235  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
15236  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
15237  DB  102,68,15,239,218                   ; pxor          %xmm2,%xmm11
15238  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
15239  DB  102,65,15,111,203                   ; movdqa        %xmm11,%xmm1
15240  DB  102,15,56,63,203                    ; pmaxud        %xmm3,%xmm1
15241  DB  102,65,15,118,203                   ; pcmpeqd       %xmm11,%xmm1
15242  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
15243  DB  102,68,15,235,218                   ; por           %xmm2,%xmm11
15244  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
15245  DB  102,65,15,219,203                   ; pand          %xmm11,%xmm1
15246  DB  102,69,15,56,51,217                 ; pmovzxwd      %xmm9,%xmm11
15247  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
15248  DB  102,69,15,219,224                   ; pand          %xmm8,%xmm12
15249  DB  102,69,15,239,220                   ; pxor          %xmm12,%xmm11
15250  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
15251  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
15252  DB  102,15,56,63,211                    ; pmaxud        %xmm3,%xmm2
15253  DB  102,65,15,118,211                   ; pcmpeqd       %xmm11,%xmm2
15254  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
15255  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
15256  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
15257  DB  102,65,15,219,211                   ; pand          %xmm11,%xmm2
15258  DB  102,65,15,115,217,8                 ; psrldq        $0x8,%xmm9
15259  DB  102,69,15,56,51,201                 ; pmovzxwd      %xmm9,%xmm9
15260  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
15261  DB  102,69,15,239,200                   ; pxor          %xmm8,%xmm9
15262  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
15263  DB  102,65,15,56,63,217                 ; pmaxud        %xmm9,%xmm3
15264  DB  102,65,15,118,217                   ; pcmpeqd       %xmm9,%xmm3
15265  DB  102,65,15,114,241,13                ; pslld         $0xd,%xmm9
15266  DB  102,69,15,235,200                   ; por           %xmm8,%xmm9
15267  DB  102,69,15,254,202                   ; paddd         %xmm10,%xmm9
15268  DB  102,65,15,219,217                   ; pand          %xmm9,%xmm3
15269  DB  72,173                              ; lods          %ds:(%rsi),%rax
15270  DB  255,224                             ; jmpq          *%rax
15271  DB  242,15,16,4,208                     ; movsd         (%rax,%rdx,8),%xmm0
15272  DB  73,131,248,1                        ; cmp           $0x1,%r8
15273  DB  117,13                              ; jne           3aea <_sk_load_f16_sse41+0x162>
15274  DB  243,15,126,192                      ; movq          %xmm0,%xmm0
15275  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15276  DB  233,183,254,255,255                 ; jmpq          39a1 <_sk_load_f16_sse41+0x19>
15277  DB  102,15,22,68,208,8                  ; movhpd        0x8(%rax,%rdx,8),%xmm0
15278  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15279  DB  73,131,248,3                        ; cmp           $0x3,%r8
15280  DB  15,130,163,254,255,255              ; jb            39a1 <_sk_load_f16_sse41+0x19>
15281  DB  243,15,126,76,208,16                ; movq          0x10(%rax,%rdx,8),%xmm1
15282  DB  233,152,254,255,255                 ; jmpq          39a1 <_sk_load_f16_sse41+0x19>
15283
15284PUBLIC _sk_gather_f16_sse41
15285_sk_gather_f16_sse41 LABEL PROC
15286  DB  83                                  ; push          %rbx
15287  DB  72,173                              ; lods          %ds:(%rsi),%rax
15288  DB  76,139,8                            ; mov           (%rax),%r9
15289  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
15290  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
15291  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
15292  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
15293  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
15294  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
15295  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
15296  DB  65,137,194                          ; mov           %eax,%r10d
15297  DB  72,193,232,32                       ; shr           $0x20,%rax
15298  DB  102,73,15,58,22,195,1               ; pextrq        $0x1,%xmm0,%r11
15299  DB  68,137,219                          ; mov           %r11d,%ebx
15300  DB  73,193,235,32                       ; shr           $0x20,%r11
15301  DB  243,67,15,126,4,217                 ; movq          (%r9,%r11,8),%xmm0
15302  DB  243,65,15,126,12,217                ; movq          (%r9,%rbx,8),%xmm1
15303  DB  102,15,108,200                      ; punpcklqdq    %xmm0,%xmm1
15304  DB  243,65,15,126,4,193                 ; movq          (%r9,%rax,8),%xmm0
15305  DB  243,67,15,126,20,209                ; movq          (%r9,%r10,8),%xmm2
15306  DB  102,15,108,208                      ; punpcklqdq    %xmm0,%xmm2
15307  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
15308  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
15309  DB  102,15,105,209                      ; punpckhwd     %xmm1,%xmm2
15310  DB  102,69,15,111,217                   ; movdqa        %xmm9,%xmm11
15311  DB  102,68,15,97,218                    ; punpcklwd     %xmm2,%xmm11
15312  DB  102,68,15,105,202                   ; punpckhwd     %xmm2,%xmm9
15313  DB  102,65,15,56,51,203                 ; pmovzxwd      %xmm11,%xmm1
15314  DB  102,68,15,111,5,144,35,0,0          ; movdqa        0x2390(%rip),%xmm8        # 5f20 <_sk_callback_sse41+0xe86>
15315  DB  102,15,111,209                      ; movdqa        %xmm1,%xmm2
15316  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
15317  DB  102,15,239,202                      ; pxor          %xmm2,%xmm1
15318  DB  102,15,111,29,139,35,0,0            ; movdqa        0x238b(%rip),%xmm3        # 5f30 <_sk_callback_sse41+0xe96>
15319  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
15320  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
15321  DB  102,15,56,63,195                    ; pmaxud        %xmm3,%xmm0
15322  DB  102,15,118,193                      ; pcmpeqd       %xmm1,%xmm0
15323  DB  102,15,114,241,13                   ; pslld         $0xd,%xmm1
15324  DB  102,15,235,202                      ; por           %xmm2,%xmm1
15325  DB  102,68,15,111,21,119,35,0,0         ; movdqa        0x2377(%rip),%xmm10        # 5f40 <_sk_callback_sse41+0xea6>
15326  DB  102,65,15,254,202                   ; paddd         %xmm10,%xmm1
15327  DB  102,15,219,193                      ; pand          %xmm1,%xmm0
15328  DB  102,65,15,115,219,8                 ; psrldq        $0x8,%xmm11
15329  DB  102,69,15,56,51,219                 ; pmovzxwd      %xmm11,%xmm11
15330  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
15331  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
15332  DB  102,68,15,239,218                   ; pxor          %xmm2,%xmm11
15333  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
15334  DB  102,65,15,111,203                   ; movdqa        %xmm11,%xmm1
15335  DB  102,15,56,63,203                    ; pmaxud        %xmm3,%xmm1
15336  DB  102,65,15,118,203                   ; pcmpeqd       %xmm11,%xmm1
15337  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
15338  DB  102,68,15,235,218                   ; por           %xmm2,%xmm11
15339  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
15340  DB  102,65,15,219,203                   ; pand          %xmm11,%xmm1
15341  DB  102,69,15,56,51,217                 ; pmovzxwd      %xmm9,%xmm11
15342  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
15343  DB  102,69,15,219,224                   ; pand          %xmm8,%xmm12
15344  DB  102,69,15,239,220                   ; pxor          %xmm12,%xmm11
15345  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
15346  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
15347  DB  102,15,56,63,211                    ; pmaxud        %xmm3,%xmm2
15348  DB  102,65,15,118,211                   ; pcmpeqd       %xmm11,%xmm2
15349  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
15350  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
15351  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
15352  DB  102,65,15,219,211                   ; pand          %xmm11,%xmm2
15353  DB  102,65,15,115,217,8                 ; psrldq        $0x8,%xmm9
15354  DB  102,69,15,56,51,201                 ; pmovzxwd      %xmm9,%xmm9
15355  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
15356  DB  102,69,15,239,200                   ; pxor          %xmm8,%xmm9
15357  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
15358  DB  102,65,15,56,63,217                 ; pmaxud        %xmm9,%xmm3
15359  DB  102,65,15,118,217                   ; pcmpeqd       %xmm9,%xmm3
15360  DB  102,65,15,114,241,13                ; pslld         $0xd,%xmm9
15361  DB  102,69,15,235,200                   ; por           %xmm8,%xmm9
15362  DB  102,69,15,254,202                   ; paddd         %xmm10,%xmm9
15363  DB  102,65,15,219,217                   ; pand          %xmm9,%xmm3
15364  DB  72,173                              ; lods          %ds:(%rsi),%rax
15365  DB  91                                  ; pop           %rbx
15366  DB  255,224                             ; jmpq          *%rax
15367
15368PUBLIC _sk_store_f16_sse41
15369_sk_store_f16_sse41 LABEL PROC
15370  DB  72,173                              ; lods          %ds:(%rsi),%rax
15371  DB  72,139,0                            ; mov           (%rax),%rax
15372  DB  102,68,15,111,21,172,34,0,0         ; movdqa        0x22ac(%rip),%xmm10        # 5f50 <_sk_callback_sse41+0xeb6>
15373  DB  102,68,15,111,216                   ; movdqa        %xmm0,%xmm11
15374  DB  102,69,15,219,218                   ; pand          %xmm10,%xmm11
15375  DB  102,68,15,111,232                   ; movdqa        %xmm0,%xmm13
15376  DB  102,69,15,239,235                   ; pxor          %xmm11,%xmm13
15377  DB  102,68,15,111,13,159,34,0,0         ; movdqa        0x229f(%rip),%xmm9        # 5f60 <_sk_callback_sse41+0xec6>
15378  DB  102,65,15,114,211,16                ; psrld         $0x10,%xmm11
15379  DB  102,69,15,111,193                   ; movdqa        %xmm9,%xmm8
15380  DB  102,69,15,102,197                   ; pcmpgtd       %xmm13,%xmm8
15381  DB  102,65,15,114,213,13                ; psrld         $0xd,%xmm13
15382  DB  102,68,15,111,37,144,34,0,0         ; movdqa        0x2290(%rip),%xmm12        # 5f70 <_sk_callback_sse41+0xed6>
15383  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
15384  DB  102,69,15,254,221                   ; paddd         %xmm13,%xmm11
15385  DB  102,69,15,223,195                   ; pandn         %xmm11,%xmm8
15386  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
15387  DB  102,68,15,111,217                   ; movdqa        %xmm1,%xmm11
15388  DB  102,69,15,219,218                   ; pand          %xmm10,%xmm11
15389  DB  102,68,15,111,241                   ; movdqa        %xmm1,%xmm14
15390  DB  102,69,15,239,243                   ; pxor          %xmm11,%xmm14
15391  DB  102,65,15,114,211,16                ; psrld         $0x10,%xmm11
15392  DB  102,69,15,111,233                   ; movdqa        %xmm9,%xmm13
15393  DB  102,69,15,102,238                   ; pcmpgtd       %xmm14,%xmm13
15394  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
15395  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
15396  DB  102,69,15,254,222                   ; paddd         %xmm14,%xmm11
15397  DB  102,69,15,223,235                   ; pandn         %xmm11,%xmm13
15398  DB  102,69,15,56,43,237                 ; packusdw      %xmm13,%xmm13
15399  DB  102,68,15,111,242                   ; movdqa        %xmm2,%xmm14
15400  DB  102,69,15,219,242                   ; pand          %xmm10,%xmm14
15401  DB  102,68,15,111,250                   ; movdqa        %xmm2,%xmm15
15402  DB  102,69,15,239,254                   ; pxor          %xmm14,%xmm15
15403  DB  102,65,15,114,214,16                ; psrld         $0x10,%xmm14
15404  DB  102,69,15,111,217                   ; movdqa        %xmm9,%xmm11
15405  DB  102,69,15,102,223                   ; pcmpgtd       %xmm15,%xmm11
15406  DB  102,65,15,114,215,13                ; psrld         $0xd,%xmm15
15407  DB  102,69,15,235,244                   ; por           %xmm12,%xmm14
15408  DB  102,69,15,254,247                   ; paddd         %xmm15,%xmm14
15409  DB  102,69,15,223,222                   ; pandn         %xmm14,%xmm11
15410  DB  102,69,15,56,43,219                 ; packusdw      %xmm11,%xmm11
15411  DB  102,68,15,219,211                   ; pand          %xmm3,%xmm10
15412  DB  102,68,15,111,243                   ; movdqa        %xmm3,%xmm14
15413  DB  102,69,15,239,242                   ; pxor          %xmm10,%xmm14
15414  DB  102,65,15,114,210,16                ; psrld         $0x10,%xmm10
15415  DB  102,69,15,102,206                   ; pcmpgtd       %xmm14,%xmm9
15416  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
15417  DB  102,69,15,235,212                   ; por           %xmm12,%xmm10
15418  DB  102,69,15,254,214                   ; paddd         %xmm14,%xmm10
15419  DB  102,69,15,223,202                   ; pandn         %xmm10,%xmm9
15420  DB  102,69,15,56,43,201                 ; packusdw      %xmm9,%xmm9
15421  DB  102,69,15,97,197                    ; punpcklwd     %xmm13,%xmm8
15422  DB  102,69,15,97,217                    ; punpcklwd     %xmm9,%xmm11
15423  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
15424  DB  102,69,15,98,203                    ; punpckldq     %xmm11,%xmm9
15425  DB  77,133,192                          ; test          %r8,%r8
15426  DB  117,21                              ; jne           3dd6 <_sk_store_f16_sse41+0x140>
15427  DB  68,15,17,12,208                     ; movups        %xmm9,(%rax,%rdx,8)
15428  DB  102,69,15,106,195                   ; punpckhdq     %xmm11,%xmm8
15429  DB  243,68,15,127,68,208,16             ; movdqu        %xmm8,0x10(%rax,%rdx,8)
15430  DB  72,173                              ; lods          %ds:(%rsi),%rax
15431  DB  255,224                             ; jmpq          *%rax
15432  DB  102,68,15,214,12,208                ; movq          %xmm9,(%rax,%rdx,8)
15433  DB  73,131,248,1                        ; cmp           $0x1,%r8
15434  DB  116,240                             ; je            3dd2 <_sk_store_f16_sse41+0x13c>
15435  DB  102,68,15,23,76,208,8               ; movhpd        %xmm9,0x8(%rax,%rdx,8)
15436  DB  73,131,248,3                        ; cmp           $0x3,%r8
15437  DB  114,227                             ; jb            3dd2 <_sk_store_f16_sse41+0x13c>
15438  DB  102,69,15,106,195                   ; punpckhdq     %xmm11,%xmm8
15439  DB  102,68,15,214,68,208,16             ; movq          %xmm8,0x10(%rax,%rdx,8)
15440  DB  235,213                             ; jmp           3dd2 <_sk_store_f16_sse41+0x13c>
15441
15442PUBLIC _sk_load_u16_be_sse41
15443_sk_load_u16_be_sse41 LABEL PROC
15444  DB  72,173                              ; lods          %ds:(%rsi),%rax
15445  DB  76,139,8                            ; mov           (%rax),%r9
15446  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
15447  DB  77,133,192                          ; test          %r8,%r8
15448  DB  15,133,185,0,0,0                    ; jne           3ecc <_sk_load_u16_be_sse41+0xcf>
15449  DB  102,65,15,16,4,65                   ; movupd        (%r9,%rax,2),%xmm0
15450  DB  243,65,15,111,76,65,16              ; movdqu        0x10(%r9,%rax,2),%xmm1
15451  DB  102,15,40,208                       ; movapd        %xmm0,%xmm2
15452  DB  102,15,97,209                       ; punpcklwd     %xmm1,%xmm2
15453  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
15454  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
15455  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
15456  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
15457  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
15458  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
15459  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
15460  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
15461  DB  102,15,235,200                      ; por           %xmm0,%xmm1
15462  DB  102,15,56,51,193                    ; pmovzxwd      %xmm1,%xmm0
15463  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15464  DB  68,15,40,5,33,33,0,0                ; movaps        0x2121(%rip),%xmm8        # 5f80 <_sk_callback_sse41+0xee6>
15465  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15466  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
15467  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
15468  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
15469  DB  102,15,235,217                      ; por           %xmm1,%xmm3
15470  DB  102,15,56,51,203                    ; pmovzxwd      %xmm3,%xmm1
15471  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15472  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15473  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
15474  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
15475  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
15476  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
15477  DB  102,65,15,235,209                   ; por           %xmm9,%xmm2
15478  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
15479  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15480  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15481  DB  102,68,15,111,203                   ; movdqa        %xmm3,%xmm9
15482  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
15483  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
15484  DB  102,65,15,235,217                   ; por           %xmm9,%xmm3
15485  DB  102,15,56,51,219                    ; pmovzxwd      %xmm3,%xmm3
15486  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
15487  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
15488  DB  72,173                              ; lods          %ds:(%rsi),%rax
15489  DB  255,224                             ; jmpq          *%rax
15490  DB  242,65,15,16,4,65                   ; movsd         (%r9,%rax,2),%xmm0
15491  DB  73,131,248,1                        ; cmp           $0x1,%r8
15492  DB  117,13                              ; jne           3ee5 <_sk_load_u16_be_sse41+0xe8>
15493  DB  243,15,126,192                      ; movq          %xmm0,%xmm0
15494  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15495  DB  233,59,255,255,255                  ; jmpq          3e20 <_sk_load_u16_be_sse41+0x23>
15496  DB  102,65,15,22,68,65,8                ; movhpd        0x8(%r9,%rax,2),%xmm0
15497  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15498  DB  73,131,248,3                        ; cmp           $0x3,%r8
15499  DB  15,130,38,255,255,255               ; jb            3e20 <_sk_load_u16_be_sse41+0x23>
15500  DB  243,65,15,126,76,65,16              ; movq          0x10(%r9,%rax,2),%xmm1
15501  DB  233,26,255,255,255                  ; jmpq          3e20 <_sk_load_u16_be_sse41+0x23>
15502
15503PUBLIC _sk_load_rgb_u16_be_sse41
15504_sk_load_rgb_u16_be_sse41 LABEL PROC
15505  DB  72,173                              ; lods          %ds:(%rsi),%rax
15506  DB  76,139,8                            ; mov           (%rax),%r9
15507  DB  72,141,4,82                         ; lea           (%rdx,%rdx,2),%rax
15508  DB  77,133,192                          ; test          %r8,%r8
15509  DB  15,133,170,0,0,0                    ; jne           3fc2 <_sk_load_rgb_u16_be_sse41+0xbc>
15510  DB  243,65,15,111,20,65                 ; movdqu        (%r9,%rax,2),%xmm2
15511  DB  243,65,15,111,92,65,8               ; movdqu        0x8(%r9,%rax,2),%xmm3
15512  DB  102,15,115,219,4                    ; psrldq        $0x4,%xmm3
15513  DB  102,15,111,194                      ; movdqa        %xmm2,%xmm0
15514  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
15515  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
15516  DB  102,15,115,217,6                    ; psrldq        $0x6,%xmm1
15517  DB  102,15,97,211                       ; punpcklwd     %xmm3,%xmm2
15518  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
15519  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
15520  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
15521  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
15522  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
15523  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
15524  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
15525  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
15526  DB  102,15,235,200                      ; por           %xmm0,%xmm1
15527  DB  102,15,56,51,193                    ; pmovzxwd      %xmm1,%xmm0
15528  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15529  DB  68,15,40,5,25,32,0,0                ; movaps        0x2019(%rip),%xmm8        # 5f90 <_sk_callback_sse41+0xef6>
15530  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15531  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
15532  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
15533  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
15534  DB  102,15,235,217                      ; por           %xmm1,%xmm3
15535  DB  102,15,56,51,203                    ; pmovzxwd      %xmm3,%xmm1
15536  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15537  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15538  DB  102,15,111,218                      ; movdqa        %xmm2,%xmm3
15539  DB  102,15,113,243,8                    ; psllw         $0x8,%xmm3
15540  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
15541  DB  102,15,235,211                      ; por           %xmm3,%xmm2
15542  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
15543  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15544  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15545  DB  72,173                              ; lods          %ds:(%rsi),%rax
15546  DB  15,40,29,224,31,0,0                 ; movaps        0x1fe0(%rip),%xmm3        # 5fa0 <_sk_callback_sse41+0xf06>
15547  DB  255,224                             ; jmpq          *%rax
15548  DB  102,65,15,110,20,65                 ; movd          (%r9,%rax,2),%xmm2
15549  DB  102,65,15,196,84,65,4,2             ; pinsrw        $0x2,0x4(%r9,%rax,2),%xmm2
15550  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15551  DB  73,131,248,1                        ; cmp           $0x1,%r8
15552  DB  117,13                              ; jne           3fe7 <_sk_load_rgb_u16_be_sse41+0xe1>
15553  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
15554  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
15555  DB  233,85,255,255,255                  ; jmpq          3f3c <_sk_load_rgb_u16_be_sse41+0x36>
15556  DB  102,65,15,110,68,65,6               ; movd          0x6(%r9,%rax,2),%xmm0
15557  DB  102,65,15,196,68,65,10,2            ; pinsrw        $0x2,0xa(%r9,%rax,2),%xmm0
15558  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15559  DB  73,131,248,3                        ; cmp           $0x3,%r8
15560  DB  114,24                              ; jb            4018 <_sk_load_rgb_u16_be_sse41+0x112>
15561  DB  102,65,15,110,92,65,12              ; movd          0xc(%r9,%rax,2),%xmm3
15562  DB  102,65,15,196,92,65,16,2            ; pinsrw        $0x2,0x10(%r9,%rax,2),%xmm3
15563  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15564  DB  233,36,255,255,255                  ; jmpq          3f3c <_sk_load_rgb_u16_be_sse41+0x36>
15565  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
15566  DB  233,27,255,255,255                  ; jmpq          3f3c <_sk_load_rgb_u16_be_sse41+0x36>
15567
15568PUBLIC _sk_store_u16_be_sse41
15569_sk_store_u16_be_sse41 LABEL PROC
15570  DB  72,173                              ; lods          %ds:(%rsi),%rax
15571  DB  76,139,8                            ; mov           (%rax),%r9
15572  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
15573  DB  68,15,40,21,122,31,0,0              ; movaps        0x1f7a(%rip),%xmm10        # 5fb0 <_sk_callback_sse41+0xf16>
15574  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15575  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
15576  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
15577  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
15578  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
15579  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
15580  DB  102,65,15,113,208,8                 ; psrlw         $0x8,%xmm8
15581  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
15582  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
15583  DB  69,15,89,202                        ; mulps         %xmm10,%xmm9
15584  DB  102,69,15,91,217                    ; cvtps2dq      %xmm9,%xmm11
15585  DB  102,69,15,56,43,219                 ; packusdw      %xmm11,%xmm11
15586  DB  102,69,15,111,203                   ; movdqa        %xmm11,%xmm9
15587  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
15588  DB  102,65,15,113,211,8                 ; psrlw         $0x8,%xmm11
15589  DB  102,69,15,235,217                   ; por           %xmm9,%xmm11
15590  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
15591  DB  69,15,89,202                        ; mulps         %xmm10,%xmm9
15592  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
15593  DB  102,69,15,56,43,201                 ; packusdw      %xmm9,%xmm9
15594  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
15595  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
15596  DB  102,65,15,113,209,8                 ; psrlw         $0x8,%xmm9
15597  DB  102,69,15,235,204                   ; por           %xmm12,%xmm9
15598  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
15599  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
15600  DB  102,69,15,56,43,210                 ; packusdw      %xmm10,%xmm10
15601  DB  102,69,15,111,226                   ; movdqa        %xmm10,%xmm12
15602  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
15603  DB  102,65,15,113,210,8                 ; psrlw         $0x8,%xmm10
15604  DB  102,69,15,235,212                   ; por           %xmm12,%xmm10
15605  DB  102,69,15,97,195                    ; punpcklwd     %xmm11,%xmm8
15606  DB  102,69,15,97,202                    ; punpcklwd     %xmm10,%xmm9
15607  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
15608  DB  102,69,15,98,209                    ; punpckldq     %xmm9,%xmm10
15609  DB  77,133,192                          ; test          %r8,%r8
15610  DB  117,21                              ; jne           4104 <_sk_store_u16_be_sse41+0xe3>
15611  DB  69,15,17,20,65                      ; movups        %xmm10,(%r9,%rax,2)
15612  DB  102,69,15,106,193                   ; punpckhdq     %xmm9,%xmm8
15613  DB  243,69,15,127,68,65,16              ; movdqu        %xmm8,0x10(%r9,%rax,2)
15614  DB  72,173                              ; lods          %ds:(%rsi),%rax
15615  DB  255,224                             ; jmpq          *%rax
15616  DB  102,69,15,214,20,65                 ; movq          %xmm10,(%r9,%rax,2)
15617  DB  73,131,248,1                        ; cmp           $0x1,%r8
15618  DB  116,240                             ; je            4100 <_sk_store_u16_be_sse41+0xdf>
15619  DB  102,69,15,23,84,65,8                ; movhpd        %xmm10,0x8(%r9,%rax,2)
15620  DB  73,131,248,3                        ; cmp           $0x3,%r8
15621  DB  114,227                             ; jb            4100 <_sk_store_u16_be_sse41+0xdf>
15622  DB  102,69,15,106,193                   ; punpckhdq     %xmm9,%xmm8
15623  DB  102,69,15,214,68,65,16              ; movq          %xmm8,0x10(%r9,%rax,2)
15624  DB  235,213                             ; jmp           4100 <_sk_store_u16_be_sse41+0xdf>
15625
15626PUBLIC _sk_load_f32_sse41
15627_sk_load_f32_sse41 LABEL PROC
15628  DB  72,173                              ; lods          %ds:(%rsi),%rax
15629  DB  76,139,16                           ; mov           (%rax),%r10
15630  DB  76,141,12,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r9
15631  DB  72,137,208                          ; mov           %rdx,%rax
15632  DB  72,193,224,4                        ; shl           $0x4,%rax
15633  DB  69,15,16,4,2                        ; movups        (%r10,%rax,1),%xmm8
15634  DB  77,133,192                          ; test          %r8,%r8
15635  DB  117,66                              ; jne           418b <_sk_load_f32_sse41+0x60>
15636  DB  67,15,16,68,138,16                  ; movups        0x10(%r10,%r9,4),%xmm0
15637  DB  67,15,16,92,138,32                  ; movups        0x20(%r10,%r9,4),%xmm3
15638  DB  71,15,16,76,138,48                  ; movups        0x30(%r10,%r9,4),%xmm9
15639  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15640  DB  15,20,208                           ; unpcklps      %xmm0,%xmm2
15641  DB  15,40,203                           ; movaps        %xmm3,%xmm1
15642  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
15643  DB  68,15,21,192                        ; unpckhps      %xmm0,%xmm8
15644  DB  65,15,21,217                        ; unpckhps      %xmm9,%xmm3
15645  DB  15,40,194                           ; movaps        %xmm2,%xmm0
15646  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
15647  DB  15,18,202                           ; movhlps       %xmm2,%xmm1
15648  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
15649  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
15650  DB  65,15,18,216                        ; movhlps       %xmm8,%xmm3
15651  DB  72,173                              ; lods          %ds:(%rsi),%rax
15652  DB  255,224                             ; jmpq          *%rax
15653  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
15654  DB  73,131,248,1                        ; cmp           $0x1,%r8
15655  DB  117,8                               ; jne           419d <_sk_load_f32_sse41+0x72>
15656  DB  15,87,219                           ; xorps         %xmm3,%xmm3
15657  DB  15,87,192                           ; xorps         %xmm0,%xmm0
15658  DB  235,190                             ; jmp           415b <_sk_load_f32_sse41+0x30>
15659  DB  67,15,16,68,138,16                  ; movups        0x10(%r10,%r9,4),%xmm0
15660  DB  73,131,248,3                        ; cmp           $0x3,%r8
15661  DB  114,8                               ; jb            41b1 <_sk_load_f32_sse41+0x86>
15662  DB  67,15,16,92,138,32                  ; movups        0x20(%r10,%r9,4),%xmm3
15663  DB  235,170                             ; jmp           415b <_sk_load_f32_sse41+0x30>
15664  DB  15,87,219                           ; xorps         %xmm3,%xmm3
15665  DB  235,165                             ; jmp           415b <_sk_load_f32_sse41+0x30>
15666
15667PUBLIC _sk_store_f32_sse41
15668_sk_store_f32_sse41 LABEL PROC
15669  DB  72,173                              ; lods          %ds:(%rsi),%rax
15670  DB  76,139,16                           ; mov           (%rax),%r10
15671  DB  76,141,12,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r9
15672  DB  72,137,208                          ; mov           %rdx,%rax
15673  DB  72,193,224,4                        ; shl           $0x4,%rax
15674  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15675  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
15676  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
15677  DB  68,15,20,195                        ; unpcklps      %xmm3,%xmm8
15678  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
15679  DB  68,15,21,209                        ; unpckhps      %xmm1,%xmm10
15680  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
15681  DB  68,15,21,219                        ; unpckhps      %xmm3,%xmm11
15682  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
15683  DB  102,69,15,20,224                    ; unpcklpd      %xmm8,%xmm12
15684  DB  69,15,18,193                        ; movhlps       %xmm9,%xmm8
15685  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
15686  DB  102,69,15,20,203                    ; unpcklpd      %xmm11,%xmm9
15687  DB  102,69,15,17,36,2                   ; movupd        %xmm12,(%r10,%rax,1)
15688  DB  77,133,192                          ; test          %r8,%r8
15689  DB  117,29                              ; jne           4228 <_sk_store_f32_sse41+0x72>
15690  DB  102,69,15,21,211                    ; unpckhpd      %xmm11,%xmm10
15691  DB  71,15,17,68,138,16                  ; movups        %xmm8,0x10(%r10,%r9,4)
15692  DB  102,71,15,17,76,138,32              ; movupd        %xmm9,0x20(%r10,%r9,4)
15693  DB  102,71,15,17,84,138,48              ; movupd        %xmm10,0x30(%r10,%r9,4)
15694  DB  72,173                              ; lods          %ds:(%rsi),%rax
15695  DB  255,224                             ; jmpq          *%rax
15696  DB  73,131,248,1                        ; cmp           $0x1,%r8
15697  DB  116,246                             ; je            4224 <_sk_store_f32_sse41+0x6e>
15698  DB  71,15,17,68,138,16                  ; movups        %xmm8,0x10(%r10,%r9,4)
15699  DB  73,131,248,3                        ; cmp           $0x3,%r8
15700  DB  114,234                             ; jb            4224 <_sk_store_f32_sse41+0x6e>
15701  DB  102,71,15,17,76,138,32              ; movupd        %xmm9,0x20(%r10,%r9,4)
15702  DB  235,225                             ; jmp           4224 <_sk_store_f32_sse41+0x6e>
15703
15704PUBLIC _sk_clamp_x_sse41
15705_sk_clamp_x_sse41 LABEL PROC
15706  DB  72,173                              ; lods          %ds:(%rsi),%rax
15707  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
15708  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
15709  DB  243,15,16,0                         ; movss         (%rax),%xmm0
15710  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
15711  DB  68,15,93,192                        ; minps         %xmm0,%xmm8
15712  DB  72,173                              ; lods          %ds:(%rsi),%rax
15713  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
15714  DB  255,224                             ; jmpq          *%rax
15715
15716PUBLIC _sk_clamp_y_sse41
15717_sk_clamp_y_sse41 LABEL PROC
15718  DB  72,173                              ; lods          %ds:(%rsi),%rax
15719  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
15720  DB  68,15,95,193                        ; maxps         %xmm1,%xmm8
15721  DB  243,15,16,8                         ; movss         (%rax),%xmm1
15722  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
15723  DB  68,15,93,193                        ; minps         %xmm1,%xmm8
15724  DB  72,173                              ; lods          %ds:(%rsi),%rax
15725  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15726  DB  255,224                             ; jmpq          *%rax
15727
15728PUBLIC _sk_repeat_x_sse41
15729_sk_repeat_x_sse41 LABEL PROC
15730  DB  72,173                              ; lods          %ds:(%rsi),%rax
15731  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
15732  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
15733  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15734  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
15735  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
15736  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15737  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
15738  DB  72,173                              ; lods          %ds:(%rsi),%rax
15739  DB  255,224                             ; jmpq          *%rax
15740
15741PUBLIC _sk_repeat_y_sse41
15742_sk_repeat_y_sse41 LABEL PROC
15743  DB  72,173                              ; lods          %ds:(%rsi),%rax
15744  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
15745  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
15746  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
15747  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
15748  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
15749  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15750  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
15751  DB  72,173                              ; lods          %ds:(%rsi),%rax
15752  DB  255,224                             ; jmpq          *%rax
15753
15754PUBLIC _sk_mirror_x_sse41
15755_sk_mirror_x_sse41 LABEL PROC
15756  DB  72,173                              ; lods          %ds:(%rsi),%rax
15757  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
15758  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15759  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
15760  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
15761  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
15762  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
15763  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
15764  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
15765  DB  102,69,15,58,8,210,1                ; roundps       $0x1,%xmm10,%xmm10
15766  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
15767  DB  65,15,92,194                        ; subps         %xmm10,%xmm0
15768  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
15769  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
15770  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
15771  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
15772  DB  72,173                              ; lods          %ds:(%rsi),%rax
15773  DB  255,224                             ; jmpq          *%rax
15774
15775PUBLIC _sk_mirror_y_sse41
15776_sk_mirror_y_sse41 LABEL PROC
15777  DB  72,173                              ; lods          %ds:(%rsi),%rax
15778  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
15779  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
15780  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
15781  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
15782  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
15783  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
15784  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
15785  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
15786  DB  102,69,15,58,8,210,1                ; roundps       $0x1,%xmm10,%xmm10
15787  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
15788  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
15789  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
15790  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
15791  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
15792  DB  65,15,84,200                        ; andps         %xmm8,%xmm1
15793  DB  72,173                              ; lods          %ds:(%rsi),%rax
15794  DB  255,224                             ; jmpq          *%rax
15795
15796PUBLIC _sk_clamp_x_1_sse41
15797_sk_clamp_x_1_sse41 LABEL PROC
15798  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
15799  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
15800  DB  68,15,93,5,81,28,0,0                ; minps         0x1c51(%rip),%xmm8        # 5fc0 <_sk_callback_sse41+0xf26>
15801  DB  72,173                              ; lods          %ds:(%rsi),%rax
15802  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
15803  DB  255,224                             ; jmpq          *%rax
15804
15805PUBLIC _sk_repeat_x_1_sse41
15806_sk_repeat_x_1_sse41 LABEL PROC
15807  DB  102,68,15,58,8,192,1                ; roundps       $0x1,%xmm0,%xmm8
15808  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
15809  DB  72,173                              ; lods          %ds:(%rsi),%rax
15810  DB  255,224                             ; jmpq          *%rax
15811
15812PUBLIC _sk_mirror_x_1_sse41
15813_sk_mirror_x_1_sse41 LABEL PROC
15814  DB  68,15,40,5,66,28,0,0                ; movaps        0x1c42(%rip),%xmm8        # 5fd0 <_sk_callback_sse41+0xf36>
15815  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
15816  DB  68,15,40,13,70,28,0,0               ; movaps        0x1c46(%rip),%xmm9        # 5fe0 <_sk_callback_sse41+0xf46>
15817  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
15818  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
15819  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
15820  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
15821  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
15822  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
15823  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
15824  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
15825  DB  72,173                              ; lods          %ds:(%rsi),%rax
15826  DB  255,224                             ; jmpq          *%rax
15827
15828PUBLIC _sk_luminance_to_alpha_sse41
15829_sk_luminance_to_alpha_sse41 LABEL PROC
15830  DB  15,40,218                           ; movaps        %xmm2,%xmm3
15831  DB  15,89,5,37,28,0,0                   ; mulps         0x1c25(%rip),%xmm0        # 5ff0 <_sk_callback_sse41+0xf56>
15832  DB  15,89,13,46,28,0,0                  ; mulps         0x1c2e(%rip),%xmm1        # 6000 <_sk_callback_sse41+0xf66>
15833  DB  15,88,200                           ; addps         %xmm0,%xmm1
15834  DB  15,89,29,52,28,0,0                  ; mulps         0x1c34(%rip),%xmm3        # 6010 <_sk_callback_sse41+0xf76>
15835  DB  15,88,217                           ; addps         %xmm1,%xmm3
15836  DB  72,173                              ; lods          %ds:(%rsi),%rax
15837  DB  15,87,192                           ; xorps         %xmm0,%xmm0
15838  DB  15,87,201                           ; xorps         %xmm1,%xmm1
15839  DB  15,87,210                           ; xorps         %xmm2,%xmm2
15840  DB  255,224                             ; jmpq          *%rax
15841
15842PUBLIC _sk_matrix_2x3_sse41
15843_sk_matrix_2x3_sse41 LABEL PROC
15844  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
15845  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15846  DB  72,173                              ; lods          %ds:(%rsi),%rax
15847  DB  243,15,16,0                         ; movss         (%rax),%xmm0
15848  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
15849  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
15850  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
15851  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
15852  DB  243,68,15,16,88,16                  ; movss         0x10(%rax),%xmm11
15853  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
15854  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
15855  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
15856  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15857  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
15858  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
15859  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
15860  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
15861  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
15862  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
15863  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
15864  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
15865  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15866  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
15867  DB  72,173                              ; lods          %ds:(%rsi),%rax
15868  DB  255,224                             ; jmpq          *%rax
15869
15870PUBLIC _sk_matrix_3x4_sse41
15871_sk_matrix_3x4_sse41 LABEL PROC
15872  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
15873  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15874  DB  72,173                              ; lods          %ds:(%rsi),%rax
15875  DB  243,15,16,0                         ; movss         (%rax),%xmm0
15876  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
15877  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
15878  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
15879  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
15880  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
15881  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
15882  DB  243,68,15,16,96,36                  ; movss         0x24(%rax),%xmm12
15883  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
15884  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
15885  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
15886  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
15887  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
15888  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15889  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
15890  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
15891  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
15892  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
15893  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
15894  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
15895  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
15896  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
15897  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
15898  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
15899  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
15900  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
15901  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15902  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
15903  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
15904  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
15905  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
15906  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
15907  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
15908  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
15909  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
15910  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
15911  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
15912  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
15913  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
15914  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
15915  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
15916  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
15917  DB  72,173                              ; lods          %ds:(%rsi),%rax
15918  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
15919  DB  255,224                             ; jmpq          *%rax
15920
15921PUBLIC _sk_matrix_4x5_sse41
15922_sk_matrix_4x5_sse41 LABEL PROC
15923  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
15924  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15925  DB  72,173                              ; lods          %ds:(%rsi),%rax
15926  DB  243,15,16,0                         ; movss         (%rax),%xmm0
15927  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
15928  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
15929  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
15930  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
15931  DB  243,68,15,16,88,32                  ; movss         0x20(%rax),%xmm11
15932  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
15933  DB  243,68,15,16,96,48                  ; movss         0x30(%rax),%xmm12
15934  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
15935  DB  243,68,15,16,104,64                 ; movss         0x40(%rax),%xmm13
15936  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
15937  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
15938  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
15939  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
15940  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
15941  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
15942  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
15943  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15944  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
15945  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
15946  DB  243,68,15,16,80,20                  ; movss         0x14(%rax),%xmm10
15947  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
15948  DB  243,68,15,16,88,36                  ; movss         0x24(%rax),%xmm11
15949  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
15950  DB  243,68,15,16,96,52                  ; movss         0x34(%rax),%xmm12
15951  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
15952  DB  243,68,15,16,104,68                 ; movss         0x44(%rax),%xmm13
15953  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
15954  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
15955  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
15956  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
15957  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
15958  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
15959  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
15960  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15961  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
15962  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
15963  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
15964  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
15965  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
15966  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
15967  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
15968  DB  243,68,15,16,104,56                 ; movss         0x38(%rax),%xmm13
15969  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
15970  DB  243,68,15,16,112,72                 ; movss         0x48(%rax),%xmm14
15971  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
15972  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
15973  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
15974  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
15975  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
15976  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
15977  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
15978  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
15979  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
15980  DB  243,68,15,16,88,12                  ; movss         0xc(%rax),%xmm11
15981  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
15982  DB  243,68,15,16,96,28                  ; movss         0x1c(%rax),%xmm12
15983  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
15984  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
15985  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
15986  DB  243,68,15,16,112,60                 ; movss         0x3c(%rax),%xmm14
15987  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
15988  DB  243,68,15,16,120,76                 ; movss         0x4c(%rax),%xmm15
15989  DB  69,15,198,255,0                     ; shufps        $0x0,%xmm15,%xmm15
15990  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
15991  DB  69,15,88,247                        ; addps         %xmm15,%xmm14
15992  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
15993  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
15994  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
15995  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
15996  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
15997  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
15998  DB  72,173                              ; lods          %ds:(%rsi),%rax
15999  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
16000  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
16001  DB  255,224                             ; jmpq          *%rax
16002
16003PUBLIC _sk_matrix_4x3_sse41
16004_sk_matrix_4x3_sse41 LABEL PROC
16005  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
16006  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16007  DB  72,173                              ; lods          %ds:(%rsi),%rax
16008  DB  243,15,16,0                         ; movss         (%rax),%xmm0
16009  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
16010  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
16011  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
16012  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16013  DB  243,15,16,88,32                     ; movss         0x20(%rax),%xmm3
16014  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16015  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
16016  DB  15,88,211                           ; addps         %xmm3,%xmm2
16017  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16018  DB  15,88,194                           ; addps         %xmm2,%xmm0
16019  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
16020  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
16021  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16022  DB  243,15,16,88,36                     ; movss         0x24(%rax),%xmm3
16023  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16024  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
16025  DB  15,88,211                           ; addps         %xmm3,%xmm2
16026  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16027  DB  15,88,202                           ; addps         %xmm2,%xmm1
16028  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
16029  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16030  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
16031  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16032  DB  243,68,15,16,80,40                  ; movss         0x28(%rax),%xmm10
16033  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16034  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
16035  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
16036  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16037  DB  15,88,211                           ; addps         %xmm3,%xmm2
16038  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
16039  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16040  DB  243,68,15,16,80,28                  ; movss         0x1c(%rax),%xmm10
16041  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16042  DB  243,68,15,16,88,44                  ; movss         0x2c(%rax),%xmm11
16043  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16044  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16045  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16046  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16047  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
16048  DB  72,173                              ; lods          %ds:(%rsi),%rax
16049  DB  255,224                             ; jmpq          *%rax
16050
16051PUBLIC _sk_matrix_perspective_sse41
16052_sk_matrix_perspective_sse41 LABEL PROC
16053  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16054  DB  72,173                              ; lods          %ds:(%rsi),%rax
16055  DB  243,15,16,0                         ; movss         (%rax),%xmm0
16056  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
16057  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
16058  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16059  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
16060  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16061  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
16062  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
16063  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16064  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
16065  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
16066  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16067  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
16068  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16069  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
16070  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16071  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
16072  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16073  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
16074  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
16075  DB  243,68,15,16,80,24                  ; movss         0x18(%rax),%xmm10
16076  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16077  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
16078  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16079  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
16080  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
16081  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
16082  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
16083  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
16084  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16085  DB  65,15,83,202                        ; rcpps         %xmm10,%xmm1
16086  DB  15,89,193                           ; mulps         %xmm1,%xmm0
16087  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
16088  DB  72,173                              ; lods          %ds:(%rsi),%rax
16089  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
16090  DB  255,224                             ; jmpq          *%rax
16091
16092PUBLIC _sk_evenly_spaced_gradient_sse41
16093_sk_evenly_spaced_gradient_sse41 LABEL PROC
16094  DB  65,87                               ; push          %r15
16095  DB  65,86                               ; push          %r14
16096  DB  83                                  ; push          %rbx
16097  DB  72,173                              ; lods          %ds:(%rsi),%rax
16098  DB  72,139,24                           ; mov           (%rax),%rbx
16099  DB  76,139,112,8                        ; mov           0x8(%rax),%r14
16100  DB  72,255,203                          ; dec           %rbx
16101  DB  120,7                               ; js            481a <_sk_evenly_spaced_gradient_sse41+0x1a>
16102  DB  243,72,15,42,203                    ; cvtsi2ss      %rbx,%xmm1
16103  DB  235,21                              ; jmp           482f <_sk_evenly_spaced_gradient_sse41+0x2f>
16104  DB  73,137,217                          ; mov           %rbx,%r9
16105  DB  73,209,233                          ; shr           %r9
16106  DB  131,227,1                           ; and           $0x1,%ebx
16107  DB  76,9,203                            ; or            %r9,%rbx
16108  DB  243,72,15,42,203                    ; cvtsi2ss      %rbx,%xmm1
16109  DB  243,15,88,201                       ; addss         %xmm1,%xmm1
16110  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
16111  DB  15,89,200                           ; mulps         %xmm0,%xmm1
16112  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
16113  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
16114  DB  69,137,202                          ; mov           %r9d,%r10d
16115  DB  73,193,233,32                       ; shr           $0x20,%r9
16116  DB  102,73,15,126,203                   ; movq          %xmm1,%r11
16117  DB  69,137,223                          ; mov           %r11d,%r15d
16118  DB  73,193,235,32                       ; shr           $0x20,%r11
16119  DB  243,71,15,16,4,190                  ; movss         (%r14,%r15,4),%xmm8
16120  DB  102,71,15,58,33,4,158,16            ; insertps      $0x10,(%r14,%r11,4),%xmm8
16121  DB  243,67,15,16,12,150                 ; movss         (%r14,%r10,4),%xmm1
16122  DB  102,68,15,58,33,193,32              ; insertps      $0x20,%xmm1,%xmm8
16123  DB  243,67,15,16,12,142                 ; movss         (%r14,%r9,4),%xmm1
16124  DB  102,68,15,58,33,193,48              ; insertps      $0x30,%xmm1,%xmm8
16125  DB  72,139,88,40                        ; mov           0x28(%rax),%rbx
16126  DB  243,70,15,16,12,187                 ; movss         (%rbx,%r15,4),%xmm9
16127  DB  102,70,15,58,33,12,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm9
16128  DB  243,66,15,16,12,147                 ; movss         (%rbx,%r10,4),%xmm1
16129  DB  102,68,15,58,33,201,32              ; insertps      $0x20,%xmm1,%xmm9
16130  DB  243,66,15,16,12,139                 ; movss         (%rbx,%r9,4),%xmm1
16131  DB  102,68,15,58,33,201,48              ; insertps      $0x30,%xmm1,%xmm9
16132  DB  72,139,88,16                        ; mov           0x10(%rax),%rbx
16133  DB  243,66,15,16,12,187                 ; movss         (%rbx,%r15,4),%xmm1
16134  DB  102,66,15,58,33,12,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm1
16135  DB  243,66,15,16,20,147                 ; movss         (%rbx,%r10,4),%xmm2
16136  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
16137  DB  243,66,15,16,20,139                 ; movss         (%rbx,%r9,4),%xmm2
16138  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
16139  DB  72,139,88,48                        ; mov           0x30(%rax),%rbx
16140  DB  243,70,15,16,20,187                 ; movss         (%rbx,%r15,4),%xmm10
16141  DB  102,70,15,58,33,20,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm10
16142  DB  243,66,15,16,20,147                 ; movss         (%rbx,%r10,4),%xmm2
16143  DB  102,68,15,58,33,210,32              ; insertps      $0x20,%xmm2,%xmm10
16144  DB  243,66,15,16,20,139                 ; movss         (%rbx,%r9,4),%xmm2
16145  DB  102,68,15,58,33,210,48              ; insertps      $0x30,%xmm2,%xmm10
16146  DB  72,139,88,24                        ; mov           0x18(%rax),%rbx
16147  DB  243,66,15,16,20,187                 ; movss         (%rbx,%r15,4),%xmm2
16148  DB  102,66,15,58,33,20,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm2
16149  DB  243,66,15,16,28,147                 ; movss         (%rbx,%r10,4),%xmm3
16150  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
16151  DB  243,66,15,16,28,139                 ; movss         (%rbx,%r9,4),%xmm3
16152  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
16153  DB  72,139,88,56                        ; mov           0x38(%rax),%rbx
16154  DB  243,70,15,16,28,187                 ; movss         (%rbx,%r15,4),%xmm11
16155  DB  102,70,15,58,33,28,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm11
16156  DB  243,66,15,16,28,147                 ; movss         (%rbx,%r10,4),%xmm3
16157  DB  102,68,15,58,33,219,32              ; insertps      $0x20,%xmm3,%xmm11
16158  DB  243,66,15,16,28,139                 ; movss         (%rbx,%r9,4),%xmm3
16159  DB  102,68,15,58,33,219,48              ; insertps      $0x30,%xmm3,%xmm11
16160  DB  72,139,88,32                        ; mov           0x20(%rax),%rbx
16161  DB  243,66,15,16,28,187                 ; movss         (%rbx,%r15,4),%xmm3
16162  DB  102,66,15,58,33,28,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm3
16163  DB  243,70,15,16,36,147                 ; movss         (%rbx,%r10,4),%xmm12
16164  DB  102,65,15,58,33,220,32              ; insertps      $0x20,%xmm12,%xmm3
16165  DB  243,70,15,16,36,139                 ; movss         (%rbx,%r9,4),%xmm12
16166  DB  102,65,15,58,33,220,48              ; insertps      $0x30,%xmm12,%xmm3
16167  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
16168  DB  243,70,15,16,36,184                 ; movss         (%rax,%r15,4),%xmm12
16169  DB  102,70,15,58,33,36,152,16           ; insertps      $0x10,(%rax,%r11,4),%xmm12
16170  DB  243,70,15,16,44,144                 ; movss         (%rax,%r10,4),%xmm13
16171  DB  102,69,15,58,33,229,32              ; insertps      $0x20,%xmm13,%xmm12
16172  DB  243,70,15,16,44,136                 ; movss         (%rax,%r9,4),%xmm13
16173  DB  102,69,15,58,33,229,48              ; insertps      $0x30,%xmm13,%xmm12
16174  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
16175  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
16176  DB  15,89,200                           ; mulps         %xmm0,%xmm1
16177  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
16178  DB  15,89,208                           ; mulps         %xmm0,%xmm2
16179  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
16180  DB  15,89,216                           ; mulps         %xmm0,%xmm3
16181  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
16182  DB  72,173                              ; lods          %ds:(%rsi),%rax
16183  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16184  DB  91                                  ; pop           %rbx
16185  DB  65,94                               ; pop           %r14
16186  DB  65,95                               ; pop           %r15
16187  DB  255,224                             ; jmpq          *%rax
16188
16189PUBLIC _sk_gauss_a_to_rgba_sse41
16190_sk_gauss_a_to_rgba_sse41 LABEL PROC
16191  DB  15,40,5,67,22,0,0                   ; movaps        0x1643(%rip),%xmm0        # 6020 <_sk_callback_sse41+0xf86>
16192  DB  15,89,195                           ; mulps         %xmm3,%xmm0
16193  DB  15,88,5,73,22,0,0                   ; addps         0x1649(%rip),%xmm0        # 6030 <_sk_callback_sse41+0xf96>
16194  DB  15,89,195                           ; mulps         %xmm3,%xmm0
16195  DB  15,88,5,79,22,0,0                   ; addps         0x164f(%rip),%xmm0        # 6040 <_sk_callback_sse41+0xfa6>
16196  DB  15,89,195                           ; mulps         %xmm3,%xmm0
16197  DB  15,88,5,85,22,0,0                   ; addps         0x1655(%rip),%xmm0        # 6050 <_sk_callback_sse41+0xfb6>
16198  DB  15,89,195                           ; mulps         %xmm3,%xmm0
16199  DB  15,88,5,91,22,0,0                   ; addps         0x165b(%rip),%xmm0        # 6060 <_sk_callback_sse41+0xfc6>
16200  DB  72,173                              ; lods          %ds:(%rsi),%rax
16201  DB  15,40,200                           ; movaps        %xmm0,%xmm1
16202  DB  15,40,208                           ; movaps        %xmm0,%xmm2
16203  DB  15,40,216                           ; movaps        %xmm0,%xmm3
16204  DB  255,224                             ; jmpq          *%rax
16205
16206PUBLIC _sk_gradient_sse41
16207_sk_gradient_sse41 LABEL PROC
16208  DB  65,87                               ; push          %r15
16209  DB  65,86                               ; push          %r14
16210  DB  83                                  ; push          %rbx
16211  DB  72,173                              ; lods          %ds:(%rsi),%rax
16212  DB  76,139,8                            ; mov           (%rax),%r9
16213  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
16214  DB  73,131,249,2                        ; cmp           $0x2,%r9
16215  DB  114,50                              ; jb            4a58 <_sk_gradient_sse41+0x46>
16216  DB  72,139,88,72                        ; mov           0x48(%rax),%rbx
16217  DB  73,255,201                          ; dec           %r9
16218  DB  72,131,195,4                        ; add           $0x4,%rbx
16219  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
16220  DB  15,40,21,52,22,0,0                  ; movaps        0x1634(%rip),%xmm2        # 6070 <_sk_callback_sse41+0xfd6>
16221  DB  243,15,16,27                        ; movss         (%rbx),%xmm3
16222  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16223  DB  15,194,216,2                        ; cmpleps       %xmm0,%xmm3
16224  DB  15,84,218                           ; andps         %xmm2,%xmm3
16225  DB  102,15,254,203                      ; paddd         %xmm3,%xmm1
16226  DB  72,131,195,4                        ; add           $0x4,%rbx
16227  DB  73,255,201                          ; dec           %r9
16228  DB  117,228                             ; jne           4a3c <_sk_gradient_sse41+0x2a>
16229  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
16230  DB  69,137,202                          ; mov           %r9d,%r10d
16231  DB  73,193,233,32                       ; shr           $0x20,%r9
16232  DB  102,73,15,126,203                   ; movq          %xmm1,%r11
16233  DB  69,137,222                          ; mov           %r11d,%r14d
16234  DB  73,193,235,32                       ; shr           $0x20,%r11
16235  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
16236  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
16237  DB  243,70,15,16,4,179                  ; movss         (%rbx,%r14,4),%xmm8
16238  DB  102,70,15,58,33,4,155,16            ; insertps      $0x10,(%rbx,%r11,4),%xmm8
16239  DB  243,66,15,16,12,147                 ; movss         (%rbx,%r10,4),%xmm1
16240  DB  102,68,15,58,33,193,32              ; insertps      $0x20,%xmm1,%xmm8
16241  DB  243,66,15,16,12,139                 ; movss         (%rbx,%r9,4),%xmm1
16242  DB  102,68,15,58,33,193,48              ; insertps      $0x30,%xmm1,%xmm8
16243  DB  72,139,88,40                        ; mov           0x28(%rax),%rbx
16244  DB  243,70,15,16,12,179                 ; movss         (%rbx,%r14,4),%xmm9
16245  DB  102,70,15,58,33,12,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm9
16246  DB  243,66,15,16,12,147                 ; movss         (%rbx,%r10,4),%xmm1
16247  DB  102,68,15,58,33,201,32              ; insertps      $0x20,%xmm1,%xmm9
16248  DB  243,66,15,16,12,139                 ; movss         (%rbx,%r9,4),%xmm1
16249  DB  102,68,15,58,33,201,48              ; insertps      $0x30,%xmm1,%xmm9
16250  DB  243,67,15,16,12,183                 ; movss         (%r15,%r14,4),%xmm1
16251  DB  102,67,15,58,33,12,159,16           ; insertps      $0x10,(%r15,%r11,4),%xmm1
16252  DB  243,67,15,16,20,151                 ; movss         (%r15,%r10,4),%xmm2
16253  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
16254  DB  243,67,15,16,20,143                 ; movss         (%r15,%r9,4),%xmm2
16255  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
16256  DB  72,139,88,48                        ; mov           0x30(%rax),%rbx
16257  DB  243,70,15,16,20,179                 ; movss         (%rbx,%r14,4),%xmm10
16258  DB  102,70,15,58,33,20,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm10
16259  DB  243,66,15,16,20,147                 ; movss         (%rbx,%r10,4),%xmm2
16260  DB  102,68,15,58,33,210,32              ; insertps      $0x20,%xmm2,%xmm10
16261  DB  243,66,15,16,20,139                 ; movss         (%rbx,%r9,4),%xmm2
16262  DB  102,68,15,58,33,210,48              ; insertps      $0x30,%xmm2,%xmm10
16263  DB  72,139,88,24                        ; mov           0x18(%rax),%rbx
16264  DB  243,66,15,16,20,179                 ; movss         (%rbx,%r14,4),%xmm2
16265  DB  102,66,15,58,33,20,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm2
16266  DB  243,66,15,16,28,147                 ; movss         (%rbx,%r10,4),%xmm3
16267  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
16268  DB  243,66,15,16,28,139                 ; movss         (%rbx,%r9,4),%xmm3
16269  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
16270  DB  72,139,88,56                        ; mov           0x38(%rax),%rbx
16271  DB  243,70,15,16,28,179                 ; movss         (%rbx,%r14,4),%xmm11
16272  DB  102,70,15,58,33,28,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm11
16273  DB  243,66,15,16,28,147                 ; movss         (%rbx,%r10,4),%xmm3
16274  DB  102,68,15,58,33,219,32              ; insertps      $0x20,%xmm3,%xmm11
16275  DB  243,66,15,16,28,139                 ; movss         (%rbx,%r9,4),%xmm3
16276  DB  102,68,15,58,33,219,48              ; insertps      $0x30,%xmm3,%xmm11
16277  DB  72,139,88,32                        ; mov           0x20(%rax),%rbx
16278  DB  243,66,15,16,28,179                 ; movss         (%rbx,%r14,4),%xmm3
16279  DB  102,66,15,58,33,28,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm3
16280  DB  243,70,15,16,36,147                 ; movss         (%rbx,%r10,4),%xmm12
16281  DB  102,65,15,58,33,220,32              ; insertps      $0x20,%xmm12,%xmm3
16282  DB  243,70,15,16,36,139                 ; movss         (%rbx,%r9,4),%xmm12
16283  DB  102,65,15,58,33,220,48              ; insertps      $0x30,%xmm12,%xmm3
16284  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
16285  DB  243,70,15,16,36,176                 ; movss         (%rax,%r14,4),%xmm12
16286  DB  102,70,15,58,33,36,152,16           ; insertps      $0x10,(%rax,%r11,4),%xmm12
16287  DB  243,70,15,16,44,144                 ; movss         (%rax,%r10,4),%xmm13
16288  DB  102,69,15,58,33,229,32              ; insertps      $0x20,%xmm13,%xmm12
16289  DB  243,70,15,16,44,136                 ; movss         (%rax,%r9,4),%xmm13
16290  DB  102,69,15,58,33,229,48              ; insertps      $0x30,%xmm13,%xmm12
16291  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
16292  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
16293  DB  15,89,200                           ; mulps         %xmm0,%xmm1
16294  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
16295  DB  15,89,208                           ; mulps         %xmm0,%xmm2
16296  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
16297  DB  15,89,216                           ; mulps         %xmm0,%xmm3
16298  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
16299  DB  72,173                              ; lods          %ds:(%rsi),%rax
16300  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16301  DB  91                                  ; pop           %rbx
16302  DB  65,94                               ; pop           %r14
16303  DB  65,95                               ; pop           %r15
16304  DB  255,224                             ; jmpq          *%rax
16305
16306PUBLIC _sk_evenly_spaced_2_stop_gradient_sse41
16307_sk_evenly_spaced_2_stop_gradient_sse41 LABEL PROC
16308  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16309  DB  72,173                              ; lods          %ds:(%rsi),%rax
16310  DB  243,15,16,0                         ; movss         (%rax),%xmm0
16311  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
16312  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
16313  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
16314  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16315  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16316  DB  15,88,194                           ; addps         %xmm2,%xmm0
16317  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
16318  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
16319  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16320  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16321  DB  15,88,202                           ; addps         %xmm2,%xmm1
16322  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
16323  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16324  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
16325  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16326  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16327  DB  15,88,211                           ; addps         %xmm3,%xmm2
16328  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
16329  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16330  DB  243,68,15,16,72,28                  ; movss         0x1c(%rax),%xmm9
16331  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16332  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16333  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
16334  DB  72,173                              ; lods          %ds:(%rsi),%rax
16335  DB  255,224                             ; jmpq          *%rax
16336
16337PUBLIC _sk_xy_to_unit_angle_sse41
16338_sk_xy_to_unit_angle_sse41 LABEL PROC
16339  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
16340  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16341  DB  15,87,192                           ; xorps         %xmm0,%xmm0
16342  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
16343  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
16344  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
16345  DB  68,15,92,217                        ; subps         %xmm1,%xmm11
16346  DB  68,15,84,217                        ; andps         %xmm1,%xmm11
16347  DB  68,15,40,224                        ; movaps        %xmm0,%xmm12
16348  DB  69,15,93,227                        ; minps         %xmm11,%xmm12
16349  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
16350  DB  69,15,95,211                        ; maxps         %xmm11,%xmm10
16351  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
16352  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
16353  DB  69,15,89,237                        ; mulps         %xmm13,%xmm13
16354  DB  68,15,40,21,213,19,0,0              ; movaps        0x13d5(%rip),%xmm10        # 6080 <_sk_callback_sse41+0xfe6>
16355  DB  69,15,89,213                        ; mulps         %xmm13,%xmm10
16356  DB  68,15,88,21,217,19,0,0              ; addps         0x13d9(%rip),%xmm10        # 6090 <_sk_callback_sse41+0xff6>
16357  DB  69,15,89,213                        ; mulps         %xmm13,%xmm10
16358  DB  68,15,88,21,221,19,0,0              ; addps         0x13dd(%rip),%xmm10        # 60a0 <_sk_callback_sse41+0x1006>
16359  DB  69,15,89,213                        ; mulps         %xmm13,%xmm10
16360  DB  68,15,88,21,225,19,0,0              ; addps         0x13e1(%rip),%xmm10        # 60b0 <_sk_callback_sse41+0x1016>
16361  DB  69,15,89,212                        ; mulps         %xmm12,%xmm10
16362  DB  65,15,194,195,1                     ; cmpltps       %xmm11,%xmm0
16363  DB  68,15,40,29,224,19,0,0              ; movaps        0x13e0(%rip),%xmm11        # 60c0 <_sk_callback_sse41+0x1026>
16364  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
16365  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
16366  DB  69,15,194,200,1                     ; cmpltps       %xmm8,%xmm9
16367  DB  68,15,40,29,217,19,0,0              ; movaps        0x13d9(%rip),%xmm11        # 60d0 <_sk_callback_sse41+0x1036>
16368  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
16369  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
16370  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
16371  DB  15,40,193                           ; movaps        %xmm1,%xmm0
16372  DB  65,15,194,192,1                     ; cmpltps       %xmm8,%xmm0
16373  DB  68,15,40,13,203,19,0,0              ; movaps        0x13cb(%rip),%xmm9        # 60e0 <_sk_callback_sse41+0x1046>
16374  DB  69,15,92,202                        ; subps         %xmm10,%xmm9
16375  DB  102,69,15,56,20,209                 ; blendvps      %xmm0,%xmm9,%xmm10
16376  DB  69,15,194,194,7                     ; cmpordps      %xmm10,%xmm8
16377  DB  69,15,84,194                        ; andps         %xmm10,%xmm8
16378  DB  72,173                              ; lods          %ds:(%rsi),%rax
16379  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16380  DB  255,224                             ; jmpq          *%rax
16381
16382PUBLIC _sk_xy_to_radius_sse41
16383_sk_xy_to_radius_sse41 LABEL PROC
16384  DB  15,89,192                           ; mulps         %xmm0,%xmm0
16385  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
16386  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
16387  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
16388  DB  65,15,81,192                        ; sqrtps        %xmm8,%xmm0
16389  DB  72,173                              ; lods          %ds:(%rsi),%rax
16390  DB  255,224                             ; jmpq          *%rax
16391
16392PUBLIC _sk_save_xy_sse41
16393_sk_save_xy_sse41 LABEL PROC
16394  DB  72,173                              ; lods          %ds:(%rsi),%rax
16395  DB  68,15,40,5,159,19,0,0               ; movaps        0x139f(%rip),%xmm8        # 60f0 <_sk_callback_sse41+0x1056>
16396  DB  15,17,0                             ; movups        %xmm0,(%rax)
16397  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
16398  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
16399  DB  102,69,15,58,8,209,1                ; roundps       $0x1,%xmm9,%xmm10
16400  DB  69,15,92,202                        ; subps         %xmm10,%xmm9
16401  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
16402  DB  102,69,15,58,8,208,1                ; roundps       $0x1,%xmm8,%xmm10
16403  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
16404  DB  15,17,72,32                         ; movups        %xmm1,0x20(%rax)
16405  DB  68,15,17,72,64                      ; movups        %xmm9,0x40(%rax)
16406  DB  68,15,17,64,96                      ; movups        %xmm8,0x60(%rax)
16407  DB  72,173                              ; lods          %ds:(%rsi),%rax
16408  DB  255,224                             ; jmpq          *%rax
16409
16410PUBLIC _sk_accumulate_sse41
16411_sk_accumulate_sse41 LABEL PROC
16412  DB  72,173                              ; lods          %ds:(%rsi),%rax
16413  DB  68,15,16,128,128,0,0,0              ; movups        0x80(%rax),%xmm8
16414  DB  68,15,16,136,160,0,0,0              ; movups        0xa0(%rax),%xmm9
16415  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
16416  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
16417  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
16418  DB  65,15,88,224                        ; addps         %xmm8,%xmm4
16419  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
16420  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
16421  DB  65,15,88,232                        ; addps         %xmm8,%xmm5
16422  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
16423  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
16424  DB  65,15,88,240                        ; addps         %xmm8,%xmm6
16425  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
16426  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
16427  DB  72,173                              ; lods          %ds:(%rsi),%rax
16428  DB  255,224                             ; jmpq          *%rax
16429
16430PUBLIC _sk_bilinear_nx_sse41
16431_sk_bilinear_nx_sse41 LABEL PROC
16432  DB  72,173                              ; lods          %ds:(%rsi),%rax
16433  DB  15,16,0                             ; movups        (%rax),%xmm0
16434  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
16435  DB  15,88,5,33,19,0,0                   ; addps         0x1321(%rip),%xmm0        # 6100 <_sk_callback_sse41+0x1066>
16436  DB  68,15,40,13,41,19,0,0               ; movaps        0x1329(%rip),%xmm9        # 6110 <_sk_callback_sse41+0x1076>
16437  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
16438  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
16439  DB  72,173                              ; lods          %ds:(%rsi),%rax
16440  DB  255,224                             ; jmpq          *%rax
16441
16442PUBLIC _sk_bilinear_px_sse41
16443_sk_bilinear_px_sse41 LABEL PROC
16444  DB  72,173                              ; lods          %ds:(%rsi),%rax
16445  DB  15,16,0                             ; movups        (%rax),%xmm0
16446  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
16447  DB  15,88,5,24,19,0,0                   ; addps         0x1318(%rip),%xmm0        # 6120 <_sk_callback_sse41+0x1086>
16448  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
16449  DB  72,173                              ; lods          %ds:(%rsi),%rax
16450  DB  255,224                             ; jmpq          *%rax
16451
16452PUBLIC _sk_bilinear_ny_sse41
16453_sk_bilinear_ny_sse41 LABEL PROC
16454  DB  72,173                              ; lods          %ds:(%rsi),%rax
16455  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
16456  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
16457  DB  15,88,13,10,19,0,0                  ; addps         0x130a(%rip),%xmm1        # 6130 <_sk_callback_sse41+0x1096>
16458  DB  68,15,40,13,18,19,0,0               ; movaps        0x1312(%rip),%xmm9        # 6140 <_sk_callback_sse41+0x10a6>
16459  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
16460  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
16461  DB  72,173                              ; lods          %ds:(%rsi),%rax
16462  DB  255,224                             ; jmpq          *%rax
16463
16464PUBLIC _sk_bilinear_py_sse41
16465_sk_bilinear_py_sse41 LABEL PROC
16466  DB  72,173                              ; lods          %ds:(%rsi),%rax
16467  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
16468  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
16469  DB  15,88,13,0,19,0,0                   ; addps         0x1300(%rip),%xmm1        # 6150 <_sk_callback_sse41+0x10b6>
16470  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
16471  DB  72,173                              ; lods          %ds:(%rsi),%rax
16472  DB  255,224                             ; jmpq          *%rax
16473
16474PUBLIC _sk_bicubic_n3x_sse41
16475_sk_bicubic_n3x_sse41 LABEL PROC
16476  DB  72,173                              ; lods          %ds:(%rsi),%rax
16477  DB  15,16,0                             ; movups        (%rax),%xmm0
16478  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
16479  DB  15,88,5,243,18,0,0                  ; addps         0x12f3(%rip),%xmm0        # 6160 <_sk_callback_sse41+0x10c6>
16480  DB  68,15,40,13,251,18,0,0              ; movaps        0x12fb(%rip),%xmm9        # 6170 <_sk_callback_sse41+0x10d6>
16481  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
16482  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
16483  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
16484  DB  68,15,89,13,247,18,0,0              ; mulps         0x12f7(%rip),%xmm9        # 6180 <_sk_callback_sse41+0x10e6>
16485  DB  68,15,88,13,255,18,0,0              ; addps         0x12ff(%rip),%xmm9        # 6190 <_sk_callback_sse41+0x10f6>
16486  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
16487  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
16488  DB  72,173                              ; lods          %ds:(%rsi),%rax
16489  DB  255,224                             ; jmpq          *%rax
16490
16491PUBLIC _sk_bicubic_n1x_sse41
16492_sk_bicubic_n1x_sse41 LABEL PROC
16493  DB  72,173                              ; lods          %ds:(%rsi),%rax
16494  DB  15,16,0                             ; movups        (%rax),%xmm0
16495  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
16496  DB  15,88,5,238,18,0,0                  ; addps         0x12ee(%rip),%xmm0        # 61a0 <_sk_callback_sse41+0x1106>
16497  DB  68,15,40,13,246,18,0,0              ; movaps        0x12f6(%rip),%xmm9        # 61b0 <_sk_callback_sse41+0x1116>
16498  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
16499  DB  68,15,40,5,250,18,0,0               ; movaps        0x12fa(%rip),%xmm8        # 61c0 <_sk_callback_sse41+0x1126>
16500  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
16501  DB  68,15,88,5,254,18,0,0               ; addps         0x12fe(%rip),%xmm8        # 61d0 <_sk_callback_sse41+0x1136>
16502  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
16503  DB  68,15,88,5,2,19,0,0                 ; addps         0x1302(%rip),%xmm8        # 61e0 <_sk_callback_sse41+0x1146>
16504  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
16505  DB  68,15,88,5,6,19,0,0                 ; addps         0x1306(%rip),%xmm8        # 61f0 <_sk_callback_sse41+0x1156>
16506  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
16507  DB  72,173                              ; lods          %ds:(%rsi),%rax
16508  DB  255,224                             ; jmpq          *%rax
16509
16510PUBLIC _sk_bicubic_p1x_sse41
16511_sk_bicubic_p1x_sse41 LABEL PROC
16512  DB  72,173                              ; lods          %ds:(%rsi),%rax
16513  DB  68,15,40,5,0,19,0,0                 ; movaps        0x1300(%rip),%xmm8        # 6200 <_sk_callback_sse41+0x1166>
16514  DB  15,16,0                             ; movups        (%rax),%xmm0
16515  DB  68,15,16,72,64                      ; movups        0x40(%rax),%xmm9
16516  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
16517  DB  68,15,40,21,252,18,0,0              ; movaps        0x12fc(%rip),%xmm10        # 6210 <_sk_callback_sse41+0x1176>
16518  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16519  DB  68,15,88,21,0,19,0,0                ; addps         0x1300(%rip),%xmm10        # 6220 <_sk_callback_sse41+0x1186>
16520  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16521  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
16522  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16523  DB  68,15,88,21,252,18,0,0              ; addps         0x12fc(%rip),%xmm10        # 6230 <_sk_callback_sse41+0x1196>
16524  DB  68,15,17,144,128,0,0,0              ; movups        %xmm10,0x80(%rax)
16525  DB  72,173                              ; lods          %ds:(%rsi),%rax
16526  DB  255,224                             ; jmpq          *%rax
16527
16528PUBLIC _sk_bicubic_p3x_sse41
16529_sk_bicubic_p3x_sse41 LABEL PROC
16530  DB  72,173                              ; lods          %ds:(%rsi),%rax
16531  DB  15,16,0                             ; movups        (%rax),%xmm0
16532  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
16533  DB  15,88,5,239,18,0,0                  ; addps         0x12ef(%rip),%xmm0        # 6240 <_sk_callback_sse41+0x11a6>
16534  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
16535  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
16536  DB  68,15,89,5,239,18,0,0               ; mulps         0x12ef(%rip),%xmm8        # 6250 <_sk_callback_sse41+0x11b6>
16537  DB  68,15,88,5,247,18,0,0               ; addps         0x12f7(%rip),%xmm8        # 6260 <_sk_callback_sse41+0x11c6>
16538  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
16539  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
16540  DB  72,173                              ; lods          %ds:(%rsi),%rax
16541  DB  255,224                             ; jmpq          *%rax
16542
16543PUBLIC _sk_bicubic_n3y_sse41
16544_sk_bicubic_n3y_sse41 LABEL PROC
16545  DB  72,173                              ; lods          %ds:(%rsi),%rax
16546  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
16547  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
16548  DB  15,88,13,229,18,0,0                 ; addps         0x12e5(%rip),%xmm1        # 6270 <_sk_callback_sse41+0x11d6>
16549  DB  68,15,40,13,237,18,0,0              ; movaps        0x12ed(%rip),%xmm9        # 6280 <_sk_callback_sse41+0x11e6>
16550  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
16551  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
16552  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
16553  DB  68,15,89,13,233,18,0,0              ; mulps         0x12e9(%rip),%xmm9        # 6290 <_sk_callback_sse41+0x11f6>
16554  DB  68,15,88,13,241,18,0,0              ; addps         0x12f1(%rip),%xmm9        # 62a0 <_sk_callback_sse41+0x1206>
16555  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
16556  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
16557  DB  72,173                              ; lods          %ds:(%rsi),%rax
16558  DB  255,224                             ; jmpq          *%rax
16559
16560PUBLIC _sk_bicubic_n1y_sse41
16561_sk_bicubic_n1y_sse41 LABEL PROC
16562  DB  72,173                              ; lods          %ds:(%rsi),%rax
16563  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
16564  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
16565  DB  15,88,13,223,18,0,0                 ; addps         0x12df(%rip),%xmm1        # 62b0 <_sk_callback_sse41+0x1216>
16566  DB  68,15,40,13,231,18,0,0              ; movaps        0x12e7(%rip),%xmm9        # 62c0 <_sk_callback_sse41+0x1226>
16567  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
16568  DB  68,15,40,5,235,18,0,0               ; movaps        0x12eb(%rip),%xmm8        # 62d0 <_sk_callback_sse41+0x1236>
16569  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
16570  DB  68,15,88,5,239,18,0,0               ; addps         0x12ef(%rip),%xmm8        # 62e0 <_sk_callback_sse41+0x1246>
16571  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
16572  DB  68,15,88,5,243,18,0,0               ; addps         0x12f3(%rip),%xmm8        # 62f0 <_sk_callback_sse41+0x1256>
16573  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
16574  DB  68,15,88,5,247,18,0,0               ; addps         0x12f7(%rip),%xmm8        # 6300 <_sk_callback_sse41+0x1266>
16575  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
16576  DB  72,173                              ; lods          %ds:(%rsi),%rax
16577  DB  255,224                             ; jmpq          *%rax
16578
16579PUBLIC _sk_bicubic_p1y_sse41
16580_sk_bicubic_p1y_sse41 LABEL PROC
16581  DB  72,173                              ; lods          %ds:(%rsi),%rax
16582  DB  68,15,40,5,241,18,0,0               ; movaps        0x12f1(%rip),%xmm8        # 6310 <_sk_callback_sse41+0x1276>
16583  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
16584  DB  68,15,16,72,96                      ; movups        0x60(%rax),%xmm9
16585  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
16586  DB  68,15,40,21,236,18,0,0              ; movaps        0x12ec(%rip),%xmm10        # 6320 <_sk_callback_sse41+0x1286>
16587  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16588  DB  68,15,88,21,240,18,0,0              ; addps         0x12f0(%rip),%xmm10        # 6330 <_sk_callback_sse41+0x1296>
16589  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16590  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
16591  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16592  DB  68,15,88,21,236,18,0,0              ; addps         0x12ec(%rip),%xmm10        # 6340 <_sk_callback_sse41+0x12a6>
16593  DB  68,15,17,144,160,0,0,0              ; movups        %xmm10,0xa0(%rax)
16594  DB  72,173                              ; lods          %ds:(%rsi),%rax
16595  DB  255,224                             ; jmpq          *%rax
16596
16597PUBLIC _sk_bicubic_p3y_sse41
16598_sk_bicubic_p3y_sse41 LABEL PROC
16599  DB  72,173                              ; lods          %ds:(%rsi),%rax
16600  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
16601  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
16602  DB  15,88,13,222,18,0,0                 ; addps         0x12de(%rip),%xmm1        # 6350 <_sk_callback_sse41+0x12b6>
16603  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
16604  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
16605  DB  68,15,89,5,222,18,0,0               ; mulps         0x12de(%rip),%xmm8        # 6360 <_sk_callback_sse41+0x12c6>
16606  DB  68,15,88,5,230,18,0,0               ; addps         0x12e6(%rip),%xmm8        # 6370 <_sk_callback_sse41+0x12d6>
16607  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
16608  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
16609  DB  72,173                              ; lods          %ds:(%rsi),%rax
16610  DB  255,224                             ; jmpq          *%rax
16611
16612PUBLIC _sk_callback_sse41
16613_sk_callback_sse41 LABEL PROC
16614  DB  85                                  ; push          %rbp
16615  DB  72,137,229                          ; mov           %rsp,%rbp
16616  DB  65,87                               ; push          %r15
16617  DB  65,86                               ; push          %r14
16618  DB  65,84                               ; push          %r12
16619  DB  83                                  ; push          %rbx
16620  DB  72,131,236,32                       ; sub           $0x20,%rsp
16621  DB  68,15,40,197                        ; movaps        %xmm5,%xmm8
16622  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
16623  DB  77,137,196                          ; mov           %r8,%r12
16624  DB  73,137,206                          ; mov           %rcx,%r14
16625  DB  73,137,215                          ; mov           %rdx,%r15
16626  DB  72,173                              ; lods          %ds:(%rsi),%rax
16627  DB  72,137,195                          ; mov           %rax,%rbx
16628  DB  15,40,224                           ; movaps        %xmm0,%xmm4
16629  DB  15,20,225                           ; unpcklps      %xmm1,%xmm4
16630  DB  15,40,234                           ; movaps        %xmm2,%xmm5
16631  DB  15,20,235                           ; unpcklps      %xmm3,%xmm5
16632  DB  15,21,193                           ; unpckhps      %xmm1,%xmm0
16633  DB  15,21,211                           ; unpckhps      %xmm3,%xmm2
16634  DB  15,40,204                           ; movaps        %xmm4,%xmm1
16635  DB  102,15,20,205                       ; unpcklpd      %xmm5,%xmm1
16636  DB  15,18,236                           ; movhlps       %xmm4,%xmm5
16637  DB  15,40,216                           ; movaps        %xmm0,%xmm3
16638  DB  102,15,20,218                       ; unpcklpd      %xmm2,%xmm3
16639  DB  102,15,17,75,8                      ; movupd        %xmm1,0x8(%rbx)
16640  DB  15,18,208                           ; movhlps       %xmm0,%xmm2
16641  DB  15,17,107,24                        ; movups        %xmm5,0x18(%rbx)
16642  DB  102,15,17,91,40                     ; movupd        %xmm3,0x28(%rbx)
16643  DB  15,17,83,56                         ; movups        %xmm2,0x38(%rbx)
16644  DB  77,133,228                          ; test          %r12,%r12
16645  DB  186,4,0,0,0                         ; mov           $0x4,%edx
16646  DB  65,15,69,212                        ; cmovne        %r12d,%edx
16647  DB  72,137,217                          ; mov           %rbx,%rcx
16648  DB  255,19                              ; callq         *(%rbx)
16649  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
16650  DB  15,16,32                            ; movups        (%rax),%xmm4
16651  DB  15,16,64,16                         ; movups        0x10(%rax),%xmm0
16652  DB  15,16,88,32                         ; movups        0x20(%rax),%xmm3
16653  DB  15,16,80,48                         ; movups        0x30(%rax),%xmm2
16654  DB  15,40,236                           ; movaps        %xmm4,%xmm5
16655  DB  15,20,232                           ; unpcklps      %xmm0,%xmm5
16656  DB  15,40,203                           ; movaps        %xmm3,%xmm1
16657  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
16658  DB  15,21,224                           ; unpckhps      %xmm0,%xmm4
16659  DB  15,21,218                           ; unpckhps      %xmm2,%xmm3
16660  DB  15,40,197                           ; movaps        %xmm5,%xmm0
16661  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
16662  DB  15,18,205                           ; movhlps       %xmm5,%xmm1
16663  DB  15,40,212                           ; movaps        %xmm4,%xmm2
16664  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
16665  DB  15,18,220                           ; movhlps       %xmm4,%xmm3
16666  DB  72,173                              ; lods          %ds:(%rsi),%rax
16667  DB  76,137,250                          ; mov           %r15,%rdx
16668  DB  76,137,241                          ; mov           %r14,%rcx
16669  DB  77,137,224                          ; mov           %r12,%r8
16670  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
16671  DB  65,15,40,232                        ; movaps        %xmm8,%xmm5
16672  DB  72,131,196,32                       ; add           $0x20,%rsp
16673  DB  91                                  ; pop           %rbx
16674  DB  65,92                               ; pop           %r12
16675  DB  65,94                               ; pop           %r14
16676  DB  65,95                               ; pop           %r15
16677  DB  93                                  ; pop           %rbp
16678  DB  255,224                             ; jmpq          *%rax
16679
16680ALIGN 16
16681  DB  0,0                                 ; add           %al,(%rax)
16682  DB  0,63                                ; add           %bh,(%rdi)
16683  DB  0,0                                 ; add           %al,(%rax)
16684  DB  0,63                                ; add           %bh,(%rdi)
16685  DB  0,0                                 ; add           %al,(%rax)
16686  DB  0,63                                ; add           %bh,(%rdi)
16687  DB  0,0                                 ; add           %al,(%rax)
16688  DB  0,63                                ; add           %bh,(%rdi)
16689  DB  0,0                                 ; add           %al,(%rax)
16690  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16691  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16692  DB  63                                  ; (bad)
16693  DB  0,0                                 ; add           %al,(%rax)
16694  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
16695  DB  0,0                                 ; add           %al,(%rax)
16696  DB  0,1                                 ; add           %al,(%rcx)
16697  DB  0,0                                 ; add           %al,(%rax)
16698  DB  0,1                                 ; add           %al,(%rcx)
16699  DB  0,0                                 ; add           %al,(%rax)
16700  DB  0,1                                 ; add           %al,(%rcx)
16701  DB  0,0                                 ; add           %al,(%rax)
16702  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
16703  DB  0,0                                 ; add           %al,(%rax)
16704  DB  4,0                                 ; add           $0x0,%al
16705  DB  0,0                                 ; add           %al,(%rax)
16706  DB  4,0                                 ; add           $0x0,%al
16707  DB  0,0                                 ; add           %al,(%rax)
16708  DB  4,0                                 ; add           $0x0,%al
16709  DB  0,0                                 ; add           %al,(%rax)
16710  DB  2,0                                 ; add           (%rax),%al
16711  DB  0,0                                 ; add           %al,(%rax)
16712  DB  2,0                                 ; add           (%rax),%al
16713  DB  0,0                                 ; add           %al,(%rax)
16714  DB  2,0                                 ; add           (%rax),%al
16715  DB  0,0                                 ; add           %al,(%rax)
16716  DB  2,0                                 ; add           (%rax),%al
16717  DB  0,0                                 ; add           %al,(%rax)
16718  DB  0,0                                 ; add           %al,(%rax)
16719  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
16720  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
16721  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
16722  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
16723  DB  252                                 ; cld
16724  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
16725  DB  0,0                                 ; add           %al,(%rax)
16726  DB  252                                 ; cld
16727  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
16728  DB  0,0                                 ; add           %al,(%rax)
16729  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16730  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16731  DB  63                                  ; (bad)
16732  DB  0,0                                 ; add           %al,(%rax)
16733  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16734  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16735  DB  63                                  ; (bad)
16736  DB  0,0                                 ; add           %al,(%rax)
16737  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16738  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16739  DB  63                                  ; (bad)
16740  DB  0,0                                 ; add           %al,(%rax)
16741  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16742  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16743  DB  63                                  ; (bad)
16744  DB  0,0                                 ; add           %al,(%rax)
16745  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16746  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16747  DB  63                                  ; (bad)
16748  DB  0,0                                 ; add           %al,(%rax)
16749  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16750  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16751  DB  63                                  ; (bad)
16752  DB  0,0                                 ; add           %al,(%rax)
16753  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16754  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16755  DB  63                                  ; (bad)
16756  DB  0,0                                 ; add           %al,(%rax)
16757  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16758  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16759  DB  63                                  ; (bad)
16760  DB  0,0                                 ; add           %al,(%rax)
16761  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16762  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16763  DB  63                                  ; (bad)
16764  DB  0,0                                 ; add           %al,(%rax)
16765  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16766  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16767  DB  63                                  ; (bad)
16768  DB  0,0                                 ; add           %al,(%rax)
16769  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16770  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16771  DB  63                                  ; (bad)
16772  DB  0,0                                 ; add           %al,(%rax)
16773  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16774  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16775  DB  63                                  ; (bad)
16776  DB  0,0                                 ; add           %al,(%rax)
16777  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16778  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16779  DB  63                                  ; (bad)
16780  DB  0,0                                 ; add           %al,(%rax)
16781  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16782  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16783  DB  63                                  ; (bad)
16784  DB  0,0                                 ; add           %al,(%rax)
16785  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16786  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16787  DB  63                                  ; (bad)
16788  DB  0,0                                 ; add           %al,(%rax)
16789  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16790  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16791  DB  63                                  ; (bad)
16792  DB  0,0                                 ; add           %al,(%rax)
16793  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16794  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16795  DB  63                                  ; (bad)
16796  DB  0,0                                 ; add           %al,(%rax)
16797  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16798  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16799  DB  63                                  ; (bad)
16800  DB  0,0                                 ; add           %al,(%rax)
16801  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16802  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16803  DB  63                                  ; (bad)
16804  DB  0,0                                 ; add           %al,(%rax)
16805  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16806  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16807  DB  63                                  ; (bad)
16808  DB  0,0                                 ; add           %al,(%rax)
16809  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16810  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16811  DB  63                                  ; (bad)
16812  DB  0,0                                 ; add           %al,(%rax)
16813  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16814  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16815  DB  63                                  ; (bad)
16816  DB  0,0                                 ; add           %al,(%rax)
16817  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16818  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16819  DB  191,0,0,128,191                     ; mov           $0xbf800000,%edi
16820  DB  0,0                                 ; add           %al,(%rax)
16821  DB  128,191,0,0,128,191,0               ; cmpb          $0x0,-0x40800000(%rdi)
16822  DB  0,224                               ; add           %ah,%al
16823  DB  64,0,0                              ; add           %al,(%rax)
16824  DB  224,64                              ; loopne        5348 <.literal16+0x1d8>
16825  DB  0,0                                 ; add           %al,(%rax)
16826  DB  224,64                              ; loopne        534c <.literal16+0x1dc>
16827  DB  0,0                                 ; add           %al,(%rax)
16828  DB  224,64                              ; loopne        5350 <.literal16+0x1e0>
16829  DB  154                                 ; (bad)
16830  DB  153                                 ; cltd
16831  DB  153                                 ; cltd
16832  DB  62,154                              ; ds            (bad)
16833  DB  153                                 ; cltd
16834  DB  153                                 ; cltd
16835  DB  62,154                              ; ds            (bad)
16836  DB  153                                 ; cltd
16837  DB  153                                 ; cltd
16838  DB  62,154                              ; ds            (bad)
16839  DB  153                                 ; cltd
16840  DB  153                                 ; cltd
16841  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
16842  DB  10,23                               ; or            (%rdi),%dl
16843  DB  63                                  ; (bad)
16844  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
16845  DB  10,23                               ; or            (%rdi),%dl
16846  DB  63                                  ; (bad)
16847  DB  174                                 ; scas          %es:(%rdi),%al
16848  DB  71,225,61                           ; rex.RXB       loope 5371 <.literal16+0x201>
16849  DB  174                                 ; scas          %es:(%rdi),%al
16850  DB  71,225,61                           ; rex.RXB       loope 5375 <.literal16+0x205>
16851  DB  174                                 ; scas          %es:(%rdi),%al
16852  DB  71,225,61                           ; rex.RXB       loope 5379 <.literal16+0x209>
16853  DB  174                                 ; scas          %es:(%rdi),%al
16854  DB  71,225,61                           ; rex.RXB       loope 537d <.literal16+0x20d>
16855  DB  0,0                                 ; add           %al,(%rax)
16856  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16857  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16858  DB  63                                  ; (bad)
16859  DB  0,0                                 ; add           %al,(%rax)
16860  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
16861  DB  153                                 ; cltd
16862  DB  153                                 ; cltd
16863  DB  62,154                              ; ds            (bad)
16864  DB  153                                 ; cltd
16865  DB  153                                 ; cltd
16866  DB  62,154                              ; ds            (bad)
16867  DB  153                                 ; cltd
16868  DB  153                                 ; cltd
16869  DB  62,154                              ; ds            (bad)
16870  DB  153                                 ; cltd
16871  DB  153                                 ; cltd
16872  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
16873  DB  10,23                               ; or            (%rdi),%dl
16874  DB  63                                  ; (bad)
16875  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
16876  DB  10,23                               ; or            (%rdi),%dl
16877  DB  63                                  ; (bad)
16878  DB  174                                 ; scas          %es:(%rdi),%al
16879  DB  71,225,61                           ; rex.RXB       loope 53b1 <.literal16+0x241>
16880  DB  174                                 ; scas          %es:(%rdi),%al
16881  DB  71,225,61                           ; rex.RXB       loope 53b5 <.literal16+0x245>
16882  DB  174                                 ; scas          %es:(%rdi),%al
16883  DB  71,225,61                           ; rex.RXB       loope 53b9 <.literal16+0x249>
16884  DB  174                                 ; scas          %es:(%rdi),%al
16885  DB  71,225,61                           ; rex.RXB       loope 53bd <.literal16+0x24d>
16886  DB  0,0                                 ; add           %al,(%rax)
16887  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16888  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16889  DB  63                                  ; (bad)
16890  DB  0,0                                 ; add           %al,(%rax)
16891  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
16892  DB  153                                 ; cltd
16893  DB  153                                 ; cltd
16894  DB  62,154                              ; ds            (bad)
16895  DB  153                                 ; cltd
16896  DB  153                                 ; cltd
16897  DB  62,154                              ; ds            (bad)
16898  DB  153                                 ; cltd
16899  DB  153                                 ; cltd
16900  DB  62,154                              ; ds            (bad)
16901  DB  153                                 ; cltd
16902  DB  153                                 ; cltd
16903  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
16904  DB  10,23                               ; or            (%rdi),%dl
16905  DB  63                                  ; (bad)
16906  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
16907  DB  10,23                               ; or            (%rdi),%dl
16908  DB  63                                  ; (bad)
16909  DB  174                                 ; scas          %es:(%rdi),%al
16910  DB  71,225,61                           ; rex.RXB       loope 53f1 <.literal16+0x281>
16911  DB  174                                 ; scas          %es:(%rdi),%al
16912  DB  71,225,61                           ; rex.RXB       loope 53f5 <.literal16+0x285>
16913  DB  174                                 ; scas          %es:(%rdi),%al
16914  DB  71,225,61                           ; rex.RXB       loope 53f9 <.literal16+0x289>
16915  DB  174                                 ; scas          %es:(%rdi),%al
16916  DB  71,225,61                           ; rex.RXB       loope 53fd <.literal16+0x28d>
16917  DB  0,0                                 ; add           %al,(%rax)
16918  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16919  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16920  DB  63                                  ; (bad)
16921  DB  0,0                                 ; add           %al,(%rax)
16922  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
16923  DB  153                                 ; cltd
16924  DB  153                                 ; cltd
16925  DB  62,154                              ; ds            (bad)
16926  DB  153                                 ; cltd
16927  DB  153                                 ; cltd
16928  DB  62,154                              ; ds            (bad)
16929  DB  153                                 ; cltd
16930  DB  153                                 ; cltd
16931  DB  62,154                              ; ds            (bad)
16932  DB  153                                 ; cltd
16933  DB  153                                 ; cltd
16934  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
16935  DB  10,23                               ; or            (%rdi),%dl
16936  DB  63                                  ; (bad)
16937  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
16938  DB  10,23                               ; or            (%rdi),%dl
16939  DB  63                                  ; (bad)
16940  DB  174                                 ; scas          %es:(%rdi),%al
16941  DB  71,225,61                           ; rex.RXB       loope 5431 <.literal16+0x2c1>
16942  DB  174                                 ; scas          %es:(%rdi),%al
16943  DB  71,225,61                           ; rex.RXB       loope 5435 <.literal16+0x2c5>
16944  DB  174                                 ; scas          %es:(%rdi),%al
16945  DB  71,225,61                           ; rex.RXB       loope 5439 <.literal16+0x2c9>
16946  DB  174                                 ; scas          %es:(%rdi),%al
16947  DB  71,225,61                           ; rex.RXB       loope 543d <.literal16+0x2cd>
16948  DB  0,0                                 ; add           %al,(%rax)
16949  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16950  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16951  DB  63                                  ; (bad)
16952  DB  0,0                                 ; add           %al,(%rax)
16953  DB  128,63,255                          ; cmpb          $0xff,(%rdi)
16954  DB  0,0                                 ; add           %al,(%rax)
16955  DB  0,255                               ; add           %bh,%bh
16956  DB  0,0                                 ; add           %al,(%rax)
16957  DB  0,255                               ; add           %bh,%bh
16958  DB  0,0                                 ; add           %al,(%rax)
16959  DB  0,255                               ; add           %bh,%bh
16960  DB  0,0                                 ; add           %al,(%rax)
16961  DB  0,1                                 ; add           %al,(%rcx)
16962  DB  255                                 ; (bad)
16963  DB  255                                 ; (bad)
16964  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a005428 <_sk_callback_sse41+0xa00038e>
16965  DB  255                                 ; (bad)
16966  DB  255                                 ; (bad)
16967  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3005430 <_sk_callback_sse41+0x3000396>
16968  DB  255                                 ; (bad)
16969  DB  255                                 ; (bad)
16970  DB  255,6                               ; incl          (%rsi)
16971  DB  255                                 ; (bad)
16972  DB  255                                 ; (bad)
16973  DB  255,10                              ; decl          (%rdx)
16974  DB  255                                 ; (bad)
16975  DB  255                                 ; (bad)
16976  DB  255,14                              ; decl          (%rsi)
16977  DB  255                                 ; (bad)
16978  DB  255                                 ; (bad)
16979  DB  255,0                               ; incl          (%rax)
16980  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16981  DB  63                                  ; (bad)
16982  DB  0,0                                 ; add           %al,(%rax)
16983  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16984  DB  0,128,63,0,0,127                    ; add           %al,0x7f00003f(%rax)
16985  DB  67,0,0                              ; rex.XB        add %al,(%r8)
16986  DB  127,67                              ; jg            549b <.literal16+0x32b>
16987  DB  0,0                                 ; add           %al,(%rax)
16988  DB  127,67                              ; jg            549f <.literal16+0x32f>
16989  DB  0,0                                 ; add           %al,(%rax)
16990  DB  127,67                              ; jg            54a3 <.literal16+0x333>
16991  DB  0,0                                 ; add           %al,(%rax)
16992  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16993  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16994  DB  63                                  ; (bad)
16995  DB  0,0                                 ; add           %al,(%rax)
16996  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
16997  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
16998  DB  63                                  ; (bad)
16999  DB  0,0                                 ; add           %al,(%rax)
17000  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17001  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17002  DB  63                                  ; (bad)
17003  DB  0,0                                 ; add           %al,(%rax)
17004  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17005  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17006  DB  63                                  ; (bad)
17007  DB  145                                 ; xchg          %eax,%ecx
17008  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
17009  DB  145                                 ; xchg          %eax,%ecx
17010  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
17011  DB  154                                 ; (bad)
17012  DB  153                                 ; cltd
17013  DB  153                                 ; cltd
17014  DB  62,154                              ; ds            (bad)
17015  DB  153                                 ; cltd
17016  DB  153                                 ; cltd
17017  DB  62,154                              ; ds            (bad)
17018  DB  153                                 ; cltd
17019  DB  153                                 ; cltd
17020  DB  62,154                              ; ds            (bad)
17021  DB  153                                 ; cltd
17022  DB  153                                 ; cltd
17023  DB  62,92                               ; ds            pop %rsp
17024  DB  143                                 ; (bad)
17025  DB  50,63                               ; xor           (%rdi),%bh
17026  DB  92                                  ; pop           %rsp
17027  DB  143                                 ; (bad)
17028  DB  50,63                               ; xor           (%rdi),%bh
17029  DB  92                                  ; pop           %rsp
17030  DB  143                                 ; (bad)
17031  DB  50,63                               ; xor           (%rdi),%bh
17032  DB  92                                  ; pop           %rsp
17033  DB  143                                 ; (bad)
17034  DB  50,63                               ; xor           (%rdi),%bh
17035  DB  10,215                              ; or            %bh,%dl
17036  DB  35,59                               ; and           (%rbx),%edi
17037  DB  10,215                              ; or            %bh,%dl
17038  DB  35,59                               ; and           (%rbx),%edi
17039  DB  10,215                              ; or            %bh,%dl
17040  DB  35,59                               ; and           (%rbx),%edi
17041  DB  10,215                              ; or            %bh,%dl
17042  DB  35,59                               ; and           (%rbx),%edi
17043  DB  174                                 ; scas          %es:(%rdi),%al
17044  DB  71,97                               ; rex.RXB       (bad)
17045  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
17046  DB  174                                 ; scas          %es:(%rdi),%al
17047  DB  71,97                               ; rex.RXB       (bad)
17048  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
17049  DB  82                                  ; push          %rdx
17050  DB  184,78,65,82,184                    ; mov           $0xb852414e,%eax
17051  DB  78                                  ; rex.WRX
17052  DB  65,82                               ; push          %r10
17053  DB  184,78,65,82,184                    ; mov           $0xb852414e,%eax
17054  DB  78                                  ; rex.WRX
17055  DB  65,57,215                           ; cmp           %edx,%r15d
17056  DB  32,187,57,215,32,187                ; and           %bh,-0x44df28c7(%rbx)
17057  DB  57,215                              ; cmp           %edx,%edi
17058  DB  32,187,57,215,32,187                ; and           %bh,-0x44df28c7(%rbx)
17059  DB  186,159,98,60,186                   ; mov           $0xba3c629f,%edx
17060  DB  159                                 ; lahf
17061  DB  98                                  ; (bad)
17062  DB  60,186                              ; cmp           $0xba,%al
17063  DB  159                                 ; lahf
17064  DB  98                                  ; (bad)
17065  DB  60,186                              ; cmp           $0xba,%al
17066  DB  159                                 ; lahf
17067  DB  98                                  ; (bad)
17068  DB  60,109                              ; cmp           $0x6d,%al
17069  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
17070  DB  144                                 ; nop
17071  DB  63                                  ; (bad)
17072  DB  109                                 ; insl          (%dx),%es:(%rdi)
17073  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
17074  DB  144                                 ; nop
17075  DB  63                                  ; (bad)
17076  DB  109                                 ; insl          (%dx),%es:(%rdi)
17077  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
17078  DB  144                                 ; nop
17079  DB  63                                  ; (bad)
17080  DB  109                                 ; insl          (%dx),%es:(%rdi)
17081  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
17082  DB  144                                 ; nop
17083  DB  63                                  ; (bad)
17084  DB  252                                 ; cld
17085  DB  191,16,62,252,191                   ; mov           $0xbffc3e10,%edi
17086  DB  16,62                               ; adc           %bh,(%rsi)
17087  DB  252                                 ; cld
17088  DB  191,16,62,252,191                   ; mov           $0xbffc3e10,%edi
17089  DB  16,62                               ; adc           %bh,(%rsi)
17090  DB  168,177                             ; test          $0xb1,%al
17091  DB  152                                 ; cwtl
17092  DB  59,168,177,152,59,168               ; cmp           -0x57c4674f(%rax),%ebp
17093  DB  177,152                             ; mov           $0x98,%cl
17094  DB  59,168,177,152,59,0                 ; cmp           0x3b98b1(%rax),%ebp
17095  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17096  DB  63                                  ; (bad)
17097  DB  0,0                                 ; add           %al,(%rax)
17098  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17099  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
17100  DB  64,0,0                              ; add           %al,(%rax)
17101  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17102  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17103  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17104  DB  0,64,0                              ; add           %al,0x0(%rax)
17105  DB  0,0                                 ; add           %al,(%rax)
17106  DB  64,0,0                              ; add           %al,(%rax)
17107  DB  0,64,0                              ; add           %al,0x0(%rax)
17108  DB  0,0                                 ; add           %al,(%rax)
17109  DB  64,0,0                              ; add           %al,(%rax)
17110  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17111  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17112  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17113  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
17114  DB  42,62                               ; sub           (%rsi),%bh
17115  DB  171                                 ; stos          %eax,%es:(%rdi)
17116  DB  170                                 ; stos          %al,%es:(%rdi)
17117  DB  42,62                               ; sub           (%rsi),%bh
17118  DB  171                                 ; stos          %eax,%es:(%rdi)
17119  DB  170                                 ; stos          %al,%es:(%rdi)
17120  DB  42,62                               ; sub           (%rsi),%bh
17121  DB  171                                 ; stos          %eax,%es:(%rdi)
17122  DB  170                                 ; stos          %al,%es:(%rdi)
17123  DB  42,62                               ; sub           (%rsi),%bh
17124  DB  0,0                                 ; add           %al,(%rax)
17125  DB  0,63                                ; add           %bh,(%rdi)
17126  DB  0,0                                 ; add           %al,(%rax)
17127  DB  0,63                                ; add           %bh,(%rdi)
17128  DB  0,0                                 ; add           %al,(%rax)
17129  DB  0,63                                ; add           %bh,(%rdi)
17130  DB  0,0                                 ; add           %al,(%rax)
17131  DB  0,63                                ; add           %bh,(%rdi)
17132  DB  0,0                                 ; add           %al,(%rax)
17133  DB  0,63                                ; add           %bh,(%rdi)
17134  DB  0,0                                 ; add           %al,(%rax)
17135  DB  0,63                                ; add           %bh,(%rdi)
17136  DB  0,0                                 ; add           %al,(%rax)
17137  DB  0,63                                ; add           %bh,(%rdi)
17138  DB  0,0                                 ; add           %al,(%rax)
17139  DB  0,63                                ; add           %bh,(%rdi)
17140  DB  171                                 ; stos          %eax,%es:(%rdi)
17141  DB  170                                 ; stos          %al,%es:(%rdi)
17142  DB  170                                 ; stos          %al,%es:(%rdi)
17143  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
17144  DB  170                                 ; stos          %al,%es:(%rdi)
17145  DB  170                                 ; stos          %al,%es:(%rdi)
17146  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
17147  DB  170                                 ; stos          %al,%es:(%rdi)
17148  DB  170                                 ; stos          %al,%es:(%rdi)
17149  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
17150  DB  170                                 ; stos          %al,%es:(%rdi)
17151  DB  170                                 ; stos          %al,%es:(%rdi)
17152  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
17153  DB  170                                 ; stos          %al,%es:(%rdi)
17154  DB  42,63                               ; sub           (%rdi),%bh
17155  DB  171                                 ; stos          %eax,%es:(%rdi)
17156  DB  170                                 ; stos          %al,%es:(%rdi)
17157  DB  42,63                               ; sub           (%rdi),%bh
17158  DB  171                                 ; stos          %eax,%es:(%rdi)
17159  DB  170                                 ; stos          %al,%es:(%rdi)
17160  DB  42,63                               ; sub           (%rdi),%bh
17161  DB  171                                 ; stos          %eax,%es:(%rdi)
17162  DB  170                                 ; stos          %al,%es:(%rdi)
17163  DB  42,63                               ; sub           (%rdi),%bh
17164  DB  0,0                                 ; add           %al,(%rax)
17165  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17166  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17167  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17168  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17169  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17170  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17171  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17172  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
17173  DB  42,62                               ; sub           (%rsi),%bh
17174  DB  171                                 ; stos          %eax,%es:(%rdi)
17175  DB  170                                 ; stos          %al,%es:(%rdi)
17176  DB  42,62                               ; sub           (%rsi),%bh
17177  DB  171                                 ; stos          %eax,%es:(%rdi)
17178  DB  170                                 ; stos          %al,%es:(%rdi)
17179  DB  42,62                               ; sub           (%rsi),%bh
17180  DB  171                                 ; stos          %eax,%es:(%rdi)
17181  DB  170                                 ; stos          %al,%es:(%rdi)
17182  DB  42,62                               ; sub           (%rsi),%bh
17183  DB  171                                 ; stos          %eax,%es:(%rdi)
17184  DB  170                                 ; stos          %al,%es:(%rdi)
17185  DB  170                                 ; stos          %al,%es:(%rdi)
17186  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
17187  DB  171                                 ; stos          %eax,%es:(%rdi)
17188  DB  170                                 ; stos          %al,%es:(%rdi)
17189  DB  170                                 ; stos          %al,%es:(%rdi)
17190  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
17191  DB  255,0                               ; incl          (%rax)
17192  DB  0,0                                 ; add           %al,(%rax)
17193  DB  255,0                               ; incl          (%rax)
17194  DB  0,0                                 ; add           %al,(%rax)
17195  DB  255,0                               ; incl          (%rax)
17196  DB  0,0                                 ; add           %al,(%rax)
17197  DB  255,0                               ; incl          (%rax)
17198  DB  0,0                                 ; add           %al,(%rax)
17199  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17200  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
17201  DB  128,128,59,255,0,0,0                ; addb          $0x0,0xff3b(%rax)
17202  DB  255,0                               ; incl          (%rax)
17203  DB  0,0                                 ; add           %al,(%rax)
17204  DB  255,0                               ; incl          (%rax)
17205  DB  0,0                                 ; add           %al,(%rax)
17206  DB  255,0                               ; incl          (%rax)
17207  DB  0,0                                 ; add           %al,(%rax)
17208  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17209  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
17210  DB  128,128,59,0,248,0,0                ; addb          $0x0,0xf8003b(%rax)
17211  DB  0,248                               ; add           %bh,%al
17212  DB  0,0                                 ; add           %al,(%rax)
17213  DB  0,248                               ; add           %bh,%al
17214  DB  0,0                                 ; add           %al,(%rax)
17215  DB  0,248                               ; add           %bh,%al
17216  DB  0,0                                 ; add           %al,(%rax)
17217  DB  8,33                                ; or            %ah,(%rcx)
17218  DB  132,55                              ; test          %dh,(%rdi)
17219  DB  8,33                                ; or            %ah,(%rcx)
17220  DB  132,55                              ; test          %dh,(%rdi)
17221  DB  8,33                                ; or            %ah,(%rcx)
17222  DB  132,55                              ; test          %dh,(%rdi)
17223  DB  8,33                                ; or            %ah,(%rcx)
17224  DB  132,55                              ; test          %dh,(%rdi)
17225  DB  224,7                               ; loopne        5679 <.literal16+0x509>
17226  DB  0,0                                 ; add           %al,(%rax)
17227  DB  224,7                               ; loopne        567d <.literal16+0x50d>
17228  DB  0,0                                 ; add           %al,(%rax)
17229  DB  224,7                               ; loopne        5681 <.literal16+0x511>
17230  DB  0,0                                 ; add           %al,(%rax)
17231  DB  224,7                               ; loopne        5685 <.literal16+0x515>
17232  DB  0,0                                 ; add           %al,(%rax)
17233  DB  33,8                                ; and           %ecx,(%rax)
17234  DB  2,58                                ; add           (%rdx),%bh
17235  DB  33,8                                ; and           %ecx,(%rax)
17236  DB  2,58                                ; add           (%rdx),%bh
17237  DB  33,8                                ; and           %ecx,(%rax)
17238  DB  2,58                                ; add           (%rdx),%bh
17239  DB  33,8                                ; and           %ecx,(%rax)
17240  DB  2,58                                ; add           (%rdx),%bh
17241  DB  31                                  ; (bad)
17242  DB  0,0                                 ; add           %al,(%rax)
17243  DB  0,31                                ; add           %bl,(%rdi)
17244  DB  0,0                                 ; add           %al,(%rax)
17245  DB  0,31                                ; add           %bl,(%rdi)
17246  DB  0,0                                 ; add           %al,(%rax)
17247  DB  0,31                                ; add           %bl,(%rdi)
17248  DB  0,0                                 ; add           %al,(%rax)
17249  DB  0,8                                 ; add           %cl,(%rax)
17250  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
17251  DB  8,33                                ; or            %ah,(%rcx)
17252  DB  4,61                                ; add           $0x3d,%al
17253  DB  8,33                                ; or            %ah,(%rcx)
17254  DB  4,61                                ; add           $0x3d,%al
17255  DB  255,0                               ; incl          (%rax)
17256  DB  0,0                                 ; add           %al,(%rax)
17257  DB  255,0                               ; incl          (%rax)
17258  DB  0,0                                 ; add           %al,(%rax)
17259  DB  255,0                               ; incl          (%rax)
17260  DB  0,0                                 ; add           %al,(%rax)
17261  DB  255,0                               ; incl          (%rax)
17262  DB  0,0                                 ; add           %al,(%rax)
17263  DB  1,255                               ; add           %edi,%edi
17264  DB  255                                 ; (bad)
17265  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a0056c8 <_sk_callback_sse41+0xa00062e>
17266  DB  255                                 ; (bad)
17267  DB  255                                 ; (bad)
17268  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 30056d0 <_sk_callback_sse41+0x3000636>
17269  DB  255                                 ; (bad)
17270  DB  255                                 ; (bad)
17271  DB  255,6                               ; incl          (%rsi)
17272  DB  255                                 ; (bad)
17273  DB  255                                 ; (bad)
17274  DB  255,10                              ; decl          (%rdx)
17275  DB  255                                 ; (bad)
17276  DB  255                                 ; (bad)
17277  DB  255,14                              ; decl          (%rsi)
17278  DB  255                                 ; (bad)
17279  DB  255                                 ; (bad)
17280  DB  255,129,128,128,59,129              ; incl          -0x7ec47f80(%rcx)
17281  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
17282  DB  129,128,128,59,255,0,255,0,255,0    ; addl          $0xff00ff,0xff3b80(%rax)
17283  DB  255,0                               ; incl          (%rax)
17284  DB  0,0                                 ; add           %al,(%rax)
17285  DB  0,0                                 ; add           %al,(%rax)
17286  DB  0,0                                 ; add           %al,(%rax)
17287  DB  0,0                                 ; add           %al,(%rax)
17288  DB  8,255                               ; or            %bh,%bh
17289  DB  10,255                              ; or            %bh,%bh
17290  DB  12,255                              ; or            $0xff,%al
17291  DB  14                                  ; (bad)
17292  DB  255,0                               ; incl          (%rax)
17293  DB  0,0                                 ; add           %al,(%rax)
17294  DB  0,0                                 ; add           %al,(%rax)
17295  DB  0,0                                 ; add           %al,(%rax)
17296  DB  0,128,0,128,55,128                  ; add           %al,-0x7fc88000(%rax)
17297  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
17298  DB  55                                  ; (bad)
17299  DB  128,0,128                           ; addb          $0x80,(%rax)
17300  DB  55                                  ; (bad)
17301  DB  255,0                               ; incl          (%rax)
17302  DB  255,0                               ; incl          (%rax)
17303  DB  255,0                               ; incl          (%rax)
17304  DB  255,0                               ; incl          (%rax)
17305  DB  0,0                                 ; add           %al,(%rax)
17306  DB  0,0                                 ; add           %al,(%rax)
17307  DB  0,0                                 ; add           %al,(%rax)
17308  DB  0,0                                 ; add           %al,(%rax)
17309  DB  8,128,10,128,12,128                 ; or            %al,-0x7ff37ff6(%rax)
17310  DB  14                                  ; (bad)
17311  DB  128,0,0                             ; addb          $0x0,(%rax)
17312  DB  0,0                                 ; add           %al,(%rax)
17313  DB  0,0                                 ; add           %al,(%rax)
17314  DB  0,0                                 ; add           %al,(%rax)
17315  DB  0,0                                 ; add           %al,(%rax)
17316  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17317  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17318  DB  63                                  ; (bad)
17319  DB  0,0                                 ; add           %al,(%rax)
17320  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17321  DB  0,127,67                            ; add           %bh,0x43(%rdi)
17322  DB  0,0                                 ; add           %al,(%rax)
17323  DB  127,67                              ; jg            579b <.literal16+0x62b>
17324  DB  0,0                                 ; add           %al,(%rax)
17325  DB  127,67                              ; jg            579f <.literal16+0x62f>
17326  DB  0,0                                 ; add           %al,(%rax)
17327  DB  127,67                              ; jg            57a3 <.literal16+0x633>
17328  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17329  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
17330  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
17331  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17332  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
17333  DB  0,0                                 ; add           %al,(%rax)
17334  DB  52,0                                ; xor           $0x0,%al
17335  DB  0,0                                 ; add           %al,(%rax)
17336  DB  52,0                                ; xor           $0x0,%al
17337  DB  0,0                                 ; add           %al,(%rax)
17338  DB  52,0                                ; xor           $0x0,%al
17339  DB  0,0                                 ; add           %al,(%rax)
17340  DB  52,255                              ; xor           $0xff,%al
17341  DB  255                                 ; (bad)
17342  DB  127,0                               ; jg            5794 <.literal16+0x624>
17343  DB  255                                 ; (bad)
17344  DB  255                                 ; (bad)
17345  DB  127,0                               ; jg            5798 <.literal16+0x628>
17346  DB  255                                 ; (bad)
17347  DB  255                                 ; (bad)
17348  DB  127,0                               ; jg            579c <.literal16+0x62c>
17349  DB  255                                 ; (bad)
17350  DB  255                                 ; (bad)
17351  DB  127,0                               ; jg            57a0 <.literal16+0x630>
17352  DB  0,0                                 ; add           %al,(%rax)
17353  DB  0,63                                ; add           %bh,(%rdi)
17354  DB  0,0                                 ; add           %al,(%rax)
17355  DB  0,63                                ; add           %bh,(%rdi)
17356  DB  0,0                                 ; add           %al,(%rax)
17357  DB  0,63                                ; add           %bh,(%rdi)
17358  DB  0,0                                 ; add           %al,(%rax)
17359  DB  0,63                                ; add           %bh,(%rdi)
17360  DB  119,115                             ; ja            5825 <.literal16+0x6b5>
17361  DB  248                                 ; clc
17362  DB  194,119,115                         ; retq          $0x7377
17363  DB  248                                 ; clc
17364  DB  194,119,115                         ; retq          $0x7377
17365  DB  248                                 ; clc
17366  DB  194,119,115                         ; retq          $0x7377
17367  DB  248                                 ; clc
17368  DB  194,117,191                         ; retq          $0xbf75
17369  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17370  DB  63                                  ; (bad)
17371  DB  117,191                             ; jne           5789 <.literal16+0x619>
17372  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17373  DB  63                                  ; (bad)
17374  DB  249                                 ; stc
17375  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17376  DB  249                                 ; stc
17377  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17378  DB  249                                 ; stc
17379  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17380  DB  249                                 ; stc
17381  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17382  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
17383  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a397ca <_sk_callback_sse41+0xffffffffe9a34730>
17384  DB  220,63                              ; fdivrl        (%rdi)
17385  DB  81                                  ; push          %rcx
17386  DB  140,242                             ; mov           %?,%edx
17387  DB  66,81                               ; rex.X         push %rcx
17388  DB  140,242                             ; mov           %?,%edx
17389  DB  66,81                               ; rex.X         push %rcx
17390  DB  140,242                             ; mov           %?,%edx
17391  DB  66,81                               ; rex.X         push %rcx
17392  DB  140,242                             ; mov           %?,%edx
17393  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
17394  DB  63                                  ; (bad)
17395  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
17396  DB  63                                  ; (bad)
17397  DB  248                                 ; clc
17398  DB  245                                 ; cmc
17399  DB  154                                 ; (bad)
17400  DB  64,248                              ; rex           clc
17401  DB  245                                 ; cmc
17402  DB  154                                 ; (bad)
17403  DB  64,248                              ; rex           clc
17404  DB  245                                 ; cmc
17405  DB  154                                 ; (bad)
17406  DB  64,248                              ; rex           clc
17407  DB  245                                 ; cmc
17408  DB  154                                 ; (bad)
17409  DB  64,254                              ; rex           (bad)
17410  DB  210,221                             ; rcr           %cl,%ch
17411  DB  65,254                              ; rex.B         (bad)
17412  DB  210,221                             ; rcr           %cl,%ch
17413  DB  65,254                              ; rex.B         (bad)
17414  DB  210,221                             ; rcr           %cl,%ch
17415  DB  65,254                              ; rex.B         (bad)
17416  DB  210,221                             ; rcr           %cl,%ch
17417  DB  65,0,0                              ; add           %al,(%r8)
17418  DB  0,75,0                              ; add           %cl,0x0(%rbx)
17419  DB  0,0                                 ; add           %al,(%rax)
17420  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
17421  DB  0,75,0                              ; add           %cl,0x0(%rbx)
17422  DB  0,0                                 ; add           %al,(%rax)
17423  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
17424  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17425  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17426  DB  63                                  ; (bad)
17427  DB  0,0                                 ; add           %al,(%rax)
17428  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17429  DB  0,0                                 ; add           %al,(%rax)
17430  DB  52,0                                ; xor           $0x0,%al
17431  DB  0,0                                 ; add           %al,(%rax)
17432  DB  52,0                                ; xor           $0x0,%al
17433  DB  0,0                                 ; add           %al,(%rax)
17434  DB  52,0                                ; xor           $0x0,%al
17435  DB  0,0                                 ; add           %al,(%rax)
17436  DB  52,255                              ; xor           $0xff,%al
17437  DB  255                                 ; (bad)
17438  DB  127,0                               ; jg            5864 <.literal16+0x6f4>
17439  DB  255                                 ; (bad)
17440  DB  255                                 ; (bad)
17441  DB  127,0                               ; jg            5868 <.literal16+0x6f8>
17442  DB  255                                 ; (bad)
17443  DB  255                                 ; (bad)
17444  DB  127,0                               ; jg            586c <.literal16+0x6fc>
17445  DB  255                                 ; (bad)
17446  DB  255                                 ; (bad)
17447  DB  127,0                               ; jg            5870 <.literal16+0x700>
17448  DB  0,0                                 ; add           %al,(%rax)
17449  DB  0,63                                ; add           %bh,(%rdi)
17450  DB  0,0                                 ; add           %al,(%rax)
17451  DB  0,63                                ; add           %bh,(%rdi)
17452  DB  0,0                                 ; add           %al,(%rax)
17453  DB  0,63                                ; add           %bh,(%rdi)
17454  DB  0,0                                 ; add           %al,(%rax)
17455  DB  0,63                                ; add           %bh,(%rdi)
17456  DB  119,115                             ; ja            58f5 <.literal16+0x785>
17457  DB  248                                 ; clc
17458  DB  194,119,115                         ; retq          $0x7377
17459  DB  248                                 ; clc
17460  DB  194,119,115                         ; retq          $0x7377
17461  DB  248                                 ; clc
17462  DB  194,119,115                         ; retq          $0x7377
17463  DB  248                                 ; clc
17464  DB  194,117,191                         ; retq          $0xbf75
17465  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17466  DB  63                                  ; (bad)
17467  DB  117,191                             ; jne           5859 <.literal16+0x6e9>
17468  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17469  DB  63                                  ; (bad)
17470  DB  249                                 ; stc
17471  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17472  DB  249                                 ; stc
17473  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17474  DB  249                                 ; stc
17475  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17476  DB  249                                 ; stc
17477  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17478  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
17479  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a3989a <_sk_callback_sse41+0xffffffffe9a34800>
17480  DB  220,63                              ; fdivrl        (%rdi)
17481  DB  81                                  ; push          %rcx
17482  DB  140,242                             ; mov           %?,%edx
17483  DB  66,81                               ; rex.X         push %rcx
17484  DB  140,242                             ; mov           %?,%edx
17485  DB  66,81                               ; rex.X         push %rcx
17486  DB  140,242                             ; mov           %?,%edx
17487  DB  66,81                               ; rex.X         push %rcx
17488  DB  140,242                             ; mov           %?,%edx
17489  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
17490  DB  63                                  ; (bad)
17491  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
17492  DB  63                                  ; (bad)
17493  DB  248                                 ; clc
17494  DB  245                                 ; cmc
17495  DB  154                                 ; (bad)
17496  DB  64,248                              ; rex           clc
17497  DB  245                                 ; cmc
17498  DB  154                                 ; (bad)
17499  DB  64,248                              ; rex           clc
17500  DB  245                                 ; cmc
17501  DB  154                                 ; (bad)
17502  DB  64,248                              ; rex           clc
17503  DB  245                                 ; cmc
17504  DB  154                                 ; (bad)
17505  DB  64,254                              ; rex           (bad)
17506  DB  210,221                             ; rcr           %cl,%ch
17507  DB  65,254                              ; rex.B         (bad)
17508  DB  210,221                             ; rcr           %cl,%ch
17509  DB  65,254                              ; rex.B         (bad)
17510  DB  210,221                             ; rcr           %cl,%ch
17511  DB  65,254                              ; rex.B         (bad)
17512  DB  210,221                             ; rcr           %cl,%ch
17513  DB  65,0,0                              ; add           %al,(%r8)
17514  DB  0,75,0                              ; add           %cl,0x0(%rbx)
17515  DB  0,0                                 ; add           %al,(%rax)
17516  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
17517  DB  0,75,0                              ; add           %cl,0x0(%rbx)
17518  DB  0,0                                 ; add           %al,(%rax)
17519  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
17520  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17521  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17522  DB  63                                  ; (bad)
17523  DB  0,0                                 ; add           %al,(%rax)
17524  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17525  DB  0,0                                 ; add           %al,(%rax)
17526  DB  52,0                                ; xor           $0x0,%al
17527  DB  0,0                                 ; add           %al,(%rax)
17528  DB  52,0                                ; xor           $0x0,%al
17529  DB  0,0                                 ; add           %al,(%rax)
17530  DB  52,0                                ; xor           $0x0,%al
17531  DB  0,0                                 ; add           %al,(%rax)
17532  DB  52,255                              ; xor           $0xff,%al
17533  DB  255                                 ; (bad)
17534  DB  127,0                               ; jg            5934 <.literal16+0x7c4>
17535  DB  255                                 ; (bad)
17536  DB  255                                 ; (bad)
17537  DB  127,0                               ; jg            5938 <.literal16+0x7c8>
17538  DB  255                                 ; (bad)
17539  DB  255                                 ; (bad)
17540  DB  127,0                               ; jg            593c <.literal16+0x7cc>
17541  DB  255                                 ; (bad)
17542  DB  255                                 ; (bad)
17543  DB  127,0                               ; jg            5940 <.literal16+0x7d0>
17544  DB  0,0                                 ; add           %al,(%rax)
17545  DB  0,63                                ; add           %bh,(%rdi)
17546  DB  0,0                                 ; add           %al,(%rax)
17547  DB  0,63                                ; add           %bh,(%rdi)
17548  DB  0,0                                 ; add           %al,(%rax)
17549  DB  0,63                                ; add           %bh,(%rdi)
17550  DB  0,0                                 ; add           %al,(%rax)
17551  DB  0,63                                ; add           %bh,(%rdi)
17552  DB  119,115                             ; ja            59c5 <.literal16+0x855>
17553  DB  248                                 ; clc
17554  DB  194,119,115                         ; retq          $0x7377
17555  DB  248                                 ; clc
17556  DB  194,119,115                         ; retq          $0x7377
17557  DB  248                                 ; clc
17558  DB  194,119,115                         ; retq          $0x7377
17559  DB  248                                 ; clc
17560  DB  194,117,191                         ; retq          $0xbf75
17561  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17562  DB  63                                  ; (bad)
17563  DB  117,191                             ; jne           5929 <.literal16+0x7b9>
17564  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17565  DB  63                                  ; (bad)
17566  DB  249                                 ; stc
17567  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17568  DB  249                                 ; stc
17569  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17570  DB  249                                 ; stc
17571  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17572  DB  249                                 ; stc
17573  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17574  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
17575  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a3996a <_sk_callback_sse41+0xffffffffe9a348d0>
17576  DB  220,63                              ; fdivrl        (%rdi)
17577  DB  81                                  ; push          %rcx
17578  DB  140,242                             ; mov           %?,%edx
17579  DB  66,81                               ; rex.X         push %rcx
17580  DB  140,242                             ; mov           %?,%edx
17581  DB  66,81                               ; rex.X         push %rcx
17582  DB  140,242                             ; mov           %?,%edx
17583  DB  66,81                               ; rex.X         push %rcx
17584  DB  140,242                             ; mov           %?,%edx
17585  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
17586  DB  63                                  ; (bad)
17587  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
17588  DB  63                                  ; (bad)
17589  DB  248                                 ; clc
17590  DB  245                                 ; cmc
17591  DB  154                                 ; (bad)
17592  DB  64,248                              ; rex           clc
17593  DB  245                                 ; cmc
17594  DB  154                                 ; (bad)
17595  DB  64,248                              ; rex           clc
17596  DB  245                                 ; cmc
17597  DB  154                                 ; (bad)
17598  DB  64,248                              ; rex           clc
17599  DB  245                                 ; cmc
17600  DB  154                                 ; (bad)
17601  DB  64,254                              ; rex           (bad)
17602  DB  210,221                             ; rcr           %cl,%ch
17603  DB  65,254                              ; rex.B         (bad)
17604  DB  210,221                             ; rcr           %cl,%ch
17605  DB  65,254                              ; rex.B         (bad)
17606  DB  210,221                             ; rcr           %cl,%ch
17607  DB  65,254                              ; rex.B         (bad)
17608  DB  210,221                             ; rcr           %cl,%ch
17609  DB  65,0,0                              ; add           %al,(%r8)
17610  DB  0,75,0                              ; add           %cl,0x0(%rbx)
17611  DB  0,0                                 ; add           %al,(%rax)
17612  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
17613  DB  0,75,0                              ; add           %cl,0x0(%rbx)
17614  DB  0,0                                 ; add           %al,(%rax)
17615  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
17616  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17617  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17618  DB  63                                  ; (bad)
17619  DB  0,0                                 ; add           %al,(%rax)
17620  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17621  DB  0,0                                 ; add           %al,(%rax)
17622  DB  52,0                                ; xor           $0x0,%al
17623  DB  0,0                                 ; add           %al,(%rax)
17624  DB  52,0                                ; xor           $0x0,%al
17625  DB  0,0                                 ; add           %al,(%rax)
17626  DB  52,0                                ; xor           $0x0,%al
17627  DB  0,0                                 ; add           %al,(%rax)
17628  DB  52,255                              ; xor           $0xff,%al
17629  DB  255                                 ; (bad)
17630  DB  127,0                               ; jg            5a04 <.literal16+0x894>
17631  DB  255                                 ; (bad)
17632  DB  255                                 ; (bad)
17633  DB  127,0                               ; jg            5a08 <.literal16+0x898>
17634  DB  255                                 ; (bad)
17635  DB  255                                 ; (bad)
17636  DB  127,0                               ; jg            5a0c <.literal16+0x89c>
17637  DB  255                                 ; (bad)
17638  DB  255                                 ; (bad)
17639  DB  127,0                               ; jg            5a10 <.literal16+0x8a0>
17640  DB  0,0                                 ; add           %al,(%rax)
17641  DB  0,63                                ; add           %bh,(%rdi)
17642  DB  0,0                                 ; add           %al,(%rax)
17643  DB  0,63                                ; add           %bh,(%rdi)
17644  DB  0,0                                 ; add           %al,(%rax)
17645  DB  0,63                                ; add           %bh,(%rdi)
17646  DB  0,0                                 ; add           %al,(%rax)
17647  DB  0,63                                ; add           %bh,(%rdi)
17648  DB  119,115                             ; ja            5a95 <.literal16+0x925>
17649  DB  248                                 ; clc
17650  DB  194,119,115                         ; retq          $0x7377
17651  DB  248                                 ; clc
17652  DB  194,119,115                         ; retq          $0x7377
17653  DB  248                                 ; clc
17654  DB  194,119,115                         ; retq          $0x7377
17655  DB  248                                 ; clc
17656  DB  194,117,191                         ; retq          $0xbf75
17657  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17658  DB  63                                  ; (bad)
17659  DB  117,191                             ; jne           59f9 <.literal16+0x889>
17660  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17661  DB  63                                  ; (bad)
17662  DB  249                                 ; stc
17663  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17664  DB  249                                 ; stc
17665  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17666  DB  249                                 ; stc
17667  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17668  DB  249                                 ; stc
17669  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17670  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
17671  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a39a3a <_sk_callback_sse41+0xffffffffe9a349a0>
17672  DB  220,63                              ; fdivrl        (%rdi)
17673  DB  81                                  ; push          %rcx
17674  DB  140,242                             ; mov           %?,%edx
17675  DB  66,81                               ; rex.X         push %rcx
17676  DB  140,242                             ; mov           %?,%edx
17677  DB  66,81                               ; rex.X         push %rcx
17678  DB  140,242                             ; mov           %?,%edx
17679  DB  66,81                               ; rex.X         push %rcx
17680  DB  140,242                             ; mov           %?,%edx
17681  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
17682  DB  63                                  ; (bad)
17683  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
17684  DB  63                                  ; (bad)
17685  DB  248                                 ; clc
17686  DB  245                                 ; cmc
17687  DB  154                                 ; (bad)
17688  DB  64,248                              ; rex           clc
17689  DB  245                                 ; cmc
17690  DB  154                                 ; (bad)
17691  DB  64,248                              ; rex           clc
17692  DB  245                                 ; cmc
17693  DB  154                                 ; (bad)
17694  DB  64,248                              ; rex           clc
17695  DB  245                                 ; cmc
17696  DB  154                                 ; (bad)
17697  DB  64,254                              ; rex           (bad)
17698  DB  210,221                             ; rcr           %cl,%ch
17699  DB  65,254                              ; rex.B         (bad)
17700  DB  210,221                             ; rcr           %cl,%ch
17701  DB  65,254                              ; rex.B         (bad)
17702  DB  210,221                             ; rcr           %cl,%ch
17703  DB  65,254                              ; rex.B         (bad)
17704  DB  210,221                             ; rcr           %cl,%ch
17705  DB  65,0,0                              ; add           %al,(%r8)
17706  DB  0,75,0                              ; add           %cl,0x0(%rbx)
17707  DB  0,0                                 ; add           %al,(%rax)
17708  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
17709  DB  0,75,0                              ; add           %cl,0x0(%rbx)
17710  DB  0,0                                 ; add           %al,(%rax)
17711  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
17712  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17713  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17714  DB  63                                  ; (bad)
17715  DB  0,0                                 ; add           %al,(%rax)
17716  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17717  DB  0,200                               ; add           %cl,%al
17718  DB  66,0,0                              ; rex.X         add %al,(%rax)
17719  DB  200,66,0,0                          ; enterq        $0x42,$0x0
17720  DB  200,66,0,0                          ; enterq        $0x42,$0x0
17721  DB  200,66,0,0                          ; enterq        $0x42,$0x0
17722  DB  127,67                              ; jg            5b17 <.literal16+0x9a7>
17723  DB  0,0                                 ; add           %al,(%rax)
17724  DB  127,67                              ; jg            5b1b <.literal16+0x9ab>
17725  DB  0,0                                 ; add           %al,(%rax)
17726  DB  127,67                              ; jg            5b1f <.literal16+0x9af>
17727  DB  0,0                                 ; add           %al,(%rax)
17728  DB  127,67                              ; jg            5b23 <.literal16+0x9b3>
17729  DB  0,0                                 ; add           %al,(%rax)
17730  DB  0,195                               ; add           %al,%bl
17731  DB  0,0                                 ; add           %al,(%rax)
17732  DB  0,195                               ; add           %al,%bl
17733  DB  0,0                                 ; add           %al,(%rax)
17734  DB  0,195                               ; add           %al,%bl
17735  DB  0,0                                 ; add           %al,(%rax)
17736  DB  0,195                               ; add           %al,%bl
17737  DB  0,0                                 ; add           %al,(%rax)
17738  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
17739  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
17740  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
17741  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
17742  DB  13,60,203,61,13                     ; or            $0xd3dcb3c,%eax
17743  DB  60,203                              ; cmp           $0xcb,%al
17744  DB  61,13,60,203,61                     ; cmp           $0x3dcb3c0d,%eax
17745  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
17746  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
17747  DB  3,59                                ; add           (%rbx),%edi
17748  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
17749  DB  18,3                                ; adc           (%rbx),%al
17750  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
17751  DB  3,59                                ; add           (%rbx),%edi
17752  DB  10,215                              ; or            %bh,%dl
17753  DB  163,59,10,215,163,59,10,215,163     ; movabs        %eax,0xa3d70a3ba3d70a3b
17754  DB  59,10                               ; cmp           (%rdx),%ecx
17755  DB  215                                 ; xlat          %ds:(%rbx)
17756  DB  163,59,194,24,17,60,194,24,17       ; movabs        %eax,0x1118c23c1118c23b
17757  DB  60,194                              ; cmp           $0xc2,%al
17758  DB  24,17                               ; sbb           %dl,(%rcx)
17759  DB  60,194                              ; cmp           $0xc2,%al
17760  DB  24,17                               ; sbb           %dl,(%rcx)
17761  DB  60,203                              ; cmp           $0xcb,%al
17762  DB  61,13,190,203,61                    ; cmp           $0x3dcbbe0d,%eax
17763  DB  13,190,203,61,13                    ; or            $0xd3dcbbe,%eax
17764  DB  190,203,61,13,190                   ; mov           $0xbe0d3dcb,%esi
17765  DB  80                                  ; push          %rax
17766  DB  128,3,62                            ; addb          $0x3e,(%rbx)
17767  DB  80                                  ; push          %rax
17768  DB  128,3,62                            ; addb          $0x3e,(%rbx)
17769  DB  80                                  ; push          %rax
17770  DB  128,3,62                            ; addb          $0x3e,(%rbx)
17771  DB  80                                  ; push          %rax
17772  DB  128,3,62                            ; addb          $0x3e,(%rbx)
17773  DB  31                                  ; (bad)
17774  DB  215                                 ; xlat          %ds:(%rbx)
17775  DB  118,63                              ; jbe           5ba3 <.literal16+0xa33>
17776  DB  31                                  ; (bad)
17777  DB  215                                 ; xlat          %ds:(%rbx)
17778  DB  118,63                              ; jbe           5ba7 <.literal16+0xa37>
17779  DB  31                                  ; (bad)
17780  DB  215                                 ; xlat          %ds:(%rbx)
17781  DB  118,63                              ; jbe           5bab <.literal16+0xa3b>
17782  DB  31                                  ; (bad)
17783  DB  215                                 ; xlat          %ds:(%rbx)
17784  DB  118,63                              ; jbe           5baf <.literal16+0xa3f>
17785  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
17786  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
17787  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
17788  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
17789  DB  255,0                               ; incl          (%rax)
17790  DB  0,0                                 ; add           %al,(%rax)
17791  DB  255,0                               ; incl          (%rax)
17792  DB  0,0                                 ; add           %al,(%rax)
17793  DB  255,0                               ; incl          (%rax)
17794  DB  0,0                                 ; add           %al,(%rax)
17795  DB  255,0                               ; incl          (%rax)
17796  DB  0,0                                 ; add           %al,(%rax)
17797  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17798  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
17799  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
17800  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17801  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
17802  DB  0,127,67                            ; add           %bh,0x43(%rdi)
17803  DB  0,0                                 ; add           %al,(%rax)
17804  DB  127,67                              ; jg            5bfb <.literal16+0xa8b>
17805  DB  0,0                                 ; add           %al,(%rax)
17806  DB  127,67                              ; jg            5bff <.literal16+0xa8f>
17807  DB  0,0                                 ; add           %al,(%rax)
17808  DB  127,67                              ; jg            5c03 <.literal16+0xa93>
17809  DB  255,0                               ; incl          (%rax)
17810  DB  0,0                                 ; add           %al,(%rax)
17811  DB  255,0                               ; incl          (%rax)
17812  DB  0,0                                 ; add           %al,(%rax)
17813  DB  255,0                               ; incl          (%rax)
17814  DB  0,0                                 ; add           %al,(%rax)
17815  DB  255,0                               ; incl          (%rax)
17816  DB  0,0                                 ; add           %al,(%rax)
17817  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17818  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
17819  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
17820  DB  0,0                                 ; add           %al,(%rax)
17821  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17822  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17823  DB  63                                  ; (bad)
17824  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17825  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
17826  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
17827  DB  0,0                                 ; add           %al,(%rax)
17828  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17829  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17830  DB  63                                  ; (bad)
17831  DB  255,0                               ; incl          (%rax)
17832  DB  0,0                                 ; add           %al,(%rax)
17833  DB  255,0                               ; incl          (%rax)
17834  DB  0,0                                 ; add           %al,(%rax)
17835  DB  255,0                               ; incl          (%rax)
17836  DB  0,0                                 ; add           %al,(%rax)
17837  DB  255,0                               ; incl          (%rax)
17838  DB  0,0                                 ; add           %al,(%rax)
17839  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17840  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
17841  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
17842  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
17843  DB  255                                 ; (bad)
17844  DB  255                                 ; (bad)
17845  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3005c40 <_sk_callback_sse41+0x3000ba6>
17846  DB  255                                 ; (bad)
17847  DB  255                                 ; (bad)
17848  DB  255,6                               ; incl          (%rsi)
17849  DB  255                                 ; (bad)
17850  DB  255                                 ; (bad)
17851  DB  255,10                              ; decl          (%rdx)
17852  DB  255                                 ; (bad)
17853  DB  255                                 ; (bad)
17854  DB  255,14                              ; decl          (%rsi)
17855  DB  255                                 ; (bad)
17856  DB  255                                 ; (bad)
17857  DB  255,0                               ; incl          (%rax)
17858  DB  248                                 ; clc
17859  DB  0,0                                 ; add           %al,(%rax)
17860  DB  0,248                               ; add           %bh,%al
17861  DB  0,0                                 ; add           %al,(%rax)
17862  DB  0,248                               ; add           %bh,%al
17863  DB  0,0                                 ; add           %al,(%rax)
17864  DB  0,248                               ; add           %bh,%al
17865  DB  0,0                                 ; add           %al,(%rax)
17866  DB  8,33                                ; or            %ah,(%rcx)
17867  DB  132,55                              ; test          %dh,(%rdi)
17868  DB  8,33                                ; or            %ah,(%rcx)
17869  DB  132,55                              ; test          %dh,(%rdi)
17870  DB  8,33                                ; or            %ah,(%rcx)
17871  DB  132,55                              ; test          %dh,(%rdi)
17872  DB  8,33                                ; or            %ah,(%rcx)
17873  DB  132,55                              ; test          %dh,(%rdi)
17874  DB  224,7                               ; loopne        5c79 <.literal16+0xb09>
17875  DB  0,0                                 ; add           %al,(%rax)
17876  DB  224,7                               ; loopne        5c7d <.literal16+0xb0d>
17877  DB  0,0                                 ; add           %al,(%rax)
17878  DB  224,7                               ; loopne        5c81 <.literal16+0xb11>
17879  DB  0,0                                 ; add           %al,(%rax)
17880  DB  224,7                               ; loopne        5c85 <.literal16+0xb15>
17881  DB  0,0                                 ; add           %al,(%rax)
17882  DB  33,8                                ; and           %ecx,(%rax)
17883  DB  2,58                                ; add           (%rdx),%bh
17884  DB  33,8                                ; and           %ecx,(%rax)
17885  DB  2,58                                ; add           (%rdx),%bh
17886  DB  33,8                                ; and           %ecx,(%rax)
17887  DB  2,58                                ; add           (%rdx),%bh
17888  DB  33,8                                ; and           %ecx,(%rax)
17889  DB  2,58                                ; add           (%rdx),%bh
17890  DB  31                                  ; (bad)
17891  DB  0,0                                 ; add           %al,(%rax)
17892  DB  0,31                                ; add           %bl,(%rdi)
17893  DB  0,0                                 ; add           %al,(%rax)
17894  DB  0,31                                ; add           %bl,(%rdi)
17895  DB  0,0                                 ; add           %al,(%rax)
17896  DB  0,31                                ; add           %bl,(%rdi)
17897  DB  0,0                                 ; add           %al,(%rax)
17898  DB  0,8                                 ; add           %cl,(%rax)
17899  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
17900  DB  8,33                                ; or            %ah,(%rcx)
17901  DB  4,61                                ; add           $0x3d,%al
17902  DB  8,33                                ; or            %ah,(%rcx)
17903  DB  4,61                                ; add           $0x3d,%al
17904  DB  0,0                                 ; add           %al,(%rax)
17905  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17906  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17907  DB  63                                  ; (bad)
17908  DB  0,0                                 ; add           %al,(%rax)
17909  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17910  DB  248                                 ; clc
17911  DB  0,0                                 ; add           %al,(%rax)
17912  DB  0,248                               ; add           %bh,%al
17913  DB  0,0                                 ; add           %al,(%rax)
17914  DB  0,248                               ; add           %bh,%al
17915  DB  0,0                                 ; add           %al,(%rax)
17916  DB  0,248                               ; add           %bh,%al
17917  DB  0,0                                 ; add           %al,(%rax)
17918  DB  8,33                                ; or            %ah,(%rcx)
17919  DB  132,55                              ; test          %dh,(%rdi)
17920  DB  8,33                                ; or            %ah,(%rcx)
17921  DB  132,55                              ; test          %dh,(%rdi)
17922  DB  8,33                                ; or            %ah,(%rcx)
17923  DB  132,55                              ; test          %dh,(%rdi)
17924  DB  8,33                                ; or            %ah,(%rcx)
17925  DB  132,55                              ; test          %dh,(%rdi)
17926  DB  224,7                               ; loopne        5ce9 <.literal16+0xb79>
17927  DB  0,0                                 ; add           %al,(%rax)
17928  DB  224,7                               ; loopne        5ced <.literal16+0xb7d>
17929  DB  0,0                                 ; add           %al,(%rax)
17930  DB  224,7                               ; loopne        5cf1 <.literal16+0xb81>
17931  DB  0,0                                 ; add           %al,(%rax)
17932  DB  224,7                               ; loopne        5cf5 <.literal16+0xb85>
17933  DB  0,0                                 ; add           %al,(%rax)
17934  DB  33,8                                ; and           %ecx,(%rax)
17935  DB  2,58                                ; add           (%rdx),%bh
17936  DB  33,8                                ; and           %ecx,(%rax)
17937  DB  2,58                                ; add           (%rdx),%bh
17938  DB  33,8                                ; and           %ecx,(%rax)
17939  DB  2,58                                ; add           (%rdx),%bh
17940  DB  33,8                                ; and           %ecx,(%rax)
17941  DB  2,58                                ; add           (%rdx),%bh
17942  DB  31                                  ; (bad)
17943  DB  0,0                                 ; add           %al,(%rax)
17944  DB  0,31                                ; add           %bl,(%rdi)
17945  DB  0,0                                 ; add           %al,(%rax)
17946  DB  0,31                                ; add           %bl,(%rdi)
17947  DB  0,0                                 ; add           %al,(%rax)
17948  DB  0,31                                ; add           %bl,(%rdi)
17949  DB  0,0                                 ; add           %al,(%rax)
17950  DB  0,8                                 ; add           %cl,(%rax)
17951  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
17952  DB  8,33                                ; or            %ah,(%rcx)
17953  DB  4,61                                ; add           $0x3d,%al
17954  DB  8,33                                ; or            %ah,(%rcx)
17955  DB  4,61                                ; add           $0x3d,%al
17956  DB  0,0                                 ; add           %al,(%rax)
17957  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17958  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17959  DB  63                                  ; (bad)
17960  DB  0,0                                 ; add           %al,(%rax)
17961  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17962  DB  0,248                               ; add           %bh,%al
17963  DB  65,0,0                              ; add           %al,(%r8)
17964  DB  248                                 ; clc
17965  DB  65,0,0                              ; add           %al,(%r8)
17966  DB  248                                 ; clc
17967  DB  65,0,0                              ; add           %al,(%r8)
17968  DB  248                                 ; clc
17969  DB  65,0,0                              ; add           %al,(%r8)
17970  DB  124,66                              ; jl            5d86 <.literal16+0xc16>
17971  DB  0,0                                 ; add           %al,(%rax)
17972  DB  124,66                              ; jl            5d8a <.literal16+0xc1a>
17973  DB  0,0                                 ; add           %al,(%rax)
17974  DB  124,66                              ; jl            5d8e <.literal16+0xc1e>
17975  DB  0,0                                 ; add           %al,(%rax)
17976  DB  124,66                              ; jl            5d92 <.literal16+0xc22>
17977  DB  0,240                               ; add           %dh,%al
17978  DB  0,0                                 ; add           %al,(%rax)
17979  DB  0,240                               ; add           %dh,%al
17980  DB  0,0                                 ; add           %al,(%rax)
17981  DB  0,240                               ; add           %dh,%al
17982  DB  0,0                                 ; add           %al,(%rax)
17983  DB  0,240                               ; add           %dh,%al
17984  DB  0,0                                 ; add           %al,(%rax)
17985  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
17986  DB  136,55                              ; mov           %dh,(%rdi)
17987  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
17988  DB  136,55                              ; mov           %dh,(%rdi)
17989  DB  0,15                                ; add           %cl,(%rdi)
17990  DB  0,0                                 ; add           %al,(%rax)
17991  DB  0,15                                ; add           %cl,(%rdi)
17992  DB  0,0                                 ; add           %al,(%rax)
17993  DB  0,15                                ; add           %cl,(%rdi)
17994  DB  0,0                                 ; add           %al,(%rax)
17995  DB  0,15                                ; add           %cl,(%rdi)
17996  DB  0,0                                 ; add           %al,(%rax)
17997  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
17998  DB  136,57                              ; mov           %bh,(%rcx)
17999  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
18000  DB  136,57                              ; mov           %bh,(%rcx)
18001  DB  240,0,0                             ; lock          add %al,(%rax)
18002  DB  0,240                               ; add           %dh,%al
18003  DB  0,0                                 ; add           %al,(%rax)
18004  DB  0,240                               ; add           %dh,%al
18005  DB  0,0                                 ; add           %al,(%rax)
18006  DB  0,240                               ; add           %dh,%al
18007  DB  0,0                                 ; add           %al,(%rax)
18008  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
18009  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
18010  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
18011  DB  0,0                                 ; add           %al,(%rax)
18012  DB  0,15                                ; add           %cl,(%rdi)
18013  DB  0,0                                 ; add           %al,(%rax)
18014  DB  0,15                                ; add           %cl,(%rdi)
18015  DB  0,0                                 ; add           %al,(%rax)
18016  DB  0,15                                ; add           %cl,(%rdi)
18017  DB  0,0                                 ; add           %al,(%rax)
18018  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
18019  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
18020  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
18021  DB  0,240                               ; add           %dh,%al
18022  DB  0,0                                 ; add           %al,(%rax)
18023  DB  0,240                               ; add           %dh,%al
18024  DB  0,0                                 ; add           %al,(%rax)
18025  DB  0,240                               ; add           %dh,%al
18026  DB  0,0                                 ; add           %al,(%rax)
18027  DB  0,240                               ; add           %dh,%al
18028  DB  0,0                                 ; add           %al,(%rax)
18029  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
18030  DB  136,55                              ; mov           %dh,(%rdi)
18031  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
18032  DB  136,55                              ; mov           %dh,(%rdi)
18033  DB  0,15                                ; add           %cl,(%rdi)
18034  DB  0,0                                 ; add           %al,(%rax)
18035  DB  0,15                                ; add           %cl,(%rdi)
18036  DB  0,0                                 ; add           %al,(%rax)
18037  DB  0,15                                ; add           %cl,(%rdi)
18038  DB  0,0                                 ; add           %al,(%rax)
18039  DB  0,15                                ; add           %cl,(%rdi)
18040  DB  0,0                                 ; add           %al,(%rax)
18041  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
18042  DB  136,57                              ; mov           %bh,(%rcx)
18043  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
18044  DB  136,57                              ; mov           %bh,(%rcx)
18045  DB  240,0,0                             ; lock          add %al,(%rax)
18046  DB  0,240                               ; add           %dh,%al
18047  DB  0,0                                 ; add           %al,(%rax)
18048  DB  0,240                               ; add           %dh,%al
18049  DB  0,0                                 ; add           %al,(%rax)
18050  DB  0,240                               ; add           %dh,%al
18051  DB  0,0                                 ; add           %al,(%rax)
18052  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
18053  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
18054  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
18055  DB  0,0                                 ; add           %al,(%rax)
18056  DB  0,15                                ; add           %cl,(%rdi)
18057  DB  0,0                                 ; add           %al,(%rax)
18058  DB  0,15                                ; add           %cl,(%rdi)
18059  DB  0,0                                 ; add           %al,(%rax)
18060  DB  0,15                                ; add           %cl,(%rdi)
18061  DB  0,0                                 ; add           %al,(%rax)
18062  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
18063  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
18064  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
18065  DB  0,0                                 ; add           %al,(%rax)
18066  DB  112,65                              ; jo            5e95 <.literal16+0xd25>
18067  DB  0,0                                 ; add           %al,(%rax)
18068  DB  112,65                              ; jo            5e99 <.literal16+0xd29>
18069  DB  0,0                                 ; add           %al,(%rax)
18070  DB  112,65                              ; jo            5e9d <.literal16+0xd2d>
18071  DB  0,0                                 ; add           %al,(%rax)
18072  DB  112,65                              ; jo            5ea1 <.literal16+0xd31>
18073  DB  255,0                               ; incl          (%rax)
18074  DB  0,0                                 ; add           %al,(%rax)
18075  DB  255,0                               ; incl          (%rax)
18076  DB  0,0                                 ; add           %al,(%rax)
18077  DB  255,0                               ; incl          (%rax)
18078  DB  0,0                                 ; add           %al,(%rax)
18079  DB  255,0                               ; incl          (%rax)
18080  DB  0,0                                 ; add           %al,(%rax)
18081  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
18082  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
18083  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
18084  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
18085  DB  255                                 ; (bad)
18086  DB  255                                 ; (bad)
18087  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3005e90 <_sk_callback_sse41+0x3000df6>
18088  DB  255                                 ; (bad)
18089  DB  255                                 ; (bad)
18090  DB  255,6                               ; incl          (%rsi)
18091  DB  255                                 ; (bad)
18092  DB  255                                 ; (bad)
18093  DB  255,10                              ; decl          (%rdx)
18094  DB  255                                 ; (bad)
18095  DB  255                                 ; (bad)
18096  DB  255,14                              ; decl          (%rsi)
18097  DB  255                                 ; (bad)
18098  DB  255                                 ; (bad)
18099  DB  255                                 ; (bad)
18100  DB  255,0                               ; incl          (%rax)
18101  DB  0,0                                 ; add           %al,(%rax)
18102  DB  255,0                               ; incl          (%rax)
18103  DB  0,0                                 ; add           %al,(%rax)
18104  DB  255,0                               ; incl          (%rax)
18105  DB  0,0                                 ; add           %al,(%rax)
18106  DB  255,0                               ; incl          (%rax)
18107  DB  0,0                                 ; add           %al,(%rax)
18108  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
18109  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
18110  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
18111  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
18112  DB  255                                 ; (bad)
18113  DB  255                                 ; (bad)
18114  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3005ed0 <_sk_callback_sse41+0x3000e36>
18115  DB  255                                 ; (bad)
18116  DB  255                                 ; (bad)
18117  DB  255,6                               ; incl          (%rsi)
18118  DB  255                                 ; (bad)
18119  DB  255                                 ; (bad)
18120  DB  255,10                              ; decl          (%rdx)
18121  DB  255                                 ; (bad)
18122  DB  255                                 ; (bad)
18123  DB  255,14                              ; decl          (%rsi)
18124  DB  255                                 ; (bad)
18125  DB  255                                 ; (bad)
18126  DB  255,0                               ; incl          (%rax)
18127  DB  0,127,67                            ; add           %bh,0x43(%rdi)
18128  DB  0,0                                 ; add           %al,(%rax)
18129  DB  127,67                              ; jg            5f2b <.literal16+0xdbb>
18130  DB  0,0                                 ; add           %al,(%rax)
18131  DB  127,67                              ; jg            5f2f <.literal16+0xdbf>
18132  DB  0,0                                 ; add           %al,(%rax)
18133  DB  127,67                              ; jg            5f33 <.literal16+0xdc3>
18134  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
18135  DB  0,0                                 ; add           %al,(%rax)
18136  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
18137  DB  0,0                                 ; add           %al,(%rax)
18138  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
18139  DB  0,0                                 ; add           %al,(%rax)
18140  DB  4,0                                 ; add           $0x0,%al
18141  DB  0,0                                 ; add           %al,(%rax)
18142  DB  4,0                                 ; add           $0x0,%al
18143  DB  0,0                                 ; add           %al,(%rax)
18144  DB  4,0                                 ; add           $0x0,%al
18145  DB  0,0                                 ; add           %al,(%rax)
18146  DB  0,0                                 ; add           %al,(%rax)
18147  DB  56,0                                ; cmp           %al,(%rax)
18148  DB  0,0                                 ; add           %al,(%rax)
18149  DB  56,0                                ; cmp           %al,(%rax)
18150  DB  0,0                                 ; add           %al,(%rax)
18151  DB  56,0                                ; cmp           %al,(%rax)
18152  DB  0,0                                 ; add           %al,(%rax)
18153  DB  56,0                                ; cmp           %al,(%rax)
18154  DB  128,0,0                             ; addb          $0x0,(%rax)
18155  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
18156  DB  0,0                                 ; add           %al,(%rax)
18157  DB  0,128,0,0,0,4                       ; add           %al,0x4000000(%rax)
18158  DB  0,0                                 ; add           %al,(%rax)
18159  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
18160  DB  0,0                                 ; add           %al,(%rax)
18161  DB  4,0                                 ; add           $0x0,%al
18162  DB  0,0                                 ; add           %al,(%rax)
18163  DB  4,0                                 ; add           $0x0,%al
18164  DB  0,0                                 ; add           %al,(%rax)
18165  DB  0,0                                 ; add           %al,(%rax)
18166  DB  56,0                                ; cmp           %al,(%rax)
18167  DB  0,0                                 ; add           %al,(%rax)
18168  DB  56,0                                ; cmp           %al,(%rax)
18169  DB  0,0                                 ; add           %al,(%rax)
18170  DB  56,0                                ; cmp           %al,(%rax)
18171  DB  0,0                                 ; add           %al,(%rax)
18172  DB  56,0                                ; cmp           %al,(%rax)
18173  DB  0,0                                 ; add           %al,(%rax)
18174  DB  128,0,0                             ; addb          $0x0,(%rax)
18175  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
18176  DB  0,0                                 ; add           %al,(%rax)
18177  DB  0,128,0,0,128,56                    ; add           %al,0x38800000(%rax)
18178  DB  0,0                                 ; add           %al,(%rax)
18179  DB  128,56,0                            ; cmpb          $0x0,(%rax)
18180  DB  0,128,56,0,0,128                    ; add           %al,-0x7fffffc8(%rax)
18181  DB  56,0                                ; cmp           %al,(%rax)
18182  DB  64,254                              ; rex           (bad)
18183  DB  255,0                               ; incl          (%rax)
18184  DB  64,254                              ; rex           (bad)
18185  DB  255,0                               ; incl          (%rax)
18186  DB  64,254                              ; rex           (bad)
18187  DB  255,0                               ; incl          (%rax)
18188  DB  64,254                              ; rex           (bad)
18189  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
18190  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
18191  DB  55                                  ; (bad)
18192  DB  128,0,128                           ; addb          $0x80,(%rax)
18193  DB  55                                  ; (bad)
18194  DB  128,0,128                           ; addb          $0x80,(%rax)
18195  DB  55                                  ; (bad)
18196  DB  128,0,128                           ; addb          $0x80,(%rax)
18197  DB  55                                  ; (bad)
18198  DB  128,0,128                           ; addb          $0x80,(%rax)
18199  DB  55                                  ; (bad)
18200  DB  128,0,128                           ; addb          $0x80,(%rax)
18201  DB  55                                  ; (bad)
18202  DB  0,0                                 ; add           %al,(%rax)
18203  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18204  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18205  DB  63                                  ; (bad)
18206  DB  0,0                                 ; add           %al,(%rax)
18207  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18208  DB  255                                 ; (bad)
18209  DB  127,71                              ; jg            5ffb <.literal16+0xe8b>
18210  DB  0,255                               ; add           %bh,%bh
18211  DB  127,71                              ; jg            5fff <.literal16+0xe8f>
18212  DB  0,255                               ; add           %bh,%bh
18213  DB  127,71                              ; jg            6003 <.literal16+0xe93>
18214  DB  0,255                               ; add           %bh,%bh
18215  DB  127,71                              ; jg            6007 <.literal16+0xe97>
18216  DB  0,0                                 ; add           %al,(%rax)
18217  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18218  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18219  DB  63                                  ; (bad)
18220  DB  0,0                                 ; add           %al,(%rax)
18221  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18222  DB  0,128,191,0,0,128                   ; add           %al,-0x7fffff41(%rax)
18223  DB  191,0,0,128,191                     ; mov           $0xbf800000,%edi
18224  DB  0,0                                 ; add           %al,(%rax)
18225  DB  128,191,0,0,0,63,0                  ; cmpb          $0x0,0x3f000000(%rdi)
18226  DB  0,0                                 ; add           %al,(%rax)
18227  DB  63                                  ; (bad)
18228  DB  0,0                                 ; add           %al,(%rax)
18229  DB  0,63                                ; add           %bh,(%rdi)
18230  DB  0,0                                 ; add           %al,(%rax)
18231  DB  0,63                                ; add           %bh,(%rdi)
18232  DB  208                                 ; (bad)
18233  DB  179,89                              ; mov           $0x59,%bl
18234  DB  62,208                              ; ds            (bad)
18235  DB  179,89                              ; mov           $0x59,%bl
18236  DB  62,208                              ; ds            (bad)
18237  DB  179,89                              ; mov           $0x59,%bl
18238  DB  62,208                              ; ds            (bad)
18239  DB  179,89                              ; mov           $0x59,%bl
18240  DB  62,89                               ; ds            pop %rcx
18241  DB  23                                  ; (bad)
18242  DB  55                                  ; (bad)
18243  DB  63                                  ; (bad)
18244  DB  89                                  ; pop           %rcx
18245  DB  23                                  ; (bad)
18246  DB  55                                  ; (bad)
18247  DB  63                                  ; (bad)
18248  DB  89                                  ; pop           %rcx
18249  DB  23                                  ; (bad)
18250  DB  55                                  ; (bad)
18251  DB  63                                  ; (bad)
18252  DB  89                                  ; pop           %rcx
18253  DB  23                                  ; (bad)
18254  DB  55                                  ; (bad)
18255  DB  63                                  ; (bad)
18256  DB  152                                 ; cwtl
18257  DB  221,147,61,152,221,147              ; fstl          -0x6c2267c3(%rbx)
18258  DB  61,152,221,147,61                   ; cmp           $0x3d93dd98,%eax
18259  DB  152                                 ; cwtl
18260  DB  221,147,61,45,16,17                 ; fstl          0x11102d3d(%rbx)
18261  DB  192,45,16,17,192,45,16              ; shrb          $0x10,0x2dc01110(%rip)        # 2dc0713a <_sk_callback_sse41+0x2dc020a0>
18262  DB  17,192                              ; adc           %eax,%eax
18263  DB  45,16,17,192,18                     ; sub           $0x12c01110,%eax
18264  DB  120,57                              ; js            606c <.literal16+0xefc>
18265  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
18266  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
18267  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
18268  DB  64,32,148,90,62,32,148,90           ; and           %dl,0x5a94203e(%rdx,%rbx,2)
18269  DB  62,32,148,90,62,32,148,90           ; and           %dl,%ds:0x5a94203e(%rdx,%rbx,2)
18270  DB  62,4,157                            ; ds            add $0x9d,%al
18271  DB  30                                  ; (bad)
18272  DB  62,4,157                            ; ds            add $0x9d,%al
18273  DB  30                                  ; (bad)
18274  DB  62,4,157                            ; ds            add $0x9d,%al
18275  DB  30                                  ; (bad)
18276  DB  62,4,157                            ; ds            add $0x9d,%al
18277  DB  30                                  ; (bad)
18278  DB  62,0,24                             ; add           %bl,%ds:(%rax)
18279  DB  161,57,0,24,161,57,0,24,161         ; movabs        0xa1180039a1180039,%eax
18280  DB  57,0                                ; cmp           %eax,(%rax)
18281  DB  24,161,57,1,0,0                     ; sbb           %ah,0x139(%rcx)
18282  DB  0,1                                 ; add           %al,(%rcx)
18283  DB  0,0                                 ; add           %al,(%rax)
18284  DB  0,1                                 ; add           %al,(%rcx)
18285  DB  0,0                                 ; add           %al,(%rax)
18286  DB  0,1                                 ; add           %al,(%rcx)
18287  DB  0,0                                 ; add           %al,(%rax)
18288  DB  0,111,43                            ; add           %ch,0x2b(%rdi)
18289  DB  231,187                             ; out           %eax,$0xbb
18290  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
18291  DB  43,231                              ; sub           %edi,%esp
18292  DB  187,111,43,231,187                  ; mov           $0xbbe72b6f,%ebx
18293  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
18294  DB  43,231                              ; sub           %edi,%esp
18295  DB  187,159,215,202,60                  ; mov           $0x3ccad79f,%ebx
18296  DB  159                                 ; lahf
18297  DB  215                                 ; xlat          %ds:(%rbx)
18298  DB  202,60,159                          ; lret          $0x9f3c
18299  DB  215                                 ; xlat          %ds:(%rbx)
18300  DB  202,60,159                          ; lret          $0x9f3c
18301  DB  215                                 ; xlat          %ds:(%rbx)
18302  DB  202,60,212                          ; lret          $0xd43c
18303  DB  100,84                              ; fs            push %rsp
18304  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
18305  DB  212                                 ; (bad)
18306  DB  100,84                              ; fs            push %rsp
18307  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
18308  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
18309  DB  240,34,62                           ; lock          and (%rsi),%bh
18310  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
18311  DB  240,34,62                           ; lock          and (%rsi),%bh
18312  DB  0,0                                 ; add           %al,(%rax)
18313  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
18314  DB  0,128,62,0,0,128                    ; add           %al,-0x7fffffc2(%rax)
18315  DB  62,0,0                              ; add           %al,%ds:(%rax)
18316  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
18317  DB  0,0                                 ; add           %al,(%rax)
18318  DB  63                                  ; (bad)
18319  DB  0,0                                 ; add           %al,(%rax)
18320  DB  0,63                                ; add           %bh,(%rdi)
18321  DB  0,0                                 ; add           %al,(%rax)
18322  DB  0,63                                ; add           %bh,(%rdi)
18323  DB  0,0                                 ; add           %al,(%rax)
18324  DB  0,63                                ; add           %bh,(%rdi)
18325  DB  0,0                                 ; add           %al,(%rax)
18326  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18327  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18328  DB  63                                  ; (bad)
18329  DB  0,0                                 ; add           %al,(%rax)
18330  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18331  DB  0,0                                 ; add           %al,(%rax)
18332  DB  63                                  ; (bad)
18333  DB  0,0                                 ; add           %al,(%rax)
18334  DB  0,63                                ; add           %bh,(%rdi)
18335  DB  0,0                                 ; add           %al,(%rax)
18336  DB  0,63                                ; add           %bh,(%rdi)
18337  DB  0,0                                 ; add           %al,(%rax)
18338  DB  0,63                                ; add           %bh,(%rdi)
18339  DB  0,0                                 ; add           %al,(%rax)
18340  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18341  DB  0,0                                 ; add           %al,(%rax)
18342  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18343  DB  0,0                                 ; add           %al,(%rax)
18344  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18345  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18346  DB  63                                  ; (bad)
18347  DB  0,0                                 ; add           %al,(%rax)
18348  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18349  DB  0,0                                 ; add           %al,(%rax)
18350  DB  63                                  ; (bad)
18351  DB  0,0                                 ; add           %al,(%rax)
18352  DB  0,63                                ; add           %bh,(%rdi)
18353  DB  0,0                                 ; add           %al,(%rax)
18354  DB  0,63                                ; add           %bh,(%rdi)
18355  DB  0,0                                 ; add           %al,(%rax)
18356  DB  0,63                                ; add           %bh,(%rdi)
18357  DB  0,0                                 ; add           %al,(%rax)
18358  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18359  DB  0,0                                 ; add           %al,(%rax)
18360  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18361  DB  0,0                                 ; add           %al,(%rax)
18362  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18363  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18364  DB  63                                  ; (bad)
18365  DB  0,0                                 ; add           %al,(%rax)
18366  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18367  DB  0,0                                 ; add           %al,(%rax)
18368  DB  63                                  ; (bad)
18369  DB  0,0                                 ; add           %al,(%rax)
18370  DB  0,63                                ; add           %bh,(%rdi)
18371  DB  0,0                                 ; add           %al,(%rax)
18372  DB  0,63                                ; add           %bh,(%rdi)
18373  DB  0,0                                 ; add           %al,(%rax)
18374  DB  0,63                                ; add           %bh,(%rdi)
18375  DB  0,0                                 ; add           %al,(%rax)
18376  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
18377  DB  0,192                               ; add           %al,%al
18378  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
18379  DB  0,0                                 ; add           %al,(%rax)
18380  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18381  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18382  DB  63                                  ; (bad)
18383  DB  0,0                                 ; add           %al,(%rax)
18384  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
18385  DB  28,199                              ; sbb           $0xc7,%al
18386  DB  62,114,28                           ; jb,pt         61a2 <.literal16+0x1032>
18387  DB  199                                 ; (bad)
18388  DB  62,114,28                           ; jb,pt         61a6 <.literal16+0x1036>
18389  DB  199                                 ; (bad)
18390  DB  62,114,28                           ; jb,pt         61aa <.literal16+0x103a>
18391  DB  199                                 ; (bad)
18392  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
18393  DB  170                                 ; stos          %al,%es:(%rdi)
18394  DB  170                                 ; stos          %al,%es:(%rdi)
18395  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
18396  DB  171                                 ; stos          %eax,%es:(%rdi)
18397  DB  170                                 ; stos          %al,%es:(%rdi)
18398  DB  170                                 ; stos          %al,%es:(%rdi)
18399  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
18400  DB  0,0                                 ; add           %al,(%rax)
18401  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18402  DB  0,0                                 ; add           %al,(%rax)
18403  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18404  DB  0,0                                 ; add           %al,(%rax)
18405  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18406  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18407  DB  63                                  ; (bad)
18408  DB  0,0                                 ; add           %al,(%rax)
18409  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
18410  DB  85                                  ; push          %rbp
18411  DB  149                                 ; xchg          %eax,%ebp
18412  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18413  DB  85                                  ; push          %rbp
18414  DB  85                                  ; push          %rbp
18415  DB  149                                 ; xchg          %eax,%ebp
18416  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18417  DB  0,0                                 ; add           %al,(%rax)
18418  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18419  DB  0,192                               ; add           %al,%al
18420  DB  63                                  ; (bad)
18421  DB  0,0                                 ; add           %al,(%rax)
18422  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18423  DB  0,192                               ; add           %al,%al
18424  DB  63                                  ; (bad)
18425  DB  0,0                                 ; add           %al,(%rax)
18426  DB  0,63                                ; add           %bh,(%rdi)
18427  DB  0,0                                 ; add           %al,(%rax)
18428  DB  0,63                                ; add           %bh,(%rdi)
18429  DB  0,0                                 ; add           %al,(%rax)
18430  DB  0,63                                ; add           %bh,(%rdi)
18431  DB  0,0                                 ; add           %al,(%rax)
18432  DB  0,63                                ; add           %bh,(%rdi)
18433  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
18434  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f035 <_sk_callback_sse41+0x3d639f9b>
18435  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
18436  DB  0,63                                ; add           %bh,(%rdi)
18437  DB  0,0                                 ; add           %al,(%rax)
18438  DB  0,63                                ; add           %bh,(%rdi)
18439  DB  0,0                                 ; add           %al,(%rax)
18440  DB  0,63                                ; add           %bh,(%rdi)
18441  DB  0,0                                 ; add           %al,(%rax)
18442  DB  0,63                                ; add           %bh,(%rdi)
18443  DB  85                                  ; push          %rbp
18444  DB  85                                  ; push          %rbp
18445  DB  149                                 ; xchg          %eax,%ebp
18446  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18447  DB  85                                  ; push          %rbp
18448  DB  85                                  ; push          %rbp
18449  DB  149                                 ; xchg          %eax,%ebp
18450  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18451  DB  0,0                                 ; add           %al,(%rax)
18452  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18453  DB  0,192                               ; add           %al,%al
18454  DB  63                                  ; (bad)
18455  DB  0,0                                 ; add           %al,(%rax)
18456  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18457  DB  0,192                               ; add           %al,%al
18458  DB  63                                  ; (bad)
18459  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
18460  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f075 <_sk_callback_sse41+0x3d639fdb>
18461  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
18462  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18463  DB  0,192                               ; add           %al,%al
18464  DB  63                                  ; (bad)
18465  DB  0,0                                 ; add           %al,(%rax)
18466  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18467  DB  0,192                               ; add           %al,%al
18468  DB  63                                  ; (bad)
18469  DB  114,28                              ; jb            626e <.literal16+0x10fe>
18470  DB  199                                 ; (bad)
18471  DB  62,114,28                           ; jb,pt         6272 <.literal16+0x1102>
18472  DB  199                                 ; (bad)
18473  DB  62,114,28                           ; jb,pt         6276 <.literal16+0x1106>
18474  DB  199                                 ; (bad)
18475  DB  62,114,28                           ; jb,pt         627a <.literal16+0x110a>
18476  DB  199                                 ; (bad)
18477  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
18478  DB  170                                 ; stos          %al,%es:(%rdi)
18479  DB  170                                 ; stos          %al,%es:(%rdi)
18480  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
18481  DB  171                                 ; stos          %eax,%es:(%rdi)
18482  DB  170                                 ; stos          %al,%es:(%rdi)
18483  DB  170                                 ; stos          %al,%es:(%rdi)
18484  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
18485  DB  0,0                                 ; add           %al,(%rax)
18486  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
18487  DB  0,192                               ; add           %al,%al
18488  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
18489  DB  0,0                                 ; add           %al,(%rax)
18490  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18491  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18492  DB  63                                  ; (bad)
18493  DB  0,0                                 ; add           %al,(%rax)
18494  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
18495  DB  28,199                              ; sbb           $0xc7,%al
18496  DB  62,114,28                           ; jb,pt         62b2 <.literal16+0x1142>
18497  DB  199                                 ; (bad)
18498  DB  62,114,28                           ; jb,pt         62b6 <.literal16+0x1146>
18499  DB  199                                 ; (bad)
18500  DB  62,114,28                           ; jb,pt         62ba <.literal16+0x114a>
18501  DB  199                                 ; (bad)
18502  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
18503  DB  170                                 ; stos          %al,%es:(%rdi)
18504  DB  170                                 ; stos          %al,%es:(%rdi)
18505  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
18506  DB  171                                 ; stos          %eax,%es:(%rdi)
18507  DB  170                                 ; stos          %al,%es:(%rdi)
18508  DB  170                                 ; stos          %al,%es:(%rdi)
18509  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
18510  DB  0,0                                 ; add           %al,(%rax)
18511  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18512  DB  0,0                                 ; add           %al,(%rax)
18513  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18514  DB  0,0                                 ; add           %al,(%rax)
18515  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18516  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18517  DB  63                                  ; (bad)
18518  DB  0,0                                 ; add           %al,(%rax)
18519  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
18520  DB  85                                  ; push          %rbp
18521  DB  149                                 ; xchg          %eax,%ebp
18522  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18523  DB  85                                  ; push          %rbp
18524  DB  85                                  ; push          %rbp
18525  DB  149                                 ; xchg          %eax,%ebp
18526  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18527  DB  0,0                                 ; add           %al,(%rax)
18528  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18529  DB  0,192                               ; add           %al,%al
18530  DB  63                                  ; (bad)
18531  DB  0,0                                 ; add           %al,(%rax)
18532  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18533  DB  0,192                               ; add           %al,%al
18534  DB  63                                  ; (bad)
18535  DB  0,0                                 ; add           %al,(%rax)
18536  DB  0,63                                ; add           %bh,(%rdi)
18537  DB  0,0                                 ; add           %al,(%rax)
18538  DB  0,63                                ; add           %bh,(%rdi)
18539  DB  0,0                                 ; add           %al,(%rax)
18540  DB  0,63                                ; add           %bh,(%rdi)
18541  DB  0,0                                 ; add           %al,(%rax)
18542  DB  0,63                                ; add           %bh,(%rdi)
18543  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
18544  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f145 <_sk_callback_sse41+0x3d63a0ab>
18545  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
18546  DB  0,63                                ; add           %bh,(%rdi)
18547  DB  0,0                                 ; add           %al,(%rax)
18548  DB  0,63                                ; add           %bh,(%rdi)
18549  DB  0,0                                 ; add           %al,(%rax)
18550  DB  0,63                                ; add           %bh,(%rdi)
18551  DB  0,0                                 ; add           %al,(%rax)
18552  DB  0,63                                ; add           %bh,(%rdi)
18553  DB  85                                  ; push          %rbp
18554  DB  85                                  ; push          %rbp
18555  DB  149                                 ; xchg          %eax,%ebp
18556  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18557  DB  85                                  ; push          %rbp
18558  DB  85                                  ; push          %rbp
18559  DB  149                                 ; xchg          %eax,%ebp
18560  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18561  DB  0,0                                 ; add           %al,(%rax)
18562  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18563  DB  0,192                               ; add           %al,%al
18564  DB  63                                  ; (bad)
18565  DB  0,0                                 ; add           %al,(%rax)
18566  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18567  DB  0,192                               ; add           %al,%al
18568  DB  63                                  ; (bad)
18569  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
18570  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f185 <_sk_callback_sse41+0x3d63a0eb>
18571  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
18572  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18573  DB  0,192                               ; add           %al,%al
18574  DB  63                                  ; (bad)
18575  DB  0,0                                 ; add           %al,(%rax)
18576  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18577  DB  0,192                               ; add           %al,%al
18578  DB  63                                  ; (bad)
18579  DB  114,28                              ; jb            637e <.literal16+0x120e>
18580  DB  199                                 ; (bad)
18581  DB  62,114,28                           ; jb,pt         6382 <_sk_callback_sse41+0x12e8>
18582  DB  199                                 ; (bad)
18583  DB  62,114,28                           ; jb,pt         6386 <_sk_callback_sse41+0x12ec>
18584  DB  199                                 ; (bad)
18585  DB  62,114,28                           ; jb,pt         638a <_sk_callback_sse41+0x12f0>
18586  DB  199                                 ; (bad)
18587  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
18588  DB  170                                 ; stos          %al,%es:(%rdi)
18589  DB  170                                 ; stos          %al,%es:(%rdi)
18590  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
18591  DB  171                                 ; stos          %eax,%es:(%rdi)
18592  DB  170                                 ; stos          %al,%es:(%rdi)
18593  DB  170                                 ; stos          %al,%es:(%rdi)
18594  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
18595ALIGN 32
18596
18597PUBLIC _sk_start_pipeline_sse2
18598_sk_start_pipeline_sse2 LABEL PROC
18599  DB  85                                  ; push          %rbp
18600  DB  72,137,229                          ; mov           %rsp,%rbp
18601  DB  65,87                               ; push          %r15
18602  DB  65,86                               ; push          %r14
18603  DB  65,85                               ; push          %r13
18604  DB  65,84                               ; push          %r12
18605  DB  86                                  ; push          %rsi
18606  DB  87                                  ; push          %rdi
18607  DB  83                                  ; push          %rbx
18608  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
18609  DB  68,15,41,125,176                    ; movaps        %xmm15,-0x50(%rbp)
18610  DB  68,15,41,117,160                    ; movaps        %xmm14,-0x60(%rbp)
18611  DB  68,15,41,109,144                    ; movaps        %xmm13,-0x70(%rbp)
18612  DB  68,15,41,101,128                    ; movaps        %xmm12,-0x80(%rbp)
18613  DB  68,15,41,157,112,255,255,255        ; movaps        %xmm11,-0x90(%rbp)
18614  DB  68,15,41,149,96,255,255,255         ; movaps        %xmm10,-0xa0(%rbp)
18615  DB  68,15,41,141,80,255,255,255         ; movaps        %xmm9,-0xb0(%rbp)
18616  DB  68,15,41,133,64,255,255,255         ; movaps        %xmm8,-0xc0(%rbp)
18617  DB  15,41,189,48,255,255,255            ; movaps        %xmm7,-0xd0(%rbp)
18618  DB  15,41,181,32,255,255,255            ; movaps        %xmm6,-0xe0(%rbp)
18619  DB  72,137,211                          ; mov           %rdx,%rbx
18620  DB  73,137,207                          ; mov           %rcx,%r15
18621  DB  76,139,117,48                       ; mov           0x30(%rbp),%r14
18622  DB  76,137,206                          ; mov           %r9,%rsi
18623  DB  72,173                              ; lods          %ds:(%rsi),%rax
18624  DB  73,137,197                          ; mov           %rax,%r13
18625  DB  73,137,244                          ; mov           %rsi,%r12
18626  DB  73,141,79,4                         ; lea           0x4(%r15),%rcx
18627  DB  76,57,193                           ; cmp           %r8,%rcx
18628  DB  118,5                               ; jbe           7b <_sk_start_pipeline_sse2+0x7b>
18629  DB  76,137,250                          ; mov           %r15,%rdx
18630  DB  235,75                              ; jmp           c6 <_sk_start_pipeline_sse2+0xc6>
18631  DB  76,137,133,24,255,255,255           ; mov           %r8,-0xe8(%rbp)
18632  DB  65,184,0,0,0,0                      ; mov           $0x0,%r8d
18633  DB  15,87,192                           ; xorps         %xmm0,%xmm0
18634  DB  15,87,201                           ; xorps         %xmm1,%xmm1
18635  DB  15,87,210                           ; xorps         %xmm2,%xmm2
18636  DB  15,87,219                           ; xorps         %xmm3,%xmm3
18637  DB  15,87,228                           ; xorps         %xmm4,%xmm4
18638  DB  15,87,237                           ; xorps         %xmm5,%xmm5
18639  DB  15,87,246                           ; xorps         %xmm6,%xmm6
18640  DB  15,87,255                           ; xorps         %xmm7,%xmm7
18641  DB  76,137,247                          ; mov           %r14,%rdi
18642  DB  76,137,230                          ; mov           %r12,%rsi
18643  DB  76,137,250                          ; mov           %r15,%rdx
18644  DB  72,137,217                          ; mov           %rbx,%rcx
18645  DB  65,255,213                          ; callq         *%r13
18646  DB  76,139,133,24,255,255,255           ; mov           -0xe8(%rbp),%r8
18647  DB  73,141,87,4                         ; lea           0x4(%r15),%rdx
18648  DB  73,131,199,8                        ; add           $0x8,%r15
18649  DB  77,57,199                           ; cmp           %r8,%r15
18650  DB  73,137,215                          ; mov           %rdx,%r15
18651  DB  118,188                             ; jbe           82 <_sk_start_pipeline_sse2+0x82>
18652  DB  73,41,208                           ; sub           %rdx,%r8
18653  DB  116,36                              ; je            ef <_sk_start_pipeline_sse2+0xef>
18654  DB  15,87,192                           ; xorps         %xmm0,%xmm0
18655  DB  15,87,201                           ; xorps         %xmm1,%xmm1
18656  DB  15,87,210                           ; xorps         %xmm2,%xmm2
18657  DB  15,87,219                           ; xorps         %xmm3,%xmm3
18658  DB  15,87,228                           ; xorps         %xmm4,%xmm4
18659  DB  15,87,237                           ; xorps         %xmm5,%xmm5
18660  DB  15,87,246                           ; xorps         %xmm6,%xmm6
18661  DB  15,87,255                           ; xorps         %xmm7,%xmm7
18662  DB  76,137,247                          ; mov           %r14,%rdi
18663  DB  76,137,230                          ; mov           %r12,%rsi
18664  DB  72,137,217                          ; mov           %rbx,%rcx
18665  DB  65,255,213                          ; callq         *%r13
18666  DB  15,40,181,32,255,255,255            ; movaps        -0xe0(%rbp),%xmm6
18667  DB  15,40,189,48,255,255,255            ; movaps        -0xd0(%rbp),%xmm7
18668  DB  68,15,40,133,64,255,255,255         ; movaps        -0xc0(%rbp),%xmm8
18669  DB  68,15,40,141,80,255,255,255         ; movaps        -0xb0(%rbp),%xmm9
18670  DB  68,15,40,149,96,255,255,255         ; movaps        -0xa0(%rbp),%xmm10
18671  DB  68,15,40,157,112,255,255,255        ; movaps        -0x90(%rbp),%xmm11
18672  DB  68,15,40,101,128                    ; movaps        -0x80(%rbp),%xmm12
18673  DB  68,15,40,109,144                    ; movaps        -0x70(%rbp),%xmm13
18674  DB  68,15,40,117,160                    ; movaps        -0x60(%rbp),%xmm14
18675  DB  68,15,40,125,176                    ; movaps        -0x50(%rbp),%xmm15
18676  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
18677  DB  91                                  ; pop           %rbx
18678  DB  95                                  ; pop           %rdi
18679  DB  94                                  ; pop           %rsi
18680  DB  65,92                               ; pop           %r12
18681  DB  65,93                               ; pop           %r13
18682  DB  65,94                               ; pop           %r14
18683  DB  65,95                               ; pop           %r15
18684  DB  93                                  ; pop           %rbp
18685  DB  195                                 ; retq
18686
18687PUBLIC _sk_just_return_sse2
18688_sk_just_return_sse2 LABEL PROC
18689  DB  195                                 ; retq
18690
18691PUBLIC _sk_seed_shader_sse2
18692_sk_seed_shader_sse2 LABEL PROC
18693  DB  102,15,110,194                      ; movd          %edx,%xmm0
18694  DB  102,15,112,192,0                    ; pshufd        $0x0,%xmm0,%xmm0
18695  DB  15,91,200                           ; cvtdq2ps      %xmm0,%xmm1
18696  DB  15,40,21,103,85,0,0                 ; movaps        0x5567(%rip),%xmm2        # 56c0 <_sk_callback_sse2+0xd9>
18697  DB  15,88,202                           ; addps         %xmm2,%xmm1
18698  DB  15,16,7                             ; movups        (%rdi),%xmm0
18699  DB  15,88,193                           ; addps         %xmm1,%xmm0
18700  DB  102,15,110,201                      ; movd          %ecx,%xmm1
18701  DB  102,15,112,201,0                    ; pshufd        $0x0,%xmm1,%xmm1
18702  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
18703  DB  15,88,202                           ; addps         %xmm2,%xmm1
18704  DB  72,173                              ; lods          %ds:(%rsi),%rax
18705  DB  15,40,21,86,85,0,0                  ; movaps        0x5556(%rip),%xmm2        # 56d0 <_sk_callback_sse2+0xe9>
18706  DB  15,87,219                           ; xorps         %xmm3,%xmm3
18707  DB  15,87,228                           ; xorps         %xmm4,%xmm4
18708  DB  15,87,237                           ; xorps         %xmm5,%xmm5
18709  DB  15,87,246                           ; xorps         %xmm6,%xmm6
18710  DB  15,87,255                           ; xorps         %xmm7,%xmm7
18711  DB  255,224                             ; jmpq          *%rax
18712
18713PUBLIC _sk_dither_sse2
18714_sk_dither_sse2 LABEL PROC
18715  DB  72,173                              ; lods          %ds:(%rsi),%rax
18716  DB  102,68,15,110,194                   ; movd          %edx,%xmm8
18717  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
18718  DB  243,68,15,111,79,32                 ; movdqu        0x20(%rdi),%xmm9
18719  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
18720  DB  102,68,15,110,193                   ; movd          %ecx,%xmm8
18721  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
18722  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
18723  DB  102,68,15,111,21,36,85,0,0          ; movdqa        0x5524(%rip),%xmm10        # 56e0 <_sk_callback_sse2+0xf9>
18724  DB  102,69,15,111,216                   ; movdqa        %xmm8,%xmm11
18725  DB  102,69,15,219,218                   ; pand          %xmm10,%xmm11
18726  DB  102,65,15,114,243,5                 ; pslld         $0x5,%xmm11
18727  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
18728  DB  102,65,15,114,242,4                 ; pslld         $0x4,%xmm10
18729  DB  102,68,15,111,37,16,85,0,0          ; movdqa        0x5510(%rip),%xmm12        # 56f0 <_sk_callback_sse2+0x109>
18730  DB  102,68,15,111,45,23,85,0,0          ; movdqa        0x5517(%rip),%xmm13        # 5700 <_sk_callback_sse2+0x119>
18731  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
18732  DB  102,69,15,219,245                   ; pand          %xmm13,%xmm14
18733  DB  102,65,15,114,246,2                 ; pslld         $0x2,%xmm14
18734  DB  102,69,15,219,233                   ; pand          %xmm9,%xmm13
18735  DB  102,69,15,254,237                   ; paddd         %xmm13,%xmm13
18736  DB  102,69,15,219,196                   ; pand          %xmm12,%xmm8
18737  DB  102,65,15,114,208,1                 ; psrld         $0x1,%xmm8
18738  DB  102,69,15,219,204                   ; pand          %xmm12,%xmm9
18739  DB  102,65,15,114,209,2                 ; psrld         $0x2,%xmm9
18740  DB  102,69,15,235,234                   ; por           %xmm10,%xmm13
18741  DB  102,69,15,235,233                   ; por           %xmm9,%xmm13
18742  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
18743  DB  102,69,15,235,245                   ; por           %xmm13,%xmm14
18744  DB  102,69,15,235,240                   ; por           %xmm8,%xmm14
18745  DB  69,15,91,198                        ; cvtdq2ps      %xmm14,%xmm8
18746  DB  68,15,89,5,210,84,0,0               ; mulps         0x54d2(%rip),%xmm8        # 5710 <_sk_callback_sse2+0x129>
18747  DB  68,15,88,5,218,84,0,0               ; addps         0x54da(%rip),%xmm8        # 5720 <_sk_callback_sse2+0x139>
18748  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
18749  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
18750  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
18751  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
18752  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
18753  DB  68,15,88,210                        ; addps         %xmm2,%xmm10
18754  DB  15,93,195                           ; minps         %xmm3,%xmm0
18755  DB  15,87,210                           ; xorps         %xmm2,%xmm2
18756  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
18757  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
18758  DB  15,93,203                           ; minps         %xmm3,%xmm1
18759  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
18760  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
18761  DB  68,15,93,211                        ; minps         %xmm3,%xmm10
18762  DB  65,15,95,210                        ; maxps         %xmm10,%xmm2
18763  DB  72,173                              ; lods          %ds:(%rsi),%rax
18764  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
18765  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
18766  DB  255,224                             ; jmpq          *%rax
18767
18768PUBLIC _sk_constant_color_sse2
18769_sk_constant_color_sse2 LABEL PROC
18770  DB  72,173                              ; lods          %ds:(%rsi),%rax
18771  DB  243,15,16,0                         ; movss         (%rax),%xmm0
18772  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
18773  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
18774  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
18775  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
18776  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
18777  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
18778  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
18779  DB  72,173                              ; lods          %ds:(%rsi),%rax
18780  DB  255,224                             ; jmpq          *%rax
18781
18782PUBLIC _sk_load_rgba_sse2
18783_sk_load_rgba_sse2 LABEL PROC
18784  DB  72,173                              ; lods          %ds:(%rsi),%rax
18785  DB  15,16,0                             ; movups        (%rax),%xmm0
18786  DB  15,16,72,16                         ; movups        0x10(%rax),%xmm1
18787  DB  15,16,80,32                         ; movups        0x20(%rax),%xmm2
18788  DB  15,16,88,48                         ; movups        0x30(%rax),%xmm3
18789  DB  72,173                              ; lods          %ds:(%rsi),%rax
18790  DB  255,224                             ; jmpq          *%rax
18791
18792PUBLIC _sk_store_rgba_sse2
18793_sk_store_rgba_sse2 LABEL PROC
18794  DB  72,173                              ; lods          %ds:(%rsi),%rax
18795  DB  15,17,0                             ; movups        %xmm0,(%rax)
18796  DB  15,17,72,16                         ; movups        %xmm1,0x10(%rax)
18797  DB  15,17,80,32                         ; movups        %xmm2,0x20(%rax)
18798  DB  15,17,88,48                         ; movups        %xmm3,0x30(%rax)
18799  DB  72,173                              ; lods          %ds:(%rsi),%rax
18800  DB  255,224                             ; jmpq          *%rax
18801
18802PUBLIC _sk_clear_sse2
18803_sk_clear_sse2 LABEL PROC
18804  DB  72,173                              ; lods          %ds:(%rsi),%rax
18805  DB  15,87,192                           ; xorps         %xmm0,%xmm0
18806  DB  15,87,201                           ; xorps         %xmm1,%xmm1
18807  DB  15,87,210                           ; xorps         %xmm2,%xmm2
18808  DB  15,87,219                           ; xorps         %xmm3,%xmm3
18809  DB  255,224                             ; jmpq          *%rax
18810
18811PUBLIC _sk_srcatop_sse2
18812_sk_srcatop_sse2 LABEL PROC
18813  DB  15,89,199                           ; mulps         %xmm7,%xmm0
18814  DB  68,15,40,5,52,84,0,0                ; movaps        0x5434(%rip),%xmm8        # 5730 <_sk_callback_sse2+0x149>
18815  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
18816  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18817  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
18818  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
18819  DB  15,89,207                           ; mulps         %xmm7,%xmm1
18820  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18821  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
18822  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
18823  DB  15,89,215                           ; mulps         %xmm7,%xmm2
18824  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18825  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
18826  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
18827  DB  15,89,223                           ; mulps         %xmm7,%xmm3
18828  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
18829  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
18830  DB  72,173                              ; lods          %ds:(%rsi),%rax
18831  DB  255,224                             ; jmpq          *%rax
18832
18833PUBLIC _sk_dstatop_sse2
18834_sk_dstatop_sse2 LABEL PROC
18835  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
18836  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
18837  DB  68,15,40,13,247,83,0,0              ; movaps        0x53f7(%rip),%xmm9        # 5740 <_sk_callback_sse2+0x159>
18838  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
18839  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
18840  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
18841  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
18842  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
18843  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
18844  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
18845  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
18846  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
18847  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
18848  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
18849  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
18850  DB  15,89,223                           ; mulps         %xmm7,%xmm3
18851  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
18852  DB  72,173                              ; lods          %ds:(%rsi),%rax
18853  DB  255,224                             ; jmpq          *%rax
18854
18855PUBLIC _sk_srcin_sse2
18856_sk_srcin_sse2 LABEL PROC
18857  DB  15,89,199                           ; mulps         %xmm7,%xmm0
18858  DB  15,89,207                           ; mulps         %xmm7,%xmm1
18859  DB  15,89,215                           ; mulps         %xmm7,%xmm2
18860  DB  15,89,223                           ; mulps         %xmm7,%xmm3
18861  DB  72,173                              ; lods          %ds:(%rsi),%rax
18862  DB  255,224                             ; jmpq          *%rax
18863
18864PUBLIC _sk_dstin_sse2
18865_sk_dstin_sse2 LABEL PROC
18866  DB  15,40,195                           ; movaps        %xmm3,%xmm0
18867  DB  15,89,196                           ; mulps         %xmm4,%xmm0
18868  DB  15,40,203                           ; movaps        %xmm3,%xmm1
18869  DB  15,89,205                           ; mulps         %xmm5,%xmm1
18870  DB  15,40,211                           ; movaps        %xmm3,%xmm2
18871  DB  15,89,214                           ; mulps         %xmm6,%xmm2
18872  DB  15,89,223                           ; mulps         %xmm7,%xmm3
18873  DB  72,173                              ; lods          %ds:(%rsi),%rax
18874  DB  255,224                             ; jmpq          *%rax
18875
18876PUBLIC _sk_srcout_sse2
18877_sk_srcout_sse2 LABEL PROC
18878  DB  68,15,40,5,155,83,0,0               ; movaps        0x539b(%rip),%xmm8        # 5750 <_sk_callback_sse2+0x169>
18879  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
18880  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18881  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18882  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
18883  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
18884  DB  72,173                              ; lods          %ds:(%rsi),%rax
18885  DB  255,224                             ; jmpq          *%rax
18886
18887PUBLIC _sk_dstout_sse2
18888_sk_dstout_sse2 LABEL PROC
18889  DB  68,15,40,5,139,83,0,0               ; movaps        0x538b(%rip),%xmm8        # 5760 <_sk_callback_sse2+0x179>
18890  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
18891  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
18892  DB  15,89,196                           ; mulps         %xmm4,%xmm0
18893  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
18894  DB  15,89,205                           ; mulps         %xmm5,%xmm1
18895  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
18896  DB  15,89,214                           ; mulps         %xmm6,%xmm2
18897  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
18898  DB  72,173                              ; lods          %ds:(%rsi),%rax
18899  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
18900  DB  255,224                             ; jmpq          *%rax
18901
18902PUBLIC _sk_srcover_sse2
18903_sk_srcover_sse2 LABEL PROC
18904  DB  68,15,40,5,110,83,0,0               ; movaps        0x536e(%rip),%xmm8        # 5770 <_sk_callback_sse2+0x189>
18905  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
18906  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18907  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
18908  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
18909  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18910  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
18911  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
18912  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18913  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
18914  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
18915  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
18916  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
18917  DB  72,173                              ; lods          %ds:(%rsi),%rax
18918  DB  255,224                             ; jmpq          *%rax
18919
18920PUBLIC _sk_dstover_sse2
18921_sk_dstover_sse2 LABEL PROC
18922  DB  68,15,40,5,66,83,0,0                ; movaps        0x5342(%rip),%xmm8        # 5780 <_sk_callback_sse2+0x199>
18923  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
18924  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
18925  DB  15,88,196                           ; addps         %xmm4,%xmm0
18926  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
18927  DB  15,88,205                           ; addps         %xmm5,%xmm1
18928  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
18929  DB  15,88,214                           ; addps         %xmm6,%xmm2
18930  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
18931  DB  15,88,223                           ; addps         %xmm7,%xmm3
18932  DB  72,173                              ; lods          %ds:(%rsi),%rax
18933  DB  255,224                             ; jmpq          *%rax
18934
18935PUBLIC _sk_modulate_sse2
18936_sk_modulate_sse2 LABEL PROC
18937  DB  15,89,196                           ; mulps         %xmm4,%xmm0
18938  DB  15,89,205                           ; mulps         %xmm5,%xmm1
18939  DB  15,89,214                           ; mulps         %xmm6,%xmm2
18940  DB  15,89,223                           ; mulps         %xmm7,%xmm3
18941  DB  72,173                              ; lods          %ds:(%rsi),%rax
18942  DB  255,224                             ; jmpq          *%rax
18943
18944PUBLIC _sk_multiply_sse2
18945_sk_multiply_sse2 LABEL PROC
18946  DB  68,15,40,5,22,83,0,0                ; movaps        0x5316(%rip),%xmm8        # 5790 <_sk_callback_sse2+0x1a9>
18947  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
18948  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
18949  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
18950  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
18951  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
18952  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
18953  DB  68,15,89,220                        ; mulps         %xmm4,%xmm11
18954  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
18955  DB  15,89,196                           ; mulps         %xmm4,%xmm0
18956  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
18957  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
18958  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
18959  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
18960  DB  68,15,89,221                        ; mulps         %xmm5,%xmm11
18961  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
18962  DB  15,89,205                           ; mulps         %xmm5,%xmm1
18963  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
18964  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
18965  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
18966  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
18967  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
18968  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
18969  DB  15,89,214                           ; mulps         %xmm6,%xmm2
18970  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
18971  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
18972  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
18973  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
18974  DB  15,89,223                           ; mulps         %xmm7,%xmm3
18975  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
18976  DB  72,173                              ; lods          %ds:(%rsi),%rax
18977  DB  255,224                             ; jmpq          *%rax
18978
18979PUBLIC _sk_plus__sse2
18980_sk_plus__sse2 LABEL PROC
18981  DB  15,88,196                           ; addps         %xmm4,%xmm0
18982  DB  15,88,205                           ; addps         %xmm5,%xmm1
18983  DB  15,88,214                           ; addps         %xmm6,%xmm2
18984  DB  15,88,223                           ; addps         %xmm7,%xmm3
18985  DB  72,173                              ; lods          %ds:(%rsi),%rax
18986  DB  255,224                             ; jmpq          *%rax
18987
18988PUBLIC _sk_screen_sse2
18989_sk_screen_sse2 LABEL PROC
18990  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
18991  DB  15,88,196                           ; addps         %xmm4,%xmm0
18992  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
18993  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
18994  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
18995  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
18996  DB  15,89,205                           ; mulps         %xmm5,%xmm1
18997  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
18998  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
18999  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
19000  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19001  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
19002  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
19003  DB  68,15,88,215                        ; addps         %xmm7,%xmm10
19004  DB  15,89,223                           ; mulps         %xmm7,%xmm3
19005  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
19006  DB  72,173                              ; lods          %ds:(%rsi),%rax
19007  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19008  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
19009  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
19010  DB  255,224                             ; jmpq          *%rax
19011
19012PUBLIC _sk_xor__sse2
19013_sk_xor__sse2 LABEL PROC
19014  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
19015  DB  15,40,29,75,82,0,0                  ; movaps        0x524b(%rip),%xmm3        # 57a0 <_sk_callback_sse2+0x1b9>
19016  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19017  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
19018  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
19019  DB  65,15,92,216                        ; subps         %xmm8,%xmm3
19020  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
19021  DB  68,15,89,212                        ; mulps         %xmm4,%xmm10
19022  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
19023  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
19024  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
19025  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
19026  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
19027  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
19028  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
19029  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
19030  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
19031  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
19032  DB  15,89,223                           ; mulps         %xmm7,%xmm3
19033  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
19034  DB  72,173                              ; lods          %ds:(%rsi),%rax
19035  DB  255,224                             ; jmpq          *%rax
19036
19037PUBLIC _sk_darken_sse2
19038_sk_darken_sse2 LABEL PROC
19039  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
19040  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
19041  DB  15,88,196                           ; addps         %xmm4,%xmm0
19042  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
19043  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19044  DB  15,89,204                           ; mulps         %xmm4,%xmm1
19045  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
19046  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
19047  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19048  DB  15,88,205                           ; addps         %xmm5,%xmm1
19049  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
19050  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19051  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19052  DB  69,15,95,193                        ; maxps         %xmm9,%xmm8
19053  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
19054  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
19055  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
19056  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19057  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19058  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
19059  DB  65,15,95,209                        ; maxps         %xmm9,%xmm2
19060  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
19061  DB  15,40,21,182,81,0,0                 ; movaps        0x51b6(%rip),%xmm2        # 57b0 <_sk_callback_sse2+0x1c9>
19062  DB  15,92,211                           ; subps         %xmm3,%xmm2
19063  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19064  DB  15,88,218                           ; addps         %xmm2,%xmm3
19065  DB  72,173                              ; lods          %ds:(%rsi),%rax
19066  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19067  DB  255,224                             ; jmpq          *%rax
19068
19069PUBLIC _sk_lighten_sse2
19070_sk_lighten_sse2 LABEL PROC
19071  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
19072  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
19073  DB  15,88,196                           ; addps         %xmm4,%xmm0
19074  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
19075  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19076  DB  15,89,204                           ; mulps         %xmm4,%xmm1
19077  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
19078  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
19079  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19080  DB  15,88,205                           ; addps         %xmm5,%xmm1
19081  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
19082  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19083  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19084  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
19085  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
19086  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
19087  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
19088  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19089  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19090  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
19091  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
19092  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
19093  DB  15,40,21,91,81,0,0                  ; movaps        0x515b(%rip),%xmm2        # 57c0 <_sk_callback_sse2+0x1d9>
19094  DB  15,92,211                           ; subps         %xmm3,%xmm2
19095  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19096  DB  15,88,218                           ; addps         %xmm2,%xmm3
19097  DB  72,173                              ; lods          %ds:(%rsi),%rax
19098  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19099  DB  255,224                             ; jmpq          *%rax
19100
19101PUBLIC _sk_difference_sse2
19102_sk_difference_sse2 LABEL PROC
19103  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
19104  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
19105  DB  15,88,196                           ; addps         %xmm4,%xmm0
19106  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
19107  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19108  DB  15,89,204                           ; mulps         %xmm4,%xmm1
19109  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
19110  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
19111  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
19112  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19113  DB  15,88,205                           ; addps         %xmm5,%xmm1
19114  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
19115  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19116  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19117  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
19118  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
19119  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
19120  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
19121  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
19122  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19123  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19124  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
19125  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
19126  DB  15,88,210                           ; addps         %xmm2,%xmm2
19127  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
19128  DB  15,40,21,245,80,0,0                 ; movaps        0x50f5(%rip),%xmm2        # 57d0 <_sk_callback_sse2+0x1e9>
19129  DB  15,92,211                           ; subps         %xmm3,%xmm2
19130  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19131  DB  15,88,218                           ; addps         %xmm2,%xmm3
19132  DB  72,173                              ; lods          %ds:(%rsi),%rax
19133  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19134  DB  255,224                             ; jmpq          *%rax
19135
19136PUBLIC _sk_exclusion_sse2
19137_sk_exclusion_sse2 LABEL PROC
19138  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
19139  DB  15,40,200                           ; movaps        %xmm0,%xmm1
19140  DB  15,88,196                           ; addps         %xmm4,%xmm0
19141  DB  15,89,204                           ; mulps         %xmm4,%xmm1
19142  DB  15,88,201                           ; addps         %xmm1,%xmm1
19143  DB  15,92,193                           ; subps         %xmm1,%xmm0
19144  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19145  DB  15,88,205                           ; addps         %xmm5,%xmm1
19146  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
19147  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
19148  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
19149  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
19150  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
19151  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19152  DB  15,88,210                           ; addps         %xmm2,%xmm2
19153  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
19154  DB  15,40,21,181,80,0,0                 ; movaps        0x50b5(%rip),%xmm2        # 57e0 <_sk_callback_sse2+0x1f9>
19155  DB  15,92,211                           ; subps         %xmm3,%xmm2
19156  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19157  DB  15,88,218                           ; addps         %xmm2,%xmm3
19158  DB  72,173                              ; lods          %ds:(%rsi),%rax
19159  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19160  DB  255,224                             ; jmpq          *%rax
19161
19162PUBLIC _sk_colorburn_sse2
19163_sk_colorburn_sse2 LABEL PROC
19164  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
19165  DB  68,15,40,21,168,80,0,0              ; movaps        0x50a8(%rip),%xmm10        # 57f0 <_sk_callback_sse2+0x209>
19166  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
19167  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
19168  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
19169  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
19170  DB  15,40,199                           ; movaps        %xmm7,%xmm0
19171  DB  15,92,196                           ; subps         %xmm4,%xmm0
19172  DB  15,89,195                           ; mulps         %xmm3,%xmm0
19173  DB  65,15,94,192                        ; divps         %xmm8,%xmm0
19174  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
19175  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
19176  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19177  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
19178  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
19179  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
19180  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
19181  DB  15,88,196                           ; addps         %xmm4,%xmm0
19182  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
19183  DB  69,15,40,224                        ; movaps        %xmm8,%xmm12
19184  DB  69,15,194,227,0                     ; cmpeqps       %xmm11,%xmm12
19185  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
19186  DB  69,15,84,196                        ; andps         %xmm12,%xmm8
19187  DB  69,15,85,229                        ; andnps        %xmm13,%xmm12
19188  DB  69,15,40,234                        ; movaps        %xmm10,%xmm13
19189  DB  68,15,89,236                        ; mulps         %xmm4,%xmm13
19190  DB  69,15,86,224                        ; orps          %xmm8,%xmm12
19191  DB  68,15,40,196                        ; movaps        %xmm4,%xmm8
19192  DB  68,15,194,199,0                     ; cmpeqps       %xmm7,%xmm8
19193  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
19194  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
19195  DB  69,15,85,196                        ; andnps        %xmm12,%xmm8
19196  DB  65,15,86,192                        ; orps          %xmm8,%xmm0
19197  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
19198  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
19199  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
19200  DB  68,15,92,229                        ; subps         %xmm5,%xmm12
19201  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
19202  DB  68,15,94,225                        ; divps         %xmm1,%xmm12
19203  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19204  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
19205  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
19206  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
19207  DB  68,15,40,233                        ; movaps        %xmm1,%xmm13
19208  DB  69,15,194,235,0                     ; cmpeqps       %xmm11,%xmm13
19209  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
19210  DB  69,15,88,224                        ; addps         %xmm8,%xmm12
19211  DB  65,15,84,205                        ; andps         %xmm13,%xmm1
19212  DB  69,15,85,236                        ; andnps        %xmm12,%xmm13
19213  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
19214  DB  68,15,86,233                        ; orps          %xmm1,%xmm13
19215  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
19216  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19217  DB  68,15,88,233                        ; addps         %xmm1,%xmm13
19218  DB  15,40,205                           ; movaps        %xmm5,%xmm1
19219  DB  15,194,207,0                        ; cmpeqps       %xmm7,%xmm1
19220  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
19221  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
19222  DB  68,15,86,193                        ; orps          %xmm1,%xmm8
19223  DB  15,40,207                           ; movaps        %xmm7,%xmm1
19224  DB  15,92,206                           ; subps         %xmm6,%xmm1
19225  DB  15,89,203                           ; mulps         %xmm3,%xmm1
19226  DB  15,94,202                           ; divps         %xmm2,%xmm1
19227  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
19228  DB  68,15,93,225                        ; minps         %xmm1,%xmm12
19229  DB  15,40,207                           ; movaps        %xmm7,%xmm1
19230  DB  65,15,92,204                        ; subps         %xmm12,%xmm1
19231  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
19232  DB  68,15,194,218,0                     ; cmpeqps       %xmm2,%xmm11
19233  DB  15,89,203                           ; mulps         %xmm3,%xmm1
19234  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
19235  DB  65,15,84,211                        ; andps         %xmm11,%xmm2
19236  DB  68,15,85,217                        ; andnps        %xmm1,%xmm11
19237  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
19238  DB  68,15,86,218                        ; orps          %xmm2,%xmm11
19239  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
19240  DB  15,89,206                           ; mulps         %xmm6,%xmm1
19241  DB  68,15,88,217                        ; addps         %xmm1,%xmm11
19242  DB  15,40,206                           ; movaps        %xmm6,%xmm1
19243  DB  15,194,207,0                        ; cmpeqps       %xmm7,%xmm1
19244  DB  68,15,84,201                        ; andps         %xmm1,%xmm9
19245  DB  65,15,85,203                        ; andnps        %xmm11,%xmm1
19246  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
19247  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
19248  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
19249  DB  72,173                              ; lods          %ds:(%rsi),%rax
19250  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19251  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
19252  DB  255,224                             ; jmpq          *%rax
19253
19254PUBLIC _sk_colordodge_sse2
19255_sk_colordodge_sse2 LABEL PROC
19256  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
19257  DB  68,15,40,21,94,79,0,0               ; movaps        0x4f5e(%rip),%xmm10        # 5800 <_sk_callback_sse2+0x219>
19258  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
19259  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
19260  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
19261  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
19262  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
19263  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
19264  DB  15,40,195                           ; movaps        %xmm3,%xmm0
19265  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
19266  DB  68,15,94,192                        ; divps         %xmm0,%xmm8
19267  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19268  DB  15,40,199                           ; movaps        %xmm7,%xmm0
19269  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
19270  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
19271  DB  68,15,194,243,0                     ; cmpeqps       %xmm3,%xmm14
19272  DB  15,89,195                           ; mulps         %xmm3,%xmm0
19273  DB  65,15,88,196                        ; addps         %xmm12,%xmm0
19274  DB  69,15,84,206                        ; andps         %xmm14,%xmm9
19275  DB  68,15,85,240                        ; andnps        %xmm0,%xmm14
19276  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
19277  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
19278  DB  15,88,196                           ; addps         %xmm4,%xmm0
19279  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
19280  DB  69,15,86,241                        ; orps          %xmm9,%xmm14
19281  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
19282  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
19283  DB  69,15,88,241                        ; addps         %xmm9,%xmm14
19284  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
19285  DB  69,15,194,200,0                     ; cmpeqps       %xmm8,%xmm9
19286  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
19287  DB  69,15,85,206                        ; andnps        %xmm14,%xmm9
19288  DB  65,15,86,193                        ; orps          %xmm9,%xmm0
19289  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19290  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19291  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
19292  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
19293  DB  69,15,94,204                        ; divps         %xmm12,%xmm9
19294  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
19295  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
19296  DB  69,15,93,233                        ; minps         %xmm9,%xmm13
19297  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
19298  DB  68,15,194,243,0                     ; cmpeqps       %xmm3,%xmm14
19299  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
19300  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
19301  DB  65,15,84,206                        ; andps         %xmm14,%xmm1
19302  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
19303  DB  69,15,40,204                        ; movaps        %xmm12,%xmm9
19304  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
19305  DB  68,15,86,241                        ; orps          %xmm1,%xmm14
19306  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
19307  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19308  DB  68,15,88,241                        ; addps         %xmm1,%xmm14
19309  DB  15,40,205                           ; movaps        %xmm5,%xmm1
19310  DB  65,15,194,200,0                     ; cmpeqps       %xmm8,%xmm1
19311  DB  68,15,84,201                        ; andps         %xmm1,%xmm9
19312  DB  65,15,85,206                        ; andnps        %xmm14,%xmm1
19313  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
19314  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
19315  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
19316  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19317  DB  15,92,202                           ; subps         %xmm2,%xmm1
19318  DB  68,15,94,225                        ; divps         %xmm1,%xmm12
19319  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19320  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
19321  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
19322  DB  15,40,202                           ; movaps        %xmm2,%xmm1
19323  DB  15,194,203,0                        ; cmpeqps       %xmm3,%xmm1
19324  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
19325  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
19326  DB  15,84,209                           ; andps         %xmm1,%xmm2
19327  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
19328  DB  15,86,202                           ; orps          %xmm2,%xmm1
19329  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
19330  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19331  DB  15,88,202                           ; addps         %xmm2,%xmm1
19332  DB  68,15,194,198,0                     ; cmpeqps       %xmm6,%xmm8
19333  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
19334  DB  69,15,84,216                        ; andps         %xmm8,%xmm11
19335  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
19336  DB  69,15,86,195                        ; orps          %xmm11,%xmm8
19337  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
19338  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
19339  DB  72,173                              ; lods          %ds:(%rsi),%rax
19340  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
19341  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19342  DB  255,224                             ; jmpq          *%rax
19343
19344PUBLIC _sk_hardlight_sse2
19345_sk_hardlight_sse2 LABEL PROC
19346  DB  72,131,236,24                       ; sub           $0x18,%rsp
19347  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
19348  DB  15,40,245                           ; movaps        %xmm5,%xmm6
19349  DB  15,40,236                           ; movaps        %xmm4,%xmm5
19350  DB  68,15,40,29,16,78,0,0               ; movaps        0x4e10(%rip),%xmm11        # 5810 <_sk_callback_sse2+0x229>
19351  DB  69,15,40,211                        ; movaps        %xmm11,%xmm10
19352  DB  68,15,92,215                        ; subps         %xmm7,%xmm10
19353  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
19354  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
19355  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
19356  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
19357  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19358  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
19359  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
19360  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
19361  DB  15,40,227                           ; movaps        %xmm3,%xmm4
19362  DB  15,89,231                           ; mulps         %xmm7,%xmm4
19363  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19364  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
19365  DB  68,15,40,255                        ; movaps        %xmm7,%xmm15
19366  DB  68,15,92,253                        ; subps         %xmm5,%xmm15
19367  DB  69,15,89,248                        ; mulps         %xmm8,%xmm15
19368  DB  69,15,88,255                        ; addps         %xmm15,%xmm15
19369  DB  68,15,40,228                        ; movaps        %xmm4,%xmm12
19370  DB  69,15,92,231                        ; subps         %xmm15,%xmm12
19371  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
19372  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
19373  DB  68,15,194,195,2                     ; cmpleps       %xmm3,%xmm8
19374  DB  15,89,197                           ; mulps         %xmm5,%xmm0
19375  DB  15,88,192                           ; addps         %xmm0,%xmm0
19376  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
19377  DB  69,15,85,196                        ; andnps        %xmm12,%xmm8
19378  DB  68,15,86,192                        ; orps          %xmm0,%xmm8
19379  DB  69,15,40,251                        ; movaps        %xmm11,%xmm15
19380  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
19381  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
19382  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
19383  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
19384  DB  15,89,193                           ; mulps         %xmm1,%xmm0
19385  DB  68,15,89,254                        ; mulps         %xmm6,%xmm15
19386  DB  68,15,88,248                        ; addps         %xmm0,%xmm15
19387  DB  15,40,195                           ; movaps        %xmm3,%xmm0
19388  DB  15,92,193                           ; subps         %xmm1,%xmm0
19389  DB  68,15,92,238                        ; subps         %xmm6,%xmm13
19390  DB  68,15,89,232                        ; mulps         %xmm0,%xmm13
19391  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
19392  DB  15,40,196                           ; movaps        %xmm4,%xmm0
19393  DB  65,15,92,197                        ; subps         %xmm13,%xmm0
19394  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
19395  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
19396  DB  68,15,194,203,2                     ; cmpleps       %xmm3,%xmm9
19397  DB  15,89,206                           ; mulps         %xmm6,%xmm1
19398  DB  15,88,201                           ; addps         %xmm1,%xmm1
19399  DB  65,15,84,201                        ; andps         %xmm9,%xmm1
19400  DB  68,15,85,200                        ; andnps        %xmm0,%xmm9
19401  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
19402  DB  69,15,88,207                        ; addps         %xmm15,%xmm9
19403  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
19404  DB  68,15,40,44,36                      ; movaps        (%rsp),%xmm13
19405  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
19406  DB  69,15,88,226                        ; addps         %xmm10,%xmm12
19407  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
19408  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
19409  DB  68,15,194,211,2                     ; cmpleps       %xmm3,%xmm10
19410  DB  15,40,195                           ; movaps        %xmm3,%xmm0
19411  DB  15,92,194                           ; subps         %xmm2,%xmm0
19412  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
19413  DB  15,88,210                           ; addps         %xmm2,%xmm2
19414  DB  69,15,92,245                        ; subps         %xmm13,%xmm14
19415  DB  68,15,89,240                        ; mulps         %xmm0,%xmm14
19416  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
19417  DB  65,15,92,230                        ; subps         %xmm14,%xmm4
19418  DB  65,15,84,210                        ; andps         %xmm10,%xmm2
19419  DB  68,15,85,212                        ; andnps        %xmm4,%xmm10
19420  DB  68,15,86,210                        ; orps          %xmm2,%xmm10
19421  DB  69,15,88,212                        ; addps         %xmm12,%xmm10
19422  DB  65,15,88,219                        ; addps         %xmm11,%xmm3
19423  DB  72,173                              ; lods          %ds:(%rsi),%rax
19424  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
19425  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
19426  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
19427  DB  15,40,229                           ; movaps        %xmm5,%xmm4
19428  DB  15,40,238                           ; movaps        %xmm6,%xmm5
19429  DB  65,15,40,245                        ; movaps        %xmm13,%xmm6
19430  DB  72,131,196,24                       ; add           $0x18,%rsp
19431  DB  255,224                             ; jmpq          *%rax
19432
19433PUBLIC _sk_overlay_sse2
19434_sk_overlay_sse2 LABEL PROC
19435  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
19436  DB  68,15,40,232                        ; movaps        %xmm0,%xmm13
19437  DB  68,15,40,13,219,76,0,0              ; movaps        0x4cdb(%rip),%xmm9        # 5820 <_sk_callback_sse2+0x239>
19438  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
19439  DB  68,15,92,215                        ; subps         %xmm7,%xmm10
19440  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
19441  DB  69,15,89,221                        ; mulps         %xmm13,%xmm11
19442  DB  68,15,92,203                        ; subps         %xmm3,%xmm9
19443  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
19444  DB  15,89,196                           ; mulps         %xmm4,%xmm0
19445  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
19446  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
19447  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
19448  DB  68,15,89,236                        ; mulps         %xmm4,%xmm13
19449  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
19450  DB  68,15,92,244                        ; subps         %xmm4,%xmm14
19451  DB  15,40,204                           ; movaps        %xmm4,%xmm1
19452  DB  15,88,201                           ; addps         %xmm1,%xmm1
19453  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
19454  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
19455  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
19456  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
19457  DB  69,15,89,244                        ; mulps         %xmm12,%xmm14
19458  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
19459  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
19460  DB  69,15,92,230                        ; subps         %xmm14,%xmm12
19461  DB  68,15,84,233                        ; andps         %xmm1,%xmm13
19462  DB  65,15,85,204                        ; andnps        %xmm12,%xmm1
19463  DB  65,15,86,205                        ; orps          %xmm13,%xmm1
19464  DB  15,88,193                           ; addps         %xmm1,%xmm0
19465  DB  69,15,40,226                        ; movaps        %xmm10,%xmm12
19466  DB  69,15,89,224                        ; mulps         %xmm8,%xmm12
19467  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
19468  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19469  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
19470  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
19471  DB  69,15,92,224                        ; subps         %xmm8,%xmm12
19472  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
19473  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19474  DB  68,15,92,237                        ; subps         %xmm5,%xmm13
19475  DB  68,15,40,245                        ; movaps        %xmm5,%xmm14
19476  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
19477  DB  68,15,194,247,2                     ; cmpleps       %xmm7,%xmm14
19478  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
19479  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
19480  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
19481  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
19482  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
19483  DB  69,15,84,198                        ; andps         %xmm14,%xmm8
19484  DB  69,15,85,244                        ; andnps        %xmm12,%xmm14
19485  DB  69,15,86,240                        ; orps          %xmm8,%xmm14
19486  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
19487  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
19488  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
19489  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
19490  DB  69,15,88,194                        ; addps         %xmm10,%xmm8
19491  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
19492  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
19493  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19494  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
19495  DB  68,15,92,230                        ; subps         %xmm6,%xmm12
19496  DB  68,15,40,238                        ; movaps        %xmm6,%xmm13
19497  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
19498  DB  68,15,194,239,2                     ; cmpleps       %xmm7,%xmm13
19499  DB  15,88,210                           ; addps         %xmm2,%xmm2
19500  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
19501  DB  69,15,88,228                        ; addps         %xmm12,%xmm12
19502  DB  69,15,92,220                        ; subps         %xmm12,%xmm11
19503  DB  65,15,84,213                        ; andps         %xmm13,%xmm2
19504  DB  69,15,85,235                        ; andnps        %xmm11,%xmm13
19505  DB  68,15,86,234                        ; orps          %xmm2,%xmm13
19506  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
19507  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
19508  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
19509  DB  72,173                              ; lods          %ds:(%rsi),%rax
19510  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19511  DB  255,224                             ; jmpq          *%rax
19512
19513PUBLIC _sk_softlight_sse2
19514_sk_softlight_sse2 LABEL PROC
19515  DB  72,131,236,40                       ; sub           $0x28,%rsp
19516  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
19517  DB  15,40,245                           ; movaps        %xmm5,%xmm6
19518  DB  15,40,236                           ; movaps        %xmm4,%xmm5
19519  DB  15,41,84,36,16                      ; movaps        %xmm2,0x10(%rsp)
19520  DB  15,40,209                           ; movaps        %xmm1,%xmm2
19521  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
19522  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
19523  DB  68,15,194,231,1                     ; cmpltps       %xmm7,%xmm12
19524  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
19525  DB  68,15,94,215                        ; divps         %xmm7,%xmm10
19526  DB  69,15,84,212                        ; andps         %xmm12,%xmm10
19527  DB  68,15,40,13,149,75,0,0              ; movaps        0x4b95(%rip),%xmm9        # 5830 <_sk_callback_sse2+0x249>
19528  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
19529  DB  69,15,92,250                        ; subps         %xmm10,%xmm15
19530  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
19531  DB  69,15,40,234                        ; movaps        %xmm10,%xmm13
19532  DB  65,15,82,194                        ; rsqrtps       %xmm10,%xmm0
19533  DB  15,83,200                           ; rcpps         %xmm0,%xmm1
19534  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
19535  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
19536  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
19537  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
19538  DB  15,89,192                           ; mulps         %xmm0,%xmm0
19539  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
19540  DB  68,15,40,53,111,75,0,0              ; movaps        0x4b6f(%rip),%xmm14        # 5840 <_sk_callback_sse2+0x259>
19541  DB  69,15,88,222                        ; addps         %xmm14,%xmm11
19542  DB  68,15,89,216                        ; mulps         %xmm0,%xmm11
19543  DB  68,15,40,21,111,75,0,0              ; movaps        0x4b6f(%rip),%xmm10        # 5850 <_sk_callback_sse2+0x269>
19544  DB  69,15,89,234                        ; mulps         %xmm10,%xmm13
19545  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
19546  DB  15,88,228                           ; addps         %xmm4,%xmm4
19547  DB  15,88,228                           ; addps         %xmm4,%xmm4
19548  DB  15,194,231,2                        ; cmpleps       %xmm7,%xmm4
19549  DB  68,15,84,236                        ; andps         %xmm4,%xmm13
19550  DB  15,85,225                           ; andnps        %xmm1,%xmm4
19551  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
19552  DB  15,88,192                           ; addps         %xmm0,%xmm0
19553  DB  65,15,86,229                        ; orps          %xmm13,%xmm4
19554  DB  15,40,200                           ; movaps        %xmm0,%xmm1
19555  DB  15,92,203                           ; subps         %xmm3,%xmm1
19556  DB  68,15,89,249                        ; mulps         %xmm1,%xmm15
19557  DB  15,89,207                           ; mulps         %xmm7,%xmm1
19558  DB  15,89,225                           ; mulps         %xmm1,%xmm4
19559  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19560  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19561  DB  15,88,225                           ; addps         %xmm1,%xmm4
19562  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
19563  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
19564  DB  65,15,40,203                        ; movaps        %xmm11,%xmm1
19565  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19566  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
19567  DB  68,15,92,239                        ; subps         %xmm7,%xmm13
19568  DB  69,15,89,197                        ; mulps         %xmm13,%xmm8
19569  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
19570  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
19571  DB  68,15,89,253                        ; mulps         %xmm5,%xmm15
19572  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
19573  DB  68,15,84,248                        ; andps         %xmm0,%xmm15
19574  DB  15,85,196                           ; andnps        %xmm4,%xmm0
19575  DB  65,15,86,199                        ; orps          %xmm15,%xmm0
19576  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
19577  DB  68,15,40,198                        ; movaps        %xmm6,%xmm8
19578  DB  68,15,94,199                        ; divps         %xmm7,%xmm8
19579  DB  69,15,84,196                        ; andps         %xmm12,%xmm8
19580  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19581  DB  15,88,201                           ; addps         %xmm1,%xmm1
19582  DB  15,88,201                           ; addps         %xmm1,%xmm1
19583  DB  15,40,225                           ; movaps        %xmm1,%xmm4
19584  DB  15,89,228                           ; mulps         %xmm4,%xmm4
19585  DB  15,88,225                           ; addps         %xmm1,%xmm4
19586  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19587  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
19588  DB  15,89,204                           ; mulps         %xmm4,%xmm1
19589  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
19590  DB  69,15,92,248                        ; subps         %xmm8,%xmm15
19591  DB  65,15,82,224                        ; rsqrtps       %xmm8,%xmm4
19592  DB  15,83,228                           ; rcpps         %xmm4,%xmm4
19593  DB  65,15,92,224                        ; subps         %xmm8,%xmm4
19594  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
19595  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
19596  DB  15,40,206                           ; movaps        %xmm6,%xmm1
19597  DB  15,88,201                           ; addps         %xmm1,%xmm1
19598  DB  15,88,201                           ; addps         %xmm1,%xmm1
19599  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
19600  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
19601  DB  15,85,204                           ; andnps        %xmm4,%xmm1
19602  DB  65,15,86,200                        ; orps          %xmm8,%xmm1
19603  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
19604  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
19605  DB  65,15,40,224                        ; movaps        %xmm8,%xmm4
19606  DB  15,92,227                           ; subps         %xmm3,%xmm4
19607  DB  68,15,89,252                        ; mulps         %xmm4,%xmm15
19608  DB  15,89,231                           ; mulps         %xmm7,%xmm4
19609  DB  15,89,204                           ; mulps         %xmm4,%xmm1
19610  DB  15,40,227                           ; movaps        %xmm3,%xmm4
19611  DB  15,89,230                           ; mulps         %xmm6,%xmm4
19612  DB  15,88,204                           ; addps         %xmm4,%xmm1
19613  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
19614  DB  15,89,230                           ; mulps         %xmm6,%xmm4
19615  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
19616  DB  15,88,212                           ; addps         %xmm4,%xmm2
19617  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
19618  DB  68,15,89,254                        ; mulps         %xmm6,%xmm15
19619  DB  68,15,194,195,2                     ; cmpleps       %xmm3,%xmm8
19620  DB  69,15,84,248                        ; andps         %xmm8,%xmm15
19621  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
19622  DB  69,15,86,199                        ; orps          %xmm15,%xmm8
19623  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
19624  DB  68,15,40,60,36                      ; movaps        (%rsp),%xmm15
19625  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
19626  DB  15,94,207                           ; divps         %xmm7,%xmm1
19627  DB  65,15,84,204                        ; andps         %xmm12,%xmm1
19628  DB  68,15,92,201                        ; subps         %xmm1,%xmm9
19629  DB  68,15,88,241                        ; addps         %xmm1,%xmm14
19630  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
19631  DB  15,82,209                           ; rsqrtps       %xmm1,%xmm2
19632  DB  15,83,210                           ; rcpps         %xmm2,%xmm2
19633  DB  15,92,209                           ; subps         %xmm1,%xmm2
19634  DB  15,88,201                           ; addps         %xmm1,%xmm1
19635  DB  15,88,201                           ; addps         %xmm1,%xmm1
19636  DB  15,40,225                           ; movaps        %xmm1,%xmm4
19637  DB  15,89,228                           ; mulps         %xmm4,%xmm4
19638  DB  15,88,225                           ; addps         %xmm1,%xmm4
19639  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
19640  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
19641  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
19642  DB  15,88,201                           ; addps         %xmm1,%xmm1
19643  DB  15,88,201                           ; addps         %xmm1,%xmm1
19644  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
19645  DB  68,15,84,209                        ; andps         %xmm1,%xmm10
19646  DB  15,85,202                           ; andnps        %xmm2,%xmm1
19647  DB  15,40,84,36,16                      ; movaps        0x10(%rsp),%xmm2
19648  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
19649  DB  15,88,210                           ; addps         %xmm2,%xmm2
19650  DB  65,15,86,202                        ; orps          %xmm10,%xmm1
19651  DB  15,40,226                           ; movaps        %xmm2,%xmm4
19652  DB  15,92,227                           ; subps         %xmm3,%xmm4
19653  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
19654  DB  15,89,231                           ; mulps         %xmm7,%xmm4
19655  DB  15,89,204                           ; mulps         %xmm4,%xmm1
19656  DB  15,40,227                           ; movaps        %xmm3,%xmm4
19657  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
19658  DB  15,88,204                           ; addps         %xmm4,%xmm1
19659  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
19660  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
19661  DB  65,15,88,229                        ; addps         %xmm13,%xmm4
19662  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
19663  DB  69,15,89,207                        ; mulps         %xmm15,%xmm9
19664  DB  69,15,40,215                        ; movaps        %xmm15,%xmm10
19665  DB  15,194,211,2                        ; cmpleps       %xmm3,%xmm2
19666  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
19667  DB  15,85,209                           ; andnps        %xmm1,%xmm2
19668  DB  65,15,86,209                        ; orps          %xmm9,%xmm2
19669  DB  15,88,212                           ; addps         %xmm4,%xmm2
19670  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
19671  DB  65,15,88,219                        ; addps         %xmm11,%xmm3
19672  DB  72,173                              ; lods          %ds:(%rsi),%rax
19673  DB  15,40,229                           ; movaps        %xmm5,%xmm4
19674  DB  15,40,238                           ; movaps        %xmm6,%xmm5
19675  DB  65,15,40,242                        ; movaps        %xmm10,%xmm6
19676  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19677  DB  72,131,196,40                       ; add           $0x28,%rsp
19678  DB  255,224                             ; jmpq          *%rax
19679
19680PUBLIC _sk_hue_sse2
19681_sk_hue_sse2 LABEL PROC
19682  DB  72,131,236,88                       ; sub           $0x58,%rsp
19683  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
19684  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
19685  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
19686  DB  68,15,40,225                        ; movaps        %xmm1,%xmm12
19687  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
19688  DB  68,15,40,5,171,73,0,0               ; movaps        0x49ab(%rip),%xmm8        # 5890 <_sk_callback_sse2+0x2a9>
19689  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
19690  DB  15,40,207                           ; movaps        %xmm7,%xmm1
19691  DB  68,15,92,217                        ; subps         %xmm1,%xmm11
19692  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
19693  DB  15,41,68,36,64                      ; movaps        %xmm0,0x40(%rsp)
19694  DB  69,15,89,227                        ; mulps         %xmm11,%xmm12
19695  DB  68,15,41,100,36,48                  ; movaps        %xmm12,0x30(%rsp)
19696  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
19697  DB  15,89,211                           ; mulps         %xmm3,%xmm2
19698  DB  68,15,40,229                        ; movaps        %xmm5,%xmm12
19699  DB  68,15,40,237                        ; movaps        %xmm5,%xmm13
19700  DB  15,40,197                           ; movaps        %xmm5,%xmm0
19701  DB  15,41,68,36,32                      ; movaps        %xmm0,0x20(%rsp)
19702  DB  15,40,254                           ; movaps        %xmm6,%xmm7
19703  DB  68,15,95,239                        ; maxps         %xmm7,%xmm13
19704  DB  15,40,236                           ; movaps        %xmm4,%xmm5
19705  DB  68,15,40,245                        ; movaps        %xmm5,%xmm14
19706  DB  68,15,40,253                        ; movaps        %xmm5,%xmm15
19707  DB  69,15,95,253                        ; maxps         %xmm13,%xmm15
19708  DB  68,15,93,231                        ; minps         %xmm7,%xmm12
19709  DB  69,15,93,244                        ; minps         %xmm12,%xmm14
19710  DB  69,15,92,254                        ; subps         %xmm14,%xmm15
19711  DB  69,15,40,226                        ; movaps        %xmm10,%xmm12
19712  DB  68,15,93,226                        ; minps         %xmm2,%xmm12
19713  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
19714  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
19715  DB  69,15,40,226                        ; movaps        %xmm10,%xmm12
19716  DB  68,15,95,226                        ; maxps         %xmm2,%xmm12
19717  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
19718  DB  69,15,95,244                        ; maxps         %xmm12,%xmm14
19719  DB  69,15,92,245                        ; subps         %xmm13,%xmm14
19720  DB  69,15,92,205                        ; subps         %xmm13,%xmm9
19721  DB  69,15,92,213                        ; subps         %xmm13,%xmm10
19722  DB  65,15,92,213                        ; subps         %xmm13,%xmm2
19723  DB  15,40,240                           ; movaps        %xmm0,%xmm6
19724  DB  68,15,89,251                        ; mulps         %xmm3,%xmm15
19725  DB  69,15,89,207                        ; mulps         %xmm15,%xmm9
19726  DB  69,15,89,215                        ; mulps         %xmm15,%xmm10
19727  DB  65,15,89,215                        ; mulps         %xmm15,%xmm2
19728  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
19729  DB  69,15,94,206                        ; divps         %xmm14,%xmm9
19730  DB  69,15,94,214                        ; divps         %xmm14,%xmm10
19731  DB  65,15,94,214                        ; divps         %xmm14,%xmm2
19732  DB  69,15,194,244,4                     ; cmpneqps      %xmm12,%xmm14
19733  DB  69,15,84,206                        ; andps         %xmm14,%xmm9
19734  DB  69,15,84,214                        ; andps         %xmm14,%xmm10
19735  DB  65,15,84,214                        ; andps         %xmm14,%xmm2
19736  DB  68,15,40,61,184,72,0,0              ; movaps        0x48b8(%rip),%xmm15        # 5860 <_sk_callback_sse2+0x279>
19737  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
19738  DB  15,40,5,189,72,0,0                  ; movaps        0x48bd(%rip),%xmm0        # 5870 <_sk_callback_sse2+0x289>
19739  DB  15,89,240                           ; mulps         %xmm0,%xmm6
19740  DB  15,88,244                           ; addps         %xmm4,%xmm6
19741  DB  68,15,40,53,191,72,0,0              ; movaps        0x48bf(%rip),%xmm14        # 5880 <_sk_callback_sse2+0x299>
19742  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19743  DB  69,15,89,238                        ; mulps         %xmm14,%xmm13
19744  DB  68,15,88,238                        ; addps         %xmm6,%xmm13
19745  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
19746  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
19747  DB  65,15,40,242                        ; movaps        %xmm10,%xmm6
19748  DB  15,89,240                           ; mulps         %xmm0,%xmm6
19749  DB  15,88,244                           ; addps         %xmm4,%xmm6
19750  DB  15,40,226                           ; movaps        %xmm2,%xmm4
19751  DB  65,15,89,230                        ; mulps         %xmm14,%xmm4
19752  DB  15,88,230                           ; addps         %xmm6,%xmm4
19753  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
19754  DB  68,15,92,236                        ; subps         %xmm4,%xmm13
19755  DB  69,15,88,205                        ; addps         %xmm13,%xmm9
19756  DB  69,15,88,213                        ; addps         %xmm13,%xmm10
19757  DB  68,15,88,234                        ; addps         %xmm2,%xmm13
19758  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
19759  DB  65,15,93,213                        ; minps         %xmm13,%xmm2
19760  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
19761  DB  15,93,242                           ; minps         %xmm2,%xmm6
19762  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
19763  DB  65,15,95,213                        ; maxps         %xmm13,%xmm2
19764  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
19765  DB  15,95,226                           ; maxps         %xmm2,%xmm4
19766  DB  69,15,89,249                        ; mulps         %xmm9,%xmm15
19767  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
19768  DB  65,15,88,199                        ; addps         %xmm15,%xmm0
19769  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
19770  DB  68,15,88,240                        ; addps         %xmm0,%xmm14
19771  DB  15,87,210                           ; xorps         %xmm2,%xmm2
19772  DB  15,194,214,2                        ; cmpleps       %xmm6,%xmm2
19773  DB  69,15,40,254                        ; movaps        %xmm14,%xmm15
19774  DB  68,15,92,254                        ; subps         %xmm6,%xmm15
19775  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
19776  DB  65,15,92,246                        ; subps         %xmm14,%xmm6
19777  DB  65,15,89,246                        ; mulps         %xmm14,%xmm6
19778  DB  65,15,94,247                        ; divps         %xmm15,%xmm6
19779  DB  65,15,88,246                        ; addps         %xmm14,%xmm6
19780  DB  15,40,194                           ; movaps        %xmm2,%xmm0
19781  DB  15,85,198                           ; andnps        %xmm6,%xmm0
19782  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
19783  DB  68,15,86,200                        ; orps          %xmm0,%xmm9
19784  DB  15,40,195                           ; movaps        %xmm3,%xmm0
19785  DB  15,41,76,36,16                      ; movaps        %xmm1,0x10(%rsp)
19786  DB  15,89,193                           ; mulps         %xmm1,%xmm0
19787  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
19788  DB  15,88,217                           ; addps         %xmm1,%xmm3
19789  DB  15,92,216                           ; subps         %xmm0,%xmm3
19790  DB  15,41,28,36                         ; movaps        %xmm3,(%rsp)
19791  DB  15,40,240                           ; movaps        %xmm0,%xmm6
19792  DB  15,194,196,1                        ; cmpltps       %xmm4,%xmm0
19793  DB  15,40,200                           ; movaps        %xmm0,%xmm1
19794  DB  65,15,85,201                        ; andnps        %xmm9,%xmm1
19795  DB  69,15,92,206                        ; subps         %xmm14,%xmm9
19796  DB  65,15,92,246                        ; subps         %xmm14,%xmm6
19797  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
19798  DB  65,15,92,230                        ; subps         %xmm14,%xmm4
19799  DB  68,15,94,204                        ; divps         %xmm4,%xmm9
19800  DB  69,15,88,206                        ; addps         %xmm14,%xmm9
19801  DB  68,15,84,200                        ; andps         %xmm0,%xmm9
19802  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
19803  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
19804  DB  65,15,92,206                        ; subps         %xmm14,%xmm1
19805  DB  65,15,89,206                        ; mulps         %xmm14,%xmm1
19806  DB  65,15,94,207                        ; divps         %xmm15,%xmm1
19807  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
19808  DB  15,40,218                           ; movaps        %xmm2,%xmm3
19809  DB  15,85,217                           ; andnps        %xmm1,%xmm3
19810  DB  68,15,84,210                        ; andps         %xmm2,%xmm10
19811  DB  68,15,86,211                        ; orps          %xmm3,%xmm10
19812  DB  15,40,200                           ; movaps        %xmm0,%xmm1
19813  DB  65,15,85,202                        ; andnps        %xmm10,%xmm1
19814  DB  69,15,92,214                        ; subps         %xmm14,%xmm10
19815  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
19816  DB  68,15,94,212                        ; divps         %xmm4,%xmm10
19817  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
19818  DB  68,15,84,208                        ; andps         %xmm0,%xmm10
19819  DB  68,15,86,209                        ; orps          %xmm1,%xmm10
19820  DB  65,15,40,205                        ; movaps        %xmm13,%xmm1
19821  DB  65,15,92,206                        ; subps         %xmm14,%xmm1
19822  DB  65,15,89,206                        ; mulps         %xmm14,%xmm1
19823  DB  65,15,94,207                        ; divps         %xmm15,%xmm1
19824  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
19825  DB  68,15,84,234                        ; andps         %xmm2,%xmm13
19826  DB  15,85,209                           ; andnps        %xmm1,%xmm2
19827  DB  65,15,86,213                        ; orps          %xmm13,%xmm2
19828  DB  15,40,200                           ; movaps        %xmm0,%xmm1
19829  DB  15,85,202                           ; andnps        %xmm2,%xmm1
19830  DB  65,15,92,214                        ; subps         %xmm14,%xmm2
19831  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19832  DB  15,94,212                           ; divps         %xmm4,%xmm2
19833  DB  65,15,88,214                        ; addps         %xmm14,%xmm2
19834  DB  15,84,208                           ; andps         %xmm0,%xmm2
19835  DB  15,86,209                           ; orps          %xmm1,%xmm2
19836  DB  69,15,95,204                        ; maxps         %xmm12,%xmm9
19837  DB  69,15,95,212                        ; maxps         %xmm12,%xmm10
19838  DB  65,15,95,212                        ; maxps         %xmm12,%xmm2
19839  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
19840  DB  15,89,197                           ; mulps         %xmm5,%xmm0
19841  DB  15,40,76,36,64                      ; movaps        0x40(%rsp),%xmm1
19842  DB  15,88,200                           ; addps         %xmm0,%xmm1
19843  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
19844  DB  15,40,193                           ; movaps        %xmm1,%xmm0
19845  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
19846  DB  15,40,116,36,32                     ; movaps        0x20(%rsp),%xmm6
19847  DB  15,89,222                           ; mulps         %xmm6,%xmm3
19848  DB  15,40,76,36,48                      ; movaps        0x30(%rsp),%xmm1
19849  DB  15,88,203                           ; addps         %xmm3,%xmm1
19850  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
19851  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
19852  DB  69,15,88,195                        ; addps         %xmm11,%xmm8
19853  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
19854  DB  72,173                              ; lods          %ds:(%rsi),%rax
19855  DB  15,40,229                           ; movaps        %xmm5,%xmm4
19856  DB  15,40,238                           ; movaps        %xmm6,%xmm5
19857  DB  15,40,247                           ; movaps        %xmm7,%xmm6
19858  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19859  DB  15,40,28,36                         ; movaps        (%rsp),%xmm3
19860  DB  15,40,124,36,16                     ; movaps        0x10(%rsp),%xmm7
19861  DB  72,131,196,88                       ; add           $0x58,%rsp
19862  DB  255,224                             ; jmpq          *%rax
19863
19864PUBLIC _sk_saturation_sse2
19865_sk_saturation_sse2 LABEL PROC
19866  DB  72,131,236,88                       ; sub           $0x58,%rsp
19867  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
19868  DB  68,15,40,198                        ; movaps        %xmm6,%xmm8
19869  DB  15,40,251                           ; movaps        %xmm3,%xmm7
19870  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
19871  DB  68,15,40,215                        ; movaps        %xmm7,%xmm10
19872  DB  68,15,89,212                        ; mulps         %xmm4,%xmm10
19873  DB  15,40,244                           ; movaps        %xmm4,%xmm6
19874  DB  15,41,116,36,16                     ; movaps        %xmm6,0x10(%rsp)
19875  DB  68,15,40,207                        ; movaps        %xmm7,%xmm9
19876  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19877  DB  15,41,108,36,32                     ; movaps        %xmm5,0x20(%rsp)
19878  DB  15,40,199                           ; movaps        %xmm7,%xmm0
19879  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
19880  DB  69,15,40,232                        ; movaps        %xmm8,%xmm13
19881  DB  68,15,41,44,36                      ; movaps        %xmm13,(%rsp)
19882  DB  15,40,225                           ; movaps        %xmm1,%xmm4
19883  DB  15,41,100,36,48                     ; movaps        %xmm4,0x30(%rsp)
19884  DB  15,40,220                           ; movaps        %xmm4,%xmm3
19885  DB  15,41,84,36,64                      ; movaps        %xmm2,0x40(%rsp)
19886  DB  15,95,218                           ; maxps         %xmm2,%xmm3
19887  DB  65,15,40,203                        ; movaps        %xmm11,%xmm1
19888  DB  15,95,203                           ; maxps         %xmm3,%xmm1
19889  DB  15,40,220                           ; movaps        %xmm4,%xmm3
19890  DB  15,93,218                           ; minps         %xmm2,%xmm3
19891  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
19892  DB  15,93,211                           ; minps         %xmm3,%xmm2
19893  DB  15,92,202                           ; subps         %xmm2,%xmm1
19894  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
19895  DB  65,15,40,228                        ; movaps        %xmm12,%xmm4
19896  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
19897  DB  15,93,208                           ; minps         %xmm0,%xmm2
19898  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
19899  DB  68,15,93,194                        ; minps         %xmm2,%xmm8
19900  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
19901  DB  15,95,208                           ; maxps         %xmm0,%xmm2
19902  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
19903  DB  15,95,218                           ; maxps         %xmm2,%xmm3
19904  DB  65,15,92,216                        ; subps         %xmm8,%xmm3
19905  DB  15,87,210                           ; xorps         %xmm2,%xmm2
19906  DB  69,15,92,208                        ; subps         %xmm8,%xmm10
19907  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
19908  DB  68,15,94,211                        ; divps         %xmm3,%xmm10
19909  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
19910  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
19911  DB  68,15,94,203                        ; divps         %xmm3,%xmm9
19912  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
19913  DB  15,89,193                           ; mulps         %xmm1,%xmm0
19914  DB  15,94,195                           ; divps         %xmm3,%xmm0
19915  DB  15,194,218,4                        ; cmpneqps      %xmm2,%xmm3
19916  DB  68,15,84,211                        ; andps         %xmm3,%xmm10
19917  DB  68,15,84,203                        ; andps         %xmm3,%xmm9
19918  DB  15,84,195                           ; andps         %xmm3,%xmm0
19919  DB  68,15,40,5,76,70,0,0                ; movaps        0x464c(%rip),%xmm8        # 58a0 <_sk_callback_sse2+0x2b9>
19920  DB  15,40,214                           ; movaps        %xmm6,%xmm2
19921  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
19922  DB  15,40,13,78,70,0,0                  ; movaps        0x464e(%rip),%xmm1        # 58b0 <_sk_callback_sse2+0x2c9>
19923  DB  15,40,221                           ; movaps        %xmm5,%xmm3
19924  DB  15,89,217                           ; mulps         %xmm1,%xmm3
19925  DB  15,88,218                           ; addps         %xmm2,%xmm3
19926  DB  68,15,40,37,77,70,0,0               ; movaps        0x464d(%rip),%xmm12        # 58c0 <_sk_callback_sse2+0x2d9>
19927  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
19928  DB  68,15,88,235                        ; addps         %xmm3,%xmm13
19929  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
19930  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
19931  DB  65,15,40,217                        ; movaps        %xmm9,%xmm3
19932  DB  15,89,217                           ; mulps         %xmm1,%xmm3
19933  DB  15,88,218                           ; addps         %xmm2,%xmm3
19934  DB  15,40,208                           ; movaps        %xmm0,%xmm2
19935  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
19936  DB  15,88,211                           ; addps         %xmm3,%xmm2
19937  DB  68,15,89,239                        ; mulps         %xmm7,%xmm13
19938  DB  68,15,92,234                        ; subps         %xmm2,%xmm13
19939  DB  69,15,88,213                        ; addps         %xmm13,%xmm10
19940  DB  69,15,88,205                        ; addps         %xmm13,%xmm9
19941  DB  68,15,88,232                        ; addps         %xmm0,%xmm13
19942  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
19943  DB  65,15,93,197                        ; minps         %xmm13,%xmm0
19944  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
19945  DB  15,93,216                           ; minps         %xmm0,%xmm3
19946  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
19947  DB  65,15,95,197                        ; maxps         %xmm13,%xmm0
19948  DB  69,15,40,242                        ; movaps        %xmm10,%xmm14
19949  DB  68,15,95,240                        ; maxps         %xmm0,%xmm14
19950  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
19951  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
19952  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
19953  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
19954  DB  68,15,88,225                        ; addps         %xmm1,%xmm12
19955  DB  15,87,210                           ; xorps         %xmm2,%xmm2
19956  DB  15,194,211,2                        ; cmpleps       %xmm3,%xmm2
19957  DB  65,15,40,244                        ; movaps        %xmm12,%xmm6
19958  DB  15,92,243                           ; subps         %xmm3,%xmm6
19959  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
19960  DB  65,15,92,196                        ; subps         %xmm12,%xmm0
19961  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
19962  DB  15,94,198                           ; divps         %xmm6,%xmm0
19963  DB  65,15,88,196                        ; addps         %xmm12,%xmm0
19964  DB  15,40,202                           ; movaps        %xmm2,%xmm1
19965  DB  15,85,200                           ; andnps        %xmm0,%xmm1
19966  DB  68,15,84,210                        ; andps         %xmm2,%xmm10
19967  DB  68,15,86,209                        ; orps          %xmm1,%xmm10
19968  DB  15,40,223                           ; movaps        %xmm7,%xmm3
19969  DB  15,40,236                           ; movaps        %xmm4,%xmm5
19970  DB  15,89,221                           ; mulps         %xmm5,%xmm3
19971  DB  68,15,40,5,178,69,0,0               ; movaps        0x45b2(%rip),%xmm8        # 58d0 <_sk_callback_sse2+0x2e9>
19972  DB  65,15,40,224                        ; movaps        %xmm8,%xmm4
19973  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
19974  DB  15,88,253                           ; addps         %xmm5,%xmm7
19975  DB  15,92,251                           ; subps         %xmm3,%xmm7
19976  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19977  DB  65,15,194,222,1                     ; cmpltps       %xmm14,%xmm3
19978  DB  15,40,195                           ; movaps        %xmm3,%xmm0
19979  DB  65,15,85,194                        ; andnps        %xmm10,%xmm0
19980  DB  69,15,92,212                        ; subps         %xmm12,%xmm10
19981  DB  65,15,92,204                        ; subps         %xmm12,%xmm1
19982  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
19983  DB  69,15,92,244                        ; subps         %xmm12,%xmm14
19984  DB  69,15,94,214                        ; divps         %xmm14,%xmm10
19985  DB  69,15,88,212                        ; addps         %xmm12,%xmm10
19986  DB  68,15,84,211                        ; andps         %xmm3,%xmm10
19987  DB  68,15,86,208                        ; orps          %xmm0,%xmm10
19988  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
19989  DB  65,15,92,196                        ; subps         %xmm12,%xmm0
19990  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
19991  DB  15,94,198                           ; divps         %xmm6,%xmm0
19992  DB  65,15,88,196                        ; addps         %xmm12,%xmm0
19993  DB  68,15,40,250                        ; movaps        %xmm2,%xmm15
19994  DB  68,15,85,248                        ; andnps        %xmm0,%xmm15
19995  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
19996  DB  69,15,86,207                        ; orps          %xmm15,%xmm9
19997  DB  15,40,195                           ; movaps        %xmm3,%xmm0
19998  DB  65,15,85,193                        ; andnps        %xmm9,%xmm0
19999  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
20000  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
20001  DB  69,15,94,206                        ; divps         %xmm14,%xmm9
20002  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
20003  DB  68,15,84,203                        ; andps         %xmm3,%xmm9
20004  DB  68,15,86,200                        ; orps          %xmm0,%xmm9
20005  DB  65,15,40,197                        ; movaps        %xmm13,%xmm0
20006  DB  65,15,92,196                        ; subps         %xmm12,%xmm0
20007  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
20008  DB  15,94,198                           ; divps         %xmm6,%xmm0
20009  DB  65,15,88,196                        ; addps         %xmm12,%xmm0
20010  DB  68,15,84,234                        ; andps         %xmm2,%xmm13
20011  DB  15,85,208                           ; andnps        %xmm0,%xmm2
20012  DB  65,15,86,213                        ; orps          %xmm13,%xmm2
20013  DB  15,40,195                           ; movaps        %xmm3,%xmm0
20014  DB  15,85,194                           ; andnps        %xmm2,%xmm0
20015  DB  65,15,92,212                        ; subps         %xmm12,%xmm2
20016  DB  15,89,209                           ; mulps         %xmm1,%xmm2
20017  DB  65,15,94,214                        ; divps         %xmm14,%xmm2
20018  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
20019  DB  15,84,211                           ; andps         %xmm3,%xmm2
20020  DB  15,86,208                           ; orps          %xmm0,%xmm2
20021  DB  15,87,192                           ; xorps         %xmm0,%xmm0
20022  DB  68,15,95,208                        ; maxps         %xmm0,%xmm10
20023  DB  68,15,95,200                        ; maxps         %xmm0,%xmm9
20024  DB  15,95,208                           ; maxps         %xmm0,%xmm2
20025  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20026  DB  15,40,92,36,16                      ; movaps        0x10(%rsp),%xmm3
20027  DB  15,89,195                           ; mulps         %xmm3,%xmm0
20028  DB  68,15,40,229                        ; movaps        %xmm5,%xmm12
20029  DB  65,15,92,228                        ; subps         %xmm12,%xmm4
20030  DB  68,15,89,220                        ; mulps         %xmm4,%xmm11
20031  DB  68,15,88,216                        ; addps         %xmm0,%xmm11
20032  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
20033  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20034  DB  15,40,108,36,32                     ; movaps        0x20(%rsp),%xmm5
20035  DB  15,89,197                           ; mulps         %xmm5,%xmm0
20036  DB  15,40,76,36,48                      ; movaps        0x30(%rsp),%xmm1
20037  DB  15,89,204                           ; mulps         %xmm4,%xmm1
20038  DB  15,88,200                           ; addps         %xmm0,%xmm1
20039  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
20040  DB  15,89,100,36,64                     ; mulps         0x40(%rsp),%xmm4
20041  DB  15,40,4,36                          ; movaps        (%rsp),%xmm0
20042  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
20043  DB  68,15,88,196                        ; addps         %xmm4,%xmm8
20044  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
20045  DB  72,173                              ; lods          %ds:(%rsi),%rax
20046  DB  15,40,227                           ; movaps        %xmm3,%xmm4
20047  DB  15,40,240                           ; movaps        %xmm0,%xmm6
20048  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
20049  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
20050  DB  15,40,223                           ; movaps        %xmm7,%xmm3
20051  DB  65,15,40,252                        ; movaps        %xmm12,%xmm7
20052  DB  72,131,196,88                       ; add           $0x58,%rsp
20053  DB  255,224                             ; jmpq          *%rax
20054
20055PUBLIC _sk_color_sse2
20056_sk_color_sse2 LABEL PROC
20057  DB  72,131,236,72                       ; sub           $0x48,%rsp
20058  DB  68,15,40,199                        ; movaps        %xmm7,%xmm8
20059  DB  68,15,40,230                        ; movaps        %xmm6,%xmm12
20060  DB  68,15,41,100,36,32                  ; movaps        %xmm12,0x20(%rsp)
20061  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
20062  DB  68,15,41,92,36,48                   ; movaps        %xmm11,0x30(%rsp)
20063  DB  15,40,244                           ; movaps        %xmm4,%xmm6
20064  DB  15,41,20,36                         ; movaps        %xmm2,(%rsp)
20065  DB  15,40,233                           ; movaps        %xmm1,%xmm5
20066  DB  15,40,248                           ; movaps        %xmm0,%xmm7
20067  DB  68,15,40,207                        ; movaps        %xmm7,%xmm9
20068  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
20069  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
20070  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
20071  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
20072  DB  68,15,40,45,74,68,0,0               ; movaps        0x444a(%rip),%xmm13        # 58e0 <_sk_callback_sse2+0x2f9>
20073  DB  68,15,40,198                        ; movaps        %xmm6,%xmm8
20074  DB  69,15,89,197                        ; mulps         %xmm13,%xmm8
20075  DB  68,15,40,53,74,68,0,0               ; movaps        0x444a(%rip),%xmm14        # 58f0 <_sk_callback_sse2+0x309>
20076  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
20077  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
20078  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
20079  DB  68,15,40,29,70,68,0,0               ; movaps        0x4446(%rip),%xmm11        # 5900 <_sk_callback_sse2+0x319>
20080  DB  69,15,89,227                        ; mulps         %xmm11,%xmm12
20081  DB  68,15,88,224                        ; addps         %xmm0,%xmm12
20082  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
20083  DB  65,15,89,197                        ; mulps         %xmm13,%xmm0
20084  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
20085  DB  69,15,89,254                        ; mulps         %xmm14,%xmm15
20086  DB  68,15,88,248                        ; addps         %xmm0,%xmm15
20087  DB  68,15,40,5,50,68,0,0                ; movaps        0x4432(%rip),%xmm8        # 5910 <_sk_callback_sse2+0x329>
20088  DB  65,15,40,224                        ; movaps        %xmm8,%xmm4
20089  DB  15,92,226                           ; subps         %xmm2,%xmm4
20090  DB  15,89,252                           ; mulps         %xmm4,%xmm7
20091  DB  15,89,236                           ; mulps         %xmm4,%xmm5
20092  DB  15,40,12,36                         ; movaps        (%rsp),%xmm1
20093  DB  15,89,225                           ; mulps         %xmm1,%xmm4
20094  DB  15,89,202                           ; mulps         %xmm2,%xmm1
20095  DB  15,40,193                           ; movaps        %xmm1,%xmm0
20096  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
20097  DB  65,15,88,199                        ; addps         %xmm15,%xmm0
20098  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
20099  DB  68,15,92,224                        ; subps         %xmm0,%xmm12
20100  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
20101  DB  69,15,88,212                        ; addps         %xmm12,%xmm10
20102  DB  68,15,88,225                        ; addps         %xmm1,%xmm12
20103  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
20104  DB  65,15,93,196                        ; minps         %xmm12,%xmm0
20105  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
20106  DB  15,93,200                           ; minps         %xmm0,%xmm1
20107  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
20108  DB  65,15,95,196                        ; maxps         %xmm12,%xmm0
20109  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
20110  DB  68,15,95,248                        ; maxps         %xmm0,%xmm15
20111  DB  69,15,89,233                        ; mulps         %xmm9,%xmm13
20112  DB  69,15,89,242                        ; mulps         %xmm10,%xmm14
20113  DB  69,15,88,245                        ; addps         %xmm13,%xmm14
20114  DB  69,15,89,220                        ; mulps         %xmm12,%xmm11
20115  DB  69,15,88,222                        ; addps         %xmm14,%xmm11
20116  DB  69,15,87,237                        ; xorps         %xmm13,%xmm13
20117  DB  68,15,194,233,2                     ; cmpleps       %xmm1,%xmm13
20118  DB  69,15,40,243                        ; movaps        %xmm11,%xmm14
20119  DB  68,15,92,241                        ; subps         %xmm1,%xmm14
20120  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
20121  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
20122  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
20123  DB  65,15,94,206                        ; divps         %xmm14,%xmm1
20124  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
20125  DB  65,15,40,197                        ; movaps        %xmm13,%xmm0
20126  DB  15,85,193                           ; andnps        %xmm1,%xmm0
20127  DB  69,15,84,205                        ; andps         %xmm13,%xmm9
20128  DB  68,15,86,200                        ; orps          %xmm0,%xmm9
20129  DB  15,40,195                           ; movaps        %xmm3,%xmm0
20130  DB  15,41,84,36,16                      ; movaps        %xmm2,0x10(%rsp)
20131  DB  15,89,194                           ; mulps         %xmm2,%xmm0
20132  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
20133  DB  15,88,218                           ; addps         %xmm2,%xmm3
20134  DB  15,92,216                           ; subps         %xmm0,%xmm3
20135  DB  15,41,28,36                         ; movaps        %xmm3,(%rsp)
20136  DB  15,40,216                           ; movaps        %xmm0,%xmm3
20137  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
20138  DB  15,40,200                           ; movaps        %xmm0,%xmm1
20139  DB  65,15,85,201                        ; andnps        %xmm9,%xmm1
20140  DB  69,15,92,203                        ; subps         %xmm11,%xmm9
20141  DB  65,15,92,219                        ; subps         %xmm11,%xmm3
20142  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
20143  DB  69,15,92,251                        ; subps         %xmm11,%xmm15
20144  DB  69,15,94,207                        ; divps         %xmm15,%xmm9
20145  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
20146  DB  68,15,84,200                        ; andps         %xmm0,%xmm9
20147  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
20148  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
20149  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
20150  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
20151  DB  65,15,94,206                        ; divps         %xmm14,%xmm1
20152  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
20153  DB  65,15,40,213                        ; movaps        %xmm13,%xmm2
20154  DB  15,85,209                           ; andnps        %xmm1,%xmm2
20155  DB  69,15,84,213                        ; andps         %xmm13,%xmm10
20156  DB  68,15,86,210                        ; orps          %xmm2,%xmm10
20157  DB  15,40,200                           ; movaps        %xmm0,%xmm1
20158  DB  65,15,85,202                        ; andnps        %xmm10,%xmm1
20159  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
20160  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
20161  DB  69,15,94,215                        ; divps         %xmm15,%xmm10
20162  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
20163  DB  68,15,84,208                        ; andps         %xmm0,%xmm10
20164  DB  68,15,86,209                        ; orps          %xmm1,%xmm10
20165  DB  65,15,40,204                        ; movaps        %xmm12,%xmm1
20166  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
20167  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
20168  DB  65,15,94,206                        ; divps         %xmm14,%xmm1
20169  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
20170  DB  69,15,84,229                        ; andps         %xmm13,%xmm12
20171  DB  68,15,85,233                        ; andnps        %xmm1,%xmm13
20172  DB  69,15,86,236                        ; orps          %xmm12,%xmm13
20173  DB  15,40,200                           ; movaps        %xmm0,%xmm1
20174  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
20175  DB  69,15,92,235                        ; subps         %xmm11,%xmm13
20176  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
20177  DB  69,15,94,239                        ; divps         %xmm15,%xmm13
20178  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
20179  DB  68,15,84,232                        ; andps         %xmm0,%xmm13
20180  DB  68,15,86,233                        ; orps          %xmm1,%xmm13
20181  DB  15,87,192                           ; xorps         %xmm0,%xmm0
20182  DB  68,15,95,200                        ; maxps         %xmm0,%xmm9
20183  DB  68,15,95,208                        ; maxps         %xmm0,%xmm10
20184  DB  68,15,95,232                        ; maxps         %xmm0,%xmm13
20185  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20186  DB  15,89,198                           ; mulps         %xmm6,%xmm0
20187  DB  15,88,248                           ; addps         %xmm0,%xmm7
20188  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
20189  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20190  DB  15,40,84,36,48                      ; movaps        0x30(%rsp),%xmm2
20191  DB  15,89,194                           ; mulps         %xmm2,%xmm0
20192  DB  15,88,232                           ; addps         %xmm0,%xmm5
20193  DB  65,15,88,234                        ; addps         %xmm10,%xmm5
20194  DB  15,40,205                           ; movaps        %xmm5,%xmm1
20195  DB  15,40,68,36,32                      ; movaps        0x20(%rsp),%xmm0
20196  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
20197  DB  68,15,88,196                        ; addps         %xmm4,%xmm8
20198  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
20199  DB  72,173                              ; lods          %ds:(%rsi),%rax
20200  DB  15,40,230                           ; movaps        %xmm6,%xmm4
20201  DB  15,40,234                           ; movaps        %xmm2,%xmm5
20202  DB  15,40,240                           ; movaps        %xmm0,%xmm6
20203  DB  15,40,199                           ; movaps        %xmm7,%xmm0
20204  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
20205  DB  15,40,28,36                         ; movaps        (%rsp),%xmm3
20206  DB  15,40,124,36,16                     ; movaps        0x10(%rsp),%xmm7
20207  DB  72,131,196,72                       ; add           $0x48,%rsp
20208  DB  255,224                             ; jmpq          *%rax
20209
20210PUBLIC _sk_luminosity_sse2
20211_sk_luminosity_sse2 LABEL PROC
20212  DB  72,131,236,88                       ; sub           $0x58,%rsp
20213  DB  68,15,40,215                        ; movaps        %xmm7,%xmm10
20214  DB  15,41,116,36,32                     ; movaps        %xmm6,0x20(%rsp)
20215  DB  15,40,245                           ; movaps        %xmm5,%xmm6
20216  DB  15,41,116,36,64                     ; movaps        %xmm6,0x40(%rsp)
20217  DB  15,41,100,36,48                     ; movaps        %xmm4,0x30(%rsp)
20218  DB  15,40,235                           ; movaps        %xmm3,%xmm5
20219  DB  15,40,248                           ; movaps        %xmm0,%xmm7
20220  DB  68,15,40,205                        ; movaps        %xmm5,%xmm9
20221  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
20222  DB  15,89,222                           ; mulps         %xmm6,%xmm3
20223  DB  68,15,40,37,68,66,0,0               ; movaps        0x4244(%rip),%xmm12        # 5920 <_sk_callback_sse2+0x339>
20224  DB  68,15,40,199                        ; movaps        %xmm7,%xmm8
20225  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
20226  DB  68,15,40,45,68,66,0,0               ; movaps        0x4244(%rip),%xmm13        # 5930 <_sk_callback_sse2+0x349>
20227  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
20228  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
20229  DB  69,15,88,240                        ; addps         %xmm8,%xmm14
20230  DB  68,15,40,29,64,66,0,0               ; movaps        0x4240(%rip),%xmm11        # 5940 <_sk_callback_sse2+0x359>
20231  DB  68,15,40,5,72,66,0,0                ; movaps        0x4248(%rip),%xmm8        # 5950 <_sk_callback_sse2+0x369>
20232  DB  69,15,40,248                        ; movaps        %xmm8,%xmm15
20233  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
20234  DB  68,15,92,248                        ; subps         %xmm0,%xmm15
20235  DB  65,15,89,255                        ; mulps         %xmm15,%xmm7
20236  DB  65,15,89,207                        ; mulps         %xmm15,%xmm1
20237  DB  15,41,76,36,16                      ; movaps        %xmm1,0x10(%rsp)
20238  DB  68,15,89,250                        ; mulps         %xmm2,%xmm15
20239  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
20240  DB  65,15,88,214                        ; addps         %xmm14,%xmm2
20241  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
20242  DB  69,15,89,244                        ; mulps         %xmm12,%xmm14
20243  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
20244  DB  69,15,89,213                        ; mulps         %xmm13,%xmm10
20245  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
20246  DB  15,40,229                           ; movaps        %xmm5,%xmm4
20247  DB  15,40,116,36,32                     ; movaps        0x20(%rsp),%xmm6
20248  DB  15,89,230                           ; mulps         %xmm6,%xmm4
20249  DB  68,15,40,244                        ; movaps        %xmm4,%xmm14
20250  DB  69,15,89,243                        ; mulps         %xmm11,%xmm14
20251  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
20252  DB  15,89,208                           ; mulps         %xmm0,%xmm2
20253  DB  65,15,92,214                        ; subps         %xmm14,%xmm2
20254  DB  68,15,88,202                        ; addps         %xmm2,%xmm9
20255  DB  15,88,218                           ; addps         %xmm2,%xmm3
20256  DB  15,88,212                           ; addps         %xmm4,%xmm2
20257  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
20258  DB  68,15,93,210                        ; minps         %xmm2,%xmm10
20259  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
20260  DB  65,15,93,226                        ; minps         %xmm10,%xmm4
20261  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
20262  DB  68,15,95,210                        ; maxps         %xmm2,%xmm10
20263  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
20264  DB  69,15,95,242                        ; maxps         %xmm10,%xmm14
20265  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
20266  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
20267  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
20268  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
20269  DB  69,15,88,221                        ; addps         %xmm13,%xmm11
20270  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
20271  DB  68,15,194,228,2                     ; cmpleps       %xmm4,%xmm12
20272  DB  69,15,40,211                        ; movaps        %xmm11,%xmm10
20273  DB  68,15,92,212                        ; subps         %xmm4,%xmm10
20274  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
20275  DB  65,15,92,227                        ; subps         %xmm11,%xmm4
20276  DB  65,15,89,227                        ; mulps         %xmm11,%xmm4
20277  DB  65,15,94,226                        ; divps         %xmm10,%xmm4
20278  DB  65,15,88,227                        ; addps         %xmm11,%xmm4
20279  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
20280  DB  68,15,85,236                        ; andnps        %xmm4,%xmm13
20281  DB  69,15,84,204                        ; andps         %xmm12,%xmm9
20282  DB  69,15,86,205                        ; orps          %xmm13,%xmm9
20283  DB  15,40,229                           ; movaps        %xmm5,%xmm4
20284  DB  15,41,4,36                          ; movaps        %xmm0,(%rsp)
20285  DB  15,89,224                           ; mulps         %xmm0,%xmm4
20286  DB  68,15,92,197                        ; subps         %xmm5,%xmm8
20287  DB  15,88,232                           ; addps         %xmm0,%xmm5
20288  DB  15,92,236                           ; subps         %xmm4,%xmm5
20289  DB  68,15,40,236                        ; movaps        %xmm4,%xmm13
20290  DB  65,15,194,230,1                     ; cmpltps       %xmm14,%xmm4
20291  DB  15,40,196                           ; movaps        %xmm4,%xmm0
20292  DB  65,15,85,193                        ; andnps        %xmm9,%xmm0
20293  DB  69,15,92,203                        ; subps         %xmm11,%xmm9
20294  DB  69,15,92,235                        ; subps         %xmm11,%xmm13
20295  DB  69,15,89,205                        ; mulps         %xmm13,%xmm9
20296  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
20297  DB  69,15,94,206                        ; divps         %xmm14,%xmm9
20298  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
20299  DB  68,15,84,204                        ; andps         %xmm4,%xmm9
20300  DB  68,15,86,200                        ; orps          %xmm0,%xmm9
20301  DB  15,40,195                           ; movaps        %xmm3,%xmm0
20302  DB  65,15,92,195                        ; subps         %xmm11,%xmm0
20303  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
20304  DB  65,15,94,194                        ; divps         %xmm10,%xmm0
20305  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
20306  DB  65,15,40,204                        ; movaps        %xmm12,%xmm1
20307  DB  15,85,200                           ; andnps        %xmm0,%xmm1
20308  DB  65,15,84,220                        ; andps         %xmm12,%xmm3
20309  DB  15,86,217                           ; orps          %xmm1,%xmm3
20310  DB  15,40,196                           ; movaps        %xmm4,%xmm0
20311  DB  15,85,195                           ; andnps        %xmm3,%xmm0
20312  DB  65,15,92,219                        ; subps         %xmm11,%xmm3
20313  DB  65,15,89,221                        ; mulps         %xmm13,%xmm3
20314  DB  65,15,94,222                        ; divps         %xmm14,%xmm3
20315  DB  65,15,88,219                        ; addps         %xmm11,%xmm3
20316  DB  15,84,220                           ; andps         %xmm4,%xmm3
20317  DB  15,86,216                           ; orps          %xmm0,%xmm3
20318  DB  15,40,194                           ; movaps        %xmm2,%xmm0
20319  DB  65,15,92,195                        ; subps         %xmm11,%xmm0
20320  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
20321  DB  65,15,94,194                        ; divps         %xmm10,%xmm0
20322  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
20323  DB  65,15,84,212                        ; andps         %xmm12,%xmm2
20324  DB  68,15,85,224                        ; andnps        %xmm0,%xmm12
20325  DB  68,15,86,226                        ; orps          %xmm2,%xmm12
20326  DB  15,40,196                           ; movaps        %xmm4,%xmm0
20327  DB  65,15,85,196                        ; andnps        %xmm12,%xmm0
20328  DB  69,15,92,227                        ; subps         %xmm11,%xmm12
20329  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
20330  DB  69,15,94,230                        ; divps         %xmm14,%xmm12
20331  DB  69,15,88,227                        ; addps         %xmm11,%xmm12
20332  DB  68,15,84,228                        ; andps         %xmm4,%xmm12
20333  DB  68,15,86,224                        ; orps          %xmm0,%xmm12
20334  DB  15,87,192                           ; xorps         %xmm0,%xmm0
20335  DB  68,15,95,200                        ; maxps         %xmm0,%xmm9
20336  DB  15,95,216                           ; maxps         %xmm0,%xmm3
20337  DB  68,15,95,224                        ; maxps         %xmm0,%xmm12
20338  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20339  DB  15,40,100,36,48                     ; movaps        0x30(%rsp),%xmm4
20340  DB  15,89,196                           ; mulps         %xmm4,%xmm0
20341  DB  15,88,248                           ; addps         %xmm0,%xmm7
20342  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
20343  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20344  DB  68,15,40,84,36,64                   ; movaps        0x40(%rsp),%xmm10
20345  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
20346  DB  15,40,76,36,16                      ; movaps        0x10(%rsp),%xmm1
20347  DB  15,88,200                           ; addps         %xmm0,%xmm1
20348  DB  15,88,203                           ; addps         %xmm3,%xmm1
20349  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
20350  DB  69,15,88,199                        ; addps         %xmm15,%xmm8
20351  DB  69,15,88,196                        ; addps         %xmm12,%xmm8
20352  DB  72,173                              ; lods          %ds:(%rsi),%rax
20353  DB  15,40,199                           ; movaps        %xmm7,%xmm0
20354  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
20355  DB  15,40,221                           ; movaps        %xmm5,%xmm3
20356  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
20357  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
20358  DB  72,131,196,88                       ; add           $0x58,%rsp
20359  DB  255,224                             ; jmpq          *%rax
20360
20361PUBLIC _sk_srcover_rgba_8888_sse2
20362_sk_srcover_rgba_8888_sse2 LABEL PROC
20363  DB  72,173                              ; lods          %ds:(%rsi),%rax
20364  DB  72,139,0                            ; mov           (%rax),%rax
20365  DB  77,133,192                          ; test          %r8,%r8
20366  DB  15,133,227,0,0,0                    ; jne           19e2 <_sk_srcover_rgba_8888_sse2+0xf1>
20367  DB  243,68,15,111,4,144                 ; movdqu        (%rax,%rdx,4),%xmm8
20368  DB  77,133,192                          ; test          %r8,%r8
20369  DB  102,15,111,53,80,64,0,0             ; movdqa        0x4050(%rip),%xmm6        # 5960 <_sk_callback_sse2+0x379>
20370  DB  102,65,15,111,224                   ; movdqa        %xmm8,%xmm4
20371  DB  102,15,219,230                      ; pand          %xmm6,%xmm4
20372  DB  15,91,228                           ; cvtdq2ps      %xmm4,%xmm4
20373  DB  102,65,15,111,232                   ; movdqa        %xmm8,%xmm5
20374  DB  102,15,114,213,8                    ; psrld         $0x8,%xmm5
20375  DB  102,15,219,238                      ; pand          %xmm6,%xmm5
20376  DB  15,91,237                           ; cvtdq2ps      %xmm5,%xmm5
20377  DB  102,65,15,111,248                   ; movdqa        %xmm8,%xmm7
20378  DB  102,15,114,215,16                   ; psrld         $0x10,%xmm7
20379  DB  102,15,219,254                      ; pand          %xmm6,%xmm7
20380  DB  15,91,247                           ; cvtdq2ps      %xmm7,%xmm6
20381  DB  102,65,15,114,208,24                ; psrld         $0x18,%xmm8
20382  DB  65,15,91,248                        ; cvtdq2ps      %xmm8,%xmm7
20383  DB  68,15,40,5,32,64,0,0                ; movaps        0x4020(%rip),%xmm8        # 5970 <_sk_callback_sse2+0x389>
20384  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
20385  DB  68,15,40,37,36,64,0,0               ; movaps        0x4024(%rip),%xmm12        # 5980 <_sk_callback_sse2+0x399>
20386  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
20387  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
20388  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
20389  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
20390  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
20391  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
20392  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
20393  DB  68,15,88,209                        ; addps         %xmm1,%xmm10
20394  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
20395  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
20396  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
20397  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
20398  DB  65,15,89,220                        ; mulps         %xmm12,%xmm3
20399  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
20400  DB  68,15,88,195                        ; addps         %xmm3,%xmm8
20401  DB  102,65,15,91,193                    ; cvtps2dq      %xmm9,%xmm0
20402  DB  102,65,15,91,202                    ; cvtps2dq      %xmm10,%xmm1
20403  DB  102,15,114,241,8                    ; pslld         $0x8,%xmm1
20404  DB  102,15,235,200                      ; por           %xmm0,%xmm1
20405  DB  102,65,15,91,211                    ; cvtps2dq      %xmm11,%xmm2
20406  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
20407  DB  102,65,15,91,192                    ; cvtps2dq      %xmm8,%xmm0
20408  DB  102,15,114,240,24                   ; pslld         $0x18,%xmm0
20409  DB  102,15,235,194                      ; por           %xmm2,%xmm0
20410  DB  102,15,235,193                      ; por           %xmm1,%xmm0
20411  DB  117,106                             ; jne           1a33 <_sk_srcover_rgba_8888_sse2+0x142>
20412  DB  243,15,127,4,144                    ; movdqu        %xmm0,(%rax,%rdx,4)
20413  DB  72,173                              ; lods          %ds:(%rsi),%rax
20414  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
20415  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
20416  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
20417  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
20418  DB  255,224                             ; jmpq          *%rax
20419  DB  69,137,193                          ; mov           %r8d,%r9d
20420  DB  65,128,225,3                        ; and           $0x3,%r9b
20421  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
20422  DB  65,128,249,1                        ; cmp           $0x1,%r9b
20423  DB  116,48                              ; je            1a24 <_sk_srcover_rgba_8888_sse2+0x133>
20424  DB  65,128,249,2                        ; cmp           $0x2,%r9b
20425  DB  116,22                              ; je            1a10 <_sk_srcover_rgba_8888_sse2+0x11f>
20426  DB  65,128,249,3                        ; cmp           $0x3,%r9b
20427  DB  15,133,1,255,255,255                ; jne           1905 <_sk_srcover_rgba_8888_sse2+0x14>
20428  DB  102,15,110,100,144,8                ; movd          0x8(%rax,%rdx,4),%xmm4
20429  DB  102,68,15,112,196,69                ; pshufd        $0x45,%xmm4,%xmm8
20430  DB  243,15,16,100,144,4                 ; movss         0x4(%rax,%rdx,4),%xmm4
20431  DB  65,15,198,224,0                     ; shufps        $0x0,%xmm8,%xmm4
20432  DB  65,15,198,224,226                   ; shufps        $0xe2,%xmm8,%xmm4
20433  DB  68,15,40,196                        ; movaps        %xmm4,%xmm8
20434  DB  243,15,16,36,144                    ; movss         (%rax,%rdx,4),%xmm4
20435  DB  243,68,15,16,196                    ; movss         %xmm4,%xmm8
20436  DB  233,210,254,255,255                 ; jmpq          1905 <_sk_srcover_rgba_8888_sse2+0x14>
20437  DB  69,137,193                          ; mov           %r8d,%r9d
20438  DB  65,128,225,3                        ; and           $0x3,%r9b
20439  DB  65,128,249,1                        ; cmp           $0x1,%r9b
20440  DB  116,34                              ; je            1a62 <_sk_srcover_rgba_8888_sse2+0x171>
20441  DB  65,128,249,2                        ; cmp           $0x2,%r9b
20442  DB  116,17                              ; je            1a57 <_sk_srcover_rgba_8888_sse2+0x166>
20443  DB  65,128,249,3                        ; cmp           $0x3,%r9b
20444  DB  117,130                             ; jne           19ce <_sk_srcover_rgba_8888_sse2+0xdd>
20445  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
20446  DB  102,15,126,76,144,8                 ; movd          %xmm1,0x8(%rax,%rdx,4)
20447  DB  102,15,112,200,229                  ; pshufd        $0xe5,%xmm0,%xmm1
20448  DB  102,15,126,76,144,4                 ; movd          %xmm1,0x4(%rax,%rdx,4)
20449  DB  102,15,126,4,144                    ; movd          %xmm0,(%rax,%rdx,4)
20450  DB  233,98,255,255,255                  ; jmpq          19ce <_sk_srcover_rgba_8888_sse2+0xdd>
20451
20452PUBLIC _sk_clamp_0_sse2
20453_sk_clamp_0_sse2 LABEL PROC
20454  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
20455  DB  65,15,95,192                        ; maxps         %xmm8,%xmm0
20456  DB  65,15,95,200                        ; maxps         %xmm8,%xmm1
20457  DB  65,15,95,208                        ; maxps         %xmm8,%xmm2
20458  DB  65,15,95,216                        ; maxps         %xmm8,%xmm3
20459  DB  72,173                              ; lods          %ds:(%rsi),%rax
20460  DB  255,224                             ; jmpq          *%rax
20461
20462PUBLIC _sk_clamp_1_sse2
20463_sk_clamp_1_sse2 LABEL PROC
20464  DB  68,15,40,5,4,63,0,0                 ; movaps        0x3f04(%rip),%xmm8        # 5990 <_sk_callback_sse2+0x3a9>
20465  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
20466  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
20467  DB  65,15,93,208                        ; minps         %xmm8,%xmm2
20468  DB  65,15,93,216                        ; minps         %xmm8,%xmm3
20469  DB  72,173                              ; lods          %ds:(%rsi),%rax
20470  DB  255,224                             ; jmpq          *%rax
20471
20472PUBLIC _sk_clamp_a_sse2
20473_sk_clamp_a_sse2 LABEL PROC
20474  DB  15,93,29,249,62,0,0                 ; minps         0x3ef9(%rip),%xmm3        # 59a0 <_sk_callback_sse2+0x3b9>
20475  DB  15,93,195                           ; minps         %xmm3,%xmm0
20476  DB  15,93,203                           ; minps         %xmm3,%xmm1
20477  DB  15,93,211                           ; minps         %xmm3,%xmm2
20478  DB  72,173                              ; lods          %ds:(%rsi),%rax
20479  DB  255,224                             ; jmpq          *%rax
20480
20481PUBLIC _sk_set_rgb_sse2
20482_sk_set_rgb_sse2 LABEL PROC
20483  DB  72,173                              ; lods          %ds:(%rsi),%rax
20484  DB  243,15,16,0                         ; movss         (%rax),%xmm0
20485  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
20486  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
20487  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
20488  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
20489  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
20490  DB  72,173                              ; lods          %ds:(%rsi),%rax
20491  DB  255,224                             ; jmpq          *%rax
20492
20493PUBLIC _sk_swap_rb_sse2
20494_sk_swap_rb_sse2 LABEL PROC
20495  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
20496  DB  72,173                              ; lods          %ds:(%rsi),%rax
20497  DB  15,40,194                           ; movaps        %xmm2,%xmm0
20498  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
20499  DB  255,224                             ; jmpq          *%rax
20500
20501PUBLIC _sk_swap_sse2
20502_sk_swap_sse2 LABEL PROC
20503  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
20504  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
20505  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
20506  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
20507  DB  72,173                              ; lods          %ds:(%rsi),%rax
20508  DB  15,40,196                           ; movaps        %xmm4,%xmm0
20509  DB  15,40,205                           ; movaps        %xmm5,%xmm1
20510  DB  15,40,214                           ; movaps        %xmm6,%xmm2
20511  DB  15,40,223                           ; movaps        %xmm7,%xmm3
20512  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
20513  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
20514  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
20515  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
20516  DB  255,224                             ; jmpq          *%rax
20517
20518PUBLIC _sk_move_src_dst_sse2
20519_sk_move_src_dst_sse2 LABEL PROC
20520  DB  72,173                              ; lods          %ds:(%rsi),%rax
20521  DB  15,40,224                           ; movaps        %xmm0,%xmm4
20522  DB  15,40,233                           ; movaps        %xmm1,%xmm5
20523  DB  15,40,242                           ; movaps        %xmm2,%xmm6
20524  DB  15,40,251                           ; movaps        %xmm3,%xmm7
20525  DB  255,224                             ; jmpq          *%rax
20526
20527PUBLIC _sk_move_dst_src_sse2
20528_sk_move_dst_src_sse2 LABEL PROC
20529  DB  72,173                              ; lods          %ds:(%rsi),%rax
20530  DB  15,40,196                           ; movaps        %xmm4,%xmm0
20531  DB  15,40,205                           ; movaps        %xmm5,%xmm1
20532  DB  15,40,214                           ; movaps        %xmm6,%xmm2
20533  DB  15,40,223                           ; movaps        %xmm7,%xmm3
20534  DB  255,224                             ; jmpq          *%rax
20535
20536PUBLIC _sk_premul_sse2
20537_sk_premul_sse2 LABEL PROC
20538  DB  15,89,195                           ; mulps         %xmm3,%xmm0
20539  DB  15,89,203                           ; mulps         %xmm3,%xmm1
20540  DB  15,89,211                           ; mulps         %xmm3,%xmm2
20541  DB  72,173                              ; lods          %ds:(%rsi),%rax
20542  DB  255,224                             ; jmpq          *%rax
20543
20544PUBLIC _sk_unpremul_sse2
20545_sk_unpremul_sse2 LABEL PROC
20546  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
20547  DB  68,15,40,13,100,62,0,0              ; movaps        0x3e64(%rip),%xmm9        # 59b0 <_sk_callback_sse2+0x3c9>
20548  DB  68,15,94,203                        ; divps         %xmm3,%xmm9
20549  DB  68,15,194,195,4                     ; cmpneqps      %xmm3,%xmm8
20550  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
20551  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
20552  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
20553  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
20554  DB  72,173                              ; lods          %ds:(%rsi),%rax
20555  DB  255,224                             ; jmpq          *%rax
20556
20557PUBLIC _sk_from_srgb_sse2
20558_sk_from_srgb_sse2 LABEL PROC
20559  DB  68,15,40,5,79,62,0,0                ; movaps        0x3e4f(%rip),%xmm8        # 59c0 <_sk_callback_sse2+0x3d9>
20560  DB  68,15,40,232                        ; movaps        %xmm0,%xmm13
20561  DB  69,15,89,232                        ; mulps         %xmm8,%xmm13
20562  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
20563  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
20564  DB  68,15,40,13,71,62,0,0               ; movaps        0x3e47(%rip),%xmm9        # 59d0 <_sk_callback_sse2+0x3e9>
20565  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
20566  DB  69,15,89,241                        ; mulps         %xmm9,%xmm14
20567  DB  68,15,40,21,71,62,0,0               ; movaps        0x3e47(%rip),%xmm10        # 59e0 <_sk_callback_sse2+0x3f9>
20568  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
20569  DB  69,15,89,243                        ; mulps         %xmm11,%xmm14
20570  DB  68,15,40,29,71,62,0,0               ; movaps        0x3e47(%rip),%xmm11        # 59f0 <_sk_callback_sse2+0x409>
20571  DB  69,15,88,243                        ; addps         %xmm11,%xmm14
20572  DB  68,15,40,37,75,62,0,0               ; movaps        0x3e4b(%rip),%xmm12        # 5a00 <_sk_callback_sse2+0x419>
20573  DB  65,15,194,196,1                     ; cmpltps       %xmm12,%xmm0
20574  DB  68,15,84,232                        ; andps         %xmm0,%xmm13
20575  DB  65,15,85,198                        ; andnps        %xmm14,%xmm0
20576  DB  65,15,86,197                        ; orps          %xmm13,%xmm0
20577  DB  68,15,40,233                        ; movaps        %xmm1,%xmm13
20578  DB  69,15,89,232                        ; mulps         %xmm8,%xmm13
20579  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
20580  DB  69,15,89,246                        ; mulps         %xmm14,%xmm14
20581  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
20582  DB  69,15,89,249                        ; mulps         %xmm9,%xmm15
20583  DB  69,15,88,250                        ; addps         %xmm10,%xmm15
20584  DB  69,15,89,254                        ; mulps         %xmm14,%xmm15
20585  DB  69,15,88,251                        ; addps         %xmm11,%xmm15
20586  DB  65,15,194,204,1                     ; cmpltps       %xmm12,%xmm1
20587  DB  68,15,84,233                        ; andps         %xmm1,%xmm13
20588  DB  65,15,85,207                        ; andnps        %xmm15,%xmm1
20589  DB  65,15,86,205                        ; orps          %xmm13,%xmm1
20590  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
20591  DB  68,15,40,234                        ; movaps        %xmm2,%xmm13
20592  DB  69,15,89,237                        ; mulps         %xmm13,%xmm13
20593  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
20594  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
20595  DB  69,15,89,205                        ; mulps         %xmm13,%xmm9
20596  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
20597  DB  65,15,194,212,1                     ; cmpltps       %xmm12,%xmm2
20598  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
20599  DB  65,15,85,209                        ; andnps        %xmm9,%xmm2
20600  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
20601  DB  72,173                              ; lods          %ds:(%rsi),%rax
20602  DB  255,224                             ; jmpq          *%rax
20603
20604PUBLIC _sk_to_srgb_sse2
20605_sk_to_srgb_sse2 LABEL PROC
20606  DB  68,15,82,232                        ; rsqrtps       %xmm0,%xmm13
20607  DB  68,15,40,5,216,61,0,0               ; movaps        0x3dd8(%rip),%xmm8        # 5a10 <_sk_callback_sse2+0x429>
20608  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
20609  DB  69,15,89,240                        ; mulps         %xmm8,%xmm14
20610  DB  68,15,40,13,216,61,0,0              ; movaps        0x3dd8(%rip),%xmm9        # 5a20 <_sk_callback_sse2+0x439>
20611  DB  69,15,40,253                        ; movaps        %xmm13,%xmm15
20612  DB  69,15,89,249                        ; mulps         %xmm9,%xmm15
20613  DB  68,15,40,21,216,61,0,0              ; movaps        0x3dd8(%rip),%xmm10        # 5a30 <_sk_callback_sse2+0x449>
20614  DB  69,15,88,250                        ; addps         %xmm10,%xmm15
20615  DB  69,15,89,253                        ; mulps         %xmm13,%xmm15
20616  DB  68,15,40,29,216,61,0,0              ; movaps        0x3dd8(%rip),%xmm11        # 5a40 <_sk_callback_sse2+0x459>
20617  DB  69,15,88,251                        ; addps         %xmm11,%xmm15
20618  DB  68,15,40,37,220,61,0,0              ; movaps        0x3ddc(%rip),%xmm12        # 5a50 <_sk_callback_sse2+0x469>
20619  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
20620  DB  69,15,83,237                        ; rcpps         %xmm13,%xmm13
20621  DB  69,15,89,239                        ; mulps         %xmm15,%xmm13
20622  DB  68,15,40,61,216,61,0,0              ; movaps        0x3dd8(%rip),%xmm15        # 5a60 <_sk_callback_sse2+0x479>
20623  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
20624  DB  68,15,84,240                        ; andps         %xmm0,%xmm14
20625  DB  65,15,85,197                        ; andnps        %xmm13,%xmm0
20626  DB  65,15,86,198                        ; orps          %xmm14,%xmm0
20627  DB  68,15,82,233                        ; rsqrtps       %xmm1,%xmm13
20628  DB  69,15,40,245                        ; movaps        %xmm13,%xmm14
20629  DB  69,15,89,241                        ; mulps         %xmm9,%xmm14
20630  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
20631  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
20632  DB  69,15,88,243                        ; addps         %xmm11,%xmm14
20633  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
20634  DB  69,15,83,237                        ; rcpps         %xmm13,%xmm13
20635  DB  69,15,89,238                        ; mulps         %xmm14,%xmm13
20636  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
20637  DB  69,15,89,240                        ; mulps         %xmm8,%xmm14
20638  DB  65,15,194,207,1                     ; cmpltps       %xmm15,%xmm1
20639  DB  68,15,84,241                        ; andps         %xmm1,%xmm14
20640  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
20641  DB  65,15,86,206                        ; orps          %xmm14,%xmm1
20642  DB  68,15,82,234                        ; rsqrtps       %xmm2,%xmm13
20643  DB  69,15,89,205                        ; mulps         %xmm13,%xmm9
20644  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
20645  DB  69,15,89,205                        ; mulps         %xmm13,%xmm9
20646  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
20647  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
20648  DB  69,15,83,213                        ; rcpps         %xmm13,%xmm10
20649  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
20650  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
20651  DB  65,15,194,215,1                     ; cmpltps       %xmm15,%xmm2
20652  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
20653  DB  65,15,85,210                        ; andnps        %xmm10,%xmm2
20654  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
20655  DB  72,173                              ; lods          %ds:(%rsi),%rax
20656  DB  255,224                             ; jmpq          *%rax
20657
20658PUBLIC _sk_rgb_to_hsl_sse2
20659_sk_rgb_to_hsl_sse2 LABEL PROC
20660  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
20661  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
20662  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
20663  DB  69,15,95,209                        ; maxps         %xmm9,%xmm10
20664  DB  68,15,95,210                        ; maxps         %xmm2,%xmm10
20665  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
20666  DB  69,15,93,217                        ; minps         %xmm9,%xmm11
20667  DB  68,15,93,218                        ; minps         %xmm2,%xmm11
20668  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
20669  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
20670  DB  68,15,40,45,49,61,0,0               ; movaps        0x3d31(%rip),%xmm13        # 5a70 <_sk_callback_sse2+0x489>
20671  DB  68,15,94,233                        ; divps         %xmm1,%xmm13
20672  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
20673  DB  65,15,194,192,0                     ; cmpeqps       %xmm8,%xmm0
20674  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
20675  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
20676  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
20677  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
20678  DB  68,15,194,242,1                     ; cmpltps       %xmm2,%xmm14
20679  DB  68,15,84,53,23,61,0,0               ; andps         0x3d17(%rip),%xmm14        # 5a80 <_sk_callback_sse2+0x499>
20680  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
20681  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
20682  DB  69,15,194,249,0                     ; cmpeqps       %xmm9,%xmm15
20683  DB  65,15,92,208                        ; subps         %xmm8,%xmm2
20684  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
20685  DB  68,15,40,37,10,61,0,0               ; movaps        0x3d0a(%rip),%xmm12        # 5a90 <_sk_callback_sse2+0x4a9>
20686  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
20687  DB  69,15,92,193                        ; subps         %xmm9,%xmm8
20688  DB  69,15,89,197                        ; mulps         %xmm13,%xmm8
20689  DB  68,15,88,5,6,61,0,0                 ; addps         0x3d06(%rip),%xmm8        # 5aa0 <_sk_callback_sse2+0x4b9>
20690  DB  65,15,84,215                        ; andps         %xmm15,%xmm2
20691  DB  69,15,85,248                        ; andnps        %xmm8,%xmm15
20692  DB  68,15,86,250                        ; orps          %xmm2,%xmm15
20693  DB  68,15,84,240                        ; andps         %xmm0,%xmm14
20694  DB  65,15,85,199                        ; andnps        %xmm15,%xmm0
20695  DB  65,15,86,198                        ; orps          %xmm14,%xmm0
20696  DB  15,89,5,247,60,0,0                  ; mulps         0x3cf7(%rip),%xmm0        # 5ab0 <_sk_callback_sse2+0x4c9>
20697  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
20698  DB  69,15,194,195,4                     ; cmpneqps      %xmm11,%xmm8
20699  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
20700  DB  69,15,92,226                        ; subps         %xmm10,%xmm12
20701  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
20702  DB  68,15,40,13,234,60,0,0              ; movaps        0x3cea(%rip),%xmm9        # 5ac0 <_sk_callback_sse2+0x4d9>
20703  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
20704  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
20705  DB  68,15,194,202,1                     ; cmpltps       %xmm2,%xmm9
20706  DB  69,15,92,227                        ; subps         %xmm11,%xmm12
20707  DB  69,15,84,225                        ; andps         %xmm9,%xmm12
20708  DB  69,15,85,202                        ; andnps        %xmm10,%xmm9
20709  DB  69,15,86,204                        ; orps          %xmm12,%xmm9
20710  DB  65,15,94,201                        ; divps         %xmm9,%xmm1
20711  DB  65,15,84,200                        ; andps         %xmm8,%xmm1
20712  DB  72,173                              ; lods          %ds:(%rsi),%rax
20713  DB  255,224                             ; jmpq          *%rax
20714
20715PUBLIC _sk_hsl_to_rgb_sse2
20716_sk_hsl_to_rgb_sse2 LABEL PROC
20717  DB  72,131,236,120                      ; sub           $0x78,%rsp
20718  DB  15,41,124,36,96                     ; movaps        %xmm7,0x60(%rsp)
20719  DB  15,41,116,36,80                     ; movaps        %xmm6,0x50(%rsp)
20720  DB  15,41,108,36,64                     ; movaps        %xmm5,0x40(%rsp)
20721  DB  15,41,100,36,48                     ; movaps        %xmm4,0x30(%rsp)
20722  DB  15,41,92,36,32                      ; movaps        %xmm3,0x20(%rsp)
20723  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
20724  DB  15,40,240                           ; movaps        %xmm0,%xmm6
20725  DB  68,15,40,13,165,60,0,0              ; movaps        0x3ca5(%rip),%xmm9        # 5ad0 <_sk_callback_sse2+0x4e9>
20726  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
20727  DB  69,15,194,211,2                     ; cmpleps       %xmm11,%xmm10
20728  DB  15,40,193                           ; movaps        %xmm1,%xmm0
20729  DB  15,87,219                           ; xorps         %xmm3,%xmm3
20730  DB  15,194,217,0                        ; cmpeqps       %xmm1,%xmm3
20731  DB  15,40,251                           ; movaps        %xmm3,%xmm7
20732  DB  15,41,60,36                         ; movaps        %xmm7,(%rsp)
20733  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
20734  DB  15,92,193                           ; subps         %xmm1,%xmm0
20735  DB  65,15,84,194                        ; andps         %xmm10,%xmm0
20736  DB  68,15,85,209                        ; andnps        %xmm1,%xmm10
20737  DB  68,15,86,208                        ; orps          %xmm0,%xmm10
20738  DB  68,15,41,92,36,16                   ; movaps        %xmm11,0x10(%rsp)
20739  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
20740  DB  69,15,88,219                        ; addps         %xmm11,%xmm11
20741  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
20742  DB  15,40,5,111,60,0,0                  ; movaps        0x3c6f(%rip),%xmm0        # 5ae0 <_sk_callback_sse2+0x4f9>
20743  DB  15,88,198                           ; addps         %xmm6,%xmm0
20744  DB  243,15,91,200                       ; cvttps2dq     %xmm0,%xmm1
20745  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
20746  DB  15,40,216                           ; movaps        %xmm0,%xmm3
20747  DB  15,194,217,1                        ; cmpltps       %xmm1,%xmm3
20748  DB  15,84,29,103,60,0,0                 ; andps         0x3c67(%rip),%xmm3        # 5af0 <_sk_callback_sse2+0x509>
20749  DB  15,92,203                           ; subps         %xmm3,%xmm1
20750  DB  15,92,193                           ; subps         %xmm1,%xmm0
20751  DB  68,15,40,45,105,60,0,0              ; movaps        0x3c69(%rip),%xmm13        # 5b00 <_sk_callback_sse2+0x519>
20752  DB  69,15,40,197                        ; movaps        %xmm13,%xmm8
20753  DB  68,15,194,192,2                     ; cmpleps       %xmm0,%xmm8
20754  DB  69,15,40,242                        ; movaps        %xmm10,%xmm14
20755  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
20756  DB  65,15,40,217                        ; movaps        %xmm9,%xmm3
20757  DB  15,194,216,2                        ; cmpleps       %xmm0,%xmm3
20758  DB  15,40,21,121,60,0,0                 ; movaps        0x3c79(%rip),%xmm2        # 5b30 <_sk_callback_sse2+0x549>
20759  DB  68,15,40,250                        ; movaps        %xmm2,%xmm15
20760  DB  68,15,194,248,2                     ; cmpleps       %xmm0,%xmm15
20761  DB  15,40,13,73,60,0,0                  ; movaps        0x3c49(%rip),%xmm1        # 5b10 <_sk_callback_sse2+0x529>
20762  DB  15,89,193                           ; mulps         %xmm1,%xmm0
20763  DB  15,40,45,79,60,0,0                  ; movaps        0x3c4f(%rip),%xmm5        # 5b20 <_sk_callback_sse2+0x539>
20764  DB  15,40,229                           ; movaps        %xmm5,%xmm4
20765  DB  15,92,224                           ; subps         %xmm0,%xmm4
20766  DB  65,15,89,230                        ; mulps         %xmm14,%xmm4
20767  DB  65,15,88,227                        ; addps         %xmm11,%xmm4
20768  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
20769  DB  69,15,84,224                        ; andps         %xmm8,%xmm12
20770  DB  68,15,85,196                        ; andnps        %xmm4,%xmm8
20771  DB  69,15,86,196                        ; orps          %xmm12,%xmm8
20772  DB  68,15,84,195                        ; andps         %xmm3,%xmm8
20773  DB  65,15,85,218                        ; andnps        %xmm10,%xmm3
20774  DB  65,15,86,216                        ; orps          %xmm8,%xmm3
20775  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
20776  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
20777  DB  65,15,84,223                        ; andps         %xmm15,%xmm3
20778  DB  68,15,85,248                        ; andnps        %xmm0,%xmm15
20779  DB  68,15,86,251                        ; orps          %xmm3,%xmm15
20780  DB  68,15,40,199                        ; movaps        %xmm7,%xmm8
20781  DB  69,15,85,199                        ; andnps        %xmm15,%xmm8
20782  DB  243,15,91,198                       ; cvttps2dq     %xmm6,%xmm0
20783  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
20784  DB  15,40,222                           ; movaps        %xmm6,%xmm3
20785  DB  15,194,216,1                        ; cmpltps       %xmm0,%xmm3
20786  DB  15,84,29,196,59,0,0                 ; andps         0x3bc4(%rip),%xmm3        # 5af0 <_sk_callback_sse2+0x509>
20787  DB  15,92,195                           ; subps         %xmm3,%xmm0
20788  DB  68,15,40,230                        ; movaps        %xmm6,%xmm12
20789  DB  68,15,92,224                        ; subps         %xmm0,%xmm12
20790  DB  69,15,40,253                        ; movaps        %xmm13,%xmm15
20791  DB  69,15,194,252,2                     ; cmpleps       %xmm12,%xmm15
20792  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
20793  DB  65,15,194,228,2                     ; cmpleps       %xmm12,%xmm4
20794  DB  15,40,218                           ; movaps        %xmm2,%xmm3
20795  DB  65,15,194,220,2                     ; cmpleps       %xmm12,%xmm3
20796  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
20797  DB  15,40,197                           ; movaps        %xmm5,%xmm0
20798  DB  65,15,92,196                        ; subps         %xmm12,%xmm0
20799  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
20800  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
20801  DB  65,15,40,251                        ; movaps        %xmm11,%xmm7
20802  DB  65,15,84,255                        ; andps         %xmm15,%xmm7
20803  DB  68,15,85,248                        ; andnps        %xmm0,%xmm15
20804  DB  68,15,86,255                        ; orps          %xmm7,%xmm15
20805  DB  68,15,84,252                        ; andps         %xmm4,%xmm15
20806  DB  65,15,85,226                        ; andnps        %xmm10,%xmm4
20807  DB  65,15,86,231                        ; orps          %xmm15,%xmm4
20808  DB  69,15,89,230                        ; mulps         %xmm14,%xmm12
20809  DB  69,15,88,227                        ; addps         %xmm11,%xmm12
20810  DB  15,84,227                           ; andps         %xmm3,%xmm4
20811  DB  65,15,85,220                        ; andnps        %xmm12,%xmm3
20812  DB  15,86,220                           ; orps          %xmm4,%xmm3
20813  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
20814  DB  15,40,231                           ; movaps        %xmm7,%xmm4
20815  DB  15,85,227                           ; andnps        %xmm3,%xmm4
20816  DB  15,88,53,157,59,0,0                 ; addps         0x3b9d(%rip),%xmm6        # 5b40 <_sk_callback_sse2+0x559>
20817  DB  243,15,91,198                       ; cvttps2dq     %xmm6,%xmm0
20818  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
20819  DB  15,40,222                           ; movaps        %xmm6,%xmm3
20820  DB  15,194,216,1                        ; cmpltps       %xmm0,%xmm3
20821  DB  15,84,29,56,59,0,0                  ; andps         0x3b38(%rip),%xmm3        # 5af0 <_sk_callback_sse2+0x509>
20822  DB  15,92,195                           ; subps         %xmm3,%xmm0
20823  DB  15,92,240                           ; subps         %xmm0,%xmm6
20824  DB  15,89,206                           ; mulps         %xmm6,%xmm1
20825  DB  15,92,233                           ; subps         %xmm1,%xmm5
20826  DB  65,15,89,238                        ; mulps         %xmm14,%xmm5
20827  DB  65,15,89,206                        ; mulps         %xmm14,%xmm1
20828  DB  65,15,88,235                        ; addps         %xmm11,%xmm5
20829  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
20830  DB  68,15,194,238,2                     ; cmpleps       %xmm6,%xmm13
20831  DB  69,15,84,221                        ; andps         %xmm13,%xmm11
20832  DB  68,15,85,237                        ; andnps        %xmm5,%xmm13
20833  DB  69,15,86,235                        ; orps          %xmm11,%xmm13
20834  DB  68,15,194,206,2                     ; cmpleps       %xmm6,%xmm9
20835  DB  69,15,84,233                        ; andps         %xmm9,%xmm13
20836  DB  69,15,85,202                        ; andnps        %xmm10,%xmm9
20837  DB  69,15,86,205                        ; orps          %xmm13,%xmm9
20838  DB  15,194,214,2                        ; cmpleps       %xmm6,%xmm2
20839  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
20840  DB  15,85,209                           ; andnps        %xmm1,%xmm2
20841  DB  65,15,86,209                        ; orps          %xmm9,%xmm2
20842  DB  15,40,68,36,16                      ; movaps        0x10(%rsp),%xmm0
20843  DB  15,40,207                           ; movaps        %xmm7,%xmm1
20844  DB  15,84,193                           ; andps         %xmm1,%xmm0
20845  DB  15,85,202                           ; andnps        %xmm2,%xmm1
20846  DB  68,15,86,192                        ; orps          %xmm0,%xmm8
20847  DB  15,86,224                           ; orps          %xmm0,%xmm4
20848  DB  15,86,193                           ; orps          %xmm1,%xmm0
20849  DB  15,40,208                           ; movaps        %xmm0,%xmm2
20850  DB  72,173                              ; lods          %ds:(%rsi),%rax
20851  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20852  DB  15,40,204                           ; movaps        %xmm4,%xmm1
20853  DB  15,40,92,36,32                      ; movaps        0x20(%rsp),%xmm3
20854  DB  15,40,100,36,48                     ; movaps        0x30(%rsp),%xmm4
20855  DB  15,40,108,36,64                     ; movaps        0x40(%rsp),%xmm5
20856  DB  15,40,116,36,80                     ; movaps        0x50(%rsp),%xmm6
20857  DB  15,40,124,36,96                     ; movaps        0x60(%rsp),%xmm7
20858  DB  72,131,196,120                      ; add           $0x78,%rsp
20859  DB  255,224                             ; jmpq          *%rax
20860
20861PUBLIC _sk_scale_1_float_sse2
20862_sk_scale_1_float_sse2 LABEL PROC
20863  DB  72,173                              ; lods          %ds:(%rsi),%rax
20864  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
20865  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
20866  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
20867  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
20868  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
20869  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
20870  DB  72,173                              ; lods          %ds:(%rsi),%rax
20871  DB  255,224                             ; jmpq          *%rax
20872
20873PUBLIC _sk_scale_u8_sse2
20874_sk_scale_u8_sse2 LABEL PROC
20875  DB  72,173                              ; lods          %ds:(%rsi),%rax
20876  DB  76,139,16                           ; mov           (%rax),%r10
20877  DB  77,133,192                          ; test          %r8,%r8
20878  DB  117,61                              ; jne           20af <_sk_scale_u8_sse2+0x47>
20879  DB  102,69,15,110,4,18                  ; movd          (%r10,%rdx,1),%xmm8
20880  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
20881  DB  102,68,15,97,192                    ; punpcklwd     %xmm0,%xmm8
20882  DB  102,68,15,219,5,197,58,0,0          ; pand          0x3ac5(%rip),%xmm8        # 5b50 <_sk_callback_sse2+0x569>
20883  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
20884  DB  68,15,89,5,201,58,0,0               ; mulps         0x3ac9(%rip),%xmm8        # 5b60 <_sk_callback_sse2+0x579>
20885  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
20886  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
20887  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
20888  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
20889  DB  72,173                              ; lods          %ds:(%rsi),%rax
20890  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
20891  DB  255,224                             ; jmpq          *%rax
20892  DB  69,137,193                          ; mov           %r8d,%r9d
20893  DB  65,128,225,3                        ; and           $0x3,%r9b
20894  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
20895  DB  65,128,249,1                        ; cmp           $0x1,%r9b
20896  DB  116,54                              ; je            20f7 <_sk_scale_u8_sse2+0x8f>
20897  DB  65,128,249,2                        ; cmp           $0x2,%r9b
20898  DB  116,23                              ; je            20de <_sk_scale_u8_sse2+0x76>
20899  DB  65,128,249,3                        ; cmp           $0x3,%r9b
20900  DB  117,181                             ; jne           2082 <_sk_scale_u8_sse2+0x1a>
20901  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
20902  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
20903  DB  102,69,15,112,192,69                ; pshufd        $0x45,%xmm8,%xmm8
20904  DB  65,15,182,68,18,1                   ; movzbl        0x1(%r10,%rdx,1),%eax
20905  DB  102,68,15,110,200                   ; movd          %eax,%xmm9
20906  DB  69,15,198,200,0                     ; shufps        $0x0,%xmm8,%xmm9
20907  DB  69,15,198,200,226                   ; shufps        $0xe2,%xmm8,%xmm9
20908  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
20909  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
20910  DB  102,68,15,110,200                   ; movd          %eax,%xmm9
20911  DB  243,69,15,16,193                    ; movss         %xmm9,%xmm8
20912  DB  233,119,255,255,255                 ; jmpq          2082 <_sk_scale_u8_sse2+0x1a>
20913
20914PUBLIC _sk_lerp_1_float_sse2
20915_sk_lerp_1_float_sse2 LABEL PROC
20916  DB  72,173                              ; lods          %ds:(%rsi),%rax
20917  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
20918  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
20919  DB  15,92,196                           ; subps         %xmm4,%xmm0
20920  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
20921  DB  15,88,196                           ; addps         %xmm4,%xmm0
20922  DB  15,92,205                           ; subps         %xmm5,%xmm1
20923  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
20924  DB  15,88,205                           ; addps         %xmm5,%xmm1
20925  DB  15,92,214                           ; subps         %xmm6,%xmm2
20926  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
20927  DB  15,88,214                           ; addps         %xmm6,%xmm2
20928  DB  15,92,223                           ; subps         %xmm7,%xmm3
20929  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
20930  DB  15,88,223                           ; addps         %xmm7,%xmm3
20931  DB  72,173                              ; lods          %ds:(%rsi),%rax
20932  DB  255,224                             ; jmpq          *%rax
20933
20934PUBLIC _sk_lerp_u8_sse2
20935_sk_lerp_u8_sse2 LABEL PROC
20936  DB  72,173                              ; lods          %ds:(%rsi),%rax
20937  DB  76,139,16                           ; mov           (%rax),%r10
20938  DB  77,133,192                          ; test          %r8,%r8
20939  DB  117,81                              ; jne           219e <_sk_lerp_u8_sse2+0x5b>
20940  DB  102,69,15,110,4,18                  ; movd          (%r10,%rdx,1),%xmm8
20941  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
20942  DB  102,68,15,97,192                    ; punpcklwd     %xmm0,%xmm8
20943  DB  102,68,15,219,5,10,58,0,0           ; pand          0x3a0a(%rip),%xmm8        # 5b70 <_sk_callback_sse2+0x589>
20944  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
20945  DB  68,15,89,5,14,58,0,0                ; mulps         0x3a0e(%rip),%xmm8        # 5b80 <_sk_callback_sse2+0x599>
20946  DB  15,92,196                           ; subps         %xmm4,%xmm0
20947  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
20948  DB  15,88,196                           ; addps         %xmm4,%xmm0
20949  DB  15,92,205                           ; subps         %xmm5,%xmm1
20950  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
20951  DB  15,88,205                           ; addps         %xmm5,%xmm1
20952  DB  15,92,214                           ; subps         %xmm6,%xmm2
20953  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
20954  DB  15,88,214                           ; addps         %xmm6,%xmm2
20955  DB  15,92,223                           ; subps         %xmm7,%xmm3
20956  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
20957  DB  15,88,223                           ; addps         %xmm7,%xmm3
20958  DB  72,173                              ; lods          %ds:(%rsi),%rax
20959  DB  255,224                             ; jmpq          *%rax
20960  DB  69,137,193                          ; mov           %r8d,%r9d
20961  DB  65,128,225,3                        ; and           $0x3,%r9b
20962  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
20963  DB  65,128,249,1                        ; cmp           $0x1,%r9b
20964  DB  116,54                              ; je            21e6 <_sk_lerp_u8_sse2+0xa3>
20965  DB  65,128,249,2                        ; cmp           $0x2,%r9b
20966  DB  116,23                              ; je            21cd <_sk_lerp_u8_sse2+0x8a>
20967  DB  65,128,249,3                        ; cmp           $0x3,%r9b
20968  DB  117,161                             ; jne           215d <_sk_lerp_u8_sse2+0x1a>
20969  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
20970  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
20971  DB  102,69,15,112,192,69                ; pshufd        $0x45,%xmm8,%xmm8
20972  DB  65,15,182,68,18,1                   ; movzbl        0x1(%r10,%rdx,1),%eax
20973  DB  102,68,15,110,200                   ; movd          %eax,%xmm9
20974  DB  69,15,198,200,0                     ; shufps        $0x0,%xmm8,%xmm9
20975  DB  69,15,198,200,226                   ; shufps        $0xe2,%xmm8,%xmm9
20976  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
20977  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
20978  DB  102,68,15,110,200                   ; movd          %eax,%xmm9
20979  DB  243,69,15,16,193                    ; movss         %xmm9,%xmm8
20980  DB  233,99,255,255,255                  ; jmpq          215d <_sk_lerp_u8_sse2+0x1a>
20981
20982PUBLIC _sk_lerp_565_sse2
20983_sk_lerp_565_sse2 LABEL PROC
20984  DB  72,173                              ; lods          %ds:(%rsi),%rax
20985  DB  76,139,16                           ; mov           (%rax),%r10
20986  DB  77,133,192                          ; test          %r8,%r8
20987  DB  15,133,156,0,0,0                    ; jne           22a4 <_sk_lerp_565_sse2+0xaa>
20988  DB  243,69,15,126,12,82                 ; movq          (%r10,%rdx,2),%xmm9
20989  DB  102,68,15,97,200                    ; punpcklwd     %xmm0,%xmm9
20990  DB  102,68,15,111,5,116,57,0,0          ; movdqa        0x3974(%rip),%xmm8        # 5b90 <_sk_callback_sse2+0x5a9>
20991  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
20992  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
20993  DB  68,15,89,5,115,57,0,0               ; mulps         0x3973(%rip),%xmm8        # 5ba0 <_sk_callback_sse2+0x5b9>
20994  DB  102,68,15,111,21,122,57,0,0         ; movdqa        0x397a(%rip),%xmm10        # 5bb0 <_sk_callback_sse2+0x5c9>
20995  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
20996  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
20997  DB  68,15,89,21,121,57,0,0              ; mulps         0x3979(%rip),%xmm10        # 5bc0 <_sk_callback_sse2+0x5d9>
20998  DB  102,68,15,219,13,128,57,0,0         ; pand          0x3980(%rip),%xmm9        # 5bd0 <_sk_callback_sse2+0x5e9>
20999  DB  69,15,91,201                        ; cvtdq2ps      %xmm9,%xmm9
21000  DB  68,15,89,13,132,57,0,0              ; mulps         0x3984(%rip),%xmm9        # 5be0 <_sk_callback_sse2+0x5f9>
21001  DB  15,92,196                           ; subps         %xmm4,%xmm0
21002  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
21003  DB  15,88,196                           ; addps         %xmm4,%xmm0
21004  DB  15,92,205                           ; subps         %xmm5,%xmm1
21005  DB  65,15,89,202                        ; mulps         %xmm10,%xmm1
21006  DB  15,88,205                           ; addps         %xmm5,%xmm1
21007  DB  15,92,214                           ; subps         %xmm6,%xmm2
21008  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
21009  DB  15,88,214                           ; addps         %xmm6,%xmm2
21010  DB  15,92,223                           ; subps         %xmm7,%xmm3
21011  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
21012  DB  68,15,88,199                        ; addps         %xmm7,%xmm8
21013  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
21014  DB  68,15,88,215                        ; addps         %xmm7,%xmm10
21015  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
21016  DB  15,88,223                           ; addps         %xmm7,%xmm3
21017  DB  68,15,95,211                        ; maxps         %xmm3,%xmm10
21018  DB  69,15,95,194                        ; maxps         %xmm10,%xmm8
21019  DB  72,173                              ; lods          %ds:(%rsi),%rax
21020  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
21021  DB  255,224                             ; jmpq          *%rax
21022  DB  69,137,193                          ; mov           %r8d,%r9d
21023  DB  65,128,225,3                        ; and           $0x3,%r9b
21024  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
21025  DB  65,128,249,1                        ; cmp           $0x1,%r9b
21026  DB  116,58                              ; je            22f0 <_sk_lerp_565_sse2+0xf6>
21027  DB  65,128,249,2                        ; cmp           $0x2,%r9b
21028  DB  116,27                              ; je            22d7 <_sk_lerp_565_sse2+0xdd>
21029  DB  65,128,249,3                        ; cmp           $0x3,%r9b
21030  DB  15,133,77,255,255,255               ; jne           2213 <_sk_lerp_565_sse2+0x19>
21031  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
21032  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21033  DB  102,69,15,112,200,69                ; pshufd        $0x45,%xmm8,%xmm9
21034  DB  65,15,183,68,82,2                   ; movzwl        0x2(%r10,%rdx,2),%eax
21035  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21036  DB  69,15,198,193,0                     ; shufps        $0x0,%xmm9,%xmm8
21037  DB  69,15,198,193,226                   ; shufps        $0xe2,%xmm9,%xmm8
21038  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
21039  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
21040  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21041  DB  243,69,15,16,200                    ; movss         %xmm8,%xmm9
21042  DB  233,15,255,255,255                  ; jmpq          2213 <_sk_lerp_565_sse2+0x19>
21043
21044PUBLIC _sk_load_tables_sse2
21045_sk_load_tables_sse2 LABEL PROC
21046  DB  72,173                              ; lods          %ds:(%rsi),%rax
21047  DB  76,139,8                            ; mov           (%rax),%r9
21048  DB  77,133,192                          ; test          %r8,%r8
21049  DB  15,133,36,1,0,0                     ; jne           2436 <_sk_load_tables_sse2+0x132>
21050  DB  243,69,15,111,12,145                ; movdqu        (%r9,%rdx,4),%xmm9
21051  DB  65,87                               ; push          %r15
21052  DB  65,86                               ; push          %r14
21053  DB  83                                  ; push          %rbx
21054  DB  102,68,15,111,5,202,56,0,0          ; movdqa        0x38ca(%rip),%xmm8        # 5bf0 <_sk_callback_sse2+0x609>
21055  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
21056  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
21057  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
21058  DB  102,73,15,126,201                   ; movq          %xmm1,%r9
21059  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
21060  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
21061  DB  73,193,234,30                       ; shr           $0x1e,%r10
21062  DB  69,15,182,241                       ; movzbl        %r9b,%r14d
21063  DB  73,193,233,30                       ; shr           $0x1e,%r9
21064  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
21065  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
21066  DB  243,66,15,16,12,19                  ; movss         (%rbx,%r10,1),%xmm1
21067  DB  243,66,15,16,4,11                   ; movss         (%rbx,%r9,1),%xmm0
21068  DB  15,20,200                           ; unpcklps      %xmm0,%xmm1
21069  DB  243,66,15,16,4,155                  ; movss         (%rbx,%r11,4),%xmm0
21070  DB  243,66,15,16,20,179                 ; movss         (%rbx,%r14,4),%xmm2
21071  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
21072  DB  15,20,193                           ; unpcklps      %xmm1,%xmm0
21073  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
21074  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
21075  DB  102,65,15,219,200                   ; pand          %xmm8,%xmm1
21076  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
21077  DB  102,73,15,126,209                   ; movq          %xmm2,%r9
21078  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
21079  DB  68,15,182,211                       ; movzbl        %bl,%r10d
21080  DB  72,193,235,30                       ; shr           $0x1e,%rbx
21081  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
21082  DB  73,193,233,30                       ; shr           $0x1e,%r9
21083  DB  243,65,15,16,20,31                  ; movss         (%r15,%rbx,1),%xmm2
21084  DB  243,67,15,16,12,15                  ; movss         (%r15,%r9,1),%xmm1
21085  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
21086  DB  243,67,15,16,12,151                 ; movss         (%r15,%r10,4),%xmm1
21087  DB  243,67,15,16,28,159                 ; movss         (%r15,%r11,4),%xmm3
21088  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
21089  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
21090  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
21091  DB  102,65,15,111,209                   ; movdqa        %xmm9,%xmm2
21092  DB  102,15,114,210,16                   ; psrld         $0x10,%xmm2
21093  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
21094  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
21095  DB  102,72,15,126,219                   ; movq          %xmm3,%rbx
21096  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
21097  DB  68,15,182,208                       ; movzbl        %al,%r10d
21098  DB  72,193,232,30                       ; shr           $0x1e,%rax
21099  DB  68,15,182,219                       ; movzbl        %bl,%r11d
21100  DB  72,193,235,30                       ; shr           $0x1e,%rbx
21101  DB  243,69,15,16,4,1                    ; movss         (%r9,%rax,1),%xmm8
21102  DB  243,65,15,16,20,25                  ; movss         (%r9,%rbx,1),%xmm2
21103  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
21104  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
21105  DB  243,67,15,16,28,153                 ; movss         (%r9,%r11,4),%xmm3
21106  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
21107  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
21108  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
21109  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
21110  DB  15,89,29,211,55,0,0                 ; mulps         0x37d3(%rip),%xmm3        # 5c00 <_sk_callback_sse2+0x619>
21111  DB  72,173                              ; lods          %ds:(%rsi),%rax
21112  DB  91                                  ; pop           %rbx
21113  DB  65,94                               ; pop           %r14
21114  DB  65,95                               ; pop           %r15
21115  DB  255,224                             ; jmpq          *%rax
21116  DB  69,137,194                          ; mov           %r8d,%r10d
21117  DB  65,128,226,3                        ; and           $0x3,%r10b
21118  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
21119  DB  65,128,250,1                        ; cmp           $0x1,%r10b
21120  DB  116,50                              ; je            247a <_sk_load_tables_sse2+0x176>
21121  DB  65,128,250,2                        ; cmp           $0x2,%r10b
21122  DB  116,23                              ; je            2465 <_sk_load_tables_sse2+0x161>
21123  DB  65,128,250,3                        ; cmp           $0x3,%r10b
21124  DB  15,133,192,254,255,255              ; jne           2318 <_sk_load_tables_sse2+0x14>
21125  DB  102,65,15,110,68,145,8              ; movd          0x8(%r9,%rdx,4),%xmm0
21126  DB  102,68,15,112,200,69                ; pshufd        $0x45,%xmm0,%xmm9
21127  DB  243,65,15,16,68,145,4               ; movss         0x4(%r9,%rdx,4),%xmm0
21128  DB  65,15,198,193,0                     ; shufps        $0x0,%xmm9,%xmm0
21129  DB  65,15,198,193,226                   ; shufps        $0xe2,%xmm9,%xmm0
21130  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
21131  DB  243,65,15,16,4,145                  ; movss         (%r9,%rdx,4),%xmm0
21132  DB  243,68,15,16,200                    ; movss         %xmm0,%xmm9
21133  DB  233,142,254,255,255                 ; jmpq          2318 <_sk_load_tables_sse2+0x14>
21134
21135PUBLIC _sk_load_tables_u16_be_sse2
21136_sk_load_tables_u16_be_sse2 LABEL PROC
21137  DB  72,173                              ; lods          %ds:(%rsi),%rax
21138  DB  76,139,8                            ; mov           (%rax),%r9
21139  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
21140  DB  77,133,192                          ; test          %r8,%r8
21141  DB  15,133,101,1,0,0                    ; jne           2605 <_sk_load_tables_u16_be_sse2+0x17b>
21142  DB  102,67,15,16,4,81                   ; movupd        (%r9,%r10,2),%xmm0
21143  DB  102,67,15,16,76,81,16               ; movupd        0x10(%r9,%r10,2),%xmm1
21144  DB  65,87                               ; push          %r15
21145  DB  65,86                               ; push          %r14
21146  DB  83                                  ; push          %rbx
21147  DB  102,68,15,40,200                    ; movapd        %xmm0,%xmm9
21148  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
21149  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
21150  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
21151  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
21152  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
21153  DB  102,68,15,111,21,57,55,0,0          ; movdqa        0x3739(%rip),%xmm10        # 5c10 <_sk_callback_sse2+0x629>
21154  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
21155  DB  102,65,15,219,194                   ; pand          %xmm10,%xmm0
21156  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
21157  DB  102,65,15,97,192                    ; punpcklwd     %xmm8,%xmm0
21158  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
21159  DB  102,73,15,126,217                   ; movq          %xmm3,%r9
21160  DB  69,15,182,209                       ; movzbl        %r9b,%r10d
21161  DB  73,193,233,32                       ; shr           $0x20,%r9
21162  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
21163  DB  69,15,182,243                       ; movzbl        %r11b,%r14d
21164  DB  73,193,235,30                       ; shr           $0x1e,%r11
21165  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
21166  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
21167  DB  243,66,15,16,28,27                  ; movss         (%rbx,%r11,1),%xmm3
21168  DB  243,66,15,16,4,139                  ; movss         (%rbx,%r9,4),%xmm0
21169  DB  15,20,216                           ; unpcklps      %xmm0,%xmm3
21170  DB  243,66,15,16,4,179                  ; movss         (%rbx,%r14,4),%xmm0
21171  DB  243,66,15,16,20,147                 ; movss         (%rbx,%r10,4),%xmm2
21172  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
21173  DB  15,20,195                           ; unpcklps      %xmm3,%xmm0
21174  DB  102,15,115,217,8                    ; psrldq        $0x8,%xmm1
21175  DB  102,65,15,219,202                   ; pand          %xmm10,%xmm1
21176  DB  102,65,15,97,200                    ; punpcklwd     %xmm8,%xmm1
21177  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
21178  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
21179  DB  68,15,182,203                       ; movzbl        %bl,%r9d
21180  DB  72,193,235,32                       ; shr           $0x20,%rbx
21181  DB  102,73,15,126,202                   ; movq          %xmm1,%r10
21182  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
21183  DB  73,193,234,30                       ; shr           $0x1e,%r10
21184  DB  243,67,15,16,20,23                  ; movss         (%r15,%r10,1),%xmm2
21185  DB  243,65,15,16,12,159                 ; movss         (%r15,%rbx,4),%xmm1
21186  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
21187  DB  243,67,15,16,12,159                 ; movss         (%r15,%r11,4),%xmm1
21188  DB  243,67,15,16,28,143                 ; movss         (%r15,%r9,4),%xmm3
21189  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
21190  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
21191  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
21192  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
21193  DB  102,69,15,97,208                    ; punpcklwd     %xmm8,%xmm10
21194  DB  102,65,15,112,210,78                ; pshufd        $0x4e,%xmm10,%xmm2
21195  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
21196  DB  68,15,182,203                       ; movzbl        %bl,%r9d
21197  DB  72,193,235,32                       ; shr           $0x20,%rbx
21198  DB  102,76,15,126,208                   ; movq          %xmm10,%rax
21199  DB  68,15,182,216                       ; movzbl        %al,%r11d
21200  DB  72,193,232,30                       ; shr           $0x1e,%rax
21201  DB  243,69,15,16,20,2                   ; movss         (%r10,%rax,1),%xmm10
21202  DB  243,65,15,16,20,154                 ; movss         (%r10,%rbx,4),%xmm2
21203  DB  68,15,20,210                        ; unpcklps      %xmm2,%xmm10
21204  DB  243,67,15,16,20,154                 ; movss         (%r10,%r11,4),%xmm2
21205  DB  243,67,15,16,28,138                 ; movss         (%r10,%r9,4),%xmm3
21206  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
21207  DB  65,15,20,210                        ; unpcklps      %xmm10,%xmm2
21208  DB  102,65,15,112,217,78                ; pshufd        $0x4e,%xmm9,%xmm3
21209  DB  102,68,15,111,203                   ; movdqa        %xmm3,%xmm9
21210  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
21211  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
21212  DB  102,65,15,235,217                   ; por           %xmm9,%xmm3
21213  DB  102,65,15,97,216                    ; punpcklwd     %xmm8,%xmm3
21214  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
21215  DB  15,89,29,36,54,0,0                  ; mulps         0x3624(%rip),%xmm3        # 5c20 <_sk_callback_sse2+0x639>
21216  DB  72,173                              ; lods          %ds:(%rsi),%rax
21217  DB  91                                  ; pop           %rbx
21218  DB  65,94                               ; pop           %r14
21219  DB  65,95                               ; pop           %r15
21220  DB  255,224                             ; jmpq          *%rax
21221  DB  242,67,15,16,4,81                   ; movsd         (%r9,%r10,2),%xmm0
21222  DB  73,131,248,1                        ; cmp           $0x1,%r8
21223  DB  117,17                              ; jne           2622 <_sk_load_tables_u16_be_sse2+0x198>
21224  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
21225  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
21226  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
21227  DB  233,139,254,255,255                 ; jmpq          24ad <_sk_load_tables_u16_be_sse2+0x23>
21228  DB  102,67,15,22,68,81,8                ; movhpd        0x8(%r9,%r10,2),%xmm0
21229  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
21230  DB  73,131,248,3                        ; cmp           $0x3,%r8
21231  DB  15,130,118,254,255,255              ; jb            24ad <_sk_load_tables_u16_be_sse2+0x23>
21232  DB  242,67,15,16,76,81,16               ; movsd         0x10(%r9,%r10,2),%xmm1
21233  DB  233,106,254,255,255                 ; jmpq          24ad <_sk_load_tables_u16_be_sse2+0x23>
21234
21235PUBLIC _sk_load_tables_rgb_u16_be_sse2
21236_sk_load_tables_rgb_u16_be_sse2 LABEL PROC
21237  DB  72,173                              ; lods          %ds:(%rsi),%rax
21238  DB  76,139,8                            ; mov           (%rax),%r9
21239  DB  76,141,20,82                        ; lea           (%rdx,%rdx,2),%r10
21240  DB  77,133,192                          ; test          %r8,%r8
21241  DB  15,133,84,1,0,0                     ; jne           27a9 <_sk_load_tables_rgb_u16_be_sse2+0x166>
21242  DB  243,71,15,111,28,81                 ; movdqu        (%r9,%r10,2),%xmm11
21243  DB  243,67,15,111,76,81,8               ; movdqu        0x8(%r9,%r10,2),%xmm1
21244  DB  102,15,115,217,4                    ; psrldq        $0x4,%xmm1
21245  DB  102,69,15,111,211                   ; movdqa        %xmm11,%xmm10
21246  DB  102,65,15,115,218,6                 ; psrldq        $0x6,%xmm10
21247  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
21248  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
21249  DB  65,87                               ; push          %r15
21250  DB  65,86                               ; push          %r14
21251  DB  83                                  ; push          %rbx
21252  DB  102,68,15,97,217                    ; punpcklwd     %xmm1,%xmm11
21253  DB  102,68,15,97,208                    ; punpcklwd     %xmm0,%xmm10
21254  DB  102,65,15,111,195                   ; movdqa        %xmm11,%xmm0
21255  DB  102,65,15,97,194                    ; punpcklwd     %xmm10,%xmm0
21256  DB  102,68,15,111,5,147,53,0,0          ; movdqa        0x3593(%rip),%xmm8        # 5c30 <_sk_callback_sse2+0x649>
21257  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
21258  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
21259  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
21260  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
21261  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
21262  DB  102,73,15,126,217                   ; movq          %xmm3,%r9
21263  DB  69,15,182,209                       ; movzbl        %r9b,%r10d
21264  DB  73,193,233,32                       ; shr           $0x20,%r9
21265  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
21266  DB  69,15,182,243                       ; movzbl        %r11b,%r14d
21267  DB  73,193,235,30                       ; shr           $0x1e,%r11
21268  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
21269  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
21270  DB  243,66,15,16,28,27                  ; movss         (%rbx,%r11,1),%xmm3
21271  DB  243,66,15,16,4,139                  ; movss         (%rbx,%r9,4),%xmm0
21272  DB  15,20,216                           ; unpcklps      %xmm0,%xmm3
21273  DB  243,66,15,16,4,179                  ; movss         (%rbx,%r14,4),%xmm0
21274  DB  243,66,15,16,20,147                 ; movss         (%rbx,%r10,4),%xmm2
21275  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
21276  DB  15,20,195                           ; unpcklps      %xmm3,%xmm0
21277  DB  102,65,15,219,200                   ; pand          %xmm8,%xmm1
21278  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
21279  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
21280  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
21281  DB  68,15,182,203                       ; movzbl        %bl,%r9d
21282  DB  72,193,235,32                       ; shr           $0x20,%rbx
21283  DB  102,73,15,126,202                   ; movq          %xmm1,%r10
21284  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
21285  DB  73,193,234,30                       ; shr           $0x1e,%r10
21286  DB  243,67,15,16,20,23                  ; movss         (%r15,%r10,1),%xmm2
21287  DB  243,65,15,16,12,159                 ; movss         (%r15,%rbx,4),%xmm1
21288  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
21289  DB  243,67,15,16,12,159                 ; movss         (%r15,%r11,4),%xmm1
21290  DB  243,67,15,16,28,143                 ; movss         (%r15,%r9,4),%xmm3
21291  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
21292  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
21293  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
21294  DB  102,69,15,105,218                   ; punpckhwd     %xmm10,%xmm11
21295  DB  102,69,15,219,216                   ; pand          %xmm8,%xmm11
21296  DB  102,69,15,97,217                    ; punpcklwd     %xmm9,%xmm11
21297  DB  102,65,15,112,211,78                ; pshufd        $0x4e,%xmm11,%xmm2
21298  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
21299  DB  68,15,182,203                       ; movzbl        %bl,%r9d
21300  DB  72,193,235,32                       ; shr           $0x20,%rbx
21301  DB  102,76,15,126,216                   ; movq          %xmm11,%rax
21302  DB  68,15,182,216                       ; movzbl        %al,%r11d
21303  DB  72,193,232,30                       ; shr           $0x1e,%rax
21304  DB  243,69,15,16,4,2                    ; movss         (%r10,%rax,1),%xmm8
21305  DB  243,65,15,16,20,154                 ; movss         (%r10,%rbx,4),%xmm2
21306  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
21307  DB  243,67,15,16,20,154                 ; movss         (%r10,%r11,4),%xmm2
21308  DB  243,67,15,16,28,138                 ; movss         (%r10,%r9,4),%xmm3
21309  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
21310  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
21311  DB  72,173                              ; lods          %ds:(%rsi),%rax
21312  DB  15,40,29,158,52,0,0                 ; movaps        0x349e(%rip),%xmm3        # 5c40 <_sk_callback_sse2+0x659>
21313  DB  91                                  ; pop           %rbx
21314  DB  65,94                               ; pop           %r14
21315  DB  65,95                               ; pop           %r15
21316  DB  255,224                             ; jmpq          *%rax
21317  DB  102,71,15,110,28,81                 ; movd          (%r9,%r10,2),%xmm11
21318  DB  102,71,15,196,92,81,4,2             ; pinsrw        $0x2,0x4(%r9,%r10,2),%xmm11
21319  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
21320  DB  73,131,248,1                        ; cmp           $0x1,%r8
21321  DB  117,14                              ; jne           27cf <_sk_load_tables_rgb_u16_be_sse2+0x18c>
21322  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
21323  DB  102,69,15,239,210                   ; pxor          %xmm10,%xmm10
21324  DB  233,172,254,255,255                 ; jmpq          267b <_sk_load_tables_rgb_u16_be_sse2+0x38>
21325  DB  102,71,15,110,84,81,6               ; movd          0x6(%r9,%r10,2),%xmm10
21326  DB  102,71,15,196,84,81,10,2            ; pinsrw        $0x2,0xa(%r9,%r10,2),%xmm10
21327  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
21328  DB  73,131,248,3                        ; cmp           $0x3,%r8
21329  DB  114,24                              ; jb            2800 <_sk_load_tables_rgb_u16_be_sse2+0x1bd>
21330  DB  102,67,15,110,76,81,12              ; movd          0xc(%r9,%r10,2),%xmm1
21331  DB  102,67,15,196,76,81,16,2            ; pinsrw        $0x2,0x10(%r9,%r10,2),%xmm1
21332  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
21333  DB  233,123,254,255,255                 ; jmpq          267b <_sk_load_tables_rgb_u16_be_sse2+0x38>
21334  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
21335  DB  233,114,254,255,255                 ; jmpq          267b <_sk_load_tables_rgb_u16_be_sse2+0x38>
21336
21337PUBLIC _sk_byte_tables_sse2
21338_sk_byte_tables_sse2 LABEL PROC
21339  DB  85                                  ; push          %rbp
21340  DB  65,87                               ; push          %r15
21341  DB  65,86                               ; push          %r14
21342  DB  83                                  ; push          %rbx
21343  DB  72,173                              ; lods          %ds:(%rsi),%rax
21344  DB  68,15,40,5,55,52,0,0                ; movaps        0x3437(%rip),%xmm8        # 5c50 <_sk_callback_sse2+0x669>
21345  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
21346  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
21347  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
21348  DB  69,137,202                          ; mov           %r9d,%r10d
21349  DB  77,137,203                          ; mov           %r9,%r11
21350  DB  73,193,235,32                       ; shr           $0x20,%r11
21351  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
21352  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
21353  DB  69,137,206                          ; mov           %r9d,%r14d
21354  DB  77,137,207                          ; mov           %r9,%r15
21355  DB  73,193,239,32                       ; shr           $0x20,%r15
21356  DB  72,139,24                           ; mov           (%rax),%rbx
21357  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
21358  DB  70,15,182,52,51                     ; movzbl        (%rbx,%r14,1),%r14d
21359  DB  66,15,182,44,59                     ; movzbl        (%rbx,%r15,1),%ebp
21360  DB  193,229,8                           ; shl           $0x8,%ebp
21361  DB  68,9,245                            ; or            %r14d,%ebp
21362  DB  70,15,182,20,19                     ; movzbl        (%rbx,%r10,1),%r10d
21363  DB  66,15,182,28,27                     ; movzbl        (%rbx,%r11,1),%ebx
21364  DB  193,227,8                           ; shl           $0x8,%ebx
21365  DB  68,9,211                            ; or            %r10d,%ebx
21366  DB  102,15,196,195,0                    ; pinsrw        $0x0,%ebx,%xmm0
21367  DB  102,15,196,197,1                    ; pinsrw        $0x1,%ebp,%xmm0
21368  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
21369  DB  102,65,15,96,193                    ; punpcklbw     %xmm9,%xmm0
21370  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
21371  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
21372  DB  68,15,40,21,209,51,0,0              ; movaps        0x33d1(%rip),%xmm10        # 5c60 <_sk_callback_sse2+0x679>
21373  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
21374  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
21375  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
21376  DB  102,72,15,126,205                   ; movq          %xmm1,%rbp
21377  DB  65,137,234                          ; mov           %ebp,%r10d
21378  DB  72,193,237,32                       ; shr           $0x20,%rbp
21379  DB  102,15,112,201,78                   ; pshufd        $0x4e,%xmm1,%xmm1
21380  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
21381  DB  65,137,219                          ; mov           %ebx,%r11d
21382  DB  72,193,235,32                       ; shr           $0x20,%rbx
21383  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
21384  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
21385  DB  193,227,8                           ; shl           $0x8,%ebx
21386  DB  68,9,219                            ; or            %r11d,%ebx
21387  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
21388  DB  65,15,182,44,41                     ; movzbl        (%r9,%rbp,1),%ebp
21389  DB  193,229,8                           ; shl           $0x8,%ebp
21390  DB  68,9,213                            ; or            %r10d,%ebp
21391  DB  102,15,196,205,0                    ; pinsrw        $0x0,%ebp,%xmm1
21392  DB  102,15,196,203,1                    ; pinsrw        $0x1,%ebx,%xmm1
21393  DB  102,65,15,96,201                    ; punpcklbw     %xmm9,%xmm1
21394  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
21395  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
21396  DB  65,15,89,202                        ; mulps         %xmm10,%xmm1
21397  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
21398  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
21399  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
21400  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
21401  DB  65,137,217                          ; mov           %ebx,%r9d
21402  DB  72,193,235,32                       ; shr           $0x20,%rbx
21403  DB  102,15,112,210,78                   ; pshufd        $0x4e,%xmm2,%xmm2
21404  DB  102,72,15,126,213                   ; movq          %xmm2,%rbp
21405  DB  65,137,235                          ; mov           %ebp,%r11d
21406  DB  72,193,237,32                       ; shr           $0x20,%rbp
21407  DB  71,15,182,28,26                     ; movzbl        (%r10,%r11,1),%r11d
21408  DB  65,15,182,44,42                     ; movzbl        (%r10,%rbp,1),%ebp
21409  DB  193,229,8                           ; shl           $0x8,%ebp
21410  DB  68,9,221                            ; or            %r11d,%ebp
21411  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
21412  DB  65,15,182,28,26                     ; movzbl        (%r10,%rbx,1),%ebx
21413  DB  193,227,8                           ; shl           $0x8,%ebx
21414  DB  68,9,203                            ; or            %r9d,%ebx
21415  DB  102,15,196,211,0                    ; pinsrw        $0x0,%ebx,%xmm2
21416  DB  102,15,196,213,1                    ; pinsrw        $0x1,%ebp,%xmm2
21417  DB  102,65,15,96,209                    ; punpcklbw     %xmm9,%xmm2
21418  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
21419  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
21420  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
21421  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
21422  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
21423  DB  102,15,91,219                       ; cvtps2dq      %xmm3,%xmm3
21424  DB  102,72,15,126,221                   ; movq          %xmm3,%rbp
21425  DB  65,137,233                          ; mov           %ebp,%r9d
21426  DB  72,193,237,32                       ; shr           $0x20,%rbp
21427  DB  102,15,112,219,78                   ; pshufd        $0x4e,%xmm3,%xmm3
21428  DB  102,72,15,126,219                   ; movq          %xmm3,%rbx
21429  DB  65,137,218                          ; mov           %ebx,%r10d
21430  DB  72,193,235,32                       ; shr           $0x20,%rbx
21431  DB  70,15,182,20,16                     ; movzbl        (%rax,%r10,1),%r10d
21432  DB  15,182,28,24                        ; movzbl        (%rax,%rbx,1),%ebx
21433  DB  193,227,8                           ; shl           $0x8,%ebx
21434  DB  68,9,211                            ; or            %r10d,%ebx
21435  DB  70,15,182,12,8                      ; movzbl        (%rax,%r9,1),%r9d
21436  DB  15,182,4,40                         ; movzbl        (%rax,%rbp,1),%eax
21437  DB  193,224,8                           ; shl           $0x8,%eax
21438  DB  68,9,200                            ; or            %r9d,%eax
21439  DB  102,15,196,216,0                    ; pinsrw        $0x0,%eax,%xmm3
21440  DB  102,15,196,219,1                    ; pinsrw        $0x1,%ebx,%xmm3
21441  DB  102,65,15,96,217                    ; punpcklbw     %xmm9,%xmm3
21442  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
21443  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
21444  DB  65,15,89,218                        ; mulps         %xmm10,%xmm3
21445  DB  72,173                              ; lods          %ds:(%rsi),%rax
21446  DB  91                                  ; pop           %rbx
21447  DB  65,94                               ; pop           %r14
21448  DB  65,95                               ; pop           %r15
21449  DB  93                                  ; pop           %rbp
21450  DB  255,224                             ; jmpq          *%rax
21451
21452PUBLIC _sk_byte_tables_rgb_sse2
21453_sk_byte_tables_rgb_sse2 LABEL PROC
21454  DB  85                                  ; push          %rbp
21455  DB  65,87                               ; push          %r15
21456  DB  65,86                               ; push          %r14
21457  DB  83                                  ; push          %rbx
21458  DB  72,173                              ; lods          %ds:(%rsi),%rax
21459  DB  68,139,72,24                        ; mov           0x18(%rax),%r9d
21460  DB  65,255,201                          ; dec           %r9d
21461  DB  102,69,15,110,193                   ; movd          %r9d,%xmm8
21462  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
21463  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
21464  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
21465  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
21466  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
21467  DB  69,137,202                          ; mov           %r9d,%r10d
21468  DB  77,137,203                          ; mov           %r9,%r11
21469  DB  73,193,235,32                       ; shr           $0x20,%r11
21470  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
21471  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
21472  DB  69,137,206                          ; mov           %r9d,%r14d
21473  DB  77,137,207                          ; mov           %r9,%r15
21474  DB  73,193,239,32                       ; shr           $0x20,%r15
21475  DB  72,139,24                           ; mov           (%rax),%rbx
21476  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
21477  DB  70,15,182,52,51                     ; movzbl        (%rbx,%r14,1),%r14d
21478  DB  66,15,182,44,59                     ; movzbl        (%rbx,%r15,1),%ebp
21479  DB  193,229,8                           ; shl           $0x8,%ebp
21480  DB  68,9,245                            ; or            %r14d,%ebp
21481  DB  70,15,182,20,19                     ; movzbl        (%rbx,%r10,1),%r10d
21482  DB  66,15,182,28,27                     ; movzbl        (%rbx,%r11,1),%ebx
21483  DB  193,227,8                           ; shl           $0x8,%ebx
21484  DB  68,9,211                            ; or            %r10d,%ebx
21485  DB  102,15,196,195,0                    ; pinsrw        $0x0,%ebx,%xmm0
21486  DB  102,15,196,197,1                    ; pinsrw        $0x1,%ebp,%xmm0
21487  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
21488  DB  102,65,15,96,193                    ; punpcklbw     %xmm9,%xmm0
21489  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
21490  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
21491  DB  68,15,40,21,25,50,0,0               ; movaps        0x3219(%rip),%xmm10        # 5c70 <_sk_callback_sse2+0x689>
21492  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
21493  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
21494  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
21495  DB  102,72,15,126,205                   ; movq          %xmm1,%rbp
21496  DB  65,137,234                          ; mov           %ebp,%r10d
21497  DB  72,193,237,32                       ; shr           $0x20,%rbp
21498  DB  102,15,112,201,78                   ; pshufd        $0x4e,%xmm1,%xmm1
21499  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
21500  DB  65,137,219                          ; mov           %ebx,%r11d
21501  DB  72,193,235,32                       ; shr           $0x20,%rbx
21502  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
21503  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
21504  DB  193,227,8                           ; shl           $0x8,%ebx
21505  DB  68,9,219                            ; or            %r11d,%ebx
21506  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
21507  DB  65,15,182,44,41                     ; movzbl        (%r9,%rbp,1),%ebp
21508  DB  193,229,8                           ; shl           $0x8,%ebp
21509  DB  68,9,213                            ; or            %r10d,%ebp
21510  DB  102,15,196,205,0                    ; pinsrw        $0x0,%ebp,%xmm1
21511  DB  102,15,196,203,1                    ; pinsrw        $0x1,%ebx,%xmm1
21512  DB  102,65,15,96,201                    ; punpcklbw     %xmm9,%xmm1
21513  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
21514  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
21515  DB  65,15,89,202                        ; mulps         %xmm10,%xmm1
21516  DB  72,139,64,16                        ; mov           0x10(%rax),%rax
21517  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
21518  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
21519  DB  102,72,15,126,213                   ; movq          %xmm2,%rbp
21520  DB  65,137,233                          ; mov           %ebp,%r9d
21521  DB  72,193,237,32                       ; shr           $0x20,%rbp
21522  DB  102,15,112,210,78                   ; pshufd        $0x4e,%xmm2,%xmm2
21523  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
21524  DB  65,137,218                          ; mov           %ebx,%r10d
21525  DB  72,193,235,32                       ; shr           $0x20,%rbx
21526  DB  70,15,182,20,16                     ; movzbl        (%rax,%r10,1),%r10d
21527  DB  15,182,28,24                        ; movzbl        (%rax,%rbx,1),%ebx
21528  DB  193,227,8                           ; shl           $0x8,%ebx
21529  DB  68,9,211                            ; or            %r10d,%ebx
21530  DB  70,15,182,12,8                      ; movzbl        (%rax,%r9,1),%r9d
21531  DB  15,182,4,40                         ; movzbl        (%rax,%rbp,1),%eax
21532  DB  193,224,8                           ; shl           $0x8,%eax
21533  DB  68,9,200                            ; or            %r9d,%eax
21534  DB  102,15,196,208,0                    ; pinsrw        $0x0,%eax,%xmm2
21535  DB  102,15,196,211,1                    ; pinsrw        $0x1,%ebx,%xmm2
21536  DB  102,65,15,96,209                    ; punpcklbw     %xmm9,%xmm2
21537  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
21538  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
21539  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
21540  DB  72,173                              ; lods          %ds:(%rsi),%rax
21541  DB  91                                  ; pop           %rbx
21542  DB  65,94                               ; pop           %r14
21543  DB  65,95                               ; pop           %r15
21544  DB  93                                  ; pop           %rbp
21545  DB  255,224                             ; jmpq          *%rax
21546
21547PUBLIC _sk_table_r_sse2
21548_sk_table_r_sse2 LABEL PROC
21549  DB  83                                  ; push          %rbx
21550  DB  72,173                              ; lods          %ds:(%rsi),%rax
21551  DB  76,139,8                            ; mov           (%rax),%r9
21552  DB  139,64,8                            ; mov           0x8(%rax),%eax
21553  DB  255,200                             ; dec           %eax
21554  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21555  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
21556  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
21557  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
21558  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
21559  DB  102,65,15,112,192,78                ; pshufd        $0x4e,%xmm8,%xmm0
21560  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
21561  DB  65,137,194                          ; mov           %eax,%r10d
21562  DB  72,193,232,32                       ; shr           $0x20,%rax
21563  DB  102,77,15,126,195                   ; movq          %xmm8,%r11
21564  DB  68,137,219                          ; mov           %r11d,%ebx
21565  DB  73,193,235,32                       ; shr           $0x20,%r11
21566  DB  243,71,15,16,4,153                  ; movss         (%r9,%r11,4),%xmm8
21567  DB  243,65,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm0
21568  DB  68,15,20,192                        ; unpcklps      %xmm0,%xmm8
21569  DB  243,65,15,16,4,153                  ; movss         (%r9,%rbx,4),%xmm0
21570  DB  243,71,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm9
21571  DB  65,15,20,193                        ; unpcklps      %xmm9,%xmm0
21572  DB  65,15,20,192                        ; unpcklps      %xmm8,%xmm0
21573  DB  72,173                              ; lods          %ds:(%rsi),%rax
21574  DB  91                                  ; pop           %rbx
21575  DB  255,224                             ; jmpq          *%rax
21576
21577PUBLIC _sk_table_g_sse2
21578_sk_table_g_sse2 LABEL PROC
21579  DB  83                                  ; push          %rbx
21580  DB  72,173                              ; lods          %ds:(%rsi),%rax
21581  DB  76,139,8                            ; mov           (%rax),%r9
21582  DB  139,64,8                            ; mov           0x8(%rax),%eax
21583  DB  255,200                             ; dec           %eax
21584  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21585  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
21586  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
21587  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
21588  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
21589  DB  102,65,15,112,200,78                ; pshufd        $0x4e,%xmm8,%xmm1
21590  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
21591  DB  65,137,194                          ; mov           %eax,%r10d
21592  DB  72,193,232,32                       ; shr           $0x20,%rax
21593  DB  102,77,15,126,195                   ; movq          %xmm8,%r11
21594  DB  68,137,219                          ; mov           %r11d,%ebx
21595  DB  73,193,235,32                       ; shr           $0x20,%r11
21596  DB  243,71,15,16,4,153                  ; movss         (%r9,%r11,4),%xmm8
21597  DB  243,65,15,16,12,129                 ; movss         (%r9,%rax,4),%xmm1
21598  DB  68,15,20,193                        ; unpcklps      %xmm1,%xmm8
21599  DB  243,65,15,16,12,153                 ; movss         (%r9,%rbx,4),%xmm1
21600  DB  243,71,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm9
21601  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
21602  DB  65,15,20,200                        ; unpcklps      %xmm8,%xmm1
21603  DB  72,173                              ; lods          %ds:(%rsi),%rax
21604  DB  91                                  ; pop           %rbx
21605  DB  255,224                             ; jmpq          *%rax
21606
21607PUBLIC _sk_table_b_sse2
21608_sk_table_b_sse2 LABEL PROC
21609  DB  83                                  ; push          %rbx
21610  DB  72,173                              ; lods          %ds:(%rsi),%rax
21611  DB  76,139,8                            ; mov           (%rax),%r9
21612  DB  139,64,8                            ; mov           0x8(%rax),%eax
21613  DB  255,200                             ; dec           %eax
21614  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21615  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
21616  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
21617  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
21618  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
21619  DB  102,65,15,112,208,78                ; pshufd        $0x4e,%xmm8,%xmm2
21620  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
21621  DB  65,137,194                          ; mov           %eax,%r10d
21622  DB  72,193,232,32                       ; shr           $0x20,%rax
21623  DB  102,77,15,126,195                   ; movq          %xmm8,%r11
21624  DB  68,137,219                          ; mov           %r11d,%ebx
21625  DB  73,193,235,32                       ; shr           $0x20,%r11
21626  DB  243,71,15,16,4,153                  ; movss         (%r9,%r11,4),%xmm8
21627  DB  243,65,15,16,20,129                 ; movss         (%r9,%rax,4),%xmm2
21628  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
21629  DB  243,65,15,16,20,153                 ; movss         (%r9,%rbx,4),%xmm2
21630  DB  243,71,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm9
21631  DB  65,15,20,209                        ; unpcklps      %xmm9,%xmm2
21632  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
21633  DB  72,173                              ; lods          %ds:(%rsi),%rax
21634  DB  91                                  ; pop           %rbx
21635  DB  255,224                             ; jmpq          *%rax
21636
21637PUBLIC _sk_table_a_sse2
21638_sk_table_a_sse2 LABEL PROC
21639  DB  83                                  ; push          %rbx
21640  DB  72,173                              ; lods          %ds:(%rsi),%rax
21641  DB  76,139,8                            ; mov           (%rax),%r9
21642  DB  139,64,8                            ; mov           0x8(%rax),%eax
21643  DB  255,200                             ; dec           %eax
21644  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21645  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
21646  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
21647  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
21648  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
21649  DB  102,65,15,112,216,78                ; pshufd        $0x4e,%xmm8,%xmm3
21650  DB  102,72,15,126,216                   ; movq          %xmm3,%rax
21651  DB  65,137,194                          ; mov           %eax,%r10d
21652  DB  72,193,232,32                       ; shr           $0x20,%rax
21653  DB  102,77,15,126,195                   ; movq          %xmm8,%r11
21654  DB  68,137,219                          ; mov           %r11d,%ebx
21655  DB  73,193,235,32                       ; shr           $0x20,%r11
21656  DB  243,71,15,16,4,153                  ; movss         (%r9,%r11,4),%xmm8
21657  DB  243,65,15,16,28,129                 ; movss         (%r9,%rax,4),%xmm3
21658  DB  68,15,20,195                        ; unpcklps      %xmm3,%xmm8
21659  DB  243,65,15,16,28,153                 ; movss         (%r9,%rbx,4),%xmm3
21660  DB  243,71,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm9
21661  DB  65,15,20,217                        ; unpcklps      %xmm9,%xmm3
21662  DB  65,15,20,216                        ; unpcklps      %xmm8,%xmm3
21663  DB  72,173                              ; lods          %ds:(%rsi),%rax
21664  DB  91                                  ; pop           %rbx
21665  DB  255,224                             ; jmpq          *%rax
21666
21667PUBLIC _sk_parametric_r_sse2
21668_sk_parametric_r_sse2 LABEL PROC
21669  DB  72,173                              ; lods          %ds:(%rsi),%rax
21670  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
21671  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21672  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
21673  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
21674  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
21675  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
21676  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
21677  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
21678  DB  65,15,194,193,2                     ; cmpleps       %xmm9,%xmm0
21679  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
21680  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21681  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
21682  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
21683  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
21684  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21685  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
21686  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
21687  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
21688  DB  68,15,89,13,77,47,0,0               ; mulps         0x2f4d(%rip),%xmm9        # 5c80 <_sk_callback_sse2+0x699>
21689  DB  68,15,84,21,85,47,0,0               ; andps         0x2f55(%rip),%xmm10        # 5c90 <_sk_callback_sse2+0x6a9>
21690  DB  68,15,86,21,93,47,0,0               ; orps          0x2f5d(%rip),%xmm10        # 5ca0 <_sk_callback_sse2+0x6b9>
21691  DB  68,15,88,13,101,47,0,0              ; addps         0x2f65(%rip),%xmm9        # 5cb0 <_sk_callback_sse2+0x6c9>
21692  DB  68,15,40,37,109,47,0,0              ; movaps        0x2f6d(%rip),%xmm12        # 5cc0 <_sk_callback_sse2+0x6d9>
21693  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
21694  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21695  DB  68,15,88,21,109,47,0,0              ; addps         0x2f6d(%rip),%xmm10        # 5cd0 <_sk_callback_sse2+0x6e9>
21696  DB  68,15,40,37,117,47,0,0              ; movaps        0x2f75(%rip),%xmm12        # 5ce0 <_sk_callback_sse2+0x6f9>
21697  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
21698  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21699  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
21700  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
21701  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
21702  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
21703  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
21704  DB  68,15,40,21,95,47,0,0               ; movaps        0x2f5f(%rip),%xmm10        # 5cf0 <_sk_callback_sse2+0x709>
21705  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
21706  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
21707  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
21708  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
21709  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
21710  DB  68,15,88,13,83,47,0,0               ; addps         0x2f53(%rip),%xmm9        # 5d00 <_sk_callback_sse2+0x719>
21711  DB  68,15,40,37,91,47,0,0               ; movaps        0x2f5b(%rip),%xmm12        # 5d10 <_sk_callback_sse2+0x729>
21712  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
21713  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21714  DB  68,15,40,37,91,47,0,0               ; movaps        0x2f5b(%rip),%xmm12        # 5d20 <_sk_callback_sse2+0x739>
21715  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
21716  DB  68,15,40,45,95,47,0,0               ; movaps        0x2f5f(%rip),%xmm13        # 5d30 <_sk_callback_sse2+0x749>
21717  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
21718  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
21719  DB  68,15,89,45,95,47,0,0               ; mulps         0x2f5f(%rip),%xmm13        # 5d40 <_sk_callback_sse2+0x759>
21720  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
21721  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
21722  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
21723  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
21724  DB  68,15,84,192                        ; andps         %xmm0,%xmm8
21725  DB  65,15,85,196                        ; andnps        %xmm12,%xmm0
21726  DB  65,15,86,192                        ; orps          %xmm8,%xmm0
21727  DB  65,15,95,195                        ; maxps         %xmm11,%xmm0
21728  DB  65,15,93,194                        ; minps         %xmm10,%xmm0
21729  DB  72,173                              ; lods          %ds:(%rsi),%rax
21730  DB  255,224                             ; jmpq          *%rax
21731
21732PUBLIC _sk_parametric_g_sse2
21733_sk_parametric_g_sse2 LABEL PROC
21734  DB  72,173                              ; lods          %ds:(%rsi),%rax
21735  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
21736  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21737  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
21738  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
21739  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
21740  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
21741  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
21742  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
21743  DB  65,15,194,201,2                     ; cmpleps       %xmm9,%xmm1
21744  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
21745  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21746  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
21747  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
21748  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
21749  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21750  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
21751  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
21752  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
21753  DB  68,15,89,13,223,46,0,0              ; mulps         0x2edf(%rip),%xmm9        # 5d50 <_sk_callback_sse2+0x769>
21754  DB  68,15,84,21,231,46,0,0              ; andps         0x2ee7(%rip),%xmm10        # 5d60 <_sk_callback_sse2+0x779>
21755  DB  68,15,86,21,239,46,0,0              ; orps          0x2eef(%rip),%xmm10        # 5d70 <_sk_callback_sse2+0x789>
21756  DB  68,15,88,13,247,46,0,0              ; addps         0x2ef7(%rip),%xmm9        # 5d80 <_sk_callback_sse2+0x799>
21757  DB  68,15,40,37,255,46,0,0              ; movaps        0x2eff(%rip),%xmm12        # 5d90 <_sk_callback_sse2+0x7a9>
21758  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
21759  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21760  DB  68,15,88,21,255,46,0,0              ; addps         0x2eff(%rip),%xmm10        # 5da0 <_sk_callback_sse2+0x7b9>
21761  DB  68,15,40,37,7,47,0,0                ; movaps        0x2f07(%rip),%xmm12        # 5db0 <_sk_callback_sse2+0x7c9>
21762  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
21763  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21764  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
21765  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
21766  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
21767  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
21768  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
21769  DB  68,15,40,21,241,46,0,0              ; movaps        0x2ef1(%rip),%xmm10        # 5dc0 <_sk_callback_sse2+0x7d9>
21770  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
21771  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
21772  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
21773  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
21774  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
21775  DB  68,15,88,13,229,46,0,0              ; addps         0x2ee5(%rip),%xmm9        # 5dd0 <_sk_callback_sse2+0x7e9>
21776  DB  68,15,40,37,237,46,0,0              ; movaps        0x2eed(%rip),%xmm12        # 5de0 <_sk_callback_sse2+0x7f9>
21777  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
21778  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21779  DB  68,15,40,37,237,46,0,0              ; movaps        0x2eed(%rip),%xmm12        # 5df0 <_sk_callback_sse2+0x809>
21780  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
21781  DB  68,15,40,45,241,46,0,0              ; movaps        0x2ef1(%rip),%xmm13        # 5e00 <_sk_callback_sse2+0x819>
21782  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
21783  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
21784  DB  68,15,89,45,241,46,0,0              ; mulps         0x2ef1(%rip),%xmm13        # 5e10 <_sk_callback_sse2+0x829>
21785  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
21786  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
21787  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
21788  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
21789  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
21790  DB  65,15,85,204                        ; andnps        %xmm12,%xmm1
21791  DB  65,15,86,200                        ; orps          %xmm8,%xmm1
21792  DB  65,15,95,203                        ; maxps         %xmm11,%xmm1
21793  DB  65,15,93,202                        ; minps         %xmm10,%xmm1
21794  DB  72,173                              ; lods          %ds:(%rsi),%rax
21795  DB  255,224                             ; jmpq          *%rax
21796
21797PUBLIC _sk_parametric_b_sse2
21798_sk_parametric_b_sse2 LABEL PROC
21799  DB  72,173                              ; lods          %ds:(%rsi),%rax
21800  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
21801  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21802  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
21803  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
21804  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
21805  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
21806  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
21807  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
21808  DB  65,15,194,209,2                     ; cmpleps       %xmm9,%xmm2
21809  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
21810  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21811  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
21812  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
21813  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
21814  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21815  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
21816  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
21817  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
21818  DB  68,15,89,13,113,46,0,0              ; mulps         0x2e71(%rip),%xmm9        # 5e20 <_sk_callback_sse2+0x839>
21819  DB  68,15,84,21,121,46,0,0              ; andps         0x2e79(%rip),%xmm10        # 5e30 <_sk_callback_sse2+0x849>
21820  DB  68,15,86,21,129,46,0,0              ; orps          0x2e81(%rip),%xmm10        # 5e40 <_sk_callback_sse2+0x859>
21821  DB  68,15,88,13,137,46,0,0              ; addps         0x2e89(%rip),%xmm9        # 5e50 <_sk_callback_sse2+0x869>
21822  DB  68,15,40,37,145,46,0,0              ; movaps        0x2e91(%rip),%xmm12        # 5e60 <_sk_callback_sse2+0x879>
21823  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
21824  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21825  DB  68,15,88,21,145,46,0,0              ; addps         0x2e91(%rip),%xmm10        # 5e70 <_sk_callback_sse2+0x889>
21826  DB  68,15,40,37,153,46,0,0              ; movaps        0x2e99(%rip),%xmm12        # 5e80 <_sk_callback_sse2+0x899>
21827  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
21828  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21829  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
21830  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
21831  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
21832  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
21833  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
21834  DB  68,15,40,21,131,46,0,0              ; movaps        0x2e83(%rip),%xmm10        # 5e90 <_sk_callback_sse2+0x8a9>
21835  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
21836  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
21837  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
21838  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
21839  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
21840  DB  68,15,88,13,119,46,0,0              ; addps         0x2e77(%rip),%xmm9        # 5ea0 <_sk_callback_sse2+0x8b9>
21841  DB  68,15,40,37,127,46,0,0              ; movaps        0x2e7f(%rip),%xmm12        # 5eb0 <_sk_callback_sse2+0x8c9>
21842  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
21843  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21844  DB  68,15,40,37,127,46,0,0              ; movaps        0x2e7f(%rip),%xmm12        # 5ec0 <_sk_callback_sse2+0x8d9>
21845  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
21846  DB  68,15,40,45,131,46,0,0              ; movaps        0x2e83(%rip),%xmm13        # 5ed0 <_sk_callback_sse2+0x8e9>
21847  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
21848  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
21849  DB  68,15,89,45,131,46,0,0              ; mulps         0x2e83(%rip),%xmm13        # 5ee0 <_sk_callback_sse2+0x8f9>
21850  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
21851  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
21852  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
21853  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
21854  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
21855  DB  65,15,85,212                        ; andnps        %xmm12,%xmm2
21856  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
21857  DB  65,15,95,211                        ; maxps         %xmm11,%xmm2
21858  DB  65,15,93,210                        ; minps         %xmm10,%xmm2
21859  DB  72,173                              ; lods          %ds:(%rsi),%rax
21860  DB  255,224                             ; jmpq          *%rax
21861
21862PUBLIC _sk_parametric_a_sse2
21863_sk_parametric_a_sse2 LABEL PROC
21864  DB  72,173                              ; lods          %ds:(%rsi),%rax
21865  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
21866  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21867  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
21868  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
21869  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
21870  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
21871  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
21872  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
21873  DB  65,15,194,217,2                     ; cmpleps       %xmm9,%xmm3
21874  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
21875  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21876  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
21877  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
21878  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
21879  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
21880  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
21881  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
21882  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
21883  DB  68,15,89,13,3,46,0,0                ; mulps         0x2e03(%rip),%xmm9        # 5ef0 <_sk_callback_sse2+0x909>
21884  DB  68,15,84,21,11,46,0,0               ; andps         0x2e0b(%rip),%xmm10        # 5f00 <_sk_callback_sse2+0x919>
21885  DB  68,15,86,21,19,46,0,0               ; orps          0x2e13(%rip),%xmm10        # 5f10 <_sk_callback_sse2+0x929>
21886  DB  68,15,88,13,27,46,0,0               ; addps         0x2e1b(%rip),%xmm9        # 5f20 <_sk_callback_sse2+0x939>
21887  DB  68,15,40,37,35,46,0,0               ; movaps        0x2e23(%rip),%xmm12        # 5f30 <_sk_callback_sse2+0x949>
21888  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
21889  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21890  DB  68,15,88,21,35,46,0,0               ; addps         0x2e23(%rip),%xmm10        # 5f40 <_sk_callback_sse2+0x959>
21891  DB  68,15,40,37,43,46,0,0               ; movaps        0x2e2b(%rip),%xmm12        # 5f50 <_sk_callback_sse2+0x969>
21892  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
21893  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21894  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
21895  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
21896  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
21897  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
21898  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
21899  DB  68,15,40,21,21,46,0,0               ; movaps        0x2e15(%rip),%xmm10        # 5f60 <_sk_callback_sse2+0x979>
21900  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
21901  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
21902  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
21903  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
21904  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
21905  DB  68,15,88,13,9,46,0,0                ; addps         0x2e09(%rip),%xmm9        # 5f70 <_sk_callback_sse2+0x989>
21906  DB  68,15,40,37,17,46,0,0               ; movaps        0x2e11(%rip),%xmm12        # 5f80 <_sk_callback_sse2+0x999>
21907  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
21908  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
21909  DB  68,15,40,37,17,46,0,0               ; movaps        0x2e11(%rip),%xmm12        # 5f90 <_sk_callback_sse2+0x9a9>
21910  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
21911  DB  68,15,40,45,21,46,0,0               ; movaps        0x2e15(%rip),%xmm13        # 5fa0 <_sk_callback_sse2+0x9b9>
21912  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
21913  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
21914  DB  68,15,89,45,21,46,0,0               ; mulps         0x2e15(%rip),%xmm13        # 5fb0 <_sk_callback_sse2+0x9c9>
21915  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
21916  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
21917  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
21918  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
21919  DB  68,15,84,195                        ; andps         %xmm3,%xmm8
21920  DB  65,15,85,220                        ; andnps        %xmm12,%xmm3
21921  DB  65,15,86,216                        ; orps          %xmm8,%xmm3
21922  DB  65,15,95,219                        ; maxps         %xmm11,%xmm3
21923  DB  65,15,93,218                        ; minps         %xmm10,%xmm3
21924  DB  72,173                              ; lods          %ds:(%rsi),%rax
21925  DB  255,224                             ; jmpq          *%rax
21926
21927PUBLIC _sk_lab_to_xyz_sse2
21928_sk_lab_to_xyz_sse2 LABEL PROC
21929  DB  15,89,5,242,45,0,0                  ; mulps         0x2df2(%rip),%xmm0        # 5fc0 <_sk_callback_sse2+0x9d9>
21930  DB  68,15,40,5,250,45,0,0               ; movaps        0x2dfa(%rip),%xmm8        # 5fd0 <_sk_callback_sse2+0x9e9>
21931  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
21932  DB  68,15,40,13,254,45,0,0              ; movaps        0x2dfe(%rip),%xmm9        # 5fe0 <_sk_callback_sse2+0x9f9>
21933  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
21934  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
21935  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
21936  DB  15,88,5,251,45,0,0                  ; addps         0x2dfb(%rip),%xmm0        # 5ff0 <_sk_callback_sse2+0xa09>
21937  DB  15,89,5,4,46,0,0                    ; mulps         0x2e04(%rip),%xmm0        # 6000 <_sk_callback_sse2+0xa19>
21938  DB  15,89,13,13,46,0,0                  ; mulps         0x2e0d(%rip),%xmm1        # 6010 <_sk_callback_sse2+0xa29>
21939  DB  15,88,200                           ; addps         %xmm0,%xmm1
21940  DB  15,89,21,19,46,0,0                  ; mulps         0x2e13(%rip),%xmm2        # 6020 <_sk_callback_sse2+0xa39>
21941  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
21942  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
21943  DB  68,15,40,225                        ; movaps        %xmm1,%xmm12
21944  DB  69,15,89,228                        ; mulps         %xmm12,%xmm12
21945  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
21946  DB  15,40,21,8,46,0,0                   ; movaps        0x2e08(%rip),%xmm2        # 6030 <_sk_callback_sse2+0xa49>
21947  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
21948  DB  69,15,194,196,1                     ; cmpltps       %xmm12,%xmm8
21949  DB  68,15,40,21,7,46,0,0                ; movaps        0x2e07(%rip),%xmm10        # 6040 <_sk_callback_sse2+0xa59>
21950  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
21951  DB  68,15,40,29,11,46,0,0               ; movaps        0x2e0b(%rip),%xmm11        # 6050 <_sk_callback_sse2+0xa69>
21952  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
21953  DB  69,15,84,224                        ; andps         %xmm8,%xmm12
21954  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
21955  DB  69,15,86,196                        ; orps          %xmm12,%xmm8
21956  DB  68,15,40,224                        ; movaps        %xmm0,%xmm12
21957  DB  69,15,89,228                        ; mulps         %xmm12,%xmm12
21958  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
21959  DB  15,40,202                           ; movaps        %xmm2,%xmm1
21960  DB  65,15,194,204,1                     ; cmpltps       %xmm12,%xmm1
21961  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
21962  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
21963  DB  68,15,84,225                        ; andps         %xmm1,%xmm12
21964  DB  15,85,200                           ; andnps        %xmm0,%xmm1
21965  DB  65,15,86,204                        ; orps          %xmm12,%xmm1
21966  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
21967  DB  15,89,192                           ; mulps         %xmm0,%xmm0
21968  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
21969  DB  15,194,208,1                        ; cmpltps       %xmm0,%xmm2
21970  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
21971  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
21972  DB  15,84,194                           ; andps         %xmm2,%xmm0
21973  DB  65,15,85,209                        ; andnps        %xmm9,%xmm2
21974  DB  15,86,208                           ; orps          %xmm0,%xmm2
21975  DB  68,15,89,5,187,45,0,0               ; mulps         0x2dbb(%rip),%xmm8        # 6060 <_sk_callback_sse2+0xa79>
21976  DB  15,89,21,196,45,0,0                 ; mulps         0x2dc4(%rip),%xmm2        # 6070 <_sk_callback_sse2+0xa89>
21977  DB  72,173                              ; lods          %ds:(%rsi),%rax
21978  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
21979  DB  255,224                             ; jmpq          *%rax
21980
21981PUBLIC _sk_load_a8_sse2
21982_sk_load_a8_sse2 LABEL PROC
21983  DB  72,173                              ; lods          %ds:(%rsi),%rax
21984  DB  76,139,16                           ; mov           (%rax),%r10
21985  DB  77,133,192                          ; test          %r8,%r8
21986  DB  117,45                              ; jne           32eb <_sk_load_a8_sse2+0x37>
21987  DB  102,65,15,110,4,18                  ; movd          (%r10,%rdx,1),%xmm0
21988  DB  102,15,96,192                       ; punpcklbw     %xmm0,%xmm0
21989  DB  102,15,97,192                       ; punpcklwd     %xmm0,%xmm0
21990  DB  102,15,219,5,172,45,0,0             ; pand          0x2dac(%rip),%xmm0        # 6080 <_sk_callback_sse2+0xa99>
21991  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
21992  DB  15,89,29,178,45,0,0                 ; mulps         0x2db2(%rip),%xmm3        # 6090 <_sk_callback_sse2+0xaa9>
21993  DB  72,173                              ; lods          %ds:(%rsi),%rax
21994  DB  15,87,192                           ; xorps         %xmm0,%xmm0
21995  DB  15,87,201                           ; xorps         %xmm1,%xmm1
21996  DB  15,87,210                           ; xorps         %xmm2,%xmm2
21997  DB  255,224                             ; jmpq          *%rax
21998  DB  69,137,193                          ; mov           %r8d,%r9d
21999  DB  65,128,225,3                        ; and           $0x3,%r9b
22000  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
22001  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22002  DB  116,48                              ; je            332c <_sk_load_a8_sse2+0x78>
22003  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22004  DB  116,21                              ; je            3317 <_sk_load_a8_sse2+0x63>
22005  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22006  DB  117,196                             ; jne           32cc <_sk_load_a8_sse2+0x18>
22007  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
22008  DB  102,15,110,192                      ; movd          %eax,%xmm0
22009  DB  102,15,112,192,69                   ; pshufd        $0x45,%xmm0,%xmm0
22010  DB  65,15,182,68,18,1                   ; movzbl        0x1(%r10,%rdx,1),%eax
22011  DB  102,15,110,200                      ; movd          %eax,%xmm1
22012  DB  15,198,200,0                        ; shufps        $0x0,%xmm0,%xmm1
22013  DB  15,198,200,226                      ; shufps        $0xe2,%xmm0,%xmm1
22014  DB  15,40,193                           ; movaps        %xmm1,%xmm0
22015  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
22016  DB  102,15,110,200                      ; movd          %eax,%xmm1
22017  DB  243,15,16,193                       ; movss         %xmm1,%xmm0
22018  DB  235,145                             ; jmp           32cc <_sk_load_a8_sse2+0x18>
22019
22020PUBLIC _sk_gather_a8_sse2
22021_sk_gather_a8_sse2 LABEL PROC
22022  DB  85                                  ; push          %rbp
22023  DB  83                                  ; push          %rbx
22024  DB  72,173                              ; lods          %ds:(%rsi),%rax
22025  DB  76,139,8                            ; mov           (%rax),%r9
22026  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22027  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22028  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22029  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22030  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22031  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22032  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22033  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22034  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22035  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22036  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22037  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
22038  DB  65,137,194                          ; mov           %eax,%r10d
22039  DB  72,193,232,32                       ; shr           $0x20,%rax
22040  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
22041  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
22042  DB  68,137,219                          ; mov           %r11d,%ebx
22043  DB  73,193,235,32                       ; shr           $0x20,%r11
22044  DB  65,15,182,44,25                     ; movzbl        (%r9,%rbx,1),%ebp
22045  DB  67,15,182,28,25                     ; movzbl        (%r9,%r11,1),%ebx
22046  DB  193,227,8                           ; shl           $0x8,%ebx
22047  DB  9,235                               ; or            %ebp,%ebx
22048  DB  67,15,182,44,17                     ; movzbl        (%r9,%r10,1),%ebp
22049  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
22050  DB  193,224,8                           ; shl           $0x8,%eax
22051  DB  9,232                               ; or            %ebp,%eax
22052  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
22053  DB  102,15,196,195,1                    ; pinsrw        $0x1,%ebx,%xmm0
22054  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
22055  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
22056  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
22057  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
22058  DB  15,89,29,210,44,0,0                 ; mulps         0x2cd2(%rip),%xmm3        # 60a0 <_sk_callback_sse2+0xab9>
22059  DB  72,173                              ; lods          %ds:(%rsi),%rax
22060  DB  15,87,192                           ; xorps         %xmm0,%xmm0
22061  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
22062  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
22063  DB  91                                  ; pop           %rbx
22064  DB  93                                  ; pop           %rbp
22065  DB  255,224                             ; jmpq          *%rax
22066
22067PUBLIC _sk_store_a8_sse2
22068_sk_store_a8_sse2 LABEL PROC
22069  DB  72,131,236,56                       ; sub           $0x38,%rsp
22070  DB  72,173                              ; lods          %ds:(%rsi),%rax
22071  DB  76,139,16                           ; mov           (%rax),%r10
22072  DB  68,15,40,5,192,44,0,0               ; movaps        0x2cc0(%rip),%xmm8        # 60b0 <_sk_callback_sse2+0xac9>
22073  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
22074  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
22075  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
22076  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
22077  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
22078  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
22079  DB  77,133,192                          ; test          %r8,%r8
22080  DB  117,17                              ; jne           3425 <_sk_store_a8_sse2+0x46>
22081  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
22082  DB  65,137,4,18                         ; mov           %eax,(%r10,%rdx,1)
22083  DB  72,173                              ; lods          %ds:(%rsi),%rax
22084  DB  72,131,196,56                       ; add           $0x38,%rsp
22085  DB  255,224                             ; jmpq          *%rax
22086  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
22087  DB  102,68,15,97,192                    ; punpcklwd     %xmm0,%xmm8
22088  DB  69,137,193                          ; mov           %r8d,%r9d
22089  DB  65,128,225,3                        ; and           $0x3,%r9b
22090  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22091  DB  116,44                              ; je            3468 <_sk_store_a8_sse2+0x89>
22092  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22093  DB  116,22                              ; je            3458 <_sk_store_a8_sse2+0x79>
22094  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22095  DB  117,213                             ; jne           341d <_sk_store_a8_sse2+0x3e>
22096  DB  102,68,15,127,68,36,32              ; movdqa        %xmm8,0x20(%rsp)
22097  DB  138,68,36,40                        ; mov           0x28(%rsp),%al
22098  DB  65,136,68,18,2                      ; mov           %al,0x2(%r10,%rdx,1)
22099  DB  102,68,15,127,68,36,16              ; movdqa        %xmm8,0x10(%rsp)
22100  DB  138,68,36,20                        ; mov           0x14(%rsp),%al
22101  DB  65,136,68,18,1                      ; mov           %al,0x1(%r10,%rdx,1)
22102  DB  102,68,15,127,4,36                  ; movdqa        %xmm8,(%rsp)
22103  DB  138,4,36                            ; mov           (%rsp),%al
22104  DB  65,136,4,18                         ; mov           %al,(%r10,%rdx,1)
22105  DB  235,166                             ; jmp           341d <_sk_store_a8_sse2+0x3e>
22106
22107PUBLIC _sk_load_g8_sse2
22108_sk_load_g8_sse2 LABEL PROC
22109  DB  72,173                              ; lods          %ds:(%rsi),%rax
22110  DB  76,139,16                           ; mov           (%rax),%r10
22111  DB  77,133,192                          ; test          %r8,%r8
22112  DB  117,49                              ; jne           34b2 <_sk_load_g8_sse2+0x3b>
22113  DB  102,65,15,110,4,18                  ; movd          (%r10,%rdx,1),%xmm0
22114  DB  102,15,96,192                       ; punpcklbw     %xmm0,%xmm0
22115  DB  102,15,97,192                       ; punpcklwd     %xmm0,%xmm0
22116  DB  102,15,219,5,41,44,0,0              ; pand          0x2c29(%rip),%xmm0        # 60c0 <_sk_callback_sse2+0xad9>
22117  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22118  DB  15,89,5,47,44,0,0                   ; mulps         0x2c2f(%rip),%xmm0        # 60d0 <_sk_callback_sse2+0xae9>
22119  DB  72,173                              ; lods          %ds:(%rsi),%rax
22120  DB  15,40,29,54,44,0,0                  ; movaps        0x2c36(%rip),%xmm3        # 60e0 <_sk_callback_sse2+0xaf9>
22121  DB  15,40,200                           ; movaps        %xmm0,%xmm1
22122  DB  15,40,208                           ; movaps        %xmm0,%xmm2
22123  DB  255,224                             ; jmpq          *%rax
22124  DB  69,137,193                          ; mov           %r8d,%r9d
22125  DB  65,128,225,3                        ; and           $0x3,%r9b
22126  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
22127  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22128  DB  116,48                              ; je            34f3 <_sk_load_g8_sse2+0x7c>
22129  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22130  DB  116,21                              ; je            34de <_sk_load_g8_sse2+0x67>
22131  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22132  DB  117,192                             ; jne           348f <_sk_load_g8_sse2+0x18>
22133  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
22134  DB  102,15,110,192                      ; movd          %eax,%xmm0
22135  DB  102,15,112,192,69                   ; pshufd        $0x45,%xmm0,%xmm0
22136  DB  65,15,182,68,18,1                   ; movzbl        0x1(%r10,%rdx,1),%eax
22137  DB  102,15,110,200                      ; movd          %eax,%xmm1
22138  DB  15,198,200,0                        ; shufps        $0x0,%xmm0,%xmm1
22139  DB  15,198,200,226                      ; shufps        $0xe2,%xmm0,%xmm1
22140  DB  15,40,193                           ; movaps        %xmm1,%xmm0
22141  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
22142  DB  102,15,110,200                      ; movd          %eax,%xmm1
22143  DB  243,15,16,193                       ; movss         %xmm1,%xmm0
22144  DB  235,141                             ; jmp           348f <_sk_load_g8_sse2+0x18>
22145
22146PUBLIC _sk_gather_g8_sse2
22147_sk_gather_g8_sse2 LABEL PROC
22148  DB  85                                  ; push          %rbp
22149  DB  83                                  ; push          %rbx
22150  DB  72,173                              ; lods          %ds:(%rsi),%rax
22151  DB  76,139,8                            ; mov           (%rax),%r9
22152  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22153  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22154  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22155  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22156  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22157  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22158  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22159  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22160  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22161  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22162  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22163  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
22164  DB  65,137,194                          ; mov           %eax,%r10d
22165  DB  72,193,232,32                       ; shr           $0x20,%rax
22166  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
22167  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
22168  DB  68,137,219                          ; mov           %r11d,%ebx
22169  DB  73,193,235,32                       ; shr           $0x20,%r11
22170  DB  65,15,182,44,25                     ; movzbl        (%r9,%rbx,1),%ebp
22171  DB  67,15,182,28,25                     ; movzbl        (%r9,%r11,1),%ebx
22172  DB  193,227,8                           ; shl           $0x8,%ebx
22173  DB  9,235                               ; or            %ebp,%ebx
22174  DB  67,15,182,44,17                     ; movzbl        (%r9,%r10,1),%ebp
22175  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
22176  DB  193,224,8                           ; shl           $0x8,%eax
22177  DB  9,232                               ; or            %ebp,%eax
22178  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
22179  DB  102,15,196,195,1                    ; pinsrw        $0x1,%ebx,%xmm0
22180  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
22181  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
22182  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
22183  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22184  DB  15,89,5,91,43,0,0                   ; mulps         0x2b5b(%rip),%xmm0        # 60f0 <_sk_callback_sse2+0xb09>
22185  DB  72,173                              ; lods          %ds:(%rsi),%rax
22186  DB  15,40,29,98,43,0,0                  ; movaps        0x2b62(%rip),%xmm3        # 6100 <_sk_callback_sse2+0xb19>
22187  DB  15,40,200                           ; movaps        %xmm0,%xmm1
22188  DB  15,40,208                           ; movaps        %xmm0,%xmm2
22189  DB  91                                  ; pop           %rbx
22190  DB  93                                  ; pop           %rbp
22191  DB  255,224                             ; jmpq          *%rax
22192
22193PUBLIC _sk_gather_i8_sse2
22194_sk_gather_i8_sse2 LABEL PROC
22195  DB  72,173                              ; lods          %ds:(%rsi),%rax
22196  DB  73,137,193                          ; mov           %rax,%r9
22197  DB  77,133,201                          ; test          %r9,%r9
22198  DB  116,5                               ; je            35b7 <_sk_gather_i8_sse2+0xf>
22199  DB  76,137,200                          ; mov           %r9,%rax
22200  DB  235,2                               ; jmp           35b9 <_sk_gather_i8_sse2+0x11>
22201  DB  72,173                              ; lods          %ds:(%rsi),%rax
22202  DB  85                                  ; push          %rbp
22203  DB  65,86                               ; push          %r14
22204  DB  83                                  ; push          %rbx
22205  DB  76,139,16                           ; mov           (%rax),%r10
22206  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22207  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22208  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22209  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22210  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22211  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22212  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22213  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22214  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22215  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22216  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22217  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
22218  DB  65,137,195                          ; mov           %eax,%r11d
22219  DB  72,193,232,32                       ; shr           $0x20,%rax
22220  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
22221  DB  102,72,15,126,195                   ; movq          %xmm0,%rbx
22222  DB  65,137,222                          ; mov           %ebx,%r14d
22223  DB  72,193,235,32                       ; shr           $0x20,%rbx
22224  DB  67,15,182,44,50                     ; movzbl        (%r10,%r14,1),%ebp
22225  DB  65,15,182,28,26                     ; movzbl        (%r10,%rbx,1),%ebx
22226  DB  193,227,8                           ; shl           $0x8,%ebx
22227  DB  9,235                               ; or            %ebp,%ebx
22228  DB  67,15,182,44,26                     ; movzbl        (%r10,%r11,1),%ebp
22229  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
22230  DB  193,224,8                           ; shl           $0x8,%eax
22231  DB  9,232                               ; or            %ebp,%eax
22232  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
22233  DB  102,15,196,195,1                    ; pinsrw        $0x1,%ebx,%xmm0
22234  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
22235  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
22236  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
22237  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
22238  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
22239  DB  68,15,182,208                       ; movzbl        %al,%r10d
22240  DB  72,193,232,32                       ; shr           $0x20,%rax
22241  DB  102,72,15,126,195                   ; movq          %xmm0,%rbx
22242  DB  73,139,105,8                        ; mov           0x8(%r9),%rbp
22243  DB  68,15,182,203                       ; movzbl        %bl,%r9d
22244  DB  72,193,235,30                       ; shr           $0x1e,%rbx
22245  DB  102,15,110,68,29,0                  ; movd          0x0(%rbp,%rbx,1),%xmm0
22246  DB  102,15,110,76,133,0                 ; movd          0x0(%rbp,%rax,4),%xmm1
22247  DB  102,15,98,193                       ; punpckldq     %xmm1,%xmm0
22248  DB  102,70,15,110,76,141,0              ; movd          0x0(%rbp,%r9,4),%xmm9
22249  DB  102,66,15,110,76,149,0              ; movd          0x0(%rbp,%r10,4),%xmm1
22250  DB  102,68,15,98,201                    ; punpckldq     %xmm1,%xmm9
22251  DB  102,68,15,98,200                    ; punpckldq     %xmm0,%xmm9
22252  DB  102,15,111,21,123,42,0,0            ; movdqa        0x2a7b(%rip),%xmm2        # 6110 <_sk_callback_sse2+0xb29>
22253  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
22254  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
22255  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22256  DB  68,15,40,5,119,42,0,0               ; movaps        0x2a77(%rip),%xmm8        # 6120 <_sk_callback_sse2+0xb39>
22257  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
22258  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
22259  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
22260  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
22261  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22262  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
22263  DB  102,65,15,111,217                   ; movdqa        %xmm9,%xmm3
22264  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
22265  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
22266  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
22267  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
22268  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
22269  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
22270  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
22271  DB  72,173                              ; lods          %ds:(%rsi),%rax
22272  DB  91                                  ; pop           %rbx
22273  DB  65,94                               ; pop           %r14
22274  DB  93                                  ; pop           %rbp
22275  DB  255,224                             ; jmpq          *%rax
22276
22277PUBLIC _sk_load_565_sse2
22278_sk_load_565_sse2 LABEL PROC
22279  DB  72,173                              ; lods          %ds:(%rsi),%rax
22280  DB  76,139,16                           ; mov           (%rax),%r10
22281  DB  77,133,192                          ; test          %r8,%r8
22282  DB  117,83                              ; jne           374a <_sk_load_565_sse2+0x5d>
22283  DB  243,65,15,126,20,82                 ; movq          (%r10,%rdx,2),%xmm2
22284  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
22285  DB  102,15,111,5,39,42,0,0              ; movdqa        0x2a27(%rip),%xmm0        # 6130 <_sk_callback_sse2+0xb49>
22286  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
22287  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22288  DB  15,89,5,41,42,0,0                   ; mulps         0x2a29(%rip),%xmm0        # 6140 <_sk_callback_sse2+0xb59>
22289  DB  102,15,111,13,49,42,0,0             ; movdqa        0x2a31(%rip),%xmm1        # 6150 <_sk_callback_sse2+0xb69>
22290  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
22291  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22292  DB  15,89,13,51,42,0,0                  ; mulps         0x2a33(%rip),%xmm1        # 6160 <_sk_callback_sse2+0xb79>
22293  DB  102,15,219,21,59,42,0,0             ; pand          0x2a3b(%rip),%xmm2        # 6170 <_sk_callback_sse2+0xb89>
22294  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
22295  DB  15,89,21,65,42,0,0                  ; mulps         0x2a41(%rip),%xmm2        # 6180 <_sk_callback_sse2+0xb99>
22296  DB  72,173                              ; lods          %ds:(%rsi),%rax
22297  DB  15,40,29,72,42,0,0                  ; movaps        0x2a48(%rip),%xmm3        # 6190 <_sk_callback_sse2+0xba9>
22298  DB  255,224                             ; jmpq          *%rax
22299  DB  69,137,193                          ; mov           %r8d,%r9d
22300  DB  65,128,225,3                        ; and           $0x3,%r9b
22301  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
22302  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22303  DB  116,48                              ; je            378b <_sk_load_565_sse2+0x9e>
22304  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22305  DB  116,21                              ; je            3776 <_sk_load_565_sse2+0x89>
22306  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22307  DB  117,154                             ; jne           3701 <_sk_load_565_sse2+0x14>
22308  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
22309  DB  102,15,110,192                      ; movd          %eax,%xmm0
22310  DB  102,15,112,208,69                   ; pshufd        $0x45,%xmm0,%xmm2
22311  DB  65,15,183,68,82,2                   ; movzwl        0x2(%r10,%rdx,2),%eax
22312  DB  102,15,110,192                      ; movd          %eax,%xmm0
22313  DB  15,198,194,0                        ; shufps        $0x0,%xmm2,%xmm0
22314  DB  15,198,194,226                      ; shufps        $0xe2,%xmm2,%xmm0
22315  DB  15,40,208                           ; movaps        %xmm0,%xmm2
22316  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
22317  DB  102,15,110,192                      ; movd          %eax,%xmm0
22318  DB  243,15,16,208                       ; movss         %xmm0,%xmm2
22319  DB  233,100,255,255,255                 ; jmpq          3701 <_sk_load_565_sse2+0x14>
22320
22321PUBLIC _sk_gather_565_sse2
22322_sk_gather_565_sse2 LABEL PROC
22323  DB  83                                  ; push          %rbx
22324  DB  72,173                              ; lods          %ds:(%rsi),%rax
22325  DB  76,139,8                            ; mov           (%rax),%r9
22326  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22327  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22328  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22329  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22330  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22331  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22332  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22333  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22334  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22335  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22336  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22337  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
22338  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
22339  DB  65,137,194                          ; mov           %eax,%r10d
22340  DB  72,193,232,32                       ; shr           $0x20,%rax
22341  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
22342  DB  68,137,219                          ; mov           %r11d,%ebx
22343  DB  73,193,235,32                       ; shr           $0x20,%r11
22344  DB  102,65,15,196,20,89,0               ; pinsrw        $0x0,(%r9,%rbx,2),%xmm2
22345  DB  102,67,15,196,20,89,1               ; pinsrw        $0x1,(%r9,%r11,2),%xmm2
22346  DB  67,15,183,28,81                     ; movzwl        (%r9,%r10,2),%ebx
22347  DB  102,15,196,211,2                    ; pinsrw        $0x2,%ebx,%xmm2
22348  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
22349  DB  102,15,196,208,3                    ; pinsrw        $0x3,%eax,%xmm2
22350  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
22351  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
22352  DB  102,15,111,5,125,41,0,0             ; movdqa        0x297d(%rip),%xmm0        # 61a0 <_sk_callback_sse2+0xbb9>
22353  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
22354  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22355  DB  15,89,5,127,41,0,0                  ; mulps         0x297f(%rip),%xmm0        # 61b0 <_sk_callback_sse2+0xbc9>
22356  DB  102,15,111,13,135,41,0,0            ; movdqa        0x2987(%rip),%xmm1        # 61c0 <_sk_callback_sse2+0xbd9>
22357  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
22358  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22359  DB  15,89,13,137,41,0,0                 ; mulps         0x2989(%rip),%xmm1        # 61d0 <_sk_callback_sse2+0xbe9>
22360  DB  102,15,219,21,145,41,0,0            ; pand          0x2991(%rip),%xmm2        # 61e0 <_sk_callback_sse2+0xbf9>
22361  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
22362  DB  15,89,21,151,41,0,0                 ; mulps         0x2997(%rip),%xmm2        # 61f0 <_sk_callback_sse2+0xc09>
22363  DB  72,173                              ; lods          %ds:(%rsi),%rax
22364  DB  15,40,29,158,41,0,0                 ; movaps        0x299e(%rip),%xmm3        # 6200 <_sk_callback_sse2+0xc19>
22365  DB  91                                  ; pop           %rbx
22366  DB  255,224                             ; jmpq          *%rax
22367
22368PUBLIC _sk_store_565_sse2
22369_sk_store_565_sse2 LABEL PROC
22370  DB  72,173                              ; lods          %ds:(%rsi),%rax
22371  DB  76,139,16                           ; mov           (%rax),%r10
22372  DB  68,15,40,5,158,41,0,0               ; movaps        0x299e(%rip),%xmm8        # 6210 <_sk_callback_sse2+0xc29>
22373  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
22374  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
22375  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
22376  DB  102,65,15,114,241,11                ; pslld         $0xb,%xmm9
22377  DB  68,15,40,21,147,41,0,0              ; movaps        0x2993(%rip),%xmm10        # 6220 <_sk_callback_sse2+0xc39>
22378  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
22379  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
22380  DB  102,65,15,114,242,5                 ; pslld         $0x5,%xmm10
22381  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
22382  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
22383  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
22384  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
22385  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
22386  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
22387  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
22388  DB  77,133,192                          ; test          %r8,%r8
22389  DB  117,10                              ; jne           38cf <_sk_store_565_sse2+0x6a>
22390  DB  242,69,15,17,4,82                   ; movsd         %xmm8,(%r10,%rdx,2)
22391  DB  72,173                              ; lods          %ds:(%rsi),%rax
22392  DB  255,224                             ; jmpq          *%rax
22393  DB  102,68,15,97,192                    ; punpcklwd     %xmm0,%xmm8
22394  DB  69,137,193                          ; mov           %r8d,%r9d
22395  DB  65,128,225,3                        ; and           $0x3,%r9b
22396  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22397  DB  116,36                              ; je            3905 <_sk_store_565_sse2+0xa0>
22398  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22399  DB  116,18                              ; je            38f9 <_sk_store_565_sse2+0x94>
22400  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22401  DB  117,222                             ; jne           38cb <_sk_store_565_sse2+0x66>
22402  DB  102,65,15,197,192,4                 ; pextrw        $0x4,%xmm8,%eax
22403  DB  102,65,137,68,82,4                  ; mov           %ax,0x4(%r10,%rdx,2)
22404  DB  102,65,15,197,192,2                 ; pextrw        $0x2,%xmm8,%eax
22405  DB  102,65,137,68,82,2                  ; mov           %ax,0x2(%r10,%rdx,2)
22406  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
22407  DB  102,65,137,4,82                     ; mov           %ax,(%r10,%rdx,2)
22408  DB  235,186                             ; jmp           38cb <_sk_store_565_sse2+0x66>
22409
22410PUBLIC _sk_load_4444_sse2
22411_sk_load_4444_sse2 LABEL PROC
22412  DB  72,173                              ; lods          %ds:(%rsi),%rax
22413  DB  76,139,16                           ; mov           (%rax),%r10
22414  DB  77,133,192                          ; test          %r8,%r8
22415  DB  117,98                              ; jne           397d <_sk_load_4444_sse2+0x6c>
22416  DB  243,65,15,126,28,82                 ; movq          (%r10,%rdx,2),%xmm3
22417  DB  102,15,97,216                       ; punpcklwd     %xmm0,%xmm3
22418  DB  102,15,111,5,3,41,0,0               ; movdqa        0x2903(%rip),%xmm0        # 6230 <_sk_callback_sse2+0xc49>
22419  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
22420  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22421  DB  15,89,5,5,41,0,0                    ; mulps         0x2905(%rip),%xmm0        # 6240 <_sk_callback_sse2+0xc59>
22422  DB  102,15,111,13,13,41,0,0             ; movdqa        0x290d(%rip),%xmm1        # 6250 <_sk_callback_sse2+0xc69>
22423  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
22424  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22425  DB  15,89,13,15,41,0,0                  ; mulps         0x290f(%rip),%xmm1        # 6260 <_sk_callback_sse2+0xc79>
22426  DB  102,15,111,21,23,41,0,0             ; movdqa        0x2917(%rip),%xmm2        # 6270 <_sk_callback_sse2+0xc89>
22427  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
22428  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
22429  DB  15,89,21,25,41,0,0                  ; mulps         0x2919(%rip),%xmm2        # 6280 <_sk_callback_sse2+0xc99>
22430  DB  102,15,219,29,33,41,0,0             ; pand          0x2921(%rip),%xmm3        # 6290 <_sk_callback_sse2+0xca9>
22431  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
22432  DB  15,89,29,39,41,0,0                  ; mulps         0x2927(%rip),%xmm3        # 62a0 <_sk_callback_sse2+0xcb9>
22433  DB  72,173                              ; lods          %ds:(%rsi),%rax
22434  DB  255,224                             ; jmpq          *%rax
22435  DB  69,137,193                          ; mov           %r8d,%r9d
22436  DB  65,128,225,3                        ; and           $0x3,%r9b
22437  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
22438  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22439  DB  116,48                              ; je            39be <_sk_load_4444_sse2+0xad>
22440  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22441  DB  116,21                              ; je            39a9 <_sk_load_4444_sse2+0x98>
22442  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22443  DB  117,139                             ; jne           3925 <_sk_load_4444_sse2+0x14>
22444  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
22445  DB  102,15,110,192                      ; movd          %eax,%xmm0
22446  DB  102,15,112,216,69                   ; pshufd        $0x45,%xmm0,%xmm3
22447  DB  65,15,183,68,82,2                   ; movzwl        0x2(%r10,%rdx,2),%eax
22448  DB  102,15,110,192                      ; movd          %eax,%xmm0
22449  DB  15,198,195,0                        ; shufps        $0x0,%xmm3,%xmm0
22450  DB  15,198,195,226                      ; shufps        $0xe2,%xmm3,%xmm0
22451  DB  15,40,216                           ; movaps        %xmm0,%xmm3
22452  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
22453  DB  102,15,110,192                      ; movd          %eax,%xmm0
22454  DB  243,15,16,216                       ; movss         %xmm0,%xmm3
22455  DB  233,85,255,255,255                  ; jmpq          3925 <_sk_load_4444_sse2+0x14>
22456
22457PUBLIC _sk_gather_4444_sse2
22458_sk_gather_4444_sse2 LABEL PROC
22459  DB  83                                  ; push          %rbx
22460  DB  72,173                              ; lods          %ds:(%rsi),%rax
22461  DB  76,139,8                            ; mov           (%rax),%r9
22462  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22463  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22464  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22465  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22466  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22467  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22468  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22469  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22470  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22471  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22472  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22473  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
22474  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
22475  DB  65,137,194                          ; mov           %eax,%r10d
22476  DB  72,193,232,32                       ; shr           $0x20,%rax
22477  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
22478  DB  68,137,219                          ; mov           %r11d,%ebx
22479  DB  73,193,235,32                       ; shr           $0x20,%r11
22480  DB  102,65,15,196,28,89,0               ; pinsrw        $0x0,(%r9,%rbx,2),%xmm3
22481  DB  102,67,15,196,28,89,1               ; pinsrw        $0x1,(%r9,%r11,2),%xmm3
22482  DB  67,15,183,28,81                     ; movzwl        (%r9,%r10,2),%ebx
22483  DB  102,15,196,219,2                    ; pinsrw        $0x2,%ebx,%xmm3
22484  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
22485  DB  102,15,196,216,3                    ; pinsrw        $0x3,%eax,%xmm3
22486  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
22487  DB  102,15,97,216                       ; punpcklwd     %xmm0,%xmm3
22488  DB  102,15,111,5,90,40,0,0              ; movdqa        0x285a(%rip),%xmm0        # 62b0 <_sk_callback_sse2+0xcc9>
22489  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
22490  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22491  DB  15,89,5,92,40,0,0                   ; mulps         0x285c(%rip),%xmm0        # 62c0 <_sk_callback_sse2+0xcd9>
22492  DB  102,15,111,13,100,40,0,0            ; movdqa        0x2864(%rip),%xmm1        # 62d0 <_sk_callback_sse2+0xce9>
22493  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
22494  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22495  DB  15,89,13,102,40,0,0                 ; mulps         0x2866(%rip),%xmm1        # 62e0 <_sk_callback_sse2+0xcf9>
22496  DB  102,15,111,21,110,40,0,0            ; movdqa        0x286e(%rip),%xmm2        # 62f0 <_sk_callback_sse2+0xd09>
22497  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
22498  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
22499  DB  15,89,21,112,40,0,0                 ; mulps         0x2870(%rip),%xmm2        # 6300 <_sk_callback_sse2+0xd19>
22500  DB  102,15,219,29,120,40,0,0            ; pand          0x2878(%rip),%xmm3        # 6310 <_sk_callback_sse2+0xd29>
22501  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
22502  DB  15,89,29,126,40,0,0                 ; mulps         0x287e(%rip),%xmm3        # 6320 <_sk_callback_sse2+0xd39>
22503  DB  72,173                              ; lods          %ds:(%rsi),%rax
22504  DB  91                                  ; pop           %rbx
22505  DB  255,224                             ; jmpq          *%rax
22506
22507PUBLIC _sk_store_4444_sse2
22508_sk_store_4444_sse2 LABEL PROC
22509  DB  72,173                              ; lods          %ds:(%rsi),%rax
22510  DB  76,139,16                           ; mov           (%rax),%r10
22511  DB  68,15,40,5,124,40,0,0               ; movaps        0x287c(%rip),%xmm8        # 6330 <_sk_callback_sse2+0xd49>
22512  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
22513  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
22514  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
22515  DB  102,65,15,114,241,12                ; pslld         $0xc,%xmm9
22516  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
22517  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
22518  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
22519  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
22520  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
22521  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
22522  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
22523  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
22524  DB  102,65,15,114,241,4                 ; pslld         $0x4,%xmm9
22525  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
22526  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
22527  DB  102,69,15,86,193                    ; orpd          %xmm9,%xmm8
22528  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
22529  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
22530  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
22531  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
22532  DB  77,133,192                          ; test          %r8,%r8
22533  DB  117,10                              ; jne           3b25 <_sk_store_4444_sse2+0x7e>
22534  DB  242,69,15,17,4,82                   ; movsd         %xmm8,(%r10,%rdx,2)
22535  DB  72,173                              ; lods          %ds:(%rsi),%rax
22536  DB  255,224                             ; jmpq          *%rax
22537  DB  102,68,15,97,192                    ; punpcklwd     %xmm0,%xmm8
22538  DB  69,137,193                          ; mov           %r8d,%r9d
22539  DB  65,128,225,3                        ; and           $0x3,%r9b
22540  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22541  DB  116,36                              ; je            3b5b <_sk_store_4444_sse2+0xb4>
22542  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22543  DB  116,18                              ; je            3b4f <_sk_store_4444_sse2+0xa8>
22544  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22545  DB  117,222                             ; jne           3b21 <_sk_store_4444_sse2+0x7a>
22546  DB  102,65,15,197,192,4                 ; pextrw        $0x4,%xmm8,%eax
22547  DB  102,65,137,68,82,4                  ; mov           %ax,0x4(%r10,%rdx,2)
22548  DB  102,65,15,197,192,2                 ; pextrw        $0x2,%xmm8,%eax
22549  DB  102,65,137,68,82,2                  ; mov           %ax,0x2(%r10,%rdx,2)
22550  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
22551  DB  102,65,137,4,82                     ; mov           %ax,(%r10,%rdx,2)
22552  DB  235,186                             ; jmp           3b21 <_sk_store_4444_sse2+0x7a>
22553
22554PUBLIC _sk_load_8888_sse2
22555_sk_load_8888_sse2 LABEL PROC
22556  DB  72,173                              ; lods          %ds:(%rsi),%rax
22557  DB  72,139,0                            ; mov           (%rax),%rax
22558  DB  77,133,192                          ; test          %r8,%r8
22559  DB  117,98                              ; jne           3bd3 <_sk_load_8888_sse2+0x6c>
22560  DB  243,68,15,111,12,144                ; movdqu        (%rax,%rdx,4),%xmm9
22561  DB  102,15,111,21,193,39,0,0            ; movdqa        0x27c1(%rip),%xmm2        # 6340 <_sk_callback_sse2+0xd59>
22562  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
22563  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
22564  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22565  DB  68,15,40,5,189,39,0,0               ; movaps        0x27bd(%rip),%xmm8        # 6350 <_sk_callback_sse2+0xd69>
22566  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
22567  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
22568  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
22569  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
22570  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22571  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
22572  DB  102,65,15,111,217                   ; movdqa        %xmm9,%xmm3
22573  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
22574  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
22575  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
22576  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
22577  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
22578  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
22579  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
22580  DB  72,173                              ; lods          %ds:(%rsi),%rax
22581  DB  255,224                             ; jmpq          *%rax
22582  DB  69,137,193                          ; mov           %r8d,%r9d
22583  DB  65,128,225,3                        ; and           $0x3,%r9b
22584  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
22585  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22586  DB  116,44                              ; je            3c11 <_sk_load_8888_sse2+0xaa>
22587  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22588  DB  116,18                              ; je            3bfd <_sk_load_8888_sse2+0x96>
22589  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22590  DB  117,134                             ; jne           3b77 <_sk_load_8888_sse2+0x10>
22591  DB  102,15,110,68,144,8                 ; movd          0x8(%rax,%rdx,4),%xmm0
22592  DB  102,68,15,112,200,69                ; pshufd        $0x45,%xmm0,%xmm9
22593  DB  243,15,16,68,144,4                  ; movss         0x4(%rax,%rdx,4),%xmm0
22594  DB  65,15,198,193,0                     ; shufps        $0x0,%xmm9,%xmm0
22595  DB  65,15,198,193,226                   ; shufps        $0xe2,%xmm9,%xmm0
22596  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
22597  DB  243,15,16,4,144                     ; movss         (%rax,%rdx,4),%xmm0
22598  DB  243,68,15,16,200                    ; movss         %xmm0,%xmm9
22599  DB  233,87,255,255,255                  ; jmpq          3b77 <_sk_load_8888_sse2+0x10>
22600
22601PUBLIC _sk_gather_8888_sse2
22602_sk_gather_8888_sse2 LABEL PROC
22603  DB  83                                  ; push          %rbx
22604  DB  72,173                              ; lods          %ds:(%rsi),%rax
22605  DB  76,139,8                            ; mov           (%rax),%r9
22606  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22607  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22608  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22609  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22610  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22611  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22612  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22613  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22614  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22615  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22616  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22617  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
22618  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
22619  DB  65,137,194                          ; mov           %eax,%r10d
22620  DB  72,193,232,32                       ; shr           $0x20,%rax
22621  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
22622  DB  68,137,219                          ; mov           %r11d,%ebx
22623  DB  73,193,235,32                       ; shr           $0x20,%r11
22624  DB  102,67,15,110,4,153                 ; movd          (%r9,%r11,4),%xmm0
22625  DB  102,65,15,110,12,129                ; movd          (%r9,%rax,4),%xmm1
22626  DB  102,15,98,193                       ; punpckldq     %xmm1,%xmm0
22627  DB  102,69,15,110,12,153                ; movd          (%r9,%rbx,4),%xmm9
22628  DB  102,67,15,110,12,145                ; movd          (%r9,%r10,4),%xmm1
22629  DB  102,68,15,98,201                    ; punpckldq     %xmm1,%xmm9
22630  DB  102,68,15,98,200                    ; punpckldq     %xmm0,%xmm9
22631  DB  102,15,111,21,190,38,0,0            ; movdqa        0x26be(%rip),%xmm2        # 6360 <_sk_callback_sse2+0xd79>
22632  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
22633  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
22634  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22635  DB  68,15,40,5,186,38,0,0               ; movaps        0x26ba(%rip),%xmm8        # 6370 <_sk_callback_sse2+0xd89>
22636  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
22637  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
22638  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
22639  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
22640  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22641  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
22642  DB  102,65,15,111,217                   ; movdqa        %xmm9,%xmm3
22643  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
22644  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
22645  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
22646  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
22647  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
22648  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
22649  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
22650  DB  72,173                              ; lods          %ds:(%rsi),%rax
22651  DB  91                                  ; pop           %rbx
22652  DB  255,224                             ; jmpq          *%rax
22653
22654PUBLIC _sk_store_8888_sse2
22655_sk_store_8888_sse2 LABEL PROC
22656  DB  72,173                              ; lods          %ds:(%rsi),%rax
22657  DB  72,139,0                            ; mov           (%rax),%rax
22658  DB  68,15,40,5,124,38,0,0               ; movaps        0x267c(%rip),%xmm8        # 6380 <_sk_callback_sse2+0xd99>
22659  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
22660  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
22661  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
22662  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
22663  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
22664  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
22665  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
22666  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
22667  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
22668  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
22669  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
22670  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
22671  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
22672  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
22673  DB  102,65,15,114,240,24                ; pslld         $0x18,%xmm8
22674  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
22675  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
22676  DB  77,133,192                          ; test          %r8,%r8
22677  DB  117,10                              ; jne           3d64 <_sk_store_8888_sse2+0x6d>
22678  DB  243,68,15,127,4,144                 ; movdqu        %xmm8,(%rax,%rdx,4)
22679  DB  72,173                              ; lods          %ds:(%rsi),%rax
22680  DB  255,224                             ; jmpq          *%rax
22681  DB  69,137,193                          ; mov           %r8d,%r9d
22682  DB  65,128,225,3                        ; and           $0x3,%r9b
22683  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22684  DB  116,38                              ; je            3d97 <_sk_store_8888_sse2+0xa0>
22685  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22686  DB  116,19                              ; je            3d8a <_sk_store_8888_sse2+0x93>
22687  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22688  DB  117,227                             ; jne           3d60 <_sk_store_8888_sse2+0x69>
22689  DB  102,69,15,112,200,78                ; pshufd        $0x4e,%xmm8,%xmm9
22690  DB  102,68,15,126,76,144,8              ; movd          %xmm9,0x8(%rax,%rdx,4)
22691  DB  102,69,15,112,200,229               ; pshufd        $0xe5,%xmm8,%xmm9
22692  DB  102,68,15,126,76,144,4              ; movd          %xmm9,0x4(%rax,%rdx,4)
22693  DB  102,68,15,126,4,144                 ; movd          %xmm8,(%rax,%rdx,4)
22694  DB  235,193                             ; jmp           3d60 <_sk_store_8888_sse2+0x69>
22695
22696PUBLIC _sk_load_f16_sse2
22697_sk_load_f16_sse2 LABEL PROC
22698  DB  72,173                              ; lods          %ds:(%rsi),%rax
22699  DB  72,139,0                            ; mov           (%rax),%rax
22700  DB  77,133,192                          ; test          %r8,%r8
22701  DB  15,133,96,1,0,0                     ; jne           3f0d <_sk_load_f16_sse2+0x16e>
22702  DB  102,15,16,4,208                     ; movupd        (%rax,%rdx,8),%xmm0
22703  DB  102,15,16,76,208,16                 ; movupd        0x10(%rax,%rdx,8),%xmm1
22704  DB  102,68,15,40,192                    ; movapd        %xmm0,%xmm8
22705  DB  102,68,15,97,193                    ; punpcklwd     %xmm1,%xmm8
22706  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
22707  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
22708  DB  102,68,15,97,240                    ; punpcklwd     %xmm0,%xmm14
22709  DB  102,68,15,105,192                   ; punpckhwd     %xmm0,%xmm8
22710  DB  102,69,15,239,210                   ; pxor          %xmm10,%xmm10
22711  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
22712  DB  102,65,15,97,202                    ; punpcklwd     %xmm10,%xmm1
22713  DB  102,68,15,111,13,163,37,0,0         ; movdqa        0x25a3(%rip),%xmm9        # 6390 <_sk_callback_sse2+0xda9>
22714  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
22715  DB  102,65,15,219,193                   ; pand          %xmm9,%xmm0
22716  DB  102,15,239,200                      ; pxor          %xmm0,%xmm1
22717  DB  102,15,114,240,16                   ; pslld         $0x10,%xmm0
22718  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
22719  DB  102,65,15,114,245,13                ; pslld         $0xd,%xmm13
22720  DB  102,68,15,235,232                   ; por           %xmm0,%xmm13
22721  DB  102,68,15,111,29,136,37,0,0         ; movdqa        0x2588(%rip),%xmm11        # 63a0 <_sk_callback_sse2+0xdb9>
22722  DB  102,69,15,254,235                   ; paddd         %xmm11,%xmm13
22723  DB  102,68,15,111,37,138,37,0,0         ; movdqa        0x258a(%rip),%xmm12        # 63b0 <_sk_callback_sse2+0xdc9>
22724  DB  102,65,15,239,204                   ; pxor          %xmm12,%xmm1
22725  DB  102,15,111,29,141,37,0,0            ; movdqa        0x258d(%rip),%xmm3        # 63c0 <_sk_callback_sse2+0xdd9>
22726  DB  102,15,111,195                      ; movdqa        %xmm3,%xmm0
22727  DB  102,15,102,193                      ; pcmpgtd       %xmm1,%xmm0
22728  DB  102,65,15,223,197                   ; pandn         %xmm13,%xmm0
22729  DB  102,65,15,115,222,8                 ; psrldq        $0x8,%xmm14
22730  DB  102,69,15,97,242                    ; punpcklwd     %xmm10,%xmm14
22731  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
22732  DB  102,65,15,219,201                   ; pand          %xmm9,%xmm1
22733  DB  102,68,15,239,241                   ; pxor          %xmm1,%xmm14
22734  DB  102,15,114,241,16                   ; pslld         $0x10,%xmm1
22735  DB  102,65,15,111,214                   ; movdqa        %xmm14,%xmm2
22736  DB  102,15,114,242,13                   ; pslld         $0xd,%xmm2
22737  DB  102,15,235,209                      ; por           %xmm1,%xmm2
22738  DB  102,65,15,254,211                   ; paddd         %xmm11,%xmm2
22739  DB  102,69,15,239,244                   ; pxor          %xmm12,%xmm14
22740  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
22741  DB  102,65,15,102,206                   ; pcmpgtd       %xmm14,%xmm1
22742  DB  102,15,223,202                      ; pandn         %xmm2,%xmm1
22743  DB  102,69,15,111,232                   ; movdqa        %xmm8,%xmm13
22744  DB  102,69,15,97,234                    ; punpcklwd     %xmm10,%xmm13
22745  DB  102,65,15,111,213                   ; movdqa        %xmm13,%xmm2
22746  DB  102,65,15,219,209                   ; pand          %xmm9,%xmm2
22747  DB  102,68,15,239,234                   ; pxor          %xmm2,%xmm13
22748  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
22749  DB  102,69,15,111,245                   ; movdqa        %xmm13,%xmm14
22750  DB  102,65,15,114,246,13                ; pslld         $0xd,%xmm14
22751  DB  102,68,15,235,242                   ; por           %xmm2,%xmm14
22752  DB  102,69,15,254,243                   ; paddd         %xmm11,%xmm14
22753  DB  102,69,15,239,236                   ; pxor          %xmm12,%xmm13
22754  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
22755  DB  102,65,15,102,213                   ; pcmpgtd       %xmm13,%xmm2
22756  DB  102,65,15,223,214                   ; pandn         %xmm14,%xmm2
22757  DB  102,65,15,115,216,8                 ; psrldq        $0x8,%xmm8
22758  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
22759  DB  102,69,15,219,200                   ; pand          %xmm8,%xmm9
22760  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
22761  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
22762  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
22763  DB  102,65,15,114,242,13                ; pslld         $0xd,%xmm10
22764  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
22765  DB  102,69,15,254,211                   ; paddd         %xmm11,%xmm10
22766  DB  102,69,15,239,196                   ; pxor          %xmm12,%xmm8
22767  DB  102,65,15,102,216                   ; pcmpgtd       %xmm8,%xmm3
22768  DB  102,65,15,223,218                   ; pandn         %xmm10,%xmm3
22769  DB  72,173                              ; lods          %ds:(%rsi),%rax
22770  DB  255,224                             ; jmpq          *%rax
22771  DB  242,15,16,4,208                     ; movsd         (%rax,%rdx,8),%xmm0
22772  DB  73,131,248,1                        ; cmp           $0x1,%r8
22773  DB  117,17                              ; jne           3f29 <_sk_load_f16_sse2+0x18a>
22774  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
22775  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
22776  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
22777  DB  233,143,254,255,255                 ; jmpq          3db8 <_sk_load_f16_sse2+0x19>
22778  DB  102,15,22,68,208,8                  ; movhpd        0x8(%rax,%rdx,8),%xmm0
22779  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
22780  DB  73,131,248,3                        ; cmp           $0x3,%r8
22781  DB  15,130,123,254,255,255              ; jb            3db8 <_sk_load_f16_sse2+0x19>
22782  DB  242,15,16,76,208,16                 ; movsd         0x10(%rax,%rdx,8),%xmm1
22783  DB  233,112,254,255,255                 ; jmpq          3db8 <_sk_load_f16_sse2+0x19>
22784
22785PUBLIC _sk_gather_f16_sse2
22786_sk_gather_f16_sse2 LABEL PROC
22787  DB  83                                  ; push          %rbx
22788  DB  72,173                              ; lods          %ds:(%rsi),%rax
22789  DB  76,139,8                            ; mov           (%rax),%r9
22790  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22791  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22792  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22793  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22794  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22795  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22796  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22797  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22798  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22799  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22800  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22801  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
22802  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
22803  DB  65,137,194                          ; mov           %eax,%r10d
22804  DB  72,193,232,32                       ; shr           $0x20,%rax
22805  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
22806  DB  68,137,219                          ; mov           %r11d,%ebx
22807  DB  73,193,235,32                       ; shr           $0x20,%r11
22808  DB  243,67,15,126,4,217                 ; movq          (%r9,%r11,8),%xmm0
22809  DB  243,65,15,126,12,217                ; movq          (%r9,%rbx,8),%xmm1
22810  DB  102,15,108,200                      ; punpcklqdq    %xmm0,%xmm1
22811  DB  243,65,15,126,4,193                 ; movq          (%r9,%rax,8),%xmm0
22812  DB  243,67,15,126,20,209                ; movq          (%r9,%r10,8),%xmm2
22813  DB  102,15,108,208                      ; punpcklqdq    %xmm0,%xmm2
22814  DB  102,68,15,111,193                   ; movdqa        %xmm1,%xmm8
22815  DB  102,68,15,97,194                    ; punpcklwd     %xmm2,%xmm8
22816  DB  102,15,105,202                      ; punpckhwd     %xmm2,%xmm1
22817  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
22818  DB  102,68,15,97,241                    ; punpcklwd     %xmm1,%xmm14
22819  DB  102,68,15,105,193                   ; punpckhwd     %xmm1,%xmm8
22820  DB  102,69,15,239,210                   ; pxor          %xmm10,%xmm10
22821  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
22822  DB  102,65,15,97,202                    ; punpcklwd     %xmm10,%xmm1
22823  DB  102,68,15,111,13,223,35,0,0         ; movdqa        0x23df(%rip),%xmm9        # 63d0 <_sk_callback_sse2+0xde9>
22824  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
22825  DB  102,65,15,219,193                   ; pand          %xmm9,%xmm0
22826  DB  102,15,239,200                      ; pxor          %xmm0,%xmm1
22827  DB  102,15,114,240,16                   ; pslld         $0x10,%xmm0
22828  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
22829  DB  102,65,15,114,245,13                ; pslld         $0xd,%xmm13
22830  DB  102,68,15,235,232                   ; por           %xmm0,%xmm13
22831  DB  102,68,15,111,29,196,35,0,0         ; movdqa        0x23c4(%rip),%xmm11        # 63e0 <_sk_callback_sse2+0xdf9>
22832  DB  102,69,15,254,235                   ; paddd         %xmm11,%xmm13
22833  DB  102,68,15,111,37,198,35,0,0         ; movdqa        0x23c6(%rip),%xmm12        # 63f0 <_sk_callback_sse2+0xe09>
22834  DB  102,65,15,239,204                   ; pxor          %xmm12,%xmm1
22835  DB  102,15,111,29,201,35,0,0            ; movdqa        0x23c9(%rip),%xmm3        # 6400 <_sk_callback_sse2+0xe19>
22836  DB  102,15,111,195                      ; movdqa        %xmm3,%xmm0
22837  DB  102,15,102,193                      ; pcmpgtd       %xmm1,%xmm0
22838  DB  102,65,15,223,197                   ; pandn         %xmm13,%xmm0
22839  DB  102,65,15,115,222,8                 ; psrldq        $0x8,%xmm14
22840  DB  102,69,15,97,242                    ; punpcklwd     %xmm10,%xmm14
22841  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
22842  DB  102,65,15,219,201                   ; pand          %xmm9,%xmm1
22843  DB  102,68,15,239,241                   ; pxor          %xmm1,%xmm14
22844  DB  102,15,114,241,16                   ; pslld         $0x10,%xmm1
22845  DB  102,65,15,111,214                   ; movdqa        %xmm14,%xmm2
22846  DB  102,15,114,242,13                   ; pslld         $0xd,%xmm2
22847  DB  102,15,235,209                      ; por           %xmm1,%xmm2
22848  DB  102,65,15,254,211                   ; paddd         %xmm11,%xmm2
22849  DB  102,69,15,239,244                   ; pxor          %xmm12,%xmm14
22850  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
22851  DB  102,65,15,102,206                   ; pcmpgtd       %xmm14,%xmm1
22852  DB  102,15,223,202                      ; pandn         %xmm2,%xmm1
22853  DB  102,69,15,111,232                   ; movdqa        %xmm8,%xmm13
22854  DB  102,69,15,97,234                    ; punpcklwd     %xmm10,%xmm13
22855  DB  102,65,15,111,213                   ; movdqa        %xmm13,%xmm2
22856  DB  102,65,15,219,209                   ; pand          %xmm9,%xmm2
22857  DB  102,68,15,239,234                   ; pxor          %xmm2,%xmm13
22858  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
22859  DB  102,69,15,111,245                   ; movdqa        %xmm13,%xmm14
22860  DB  102,65,15,114,246,13                ; pslld         $0xd,%xmm14
22861  DB  102,68,15,235,242                   ; por           %xmm2,%xmm14
22862  DB  102,69,15,254,243                   ; paddd         %xmm11,%xmm14
22863  DB  102,69,15,239,236                   ; pxor          %xmm12,%xmm13
22864  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
22865  DB  102,65,15,102,213                   ; pcmpgtd       %xmm13,%xmm2
22866  DB  102,65,15,223,214                   ; pandn         %xmm14,%xmm2
22867  DB  102,65,15,115,216,8                 ; psrldq        $0x8,%xmm8
22868  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
22869  DB  102,69,15,219,200                   ; pand          %xmm8,%xmm9
22870  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
22871  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
22872  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
22873  DB  102,65,15,114,242,13                ; pslld         $0xd,%xmm10
22874  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
22875  DB  102,69,15,254,211                   ; paddd         %xmm11,%xmm10
22876  DB  102,69,15,239,196                   ; pxor          %xmm12,%xmm8
22877  DB  102,65,15,102,216                   ; pcmpgtd       %xmm8,%xmm3
22878  DB  102,65,15,223,218                   ; pandn         %xmm10,%xmm3
22879  DB  72,173                              ; lods          %ds:(%rsi),%rax
22880  DB  91                                  ; pop           %rbx
22881  DB  255,224                             ; jmpq          *%rax
22882
22883PUBLIC _sk_store_f16_sse2
22884_sk_store_f16_sse2 LABEL PROC
22885  DB  72,173                              ; lods          %ds:(%rsi),%rax
22886  DB  72,139,0                            ; mov           (%rax),%rax
22887  DB  102,68,15,111,21,240,34,0,0         ; movdqa        0x22f0(%rip),%xmm10        # 6410 <_sk_callback_sse2+0xe29>
22888  DB  102,68,15,111,224                   ; movdqa        %xmm0,%xmm12
22889  DB  102,69,15,219,226                   ; pand          %xmm10,%xmm12
22890  DB  102,68,15,111,232                   ; movdqa        %xmm0,%xmm13
22891  DB  102,69,15,239,236                   ; pxor          %xmm12,%xmm13
22892  DB  102,68,15,111,13,227,34,0,0         ; movdqa        0x22e3(%rip),%xmm9        # 6420 <_sk_callback_sse2+0xe39>
22893  DB  102,65,15,114,212,16                ; psrld         $0x10,%xmm12
22894  DB  102,69,15,111,193                   ; movdqa        %xmm9,%xmm8
22895  DB  102,69,15,102,197                   ; pcmpgtd       %xmm13,%xmm8
22896  DB  102,65,15,114,213,13                ; psrld         $0xd,%xmm13
22897  DB  102,68,15,111,29,212,34,0,0         ; movdqa        0x22d4(%rip),%xmm11        # 6430 <_sk_callback_sse2+0xe49>
22898  DB  102,69,15,235,227                   ; por           %xmm11,%xmm12
22899  DB  102,69,15,254,229                   ; paddd         %xmm13,%xmm12
22900  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
22901  DB  102,65,15,114,228,16                ; psrad         $0x10,%xmm12
22902  DB  102,69,15,223,196                   ; pandn         %xmm12,%xmm8
22903  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
22904  DB  102,68,15,111,225                   ; movdqa        %xmm1,%xmm12
22905  DB  102,69,15,219,226                   ; pand          %xmm10,%xmm12
22906  DB  102,68,15,111,241                   ; movdqa        %xmm1,%xmm14
22907  DB  102,69,15,239,244                   ; pxor          %xmm12,%xmm14
22908  DB  102,65,15,114,212,16                ; psrld         $0x10,%xmm12
22909  DB  102,69,15,111,233                   ; movdqa        %xmm9,%xmm13
22910  DB  102,69,15,102,238                   ; pcmpgtd       %xmm14,%xmm13
22911  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
22912  DB  102,69,15,235,227                   ; por           %xmm11,%xmm12
22913  DB  102,69,15,254,230                   ; paddd         %xmm14,%xmm12
22914  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
22915  DB  102,65,15,114,228,16                ; psrad         $0x10,%xmm12
22916  DB  102,69,15,223,236                   ; pandn         %xmm12,%xmm13
22917  DB  102,69,15,107,237                   ; packssdw      %xmm13,%xmm13
22918  DB  102,68,15,111,242                   ; movdqa        %xmm2,%xmm14
22919  DB  102,69,15,219,242                   ; pand          %xmm10,%xmm14
22920  DB  102,68,15,111,250                   ; movdqa        %xmm2,%xmm15
22921  DB  102,69,15,239,254                   ; pxor          %xmm14,%xmm15
22922  DB  102,65,15,114,214,16                ; psrld         $0x10,%xmm14
22923  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
22924  DB  102,69,15,102,231                   ; pcmpgtd       %xmm15,%xmm12
22925  DB  102,65,15,114,215,13                ; psrld         $0xd,%xmm15
22926  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
22927  DB  102,69,15,254,247                   ; paddd         %xmm15,%xmm14
22928  DB  102,65,15,114,246,16                ; pslld         $0x10,%xmm14
22929  DB  102,65,15,114,230,16                ; psrad         $0x10,%xmm14
22930  DB  102,69,15,223,230                   ; pandn         %xmm14,%xmm12
22931  DB  102,69,15,107,228                   ; packssdw      %xmm12,%xmm12
22932  DB  102,68,15,219,211                   ; pand          %xmm3,%xmm10
22933  DB  102,68,15,111,243                   ; movdqa        %xmm3,%xmm14
22934  DB  102,69,15,239,242                   ; pxor          %xmm10,%xmm14
22935  DB  102,65,15,114,210,16                ; psrld         $0x10,%xmm10
22936  DB  102,69,15,102,206                   ; pcmpgtd       %xmm14,%xmm9
22937  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
22938  DB  102,69,15,235,211                   ; por           %xmm11,%xmm10
22939  DB  102,69,15,254,214                   ; paddd         %xmm14,%xmm10
22940  DB  102,65,15,114,242,16                ; pslld         $0x10,%xmm10
22941  DB  102,65,15,114,226,16                ; psrad         $0x10,%xmm10
22942  DB  102,69,15,223,202                   ; pandn         %xmm10,%xmm9
22943  DB  102,69,15,107,201                   ; packssdw      %xmm9,%xmm9
22944  DB  102,69,15,97,197                    ; punpcklwd     %xmm13,%xmm8
22945  DB  102,69,15,97,225                    ; punpcklwd     %xmm9,%xmm12
22946  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
22947  DB  102,69,15,98,204                    ; punpckldq     %xmm12,%xmm9
22948  DB  77,133,192                          ; test          %r8,%r8
22949  DB  117,21                              ; jne           427e <_sk_store_f16_sse2+0x16c>
22950  DB  68,15,17,12,208                     ; movups        %xmm9,(%rax,%rdx,8)
22951  DB  102,69,15,106,196                   ; punpckhdq     %xmm12,%xmm8
22952  DB  243,68,15,127,68,208,16             ; movdqu        %xmm8,0x10(%rax,%rdx,8)
22953  DB  72,173                              ; lods          %ds:(%rsi),%rax
22954  DB  255,224                             ; jmpq          *%rax
22955  DB  102,68,15,214,12,208                ; movq          %xmm9,(%rax,%rdx,8)
22956  DB  73,131,248,1                        ; cmp           $0x1,%r8
22957  DB  116,240                             ; je            427a <_sk_store_f16_sse2+0x168>
22958  DB  102,68,15,23,76,208,8               ; movhpd        %xmm9,0x8(%rax,%rdx,8)
22959  DB  73,131,248,3                        ; cmp           $0x3,%r8
22960  DB  114,227                             ; jb            427a <_sk_store_f16_sse2+0x168>
22961  DB  102,69,15,106,196                   ; punpckhdq     %xmm12,%xmm8
22962  DB  102,68,15,214,68,208,16             ; movq          %xmm8,0x10(%rax,%rdx,8)
22963  DB  235,213                             ; jmp           427a <_sk_store_f16_sse2+0x168>
22964
22965PUBLIC _sk_load_u16_be_sse2
22966_sk_load_u16_be_sse2 LABEL PROC
22967  DB  72,173                              ; lods          %ds:(%rsi),%rax
22968  DB  76,139,8                            ; mov           (%rax),%r9
22969  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
22970  DB  77,133,192                          ; test          %r8,%r8
22971  DB  15,133,190,0,0,0                    ; jne           4379 <_sk_load_u16_be_sse2+0xd4>
22972  DB  102,65,15,16,4,65                   ; movupd        (%r9,%rax,2),%xmm0
22973  DB  102,65,15,16,76,65,16               ; movupd        0x10(%r9,%rax,2),%xmm1
22974  DB  102,15,40,208                       ; movapd        %xmm0,%xmm2
22975  DB  102,15,97,209                       ; punpcklwd     %xmm1,%xmm2
22976  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
22977  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
22978  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
22979  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
22980  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
22981  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
22982  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
22983  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
22984  DB  102,15,235,200                      ; por           %xmm0,%xmm1
22985  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
22986  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
22987  DB  15,91,193                           ; cvtdq2ps      %xmm1,%xmm0
22988  DB  68,15,40,5,52,33,0,0                ; movaps        0x2134(%rip),%xmm8        # 6440 <_sk_callback_sse2+0xe59>
22989  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
22990  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
22991  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
22992  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
22993  DB  102,15,235,217                      ; por           %xmm1,%xmm3
22994  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
22995  DB  15,91,203                           ; cvtdq2ps      %xmm3,%xmm1
22996  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
22997  DB  102,68,15,111,210                   ; movdqa        %xmm2,%xmm10
22998  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
22999  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
23000  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
23001  DB  102,65,15,235,210                   ; por           %xmm10,%xmm2
23002  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
23003  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
23004  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
23005  DB  102,68,15,111,211                   ; movdqa        %xmm3,%xmm10
23006  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
23007  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
23008  DB  102,65,15,235,218                   ; por           %xmm10,%xmm3
23009  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
23010  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
23011  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
23012  DB  72,173                              ; lods          %ds:(%rsi),%rax
23013  DB  255,224                             ; jmpq          *%rax
23014  DB  242,65,15,16,4,65                   ; movsd         (%r9,%rax,2),%xmm0
23015  DB  73,131,248,1                        ; cmp           $0x1,%r8
23016  DB  117,17                              ; jne           4396 <_sk_load_u16_be_sse2+0xf1>
23017  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
23018  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
23019  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
23020  DB  233,50,255,255,255                  ; jmpq          42c8 <_sk_load_u16_be_sse2+0x23>
23021  DB  102,65,15,22,68,65,8                ; movhpd        0x8(%r9,%rax,2),%xmm0
23022  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
23023  DB  73,131,248,3                        ; cmp           $0x3,%r8
23024  DB  15,130,29,255,255,255               ; jb            42c8 <_sk_load_u16_be_sse2+0x23>
23025  DB  242,65,15,16,76,65,16               ; movsd         0x10(%r9,%rax,2),%xmm1
23026  DB  233,17,255,255,255                  ; jmpq          42c8 <_sk_load_u16_be_sse2+0x23>
23027
23028PUBLIC _sk_load_rgb_u16_be_sse2
23029_sk_load_rgb_u16_be_sse2 LABEL PROC
23030  DB  72,173                              ; lods          %ds:(%rsi),%rax
23031  DB  76,139,8                            ; mov           (%rax),%r9
23032  DB  72,141,4,82                         ; lea           (%rdx,%rdx,2),%rax
23033  DB  77,133,192                          ; test          %r8,%r8
23034  DB  15,133,175,0,0,0                    ; jne           4478 <_sk_load_rgb_u16_be_sse2+0xc1>
23035  DB  243,65,15,111,20,65                 ; movdqu        (%r9,%rax,2),%xmm2
23036  DB  243,65,15,111,92,65,8               ; movdqu        0x8(%r9,%rax,2),%xmm3
23037  DB  102,15,115,219,4                    ; psrldq        $0x4,%xmm3
23038  DB  102,15,111,194                      ; movdqa        %xmm2,%xmm0
23039  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
23040  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
23041  DB  102,15,115,217,6                    ; psrldq        $0x6,%xmm1
23042  DB  102,15,97,211                       ; punpcklwd     %xmm3,%xmm2
23043  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
23044  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
23045  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
23046  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
23047  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
23048  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
23049  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
23050  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
23051  DB  102,15,235,200                      ; por           %xmm0,%xmm1
23052  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
23053  DB  102,65,15,97,200                    ; punpcklwd     %xmm8,%xmm1
23054  DB  15,91,193                           ; cvtdq2ps      %xmm1,%xmm0
23055  DB  68,15,40,13,35,32,0,0               ; movaps        0x2023(%rip),%xmm9        # 6450 <_sk_callback_sse2+0xe69>
23056  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
23057  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
23058  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
23059  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
23060  DB  102,15,235,217                      ; por           %xmm1,%xmm3
23061  DB  102,65,15,97,216                    ; punpcklwd     %xmm8,%xmm3
23062  DB  15,91,203                           ; cvtdq2ps      %xmm3,%xmm1
23063  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
23064  DB  102,15,111,218                      ; movdqa        %xmm2,%xmm3
23065  DB  102,15,113,243,8                    ; psllw         $0x8,%xmm3
23066  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
23067  DB  102,15,235,211                      ; por           %xmm3,%xmm2
23068  DB  102,65,15,97,208                    ; punpcklwd     %xmm8,%xmm2
23069  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
23070  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
23071  DB  72,173                              ; lods          %ds:(%rsi),%rax
23072  DB  15,40,29,234,31,0,0                 ; movaps        0x1fea(%rip),%xmm3        # 6460 <_sk_callback_sse2+0xe79>
23073  DB  255,224                             ; jmpq          *%rax
23074  DB  102,65,15,110,20,65                 ; movd          (%r9,%rax,2),%xmm2
23075  DB  102,65,15,196,84,65,4,2             ; pinsrw        $0x2,0x4(%r9,%rax,2),%xmm2
23076  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
23077  DB  73,131,248,1                        ; cmp           $0x1,%r8
23078  DB  117,13                              ; jne           449d <_sk_load_rgb_u16_be_sse2+0xe6>
23079  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
23080  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
23081  DB  233,80,255,255,255                  ; jmpq          43ed <_sk_load_rgb_u16_be_sse2+0x36>
23082  DB  102,65,15,110,68,65,6               ; movd          0x6(%r9,%rax,2),%xmm0
23083  DB  102,65,15,196,68,65,10,2            ; pinsrw        $0x2,0xa(%r9,%rax,2),%xmm0
23084  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
23085  DB  73,131,248,3                        ; cmp           $0x3,%r8
23086  DB  114,24                              ; jb            44ce <_sk_load_rgb_u16_be_sse2+0x117>
23087  DB  102,65,15,110,92,65,12              ; movd          0xc(%r9,%rax,2),%xmm3
23088  DB  102,65,15,196,92,65,16,2            ; pinsrw        $0x2,0x10(%r9,%rax,2),%xmm3
23089  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
23090  DB  233,31,255,255,255                  ; jmpq          43ed <_sk_load_rgb_u16_be_sse2+0x36>
23091  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
23092  DB  233,22,255,255,255                  ; jmpq          43ed <_sk_load_rgb_u16_be_sse2+0x36>
23093
23094PUBLIC _sk_store_u16_be_sse2
23095_sk_store_u16_be_sse2 LABEL PROC
23096  DB  72,173                              ; lods          %ds:(%rsi),%rax
23097  DB  76,139,8                            ; mov           (%rax),%r9
23098  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
23099  DB  68,15,40,21,132,31,0,0              ; movaps        0x1f84(%rip),%xmm10        # 6470 <_sk_callback_sse2+0xe89>
23100  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
23101  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
23102  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
23103  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
23104  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
23105  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
23106  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
23107  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
23108  DB  102,65,15,113,208,8                 ; psrlw         $0x8,%xmm8
23109  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
23110  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
23111  DB  69,15,89,202                        ; mulps         %xmm10,%xmm9
23112  DB  102,69,15,91,217                    ; cvtps2dq      %xmm9,%xmm11
23113  DB  102,65,15,114,243,16                ; pslld         $0x10,%xmm11
23114  DB  102,65,15,114,227,16                ; psrad         $0x10,%xmm11
23115  DB  102,69,15,107,219                   ; packssdw      %xmm11,%xmm11
23116  DB  102,69,15,111,203                   ; movdqa        %xmm11,%xmm9
23117  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
23118  DB  102,65,15,113,211,8                 ; psrlw         $0x8,%xmm11
23119  DB  102,69,15,235,217                   ; por           %xmm9,%xmm11
23120  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
23121  DB  69,15,89,202                        ; mulps         %xmm10,%xmm9
23122  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
23123  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
23124  DB  102,65,15,114,225,16                ; psrad         $0x10,%xmm9
23125  DB  102,69,15,107,201                   ; packssdw      %xmm9,%xmm9
23126  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
23127  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
23128  DB  102,65,15,113,209,8                 ; psrlw         $0x8,%xmm9
23129  DB  102,69,15,235,204                   ; por           %xmm12,%xmm9
23130  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
23131  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
23132  DB  102,65,15,114,242,16                ; pslld         $0x10,%xmm10
23133  DB  102,65,15,114,226,16                ; psrad         $0x10,%xmm10
23134  DB  102,69,15,107,210                   ; packssdw      %xmm10,%xmm10
23135  DB  102,69,15,111,226                   ; movdqa        %xmm10,%xmm12
23136  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
23137  DB  102,65,15,113,210,8                 ; psrlw         $0x8,%xmm10
23138  DB  102,69,15,235,212                   ; por           %xmm12,%xmm10
23139  DB  102,69,15,97,195                    ; punpcklwd     %xmm11,%xmm8
23140  DB  102,69,15,97,202                    ; punpcklwd     %xmm10,%xmm9
23141  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
23142  DB  102,69,15,98,209                    ; punpckldq     %xmm9,%xmm10
23143  DB  77,133,192                          ; test          %r8,%r8
23144  DB  117,21                              ; jne           45e6 <_sk_store_u16_be_sse2+0x10f>
23145  DB  69,15,17,20,65                      ; movups        %xmm10,(%r9,%rax,2)
23146  DB  102,69,15,106,193                   ; punpckhdq     %xmm9,%xmm8
23147  DB  243,69,15,127,68,65,16              ; movdqu        %xmm8,0x10(%r9,%rax,2)
23148  DB  72,173                              ; lods          %ds:(%rsi),%rax
23149  DB  255,224                             ; jmpq          *%rax
23150  DB  102,69,15,214,20,65                 ; movq          %xmm10,(%r9,%rax,2)
23151  DB  73,131,248,1                        ; cmp           $0x1,%r8
23152  DB  116,240                             ; je            45e2 <_sk_store_u16_be_sse2+0x10b>
23153  DB  102,69,15,23,84,65,8                ; movhpd        %xmm10,0x8(%r9,%rax,2)
23154  DB  73,131,248,3                        ; cmp           $0x3,%r8
23155  DB  114,227                             ; jb            45e2 <_sk_store_u16_be_sse2+0x10b>
23156  DB  102,69,15,106,193                   ; punpckhdq     %xmm9,%xmm8
23157  DB  102,69,15,214,68,65,16              ; movq          %xmm8,0x10(%r9,%rax,2)
23158  DB  235,213                             ; jmp           45e2 <_sk_store_u16_be_sse2+0x10b>
23159
23160PUBLIC _sk_load_f32_sse2
23161_sk_load_f32_sse2 LABEL PROC
23162  DB  72,173                              ; lods          %ds:(%rsi),%rax
23163  DB  76,139,16                           ; mov           (%rax),%r10
23164  DB  76,141,12,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r9
23165  DB  72,137,208                          ; mov           %rdx,%rax
23166  DB  72,193,224,4                        ; shl           $0x4,%rax
23167  DB  69,15,16,4,2                        ; movups        (%r10,%rax,1),%xmm8
23168  DB  77,133,192                          ; test          %r8,%r8
23169  DB  117,66                              ; jne           466d <_sk_load_f32_sse2+0x60>
23170  DB  67,15,16,68,138,16                  ; movups        0x10(%r10,%r9,4),%xmm0
23171  DB  67,15,16,92,138,32                  ; movups        0x20(%r10,%r9,4),%xmm3
23172  DB  71,15,16,76,138,48                  ; movups        0x30(%r10,%r9,4),%xmm9
23173  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
23174  DB  15,20,208                           ; unpcklps      %xmm0,%xmm2
23175  DB  15,40,203                           ; movaps        %xmm3,%xmm1
23176  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
23177  DB  68,15,21,192                        ; unpckhps      %xmm0,%xmm8
23178  DB  65,15,21,217                        ; unpckhps      %xmm9,%xmm3
23179  DB  15,40,194                           ; movaps        %xmm2,%xmm0
23180  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
23181  DB  15,18,202                           ; movhlps       %xmm2,%xmm1
23182  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
23183  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
23184  DB  65,15,18,216                        ; movhlps       %xmm8,%xmm3
23185  DB  72,173                              ; lods          %ds:(%rsi),%rax
23186  DB  255,224                             ; jmpq          *%rax
23187  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
23188  DB  73,131,248,1                        ; cmp           $0x1,%r8
23189  DB  117,8                               ; jne           467f <_sk_load_f32_sse2+0x72>
23190  DB  15,87,219                           ; xorps         %xmm3,%xmm3
23191  DB  15,87,192                           ; xorps         %xmm0,%xmm0
23192  DB  235,190                             ; jmp           463d <_sk_load_f32_sse2+0x30>
23193  DB  67,15,16,68,138,16                  ; movups        0x10(%r10,%r9,4),%xmm0
23194  DB  73,131,248,3                        ; cmp           $0x3,%r8
23195  DB  114,8                               ; jb            4693 <_sk_load_f32_sse2+0x86>
23196  DB  67,15,16,92,138,32                  ; movups        0x20(%r10,%r9,4),%xmm3
23197  DB  235,170                             ; jmp           463d <_sk_load_f32_sse2+0x30>
23198  DB  15,87,219                           ; xorps         %xmm3,%xmm3
23199  DB  235,165                             ; jmp           463d <_sk_load_f32_sse2+0x30>
23200
23201PUBLIC _sk_store_f32_sse2
23202_sk_store_f32_sse2 LABEL PROC
23203  DB  72,173                              ; lods          %ds:(%rsi),%rax
23204  DB  76,139,16                           ; mov           (%rax),%r10
23205  DB  76,141,12,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r9
23206  DB  72,137,208                          ; mov           %rdx,%rax
23207  DB  72,193,224,4                        ; shl           $0x4,%rax
23208  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
23209  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
23210  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
23211  DB  68,15,20,195                        ; unpcklps      %xmm3,%xmm8
23212  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
23213  DB  68,15,21,209                        ; unpckhps      %xmm1,%xmm10
23214  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
23215  DB  68,15,21,219                        ; unpckhps      %xmm3,%xmm11
23216  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
23217  DB  102,69,15,20,224                    ; unpcklpd      %xmm8,%xmm12
23218  DB  69,15,18,193                        ; movhlps       %xmm9,%xmm8
23219  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
23220  DB  102,69,15,20,203                    ; unpcklpd      %xmm11,%xmm9
23221  DB  102,69,15,17,36,2                   ; movupd        %xmm12,(%r10,%rax,1)
23222  DB  77,133,192                          ; test          %r8,%r8
23223  DB  117,29                              ; jne           470a <_sk_store_f32_sse2+0x72>
23224  DB  102,69,15,21,211                    ; unpckhpd      %xmm11,%xmm10
23225  DB  71,15,17,68,138,16                  ; movups        %xmm8,0x10(%r10,%r9,4)
23226  DB  102,71,15,17,76,138,32              ; movupd        %xmm9,0x20(%r10,%r9,4)
23227  DB  102,71,15,17,84,138,48              ; movupd        %xmm10,0x30(%r10,%r9,4)
23228  DB  72,173                              ; lods          %ds:(%rsi),%rax
23229  DB  255,224                             ; jmpq          *%rax
23230  DB  73,131,248,1                        ; cmp           $0x1,%r8
23231  DB  116,246                             ; je            4706 <_sk_store_f32_sse2+0x6e>
23232  DB  71,15,17,68,138,16                  ; movups        %xmm8,0x10(%r10,%r9,4)
23233  DB  73,131,248,3                        ; cmp           $0x3,%r8
23234  DB  114,234                             ; jb            4706 <_sk_store_f32_sse2+0x6e>
23235  DB  102,71,15,17,76,138,32              ; movupd        %xmm9,0x20(%r10,%r9,4)
23236  DB  235,225                             ; jmp           4706 <_sk_store_f32_sse2+0x6e>
23237
23238PUBLIC _sk_clamp_x_sse2
23239_sk_clamp_x_sse2 LABEL PROC
23240  DB  72,173                              ; lods          %ds:(%rsi),%rax
23241  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
23242  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
23243  DB  243,15,16,0                         ; movss         (%rax),%xmm0
23244  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
23245  DB  68,15,93,192                        ; minps         %xmm0,%xmm8
23246  DB  72,173                              ; lods          %ds:(%rsi),%rax
23247  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
23248  DB  255,224                             ; jmpq          *%rax
23249
23250PUBLIC _sk_clamp_y_sse2
23251_sk_clamp_y_sse2 LABEL PROC
23252  DB  72,173                              ; lods          %ds:(%rsi),%rax
23253  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
23254  DB  68,15,95,193                        ; maxps         %xmm1,%xmm8
23255  DB  243,15,16,8                         ; movss         (%rax),%xmm1
23256  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
23257  DB  68,15,93,193                        ; minps         %xmm1,%xmm8
23258  DB  72,173                              ; lods          %ds:(%rsi),%rax
23259  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
23260  DB  255,224                             ; jmpq          *%rax
23261
23262PUBLIC _sk_repeat_x_sse2
23263_sk_repeat_x_sse2 LABEL PROC
23264  DB  72,173                              ; lods          %ds:(%rsi),%rax
23265  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
23266  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
23267  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
23268  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
23269  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
23270  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
23271  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
23272  DB  68,15,84,13,245,28,0,0              ; andps         0x1cf5(%rip),%xmm9        # 6480 <_sk_callback_sse2+0xe99>
23273  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
23274  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
23275  DB  65,15,92,194                        ; subps         %xmm10,%xmm0
23276  DB  72,173                              ; lods          %ds:(%rsi),%rax
23277  DB  255,224                             ; jmpq          *%rax
23278
23279PUBLIC _sk_repeat_y_sse2
23280_sk_repeat_y_sse2 LABEL PROC
23281  DB  72,173                              ; lods          %ds:(%rsi),%rax
23282  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
23283  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
23284  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
23285  DB  69,15,94,200                        ; divps         %xmm8,%xmm9
23286  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
23287  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
23288  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
23289  DB  68,15,84,13,203,28,0,0              ; andps         0x1ccb(%rip),%xmm9        # 6490 <_sk_callback_sse2+0xea9>
23290  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
23291  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
23292  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
23293  DB  72,173                              ; lods          %ds:(%rsi),%rax
23294  DB  255,224                             ; jmpq          *%rax
23295
23296PUBLIC _sk_mirror_x_sse2
23297_sk_mirror_x_sse2 LABEL PROC
23298  DB  72,173                              ; lods          %ds:(%rsi),%rax
23299  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
23300  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
23301  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
23302  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
23303  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
23304  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
23305  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
23306  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
23307  DB  243,69,15,91,218                    ; cvttps2dq     %xmm10,%xmm11
23308  DB  69,15,91,219                        ; cvtdq2ps      %xmm11,%xmm11
23309  DB  69,15,194,211,1                     ; cmpltps       %xmm11,%xmm10
23310  DB  68,15,84,21,143,28,0,0              ; andps         0x1c8f(%rip),%xmm10        # 64a0 <_sk_callback_sse2+0xeb9>
23311  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
23312  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
23313  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
23314  DB  65,15,92,195                        ; subps         %xmm11,%xmm0
23315  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
23316  DB  68,15,92,224                        ; subps         %xmm0,%xmm12
23317  DB  65,15,84,196                        ; andps         %xmm12,%xmm0
23318  DB  72,173                              ; lods          %ds:(%rsi),%rax
23319  DB  255,224                             ; jmpq          *%rax
23320
23321PUBLIC _sk_mirror_y_sse2
23322_sk_mirror_y_sse2 LABEL PROC
23323  DB  72,173                              ; lods          %ds:(%rsi),%rax
23324  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
23325  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
23326  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
23327  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
23328  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
23329  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
23330  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
23331  DB  69,15,94,208                        ; divps         %xmm8,%xmm10
23332  DB  243,69,15,91,218                    ; cvttps2dq     %xmm10,%xmm11
23333  DB  69,15,91,219                        ; cvtdq2ps      %xmm11,%xmm11
23334  DB  69,15,194,211,1                     ; cmpltps       %xmm11,%xmm10
23335  DB  68,15,84,21,67,28,0,0               ; andps         0x1c43(%rip),%xmm10        # 64b0 <_sk_callback_sse2+0xec9>
23336  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
23337  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
23338  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
23339  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
23340  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
23341  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
23342  DB  65,15,84,204                        ; andps         %xmm12,%xmm1
23343  DB  72,173                              ; lods          %ds:(%rsi),%rax
23344  DB  255,224                             ; jmpq          *%rax
23345
23346PUBLIC _sk_clamp_x_1_sse2
23347_sk_clamp_x_1_sse2 LABEL PROC
23348  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
23349  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
23350  DB  68,15,93,5,35,28,0,0                ; minps         0x1c23(%rip),%xmm8        # 64c0 <_sk_callback_sse2+0xed9>
23351  DB  72,173                              ; lods          %ds:(%rsi),%rax
23352  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
23353  DB  255,224                             ; jmpq          *%rax
23354
23355PUBLIC _sk_repeat_x_1_sse2
23356_sk_repeat_x_1_sse2 LABEL PROC
23357  DB  243,68,15,91,192                    ; cvttps2dq     %xmm0,%xmm8
23358  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
23359  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
23360  DB  69,15,194,200,1                     ; cmpltps       %xmm8,%xmm9
23361  DB  68,15,84,13,17,28,0,0               ; andps         0x1c11(%rip),%xmm9        # 64d0 <_sk_callback_sse2+0xee9>
23362  DB  69,15,92,193                        ; subps         %xmm9,%xmm8
23363  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
23364  DB  72,173                              ; lods          %ds:(%rsi),%rax
23365  DB  255,224                             ; jmpq          *%rax
23366
23367PUBLIC _sk_mirror_x_1_sse2
23368_sk_mirror_x_1_sse2 LABEL PROC
23369  DB  68,15,40,5,13,28,0,0                ; movaps        0x1c0d(%rip),%xmm8        # 64e0 <_sk_callback_sse2+0xef9>
23370  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
23371  DB  68,15,40,13,17,28,0,0               ; movaps        0x1c11(%rip),%xmm9        # 64f0 <_sk_callback_sse2+0xf09>
23372  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
23373  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
23374  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
23375  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
23376  DB  68,15,84,13,7,28,0,0                ; andps         0x1c07(%rip),%xmm9        # 6500 <_sk_callback_sse2+0xf19>
23377  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
23378  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
23379  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
23380  DB  65,15,92,194                        ; subps         %xmm10,%xmm0
23381  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
23382  DB  68,15,92,216                        ; subps         %xmm0,%xmm11
23383  DB  65,15,84,195                        ; andps         %xmm11,%xmm0
23384  DB  72,173                              ; lods          %ds:(%rsi),%rax
23385  DB  255,224                             ; jmpq          *%rax
23386
23387PUBLIC _sk_luminance_to_alpha_sse2
23388_sk_luminance_to_alpha_sse2 LABEL PROC
23389  DB  15,40,218                           ; movaps        %xmm2,%xmm3
23390  DB  15,89,5,237,27,0,0                  ; mulps         0x1bed(%rip),%xmm0        # 6510 <_sk_callback_sse2+0xf29>
23391  DB  15,89,13,246,27,0,0                 ; mulps         0x1bf6(%rip),%xmm1        # 6520 <_sk_callback_sse2+0xf39>
23392  DB  15,88,200                           ; addps         %xmm0,%xmm1
23393  DB  15,89,29,252,27,0,0                 ; mulps         0x1bfc(%rip),%xmm3        # 6530 <_sk_callback_sse2+0xf49>
23394  DB  15,88,217                           ; addps         %xmm1,%xmm3
23395  DB  72,173                              ; lods          %ds:(%rsi),%rax
23396  DB  15,87,192                           ; xorps         %xmm0,%xmm0
23397  DB  15,87,201                           ; xorps         %xmm1,%xmm1
23398  DB  15,87,210                           ; xorps         %xmm2,%xmm2
23399  DB  255,224                             ; jmpq          *%rax
23400
23401PUBLIC _sk_matrix_2x3_sse2
23402_sk_matrix_2x3_sse2 LABEL PROC
23403  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
23404  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
23405  DB  72,173                              ; lods          %ds:(%rsi),%rax
23406  DB  243,15,16,0                         ; movss         (%rax),%xmm0
23407  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
23408  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
23409  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
23410  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23411  DB  243,68,15,16,88,16                  ; movss         0x10(%rax),%xmm11
23412  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23413  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
23414  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23415  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
23416  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
23417  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
23418  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
23419  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23420  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
23421  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23422  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
23423  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23424  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
23425  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
23426  DB  72,173                              ; lods          %ds:(%rsi),%rax
23427  DB  255,224                             ; jmpq          *%rax
23428
23429PUBLIC _sk_matrix_3x4_sse2
23430_sk_matrix_3x4_sse2 LABEL PROC
23431  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
23432  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
23433  DB  72,173                              ; lods          %ds:(%rsi),%rax
23434  DB  243,15,16,0                         ; movss         (%rax),%xmm0
23435  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
23436  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
23437  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
23438  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23439  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
23440  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23441  DB  243,68,15,16,96,36                  ; movss         0x24(%rax),%xmm12
23442  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
23443  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
23444  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
23445  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
23446  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23447  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
23448  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
23449  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
23450  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
23451  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23452  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
23453  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23454  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
23455  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
23456  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
23457  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
23458  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
23459  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23460  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
23461  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
23462  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
23463  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23464  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
23465  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23466  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
23467  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
23468  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
23469  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
23470  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
23471  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
23472  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
23473  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
23474  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
23475  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23476  DB  72,173                              ; lods          %ds:(%rsi),%rax
23477  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
23478  DB  255,224                             ; jmpq          *%rax
23479
23480PUBLIC _sk_matrix_4x5_sse2
23481_sk_matrix_4x5_sse2 LABEL PROC
23482  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
23483  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
23484  DB  72,173                              ; lods          %ds:(%rsi),%rax
23485  DB  243,15,16,0                         ; movss         (%rax),%xmm0
23486  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
23487  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
23488  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
23489  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23490  DB  243,68,15,16,88,32                  ; movss         0x20(%rax),%xmm11
23491  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23492  DB  243,68,15,16,96,48                  ; movss         0x30(%rax),%xmm12
23493  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
23494  DB  243,68,15,16,104,64                 ; movss         0x40(%rax),%xmm13
23495  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
23496  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
23497  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
23498  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
23499  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
23500  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
23501  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23502  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
23503  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
23504  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
23505  DB  243,68,15,16,80,20                  ; movss         0x14(%rax),%xmm10
23506  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23507  DB  243,68,15,16,88,36                  ; movss         0x24(%rax),%xmm11
23508  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23509  DB  243,68,15,16,96,52                  ; movss         0x34(%rax),%xmm12
23510  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
23511  DB  243,68,15,16,104,68                 ; movss         0x44(%rax),%xmm13
23512  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
23513  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
23514  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
23515  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
23516  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
23517  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
23518  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23519  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
23520  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
23521  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
23522  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23523  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
23524  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23525  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
23526  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
23527  DB  243,68,15,16,104,56                 ; movss         0x38(%rax),%xmm13
23528  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
23529  DB  243,68,15,16,112,72                 ; movss         0x48(%rax),%xmm14
23530  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
23531  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
23532  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
23533  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
23534  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
23535  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
23536  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
23537  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
23538  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23539  DB  243,68,15,16,88,12                  ; movss         0xc(%rax),%xmm11
23540  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23541  DB  243,68,15,16,96,28                  ; movss         0x1c(%rax),%xmm12
23542  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
23543  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
23544  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
23545  DB  243,68,15,16,112,60                 ; movss         0x3c(%rax),%xmm14
23546  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
23547  DB  243,68,15,16,120,76                 ; movss         0x4c(%rax),%xmm15
23548  DB  69,15,198,255,0                     ; shufps        $0x0,%xmm15,%xmm15
23549  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
23550  DB  69,15,88,247                        ; addps         %xmm15,%xmm14
23551  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
23552  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
23553  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
23554  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
23555  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
23556  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
23557  DB  72,173                              ; lods          %ds:(%rsi),%rax
23558  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
23559  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
23560  DB  255,224                             ; jmpq          *%rax
23561
23562PUBLIC _sk_matrix_4x3_sse2
23563_sk_matrix_4x3_sse2 LABEL PROC
23564  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
23565  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
23566  DB  72,173                              ; lods          %ds:(%rsi),%rax
23567  DB  243,15,16,0                         ; movss         (%rax),%xmm0
23568  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
23569  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
23570  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
23571  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
23572  DB  243,15,16,88,32                     ; movss         0x20(%rax),%xmm3
23573  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
23574  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
23575  DB  15,88,211                           ; addps         %xmm3,%xmm2
23576  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
23577  DB  15,88,194                           ; addps         %xmm2,%xmm0
23578  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
23579  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
23580  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
23581  DB  243,15,16,88,36                     ; movss         0x24(%rax),%xmm3
23582  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
23583  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
23584  DB  15,88,211                           ; addps         %xmm3,%xmm2
23585  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
23586  DB  15,88,202                           ; addps         %xmm2,%xmm1
23587  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
23588  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
23589  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
23590  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
23591  DB  243,68,15,16,80,40                  ; movss         0x28(%rax),%xmm10
23592  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23593  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
23594  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
23595  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
23596  DB  15,88,211                           ; addps         %xmm3,%xmm2
23597  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
23598  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
23599  DB  243,68,15,16,80,28                  ; movss         0x1c(%rax),%xmm10
23600  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23601  DB  243,68,15,16,88,44                  ; movss         0x2c(%rax),%xmm11
23602  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23603  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
23604  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23605  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
23606  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
23607  DB  72,173                              ; lods          %ds:(%rsi),%rax
23608  DB  255,224                             ; jmpq          *%rax
23609
23610PUBLIC _sk_matrix_perspective_sse2
23611_sk_matrix_perspective_sse2 LABEL PROC
23612  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
23613  DB  72,173                              ; lods          %ds:(%rsi),%rax
23614  DB  243,15,16,0                         ; movss         (%rax),%xmm0
23615  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
23616  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
23617  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
23618  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
23619  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23620  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
23621  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
23622  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
23623  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
23624  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
23625  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
23626  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
23627  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23628  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
23629  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23630  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
23631  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23632  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
23633  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
23634  DB  243,68,15,16,80,24                  ; movss         0x18(%rax),%xmm10
23635  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23636  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
23637  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23638  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
23639  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
23640  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
23641  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
23642  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
23643  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23644  DB  65,15,83,202                        ; rcpps         %xmm10,%xmm1
23645  DB  15,89,193                           ; mulps         %xmm1,%xmm0
23646  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
23647  DB  72,173                              ; lods          %ds:(%rsi),%rax
23648  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
23649  DB  255,224                             ; jmpq          *%rax
23650
23651PUBLIC _sk_evenly_spaced_gradient_sse2
23652_sk_evenly_spaced_gradient_sse2 LABEL PROC
23653  DB  65,86                               ; push          %r14
23654  DB  83                                  ; push          %rbx
23655  DB  72,173                              ; lods          %ds:(%rsi),%rax
23656  DB  72,139,24                           ; mov           (%rax),%rbx
23657  DB  76,139,112,8                        ; mov           0x8(%rax),%r14
23658  DB  72,255,203                          ; dec           %rbx
23659  DB  120,7                               ; js            4d70 <_sk_evenly_spaced_gradient_sse2+0x18>
23660  DB  243,72,15,42,203                    ; cvtsi2ss      %rbx,%xmm1
23661  DB  235,21                              ; jmp           4d85 <_sk_evenly_spaced_gradient_sse2+0x2d>
23662  DB  73,137,217                          ; mov           %rbx,%r9
23663  DB  73,209,233                          ; shr           %r9
23664  DB  131,227,1                           ; and           $0x1,%ebx
23665  DB  76,9,203                            ; or            %r9,%rbx
23666  DB  243,72,15,42,203                    ; cvtsi2ss      %rbx,%xmm1
23667  DB  243,15,88,201                       ; addss         %xmm1,%xmm1
23668  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
23669  DB  15,89,200                           ; mulps         %xmm0,%xmm1
23670  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
23671  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
23672  DB  102,73,15,126,211                   ; movq          %xmm2,%r11
23673  DB  69,137,217                          ; mov           %r11d,%r9d
23674  DB  73,193,235,32                       ; shr           $0x20,%r11
23675  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
23676  DB  65,137,218                          ; mov           %ebx,%r10d
23677  DB  72,193,235,32                       ; shr           $0x20,%rbx
23678  DB  243,65,15,16,12,158                 ; movss         (%r14,%rbx,4),%xmm1
23679  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
23680  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
23681  DB  243,71,15,16,4,150                  ; movss         (%r14,%r10,4),%xmm8
23682  DB  243,67,15,16,20,142                 ; movss         (%r14,%r9,4),%xmm2
23683  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
23684  DB  68,15,20,193                        ; unpcklps      %xmm1,%xmm8
23685  DB  76,139,112,40                       ; mov           0x28(%rax),%r14
23686  DB  243,65,15,16,12,158                 ; movss         (%r14,%rbx,4),%xmm1
23687  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
23688  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
23689  DB  243,71,15,16,12,150                 ; movss         (%r14,%r10,4),%xmm9
23690  DB  243,67,15,16,20,142                 ; movss         (%r14,%r9,4),%xmm2
23691  DB  68,15,20,202                        ; unpcklps      %xmm2,%xmm9
23692  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
23693  DB  76,139,112,16                       ; mov           0x10(%rax),%r14
23694  DB  243,65,15,16,20,158                 ; movss         (%r14,%rbx,4),%xmm2
23695  DB  243,67,15,16,12,158                 ; movss         (%r14,%r11,4),%xmm1
23696  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
23697  DB  243,67,15,16,12,150                 ; movss         (%r14,%r10,4),%xmm1
23698  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
23699  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
23700  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
23701  DB  76,139,112,48                       ; mov           0x30(%rax),%r14
23702  DB  243,65,15,16,20,158                 ; movss         (%r14,%rbx,4),%xmm2
23703  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
23704  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
23705  DB  243,71,15,16,20,150                 ; movss         (%r14,%r10,4),%xmm10
23706  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
23707  DB  68,15,20,211                        ; unpcklps      %xmm3,%xmm10
23708  DB  68,15,20,210                        ; unpcklps      %xmm2,%xmm10
23709  DB  76,139,112,24                       ; mov           0x18(%rax),%r14
23710  DB  243,69,15,16,28,158                 ; movss         (%r14,%rbx,4),%xmm11
23711  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
23712  DB  68,15,20,218                        ; unpcklps      %xmm2,%xmm11
23713  DB  243,67,15,16,20,150                 ; movss         (%r14,%r10,4),%xmm2
23714  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
23715  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
23716  DB  65,15,20,211                        ; unpcklps      %xmm11,%xmm2
23717  DB  76,139,112,56                       ; mov           0x38(%rax),%r14
23718  DB  243,69,15,16,36,158                 ; movss         (%r14,%rbx,4),%xmm12
23719  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
23720  DB  68,15,20,227                        ; unpcklps      %xmm3,%xmm12
23721  DB  243,71,15,16,28,150                 ; movss         (%r14,%r10,4),%xmm11
23722  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
23723  DB  68,15,20,219                        ; unpcklps      %xmm3,%xmm11
23724  DB  69,15,20,220                        ; unpcklps      %xmm12,%xmm11
23725  DB  76,139,112,32                       ; mov           0x20(%rax),%r14
23726  DB  243,69,15,16,36,158                 ; movss         (%r14,%rbx,4),%xmm12
23727  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
23728  DB  68,15,20,227                        ; unpcklps      %xmm3,%xmm12
23729  DB  243,67,15,16,28,150                 ; movss         (%r14,%r10,4),%xmm3
23730  DB  243,71,15,16,44,142                 ; movss         (%r14,%r9,4),%xmm13
23731  DB  65,15,20,221                        ; unpcklps      %xmm13,%xmm3
23732  DB  65,15,20,220                        ; unpcklps      %xmm12,%xmm3
23733  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
23734  DB  243,68,15,16,36,152                 ; movss         (%rax,%rbx,4),%xmm12
23735  DB  243,70,15,16,44,152                 ; movss         (%rax,%r11,4),%xmm13
23736  DB  69,15,20,229                        ; unpcklps      %xmm13,%xmm12
23737  DB  243,70,15,16,44,144                 ; movss         (%rax,%r10,4),%xmm13
23738  DB  243,70,15,16,52,136                 ; movss         (%rax,%r9,4),%xmm14
23739  DB  69,15,20,238                        ; unpcklps      %xmm14,%xmm13
23740  DB  69,15,20,236                        ; unpcklps      %xmm12,%xmm13
23741  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
23742  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
23743  DB  15,89,200                           ; mulps         %xmm0,%xmm1
23744  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
23745  DB  15,89,208                           ; mulps         %xmm0,%xmm2
23746  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
23747  DB  15,89,216                           ; mulps         %xmm0,%xmm3
23748  DB  65,15,88,221                        ; addps         %xmm13,%xmm3
23749  DB  72,173                              ; lods          %ds:(%rsi),%rax
23750  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
23751  DB  91                                  ; pop           %rbx
23752  DB  65,94                               ; pop           %r14
23753  DB  255,224                             ; jmpq          *%rax
23754
23755PUBLIC _sk_gauss_a_to_rgba_sse2
23756_sk_gauss_a_to_rgba_sse2 LABEL PROC
23757  DB  15,40,5,47,22,0,0                   ; movaps        0x162f(%rip),%xmm0        # 6540 <_sk_callback_sse2+0xf59>
23758  DB  15,89,195                           ; mulps         %xmm3,%xmm0
23759  DB  15,88,5,53,22,0,0                   ; addps         0x1635(%rip),%xmm0        # 6550 <_sk_callback_sse2+0xf69>
23760  DB  15,89,195                           ; mulps         %xmm3,%xmm0
23761  DB  15,88,5,59,22,0,0                   ; addps         0x163b(%rip),%xmm0        # 6560 <_sk_callback_sse2+0xf79>
23762  DB  15,89,195                           ; mulps         %xmm3,%xmm0
23763  DB  15,88,5,65,22,0,0                   ; addps         0x1641(%rip),%xmm0        # 6570 <_sk_callback_sse2+0xf89>
23764  DB  15,89,195                           ; mulps         %xmm3,%xmm0
23765  DB  15,88,5,71,22,0,0                   ; addps         0x1647(%rip),%xmm0        # 6580 <_sk_callback_sse2+0xf99>
23766  DB  72,173                              ; lods          %ds:(%rsi),%rax
23767  DB  15,40,200                           ; movaps        %xmm0,%xmm1
23768  DB  15,40,208                           ; movaps        %xmm0,%xmm2
23769  DB  15,40,216                           ; movaps        %xmm0,%xmm3
23770  DB  255,224                             ; jmpq          *%rax
23771
23772PUBLIC _sk_gradient_sse2
23773_sk_gradient_sse2 LABEL PROC
23774  DB  65,87                               ; push          %r15
23775  DB  65,86                               ; push          %r14
23776  DB  83                                  ; push          %rbx
23777  DB  72,173                              ; lods          %ds:(%rsi),%rax
23778  DB  76,139,8                            ; mov           (%rax),%r9
23779  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
23780  DB  73,131,249,2                        ; cmp           $0x2,%r9
23781  DB  114,50                              ; jb            4f8c <_sk_gradient_sse2+0x46>
23782  DB  72,139,88,72                        ; mov           0x48(%rax),%rbx
23783  DB  73,255,201                          ; dec           %r9
23784  DB  72,131,195,4                        ; add           $0x4,%rbx
23785  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
23786  DB  15,40,21,32,22,0,0                  ; movaps        0x1620(%rip),%xmm2        # 6590 <_sk_callback_sse2+0xfa9>
23787  DB  243,15,16,27                        ; movss         (%rbx),%xmm3
23788  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
23789  DB  15,194,216,2                        ; cmpleps       %xmm0,%xmm3
23790  DB  15,84,218                           ; andps         %xmm2,%xmm3
23791  DB  102,15,254,203                      ; paddd         %xmm3,%xmm1
23792  DB  72,131,195,4                        ; add           $0x4,%rbx
23793  DB  73,255,201                          ; dec           %r9
23794  DB  117,228                             ; jne           4f70 <_sk_gradient_sse2+0x2a>
23795  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
23796  DB  102,73,15,126,211                   ; movq          %xmm2,%r11
23797  DB  69,137,217                          ; mov           %r11d,%r9d
23798  DB  73,193,235,32                       ; shr           $0x20,%r11
23799  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
23800  DB  65,137,218                          ; mov           %ebx,%r10d
23801  DB  72,193,235,32                       ; shr           $0x20,%rbx
23802  DB  76,139,112,8                        ; mov           0x8(%rax),%r14
23803  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
23804  DB  243,65,15,16,12,158                 ; movss         (%r14,%rbx,4),%xmm1
23805  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
23806  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
23807  DB  243,71,15,16,4,150                  ; movss         (%r14,%r10,4),%xmm8
23808  DB  243,67,15,16,20,142                 ; movss         (%r14,%r9,4),%xmm2
23809  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
23810  DB  68,15,20,193                        ; unpcklps      %xmm1,%xmm8
23811  DB  76,139,112,40                       ; mov           0x28(%rax),%r14
23812  DB  243,65,15,16,12,158                 ; movss         (%r14,%rbx,4),%xmm1
23813  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
23814  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
23815  DB  243,71,15,16,12,150                 ; movss         (%r14,%r10,4),%xmm9
23816  DB  243,67,15,16,20,142                 ; movss         (%r14,%r9,4),%xmm2
23817  DB  68,15,20,202                        ; unpcklps      %xmm2,%xmm9
23818  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
23819  DB  243,65,15,16,20,159                 ; movss         (%r15,%rbx,4),%xmm2
23820  DB  243,67,15,16,12,159                 ; movss         (%r15,%r11,4),%xmm1
23821  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
23822  DB  243,67,15,16,12,151                 ; movss         (%r15,%r10,4),%xmm1
23823  DB  243,67,15,16,28,143                 ; movss         (%r15,%r9,4),%xmm3
23824  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
23825  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
23826  DB  76,139,112,48                       ; mov           0x30(%rax),%r14
23827  DB  243,65,15,16,20,158                 ; movss         (%r14,%rbx,4),%xmm2
23828  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
23829  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
23830  DB  243,71,15,16,20,150                 ; movss         (%r14,%r10,4),%xmm10
23831  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
23832  DB  68,15,20,211                        ; unpcklps      %xmm3,%xmm10
23833  DB  68,15,20,210                        ; unpcklps      %xmm2,%xmm10
23834  DB  76,139,112,24                       ; mov           0x18(%rax),%r14
23835  DB  243,69,15,16,28,158                 ; movss         (%r14,%rbx,4),%xmm11
23836  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
23837  DB  68,15,20,218                        ; unpcklps      %xmm2,%xmm11
23838  DB  243,67,15,16,20,150                 ; movss         (%r14,%r10,4),%xmm2
23839  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
23840  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
23841  DB  65,15,20,211                        ; unpcklps      %xmm11,%xmm2
23842  DB  76,139,112,56                       ; mov           0x38(%rax),%r14
23843  DB  243,69,15,16,36,158                 ; movss         (%r14,%rbx,4),%xmm12
23844  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
23845  DB  68,15,20,227                        ; unpcklps      %xmm3,%xmm12
23846  DB  243,71,15,16,28,150                 ; movss         (%r14,%r10,4),%xmm11
23847  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
23848  DB  68,15,20,219                        ; unpcklps      %xmm3,%xmm11
23849  DB  69,15,20,220                        ; unpcklps      %xmm12,%xmm11
23850  DB  76,139,112,32                       ; mov           0x20(%rax),%r14
23851  DB  243,69,15,16,36,158                 ; movss         (%r14,%rbx,4),%xmm12
23852  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
23853  DB  68,15,20,227                        ; unpcklps      %xmm3,%xmm12
23854  DB  243,67,15,16,28,150                 ; movss         (%r14,%r10,4),%xmm3
23855  DB  243,71,15,16,44,142                 ; movss         (%r14,%r9,4),%xmm13
23856  DB  65,15,20,221                        ; unpcklps      %xmm13,%xmm3
23857  DB  65,15,20,220                        ; unpcklps      %xmm12,%xmm3
23858  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
23859  DB  243,68,15,16,36,152                 ; movss         (%rax,%rbx,4),%xmm12
23860  DB  243,70,15,16,44,152                 ; movss         (%rax,%r11,4),%xmm13
23861  DB  69,15,20,229                        ; unpcklps      %xmm13,%xmm12
23862  DB  243,70,15,16,44,144                 ; movss         (%rax,%r10,4),%xmm13
23863  DB  243,70,15,16,52,136                 ; movss         (%rax,%r9,4),%xmm14
23864  DB  69,15,20,238                        ; unpcklps      %xmm14,%xmm13
23865  DB  69,15,20,236                        ; unpcklps      %xmm12,%xmm13
23866  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
23867  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
23868  DB  15,89,200                           ; mulps         %xmm0,%xmm1
23869  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
23870  DB  15,89,208                           ; mulps         %xmm0,%xmm2
23871  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
23872  DB  15,89,216                           ; mulps         %xmm0,%xmm3
23873  DB  65,15,88,221                        ; addps         %xmm13,%xmm3
23874  DB  72,173                              ; lods          %ds:(%rsi),%rax
23875  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
23876  DB  91                                  ; pop           %rbx
23877  DB  65,94                               ; pop           %r14
23878  DB  65,95                               ; pop           %r15
23879  DB  255,224                             ; jmpq          *%rax
23880
23881PUBLIC _sk_evenly_spaced_2_stop_gradient_sse2
23882_sk_evenly_spaced_2_stop_gradient_sse2 LABEL PROC
23883  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
23884  DB  72,173                              ; lods          %ds:(%rsi),%rax
23885  DB  243,15,16,0                         ; movss         (%rax),%xmm0
23886  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
23887  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
23888  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
23889  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
23890  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
23891  DB  15,88,194                           ; addps         %xmm2,%xmm0
23892  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
23893  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
23894  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
23895  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
23896  DB  15,88,202                           ; addps         %xmm2,%xmm1
23897  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
23898  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
23899  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
23900  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
23901  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
23902  DB  15,88,211                           ; addps         %xmm3,%xmm2
23903  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
23904  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
23905  DB  243,68,15,16,72,28                  ; movss         0x1c(%rax),%xmm9
23906  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
23907  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
23908  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
23909  DB  72,173                              ; lods          %ds:(%rsi),%rax
23910  DB  255,224                             ; jmpq          *%rax
23911
23912PUBLIC _sk_xy_to_unit_angle_sse2
23913_sk_xy_to_unit_angle_sse2 LABEL PROC
23914  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
23915  DB  15,87,192                           ; xorps         %xmm0,%xmm0
23916  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
23917  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
23918  DB  69,15,84,200                        ; andps         %xmm8,%xmm9
23919  DB  69,15,87,210                        ; xorps         %xmm10,%xmm10
23920  DB  68,15,92,209                        ; subps         %xmm1,%xmm10
23921  DB  68,15,84,209                        ; andps         %xmm1,%xmm10
23922  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
23923  DB  69,15,93,218                        ; minps         %xmm10,%xmm11
23924  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
23925  DB  69,15,95,226                        ; maxps         %xmm10,%xmm12
23926  DB  69,15,94,220                        ; divps         %xmm12,%xmm11
23927  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
23928  DB  69,15,89,228                        ; mulps         %xmm12,%xmm12
23929  DB  68,15,40,45,225,19,0,0              ; movaps        0x13e1(%rip),%xmm13        # 65a0 <_sk_callback_sse2+0xfb9>
23930  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
23931  DB  68,15,88,45,229,19,0,0              ; addps         0x13e5(%rip),%xmm13        # 65b0 <_sk_callback_sse2+0xfc9>
23932  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
23933  DB  68,15,88,45,233,19,0,0              ; addps         0x13e9(%rip),%xmm13        # 65c0 <_sk_callback_sse2+0xfd9>
23934  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
23935  DB  68,15,88,45,237,19,0,0              ; addps         0x13ed(%rip),%xmm13        # 65d0 <_sk_callback_sse2+0xfe9>
23936  DB  69,15,89,235                        ; mulps         %xmm11,%xmm13
23937  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
23938  DB  68,15,40,21,236,19,0,0              ; movaps        0x13ec(%rip),%xmm10        # 65e0 <_sk_callback_sse2+0xff9>
23939  DB  69,15,92,213                        ; subps         %xmm13,%xmm10
23940  DB  69,15,84,209                        ; andps         %xmm9,%xmm10
23941  DB  69,15,85,205                        ; andnps        %xmm13,%xmm9
23942  DB  69,15,86,202                        ; orps          %xmm10,%xmm9
23943  DB  68,15,194,192,1                     ; cmpltps       %xmm0,%xmm8
23944  DB  68,15,40,21,223,19,0,0              ; movaps        0x13df(%rip),%xmm10        # 65f0 <_sk_callback_sse2+0x1009>
23945  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
23946  DB  69,15,84,208                        ; andps         %xmm8,%xmm10
23947  DB  69,15,85,193                        ; andnps        %xmm9,%xmm8
23948  DB  69,15,86,194                        ; orps          %xmm10,%xmm8
23949  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
23950  DB  68,15,194,200,1                     ; cmpltps       %xmm0,%xmm9
23951  DB  68,15,40,21,206,19,0,0              ; movaps        0x13ce(%rip),%xmm10        # 6600 <_sk_callback_sse2+0x1019>
23952  DB  69,15,92,208                        ; subps         %xmm8,%xmm10
23953  DB  69,15,84,209                        ; andps         %xmm9,%xmm10
23954  DB  69,15,85,200                        ; andnps        %xmm8,%xmm9
23955  DB  69,15,86,202                        ; orps          %xmm10,%xmm9
23956  DB  65,15,194,193,7                     ; cmpordps      %xmm9,%xmm0
23957  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
23958  DB  72,173                              ; lods          %ds:(%rsi),%rax
23959  DB  255,224                             ; jmpq          *%rax
23960
23961PUBLIC _sk_xy_to_radius_sse2
23962_sk_xy_to_radius_sse2 LABEL PROC
23963  DB  15,89,192                           ; mulps         %xmm0,%xmm0
23964  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
23965  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
23966  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
23967  DB  65,15,81,192                        ; sqrtps        %xmm8,%xmm0
23968  DB  72,173                              ; lods          %ds:(%rsi),%rax
23969  DB  255,224                             ; jmpq          *%rax
23970
23971PUBLIC _sk_save_xy_sse2
23972_sk_save_xy_sse2 LABEL PROC
23973  DB  72,173                              ; lods          %ds:(%rsi),%rax
23974  DB  68,15,40,5,160,19,0,0               ; movaps        0x13a0(%rip),%xmm8        # 6610 <_sk_callback_sse2+0x1029>
23975  DB  15,17,0                             ; movups        %xmm0,(%rax)
23976  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
23977  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
23978  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
23979  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
23980  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
23981  DB  69,15,194,218,1                     ; cmpltps       %xmm10,%xmm11
23982  DB  68,15,40,37,139,19,0,0              ; movaps        0x138b(%rip),%xmm12        # 6620 <_sk_callback_sse2+0x1039>
23983  DB  69,15,84,220                        ; andps         %xmm12,%xmm11
23984  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
23985  DB  69,15,92,202                        ; subps         %xmm10,%xmm9
23986  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
23987  DB  243,69,15,91,208                    ; cvttps2dq     %xmm8,%xmm10
23988  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
23989  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
23990  DB  69,15,194,218,1                     ; cmpltps       %xmm10,%xmm11
23991  DB  69,15,84,220                        ; andps         %xmm12,%xmm11
23992  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
23993  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
23994  DB  15,17,72,32                         ; movups        %xmm1,0x20(%rax)
23995  DB  68,15,17,72,64                      ; movups        %xmm9,0x40(%rax)
23996  DB  68,15,17,64,96                      ; movups        %xmm8,0x60(%rax)
23997  DB  72,173                              ; lods          %ds:(%rsi),%rax
23998  DB  255,224                             ; jmpq          *%rax
23999
24000PUBLIC _sk_accumulate_sse2
24001_sk_accumulate_sse2 LABEL PROC
24002  DB  72,173                              ; lods          %ds:(%rsi),%rax
24003  DB  68,15,16,128,128,0,0,0              ; movups        0x80(%rax),%xmm8
24004  DB  68,15,16,136,160,0,0,0              ; movups        0xa0(%rax),%xmm9
24005  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
24006  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
24007  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
24008  DB  65,15,88,224                        ; addps         %xmm8,%xmm4
24009  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
24010  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
24011  DB  65,15,88,232                        ; addps         %xmm8,%xmm5
24012  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
24013  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
24014  DB  65,15,88,240                        ; addps         %xmm8,%xmm6
24015  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
24016  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
24017  DB  72,173                              ; lods          %ds:(%rsi),%rax
24018  DB  255,224                             ; jmpq          *%rax
24019
24020PUBLIC _sk_bilinear_nx_sse2
24021_sk_bilinear_nx_sse2 LABEL PROC
24022  DB  72,173                              ; lods          %ds:(%rsi),%rax
24023  DB  15,16,0                             ; movups        (%rax),%xmm0
24024  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
24025  DB  15,88,5,4,19,0,0                    ; addps         0x1304(%rip),%xmm0        # 6630 <_sk_callback_sse2+0x1049>
24026  DB  68,15,40,13,12,19,0,0               ; movaps        0x130c(%rip),%xmm9        # 6640 <_sk_callback_sse2+0x1059>
24027  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24028  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
24029  DB  72,173                              ; lods          %ds:(%rsi),%rax
24030  DB  255,224                             ; jmpq          *%rax
24031
24032PUBLIC _sk_bilinear_px_sse2
24033_sk_bilinear_px_sse2 LABEL PROC
24034  DB  72,173                              ; lods          %ds:(%rsi),%rax
24035  DB  15,16,0                             ; movups        (%rax),%xmm0
24036  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
24037  DB  15,88,5,251,18,0,0                  ; addps         0x12fb(%rip),%xmm0        # 6650 <_sk_callback_sse2+0x1069>
24038  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
24039  DB  72,173                              ; lods          %ds:(%rsi),%rax
24040  DB  255,224                             ; jmpq          *%rax
24041
24042PUBLIC _sk_bilinear_ny_sse2
24043_sk_bilinear_ny_sse2 LABEL PROC
24044  DB  72,173                              ; lods          %ds:(%rsi),%rax
24045  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24046  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
24047  DB  15,88,13,237,18,0,0                 ; addps         0x12ed(%rip),%xmm1        # 6660 <_sk_callback_sse2+0x1079>
24048  DB  68,15,40,13,245,18,0,0              ; movaps        0x12f5(%rip),%xmm9        # 6670 <_sk_callback_sse2+0x1089>
24049  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24050  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
24051  DB  72,173                              ; lods          %ds:(%rsi),%rax
24052  DB  255,224                             ; jmpq          *%rax
24053
24054PUBLIC _sk_bilinear_py_sse2
24055_sk_bilinear_py_sse2 LABEL PROC
24056  DB  72,173                              ; lods          %ds:(%rsi),%rax
24057  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24058  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
24059  DB  15,88,13,227,18,0,0                 ; addps         0x12e3(%rip),%xmm1        # 6680 <_sk_callback_sse2+0x1099>
24060  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
24061  DB  72,173                              ; lods          %ds:(%rsi),%rax
24062  DB  255,224                             ; jmpq          *%rax
24063
24064PUBLIC _sk_bicubic_n3x_sse2
24065_sk_bicubic_n3x_sse2 LABEL PROC
24066  DB  72,173                              ; lods          %ds:(%rsi),%rax
24067  DB  15,16,0                             ; movups        (%rax),%xmm0
24068  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
24069  DB  15,88,5,214,18,0,0                  ; addps         0x12d6(%rip),%xmm0        # 6690 <_sk_callback_sse2+0x10a9>
24070  DB  68,15,40,13,222,18,0,0              ; movaps        0x12de(%rip),%xmm9        # 66a0 <_sk_callback_sse2+0x10b9>
24071  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24072  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
24073  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
24074  DB  68,15,89,13,218,18,0,0              ; mulps         0x12da(%rip),%xmm9        # 66b0 <_sk_callback_sse2+0x10c9>
24075  DB  68,15,88,13,226,18,0,0              ; addps         0x12e2(%rip),%xmm9        # 66c0 <_sk_callback_sse2+0x10d9>
24076  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
24077  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
24078  DB  72,173                              ; lods          %ds:(%rsi),%rax
24079  DB  255,224                             ; jmpq          *%rax
24080
24081PUBLIC _sk_bicubic_n1x_sse2
24082_sk_bicubic_n1x_sse2 LABEL PROC
24083  DB  72,173                              ; lods          %ds:(%rsi),%rax
24084  DB  15,16,0                             ; movups        (%rax),%xmm0
24085  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
24086  DB  15,88,5,209,18,0,0                  ; addps         0x12d1(%rip),%xmm0        # 66d0 <_sk_callback_sse2+0x10e9>
24087  DB  68,15,40,13,217,18,0,0              ; movaps        0x12d9(%rip),%xmm9        # 66e0 <_sk_callback_sse2+0x10f9>
24088  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24089  DB  68,15,40,5,221,18,0,0               ; movaps        0x12dd(%rip),%xmm8        # 66f0 <_sk_callback_sse2+0x1109>
24090  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24091  DB  68,15,88,5,225,18,0,0               ; addps         0x12e1(%rip),%xmm8        # 6700 <_sk_callback_sse2+0x1119>
24092  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24093  DB  68,15,88,5,229,18,0,0               ; addps         0x12e5(%rip),%xmm8        # 6710 <_sk_callback_sse2+0x1129>
24094  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24095  DB  68,15,88,5,233,18,0,0               ; addps         0x12e9(%rip),%xmm8        # 6720 <_sk_callback_sse2+0x1139>
24096  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
24097  DB  72,173                              ; lods          %ds:(%rsi),%rax
24098  DB  255,224                             ; jmpq          *%rax
24099
24100PUBLIC _sk_bicubic_p1x_sse2
24101_sk_bicubic_p1x_sse2 LABEL PROC
24102  DB  72,173                              ; lods          %ds:(%rsi),%rax
24103  DB  68,15,40,5,227,18,0,0               ; movaps        0x12e3(%rip),%xmm8        # 6730 <_sk_callback_sse2+0x1149>
24104  DB  15,16,0                             ; movups        (%rax),%xmm0
24105  DB  68,15,16,72,64                      ; movups        0x40(%rax),%xmm9
24106  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
24107  DB  68,15,40,21,223,18,0,0              ; movaps        0x12df(%rip),%xmm10        # 6740 <_sk_callback_sse2+0x1159>
24108  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24109  DB  68,15,88,21,227,18,0,0              ; addps         0x12e3(%rip),%xmm10        # 6750 <_sk_callback_sse2+0x1169>
24110  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24111  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
24112  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24113  DB  68,15,88,21,223,18,0,0              ; addps         0x12df(%rip),%xmm10        # 6760 <_sk_callback_sse2+0x1179>
24114  DB  68,15,17,144,128,0,0,0              ; movups        %xmm10,0x80(%rax)
24115  DB  72,173                              ; lods          %ds:(%rsi),%rax
24116  DB  255,224                             ; jmpq          *%rax
24117
24118PUBLIC _sk_bicubic_p3x_sse2
24119_sk_bicubic_p3x_sse2 LABEL PROC
24120  DB  72,173                              ; lods          %ds:(%rsi),%rax
24121  DB  15,16,0                             ; movups        (%rax),%xmm0
24122  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
24123  DB  15,88,5,210,18,0,0                  ; addps         0x12d2(%rip),%xmm0        # 6770 <_sk_callback_sse2+0x1189>
24124  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
24125  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
24126  DB  68,15,89,5,210,18,0,0               ; mulps         0x12d2(%rip),%xmm8        # 6780 <_sk_callback_sse2+0x1199>
24127  DB  68,15,88,5,218,18,0,0               ; addps         0x12da(%rip),%xmm8        # 6790 <_sk_callback_sse2+0x11a9>
24128  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24129  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
24130  DB  72,173                              ; lods          %ds:(%rsi),%rax
24131  DB  255,224                             ; jmpq          *%rax
24132
24133PUBLIC _sk_bicubic_n3y_sse2
24134_sk_bicubic_n3y_sse2 LABEL PROC
24135  DB  72,173                              ; lods          %ds:(%rsi),%rax
24136  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24137  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
24138  DB  15,88,13,200,18,0,0                 ; addps         0x12c8(%rip),%xmm1        # 67a0 <_sk_callback_sse2+0x11b9>
24139  DB  68,15,40,13,208,18,0,0              ; movaps        0x12d0(%rip),%xmm9        # 67b0 <_sk_callback_sse2+0x11c9>
24140  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24141  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
24142  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
24143  DB  68,15,89,13,204,18,0,0              ; mulps         0x12cc(%rip),%xmm9        # 67c0 <_sk_callback_sse2+0x11d9>
24144  DB  68,15,88,13,212,18,0,0              ; addps         0x12d4(%rip),%xmm9        # 67d0 <_sk_callback_sse2+0x11e9>
24145  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
24146  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
24147  DB  72,173                              ; lods          %ds:(%rsi),%rax
24148  DB  255,224                             ; jmpq          *%rax
24149
24150PUBLIC _sk_bicubic_n1y_sse2
24151_sk_bicubic_n1y_sse2 LABEL PROC
24152  DB  72,173                              ; lods          %ds:(%rsi),%rax
24153  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24154  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
24155  DB  15,88,13,194,18,0,0                 ; addps         0x12c2(%rip),%xmm1        # 67e0 <_sk_callback_sse2+0x11f9>
24156  DB  68,15,40,13,202,18,0,0              ; movaps        0x12ca(%rip),%xmm9        # 67f0 <_sk_callback_sse2+0x1209>
24157  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24158  DB  68,15,40,5,206,18,0,0               ; movaps        0x12ce(%rip),%xmm8        # 6800 <_sk_callback_sse2+0x1219>
24159  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24160  DB  68,15,88,5,210,18,0,0               ; addps         0x12d2(%rip),%xmm8        # 6810 <_sk_callback_sse2+0x1229>
24161  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24162  DB  68,15,88,5,214,18,0,0               ; addps         0x12d6(%rip),%xmm8        # 6820 <_sk_callback_sse2+0x1239>
24163  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24164  DB  68,15,88,5,218,18,0,0               ; addps         0x12da(%rip),%xmm8        # 6830 <_sk_callback_sse2+0x1249>
24165  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
24166  DB  72,173                              ; lods          %ds:(%rsi),%rax
24167  DB  255,224                             ; jmpq          *%rax
24168
24169PUBLIC _sk_bicubic_p1y_sse2
24170_sk_bicubic_p1y_sse2 LABEL PROC
24171  DB  72,173                              ; lods          %ds:(%rsi),%rax
24172  DB  68,15,40,5,212,18,0,0               ; movaps        0x12d4(%rip),%xmm8        # 6840 <_sk_callback_sse2+0x1259>
24173  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24174  DB  68,15,16,72,96                      ; movups        0x60(%rax),%xmm9
24175  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
24176  DB  68,15,40,21,207,18,0,0              ; movaps        0x12cf(%rip),%xmm10        # 6850 <_sk_callback_sse2+0x1269>
24177  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24178  DB  68,15,88,21,211,18,0,0              ; addps         0x12d3(%rip),%xmm10        # 6860 <_sk_callback_sse2+0x1279>
24179  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24180  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
24181  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24182  DB  68,15,88,21,207,18,0,0              ; addps         0x12cf(%rip),%xmm10        # 6870 <_sk_callback_sse2+0x1289>
24183  DB  68,15,17,144,160,0,0,0              ; movups        %xmm10,0xa0(%rax)
24184  DB  72,173                              ; lods          %ds:(%rsi),%rax
24185  DB  255,224                             ; jmpq          *%rax
24186
24187PUBLIC _sk_bicubic_p3y_sse2
24188_sk_bicubic_p3y_sse2 LABEL PROC
24189  DB  72,173                              ; lods          %ds:(%rsi),%rax
24190  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24191  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
24192  DB  15,88,13,193,18,0,0                 ; addps         0x12c1(%rip),%xmm1        # 6880 <_sk_callback_sse2+0x1299>
24193  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
24194  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
24195  DB  68,15,89,5,193,18,0,0               ; mulps         0x12c1(%rip),%xmm8        # 6890 <_sk_callback_sse2+0x12a9>
24196  DB  68,15,88,5,201,18,0,0               ; addps         0x12c9(%rip),%xmm8        # 68a0 <_sk_callback_sse2+0x12b9>
24197  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24198  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
24199  DB  72,173                              ; lods          %ds:(%rsi),%rax
24200  DB  255,224                             ; jmpq          *%rax
24201
24202PUBLIC _sk_callback_sse2
24203_sk_callback_sse2 LABEL PROC
24204  DB  85                                  ; push          %rbp
24205  DB  72,137,229                          ; mov           %rsp,%rbp
24206  DB  65,87                               ; push          %r15
24207  DB  65,86                               ; push          %r14
24208  DB  65,84                               ; push          %r12
24209  DB  83                                  ; push          %rbx
24210  DB  72,131,236,32                       ; sub           $0x20,%rsp
24211  DB  68,15,40,197                        ; movaps        %xmm5,%xmm8
24212  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
24213  DB  77,137,196                          ; mov           %r8,%r12
24214  DB  73,137,206                          ; mov           %rcx,%r14
24215  DB  73,137,215                          ; mov           %rdx,%r15
24216  DB  72,173                              ; lods          %ds:(%rsi),%rax
24217  DB  72,137,195                          ; mov           %rax,%rbx
24218  DB  15,40,224                           ; movaps        %xmm0,%xmm4
24219  DB  15,20,225                           ; unpcklps      %xmm1,%xmm4
24220  DB  15,40,234                           ; movaps        %xmm2,%xmm5
24221  DB  15,20,235                           ; unpcklps      %xmm3,%xmm5
24222  DB  15,21,193                           ; unpckhps      %xmm1,%xmm0
24223  DB  15,21,211                           ; unpckhps      %xmm3,%xmm2
24224  DB  15,40,204                           ; movaps        %xmm4,%xmm1
24225  DB  102,15,20,205                       ; unpcklpd      %xmm5,%xmm1
24226  DB  15,18,236                           ; movhlps       %xmm4,%xmm5
24227  DB  15,40,216                           ; movaps        %xmm0,%xmm3
24228  DB  102,15,20,218                       ; unpcklpd      %xmm2,%xmm3
24229  DB  102,15,17,75,8                      ; movupd        %xmm1,0x8(%rbx)
24230  DB  15,18,208                           ; movhlps       %xmm0,%xmm2
24231  DB  15,17,107,24                        ; movups        %xmm5,0x18(%rbx)
24232  DB  102,15,17,91,40                     ; movupd        %xmm3,0x28(%rbx)
24233  DB  15,17,83,56                         ; movups        %xmm2,0x38(%rbx)
24234  DB  77,133,228                          ; test          %r12,%r12
24235  DB  186,4,0,0,0                         ; mov           $0x4,%edx
24236  DB  65,15,69,212                        ; cmovne        %r12d,%edx
24237  DB  72,137,217                          ; mov           %rbx,%rcx
24238  DB  255,19                              ; callq         *(%rbx)
24239  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
24240  DB  15,16,32                            ; movups        (%rax),%xmm4
24241  DB  15,16,64,16                         ; movups        0x10(%rax),%xmm0
24242  DB  15,16,88,32                         ; movups        0x20(%rax),%xmm3
24243  DB  15,16,80,48                         ; movups        0x30(%rax),%xmm2
24244  DB  15,40,236                           ; movaps        %xmm4,%xmm5
24245  DB  15,20,232                           ; unpcklps      %xmm0,%xmm5
24246  DB  15,40,203                           ; movaps        %xmm3,%xmm1
24247  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
24248  DB  15,21,224                           ; unpckhps      %xmm0,%xmm4
24249  DB  15,21,218                           ; unpckhps      %xmm2,%xmm3
24250  DB  15,40,197                           ; movaps        %xmm5,%xmm0
24251  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
24252  DB  15,18,205                           ; movhlps       %xmm5,%xmm1
24253  DB  15,40,212                           ; movaps        %xmm4,%xmm2
24254  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
24255  DB  15,18,220                           ; movhlps       %xmm4,%xmm3
24256  DB  72,173                              ; lods          %ds:(%rsi),%rax
24257  DB  76,137,250                          ; mov           %r15,%rdx
24258  DB  76,137,241                          ; mov           %r14,%rcx
24259  DB  77,137,224                          ; mov           %r12,%r8
24260  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
24261  DB  65,15,40,232                        ; movaps        %xmm8,%xmm5
24262  DB  72,131,196,32                       ; add           $0x20,%rsp
24263  DB  91                                  ; pop           %rbx
24264  DB  65,92                               ; pop           %r12
24265  DB  65,94                               ; pop           %r14
24266  DB  65,95                               ; pop           %r15
24267  DB  93                                  ; pop           %rbp
24268  DB  255,224                             ; jmpq          *%rax
24269
24270ALIGN 16
24271  DB  0,0                                 ; add           %al,(%rax)
24272  DB  0,63                                ; add           %bh,(%rdi)
24273  DB  0,0                                 ; add           %al,(%rax)
24274  DB  0,63                                ; add           %bh,(%rdi)
24275  DB  0,0                                 ; add           %al,(%rax)
24276  DB  0,63                                ; add           %bh,(%rdi)
24277  DB  0,0                                 ; add           %al,(%rax)
24278  DB  0,63                                ; add           %bh,(%rdi)
24279  DB  0,0                                 ; add           %al,(%rax)
24280  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24281  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24282  DB  63                                  ; (bad)
24283  DB  0,0                                 ; add           %al,(%rax)
24284  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
24285  DB  0,0                                 ; add           %al,(%rax)
24286  DB  0,1                                 ; add           %al,(%rcx)
24287  DB  0,0                                 ; add           %al,(%rax)
24288  DB  0,1                                 ; add           %al,(%rcx)
24289  DB  0,0                                 ; add           %al,(%rax)
24290  DB  0,1                                 ; add           %al,(%rcx)
24291  DB  0,0                                 ; add           %al,(%rax)
24292  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
24293  DB  0,0                                 ; add           %al,(%rax)
24294  DB  4,0                                 ; add           $0x0,%al
24295  DB  0,0                                 ; add           %al,(%rax)
24296  DB  4,0                                 ; add           $0x0,%al
24297  DB  0,0                                 ; add           %al,(%rax)
24298  DB  4,0                                 ; add           $0x0,%al
24299  DB  0,0                                 ; add           %al,(%rax)
24300  DB  2,0                                 ; add           (%rax),%al
24301  DB  0,0                                 ; add           %al,(%rax)
24302  DB  2,0                                 ; add           (%rax),%al
24303  DB  0,0                                 ; add           %al,(%rax)
24304  DB  2,0                                 ; add           (%rax),%al
24305  DB  0,0                                 ; add           %al,(%rax)
24306  DB  2,0                                 ; add           (%rax),%al
24307  DB  0,0                                 ; add           %al,(%rax)
24308  DB  0,0                                 ; add           %al,(%rax)
24309  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
24310  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
24311  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
24312  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
24313  DB  252                                 ; cld
24314  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
24315  DB  0,0                                 ; add           %al,(%rax)
24316  DB  252                                 ; cld
24317  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
24318  DB  0,0                                 ; add           %al,(%rax)
24319  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24320  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24321  DB  63                                  ; (bad)
24322  DB  0,0                                 ; add           %al,(%rax)
24323  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24324  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24325  DB  63                                  ; (bad)
24326  DB  0,0                                 ; add           %al,(%rax)
24327  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24328  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24329  DB  63                                  ; (bad)
24330  DB  0,0                                 ; add           %al,(%rax)
24331  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24332  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24333  DB  63                                  ; (bad)
24334  DB  0,0                                 ; add           %al,(%rax)
24335  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24336  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24337  DB  63                                  ; (bad)
24338  DB  0,0                                 ; add           %al,(%rax)
24339  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24340  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24341  DB  63                                  ; (bad)
24342  DB  0,0                                 ; add           %al,(%rax)
24343  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24344  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24345  DB  63                                  ; (bad)
24346  DB  0,0                                 ; add           %al,(%rax)
24347  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24348  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24349  DB  63                                  ; (bad)
24350  DB  0,0                                 ; add           %al,(%rax)
24351  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24352  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24353  DB  63                                  ; (bad)
24354  DB  0,0                                 ; add           %al,(%rax)
24355  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24356  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24357  DB  63                                  ; (bad)
24358  DB  0,0                                 ; add           %al,(%rax)
24359  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24360  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24361  DB  63                                  ; (bad)
24362  DB  0,0                                 ; add           %al,(%rax)
24363  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24364  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24365  DB  63                                  ; (bad)
24366  DB  0,0                                 ; add           %al,(%rax)
24367  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24368  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24369  DB  63                                  ; (bad)
24370  DB  0,0                                 ; add           %al,(%rax)
24371  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24372  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24373  DB  63                                  ; (bad)
24374  DB  0,0                                 ; add           %al,(%rax)
24375  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24376  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24377  DB  63                                  ; (bad)
24378  DB  0,0                                 ; add           %al,(%rax)
24379  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24380  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24381  DB  63                                  ; (bad)
24382  DB  0,0                                 ; add           %al,(%rax)
24383  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24384  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24385  DB  63                                  ; (bad)
24386  DB  0,0                                 ; add           %al,(%rax)
24387  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24388  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24389  DB  63                                  ; (bad)
24390  DB  0,0                                 ; add           %al,(%rax)
24391  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24392  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24393  DB  63                                  ; (bad)
24394  DB  0,0                                 ; add           %al,(%rax)
24395  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24396  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24397  DB  63                                  ; (bad)
24398  DB  0,0                                 ; add           %al,(%rax)
24399  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24400  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24401  DB  63                                  ; (bad)
24402  DB  0,0                                 ; add           %al,(%rax)
24403  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24404  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24405  DB  63                                  ; (bad)
24406  DB  0,0                                 ; add           %al,(%rax)
24407  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24408  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24409  DB  191,0,0,128,191                     ; mov           $0xbf800000,%edi
24410  DB  0,0                                 ; add           %al,(%rax)
24411  DB  128,191,0,0,128,191,0               ; cmpb          $0x0,-0x40800000(%rdi)
24412  DB  0,224                               ; add           %ah,%al
24413  DB  64,0,0                              ; add           %al,(%rax)
24414  DB  224,64                              ; loopne        5898 <.literal16+0x1d8>
24415  DB  0,0                                 ; add           %al,(%rax)
24416  DB  224,64                              ; loopne        589c <.literal16+0x1dc>
24417  DB  0,0                                 ; add           %al,(%rax)
24418  DB  224,64                              ; loopne        58a0 <.literal16+0x1e0>
24419  DB  154                                 ; (bad)
24420  DB  153                                 ; cltd
24421  DB  153                                 ; cltd
24422  DB  62,154                              ; ds            (bad)
24423  DB  153                                 ; cltd
24424  DB  153                                 ; cltd
24425  DB  62,154                              ; ds            (bad)
24426  DB  153                                 ; cltd
24427  DB  153                                 ; cltd
24428  DB  62,154                              ; ds            (bad)
24429  DB  153                                 ; cltd
24430  DB  153                                 ; cltd
24431  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
24432  DB  10,23                               ; or            (%rdi),%dl
24433  DB  63                                  ; (bad)
24434  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
24435  DB  10,23                               ; or            (%rdi),%dl
24436  DB  63                                  ; (bad)
24437  DB  174                                 ; scas          %es:(%rdi),%al
24438  DB  71,225,61                           ; rex.RXB       loope 58c1 <.literal16+0x201>
24439  DB  174                                 ; scas          %es:(%rdi),%al
24440  DB  71,225,61                           ; rex.RXB       loope 58c5 <.literal16+0x205>
24441  DB  174                                 ; scas          %es:(%rdi),%al
24442  DB  71,225,61                           ; rex.RXB       loope 58c9 <.literal16+0x209>
24443  DB  174                                 ; scas          %es:(%rdi),%al
24444  DB  71,225,61                           ; rex.RXB       loope 58cd <.literal16+0x20d>
24445  DB  0,0                                 ; add           %al,(%rax)
24446  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24447  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24448  DB  63                                  ; (bad)
24449  DB  0,0                                 ; add           %al,(%rax)
24450  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
24451  DB  153                                 ; cltd
24452  DB  153                                 ; cltd
24453  DB  62,154                              ; ds            (bad)
24454  DB  153                                 ; cltd
24455  DB  153                                 ; cltd
24456  DB  62,154                              ; ds            (bad)
24457  DB  153                                 ; cltd
24458  DB  153                                 ; cltd
24459  DB  62,154                              ; ds            (bad)
24460  DB  153                                 ; cltd
24461  DB  153                                 ; cltd
24462  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
24463  DB  10,23                               ; or            (%rdi),%dl
24464  DB  63                                  ; (bad)
24465  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
24466  DB  10,23                               ; or            (%rdi),%dl
24467  DB  63                                  ; (bad)
24468  DB  174                                 ; scas          %es:(%rdi),%al
24469  DB  71,225,61                           ; rex.RXB       loope 5901 <.literal16+0x241>
24470  DB  174                                 ; scas          %es:(%rdi),%al
24471  DB  71,225,61                           ; rex.RXB       loope 5905 <.literal16+0x245>
24472  DB  174                                 ; scas          %es:(%rdi),%al
24473  DB  71,225,61                           ; rex.RXB       loope 5909 <.literal16+0x249>
24474  DB  174                                 ; scas          %es:(%rdi),%al
24475  DB  71,225,61                           ; rex.RXB       loope 590d <.literal16+0x24d>
24476  DB  0,0                                 ; add           %al,(%rax)
24477  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24478  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24479  DB  63                                  ; (bad)
24480  DB  0,0                                 ; add           %al,(%rax)
24481  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
24482  DB  153                                 ; cltd
24483  DB  153                                 ; cltd
24484  DB  62,154                              ; ds            (bad)
24485  DB  153                                 ; cltd
24486  DB  153                                 ; cltd
24487  DB  62,154                              ; ds            (bad)
24488  DB  153                                 ; cltd
24489  DB  153                                 ; cltd
24490  DB  62,154                              ; ds            (bad)
24491  DB  153                                 ; cltd
24492  DB  153                                 ; cltd
24493  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
24494  DB  10,23                               ; or            (%rdi),%dl
24495  DB  63                                  ; (bad)
24496  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
24497  DB  10,23                               ; or            (%rdi),%dl
24498  DB  63                                  ; (bad)
24499  DB  174                                 ; scas          %es:(%rdi),%al
24500  DB  71,225,61                           ; rex.RXB       loope 5941 <.literal16+0x281>
24501  DB  174                                 ; scas          %es:(%rdi),%al
24502  DB  71,225,61                           ; rex.RXB       loope 5945 <.literal16+0x285>
24503  DB  174                                 ; scas          %es:(%rdi),%al
24504  DB  71,225,61                           ; rex.RXB       loope 5949 <.literal16+0x289>
24505  DB  174                                 ; scas          %es:(%rdi),%al
24506  DB  71,225,61                           ; rex.RXB       loope 594d <.literal16+0x28d>
24507  DB  0,0                                 ; add           %al,(%rax)
24508  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24509  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24510  DB  63                                  ; (bad)
24511  DB  0,0                                 ; add           %al,(%rax)
24512  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
24513  DB  153                                 ; cltd
24514  DB  153                                 ; cltd
24515  DB  62,154                              ; ds            (bad)
24516  DB  153                                 ; cltd
24517  DB  153                                 ; cltd
24518  DB  62,154                              ; ds            (bad)
24519  DB  153                                 ; cltd
24520  DB  153                                 ; cltd
24521  DB  62,154                              ; ds            (bad)
24522  DB  153                                 ; cltd
24523  DB  153                                 ; cltd
24524  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
24525  DB  10,23                               ; or            (%rdi),%dl
24526  DB  63                                  ; (bad)
24527  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
24528  DB  10,23                               ; or            (%rdi),%dl
24529  DB  63                                  ; (bad)
24530  DB  174                                 ; scas          %es:(%rdi),%al
24531  DB  71,225,61                           ; rex.RXB       loope 5981 <.literal16+0x2c1>
24532  DB  174                                 ; scas          %es:(%rdi),%al
24533  DB  71,225,61                           ; rex.RXB       loope 5985 <.literal16+0x2c5>
24534  DB  174                                 ; scas          %es:(%rdi),%al
24535  DB  71,225,61                           ; rex.RXB       loope 5989 <.literal16+0x2c9>
24536  DB  174                                 ; scas          %es:(%rdi),%al
24537  DB  71,225,61                           ; rex.RXB       loope 598d <.literal16+0x2cd>
24538  DB  0,0                                 ; add           %al,(%rax)
24539  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24540  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24541  DB  63                                  ; (bad)
24542  DB  0,0                                 ; add           %al,(%rax)
24543  DB  128,63,255                          ; cmpb          $0xff,(%rdi)
24544  DB  0,0                                 ; add           %al,(%rax)
24545  DB  0,255                               ; add           %bh,%bh
24546  DB  0,0                                 ; add           %al,(%rax)
24547  DB  0,255                               ; add           %bh,%bh
24548  DB  0,0                                 ; add           %al,(%rax)
24549  DB  0,255                               ; add           %bh,%bh
24550  DB  0,0                                 ; add           %al,(%rax)
24551  DB  0,0                                 ; add           %al,(%rax)
24552  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24553  DB  63                                  ; (bad)
24554  DB  0,0                                 ; add           %al,(%rax)
24555  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24556  DB  0,128,63,0,0,127                    ; add           %al,0x7f00003f(%rax)
24557  DB  67,0,0                              ; rex.XB        add %al,(%r8)
24558  DB  127,67                              ; jg            59cb <.literal16+0x30b>
24559  DB  0,0                                 ; add           %al,(%rax)
24560  DB  127,67                              ; jg            59cf <.literal16+0x30f>
24561  DB  0,0                                 ; add           %al,(%rax)
24562  DB  127,67                              ; jg            59d3 <.literal16+0x313>
24563  DB  0,0                                 ; add           %al,(%rax)
24564  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24565  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24566  DB  63                                  ; (bad)
24567  DB  0,0                                 ; add           %al,(%rax)
24568  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24569  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24570  DB  63                                  ; (bad)
24571  DB  0,0                                 ; add           %al,(%rax)
24572  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24573  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24574  DB  63                                  ; (bad)
24575  DB  0,0                                 ; add           %al,(%rax)
24576  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24577  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24578  DB  63                                  ; (bad)
24579  DB  145                                 ; xchg          %eax,%ecx
24580  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
24581  DB  145                                 ; xchg          %eax,%ecx
24582  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
24583  DB  154                                 ; (bad)
24584  DB  153                                 ; cltd
24585  DB  153                                 ; cltd
24586  DB  62,154                              ; ds            (bad)
24587  DB  153                                 ; cltd
24588  DB  153                                 ; cltd
24589  DB  62,154                              ; ds            (bad)
24590  DB  153                                 ; cltd
24591  DB  153                                 ; cltd
24592  DB  62,154                              ; ds            (bad)
24593  DB  153                                 ; cltd
24594  DB  153                                 ; cltd
24595  DB  62,92                               ; ds            pop %rsp
24596  DB  143                                 ; (bad)
24597  DB  50,63                               ; xor           (%rdi),%bh
24598  DB  92                                  ; pop           %rsp
24599  DB  143                                 ; (bad)
24600  DB  50,63                               ; xor           (%rdi),%bh
24601  DB  92                                  ; pop           %rsp
24602  DB  143                                 ; (bad)
24603  DB  50,63                               ; xor           (%rdi),%bh
24604  DB  92                                  ; pop           %rsp
24605  DB  143                                 ; (bad)
24606  DB  50,63                               ; xor           (%rdi),%bh
24607  DB  10,215                              ; or            %bh,%dl
24608  DB  35,59                               ; and           (%rbx),%edi
24609  DB  10,215                              ; or            %bh,%dl
24610  DB  35,59                               ; and           (%rbx),%edi
24611  DB  10,215                              ; or            %bh,%dl
24612  DB  35,59                               ; and           (%rbx),%edi
24613  DB  10,215                              ; or            %bh,%dl
24614  DB  35,59                               ; and           (%rbx),%edi
24615  DB  174                                 ; scas          %es:(%rdi),%al
24616  DB  71,97                               ; rex.RXB       (bad)
24617  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
24618  DB  174                                 ; scas          %es:(%rdi),%al
24619  DB  71,97                               ; rex.RXB       (bad)
24620  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
24621  DB  82                                  ; push          %rdx
24622  DB  184,78,65,82,184                    ; mov           $0xb852414e,%eax
24623  DB  78                                  ; rex.WRX
24624  DB  65,82                               ; push          %r10
24625  DB  184,78,65,82,184                    ; mov           $0xb852414e,%eax
24626  DB  78                                  ; rex.WRX
24627  DB  65,57,215                           ; cmp           %edx,%r15d
24628  DB  32,187,57,215,32,187                ; and           %bh,-0x44df28c7(%rbx)
24629  DB  57,215                              ; cmp           %edx,%edi
24630  DB  32,187,57,215,32,187                ; and           %bh,-0x44df28c7(%rbx)
24631  DB  186,159,98,60,186                   ; mov           $0xba3c629f,%edx
24632  DB  159                                 ; lahf
24633  DB  98                                  ; (bad)
24634  DB  60,186                              ; cmp           $0xba,%al
24635  DB  159                                 ; lahf
24636  DB  98                                  ; (bad)
24637  DB  60,186                              ; cmp           $0xba,%al
24638  DB  159                                 ; lahf
24639  DB  98                                  ; (bad)
24640  DB  60,109                              ; cmp           $0x6d,%al
24641  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
24642  DB  144                                 ; nop
24643  DB  63                                  ; (bad)
24644  DB  109                                 ; insl          (%dx),%es:(%rdi)
24645  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
24646  DB  144                                 ; nop
24647  DB  63                                  ; (bad)
24648  DB  109                                 ; insl          (%dx),%es:(%rdi)
24649  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
24650  DB  144                                 ; nop
24651  DB  63                                  ; (bad)
24652  DB  109                                 ; insl          (%dx),%es:(%rdi)
24653  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
24654  DB  144                                 ; nop
24655  DB  63                                  ; (bad)
24656  DB  252                                 ; cld
24657  DB  191,16,62,252,191                   ; mov           $0xbffc3e10,%edi
24658  DB  16,62                               ; adc           %bh,(%rsi)
24659  DB  252                                 ; cld
24660  DB  191,16,62,252,191                   ; mov           $0xbffc3e10,%edi
24661  DB  16,62                               ; adc           %bh,(%rsi)
24662  DB  168,177                             ; test          $0xb1,%al
24663  DB  152                                 ; cwtl
24664  DB  59,168,177,152,59,168               ; cmp           -0x57c4674f(%rax),%ebp
24665  DB  177,152                             ; mov           $0x98,%cl
24666  DB  59,168,177,152,59,0                 ; cmp           0x3b98b1(%rax),%ebp
24667  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24668  DB  63                                  ; (bad)
24669  DB  0,0                                 ; add           %al,(%rax)
24670  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24671  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
24672  DB  64,0,0                              ; add           %al,(%rax)
24673  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
24674  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
24675  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
24676  DB  0,64,0                              ; add           %al,0x0(%rax)
24677  DB  0,0                                 ; add           %al,(%rax)
24678  DB  64,0,0                              ; add           %al,(%rax)
24679  DB  0,64,0                              ; add           %al,0x0(%rax)
24680  DB  0,0                                 ; add           %al,(%rax)
24681  DB  64,0,0                              ; add           %al,(%rax)
24682  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
24683  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
24684  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
24685  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
24686  DB  42,62                               ; sub           (%rsi),%bh
24687  DB  171                                 ; stos          %eax,%es:(%rdi)
24688  DB  170                                 ; stos          %al,%es:(%rdi)
24689  DB  42,62                               ; sub           (%rsi),%bh
24690  DB  171                                 ; stos          %eax,%es:(%rdi)
24691  DB  170                                 ; stos          %al,%es:(%rdi)
24692  DB  42,62                               ; sub           (%rsi),%bh
24693  DB  171                                 ; stos          %eax,%es:(%rdi)
24694  DB  170                                 ; stos          %al,%es:(%rdi)
24695  DB  42,62                               ; sub           (%rsi),%bh
24696  DB  0,0                                 ; add           %al,(%rax)
24697  DB  0,63                                ; add           %bh,(%rdi)
24698  DB  0,0                                 ; add           %al,(%rax)
24699  DB  0,63                                ; add           %bh,(%rdi)
24700  DB  0,0                                 ; add           %al,(%rax)
24701  DB  0,63                                ; add           %bh,(%rdi)
24702  DB  0,0                                 ; add           %al,(%rax)
24703  DB  0,63                                ; add           %bh,(%rdi)
24704  DB  0,0                                 ; add           %al,(%rax)
24705  DB  0,63                                ; add           %bh,(%rdi)
24706  DB  0,0                                 ; add           %al,(%rax)
24707  DB  0,63                                ; add           %bh,(%rdi)
24708  DB  0,0                                 ; add           %al,(%rax)
24709  DB  0,63                                ; add           %bh,(%rdi)
24710  DB  0,0                                 ; add           %al,(%rax)
24711  DB  0,63                                ; add           %bh,(%rdi)
24712  DB  171                                 ; stos          %eax,%es:(%rdi)
24713  DB  170                                 ; stos          %al,%es:(%rdi)
24714  DB  170                                 ; stos          %al,%es:(%rdi)
24715  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
24716  DB  170                                 ; stos          %al,%es:(%rdi)
24717  DB  170                                 ; stos          %al,%es:(%rdi)
24718  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
24719  DB  170                                 ; stos          %al,%es:(%rdi)
24720  DB  170                                 ; stos          %al,%es:(%rdi)
24721  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
24722  DB  170                                 ; stos          %al,%es:(%rdi)
24723  DB  170                                 ; stos          %al,%es:(%rdi)
24724  DB  62,0,0                              ; add           %al,%ds:(%rax)
24725  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24726  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24727  DB  63                                  ; (bad)
24728  DB  0,0                                 ; add           %al,(%rax)
24729  DB  128,63,171                          ; cmpb          $0xab,(%rdi)
24730  DB  170                                 ; stos          %al,%es:(%rdi)
24731  DB  42,63                               ; sub           (%rdi),%bh
24732  DB  171                                 ; stos          %eax,%es:(%rdi)
24733  DB  170                                 ; stos          %al,%es:(%rdi)
24734  DB  42,63                               ; sub           (%rdi),%bh
24735  DB  171                                 ; stos          %eax,%es:(%rdi)
24736  DB  170                                 ; stos          %al,%es:(%rdi)
24737  DB  42,63                               ; sub           (%rdi),%bh
24738  DB  171                                 ; stos          %eax,%es:(%rdi)
24739  DB  170                                 ; stos          %al,%es:(%rdi)
24740  DB  42,63                               ; sub           (%rdi),%bh
24741  DB  0,0                                 ; add           %al,(%rax)
24742  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
24743  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
24744  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
24745  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
24746  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
24747  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
24748  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
24749  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
24750  DB  42,62                               ; sub           (%rsi),%bh
24751  DB  171                                 ; stos          %eax,%es:(%rdi)
24752  DB  170                                 ; stos          %al,%es:(%rdi)
24753  DB  42,62                               ; sub           (%rsi),%bh
24754  DB  171                                 ; stos          %eax,%es:(%rdi)
24755  DB  170                                 ; stos          %al,%es:(%rdi)
24756  DB  42,62                               ; sub           (%rsi),%bh
24757  DB  171                                 ; stos          %eax,%es:(%rdi)
24758  DB  170                                 ; stos          %al,%es:(%rdi)
24759  DB  42,62                               ; sub           (%rsi),%bh
24760  DB  171                                 ; stos          %eax,%es:(%rdi)
24761  DB  170                                 ; stos          %al,%es:(%rdi)
24762  DB  170                                 ; stos          %al,%es:(%rdi)
24763  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
24764  DB  171                                 ; stos          %eax,%es:(%rdi)
24765  DB  170                                 ; stos          %al,%es:(%rdi)
24766  DB  170                                 ; stos          %al,%es:(%rdi)
24767  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
24768  DB  255,0                               ; incl          (%rax)
24769  DB  0,0                                 ; add           %al,(%rax)
24770  DB  255,0                               ; incl          (%rax)
24771  DB  0,0                                 ; add           %al,(%rax)
24772  DB  255,0                               ; incl          (%rax)
24773  DB  0,0                                 ; add           %al,(%rax)
24774  DB  255,0                               ; incl          (%rax)
24775  DB  0,0                                 ; add           %al,(%rax)
24776  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
24777  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
24778  DB  128,128,59,255,0,0,0                ; addb          $0x0,0xff3b(%rax)
24779  DB  255,0                               ; incl          (%rax)
24780  DB  0,0                                 ; add           %al,(%rax)
24781  DB  255,0                               ; incl          (%rax)
24782  DB  0,0                                 ; add           %al,(%rax)
24783  DB  255,0                               ; incl          (%rax)
24784  DB  0,0                                 ; add           %al,(%rax)
24785  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
24786  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
24787  DB  128,128,59,0,248,0,0                ; addb          $0x0,0xf8003b(%rax)
24788  DB  0,248                               ; add           %bh,%al
24789  DB  0,0                                 ; add           %al,(%rax)
24790  DB  0,248                               ; add           %bh,%al
24791  DB  0,0                                 ; add           %al,(%rax)
24792  DB  0,248                               ; add           %bh,%al
24793  DB  0,0                                 ; add           %al,(%rax)
24794  DB  8,33                                ; or            %ah,(%rcx)
24795  DB  132,55                              ; test          %dh,(%rdi)
24796  DB  8,33                                ; or            %ah,(%rcx)
24797  DB  132,55                              ; test          %dh,(%rdi)
24798  DB  8,33                                ; or            %ah,(%rcx)
24799  DB  132,55                              ; test          %dh,(%rdi)
24800  DB  8,33                                ; or            %ah,(%rcx)
24801  DB  132,55                              ; test          %dh,(%rdi)
24802  DB  224,7                               ; loopne        5bb9 <.literal16+0x4f9>
24803  DB  0,0                                 ; add           %al,(%rax)
24804  DB  224,7                               ; loopne        5bbd <.literal16+0x4fd>
24805  DB  0,0                                 ; add           %al,(%rax)
24806  DB  224,7                               ; loopne        5bc1 <.literal16+0x501>
24807  DB  0,0                                 ; add           %al,(%rax)
24808  DB  224,7                               ; loopne        5bc5 <.literal16+0x505>
24809  DB  0,0                                 ; add           %al,(%rax)
24810  DB  33,8                                ; and           %ecx,(%rax)
24811  DB  2,58                                ; add           (%rdx),%bh
24812  DB  33,8                                ; and           %ecx,(%rax)
24813  DB  2,58                                ; add           (%rdx),%bh
24814  DB  33,8                                ; and           %ecx,(%rax)
24815  DB  2,58                                ; add           (%rdx),%bh
24816  DB  33,8                                ; and           %ecx,(%rax)
24817  DB  2,58                                ; add           (%rdx),%bh
24818  DB  31                                  ; (bad)
24819  DB  0,0                                 ; add           %al,(%rax)
24820  DB  0,31                                ; add           %bl,(%rdi)
24821  DB  0,0                                 ; add           %al,(%rax)
24822  DB  0,31                                ; add           %bl,(%rdi)
24823  DB  0,0                                 ; add           %al,(%rax)
24824  DB  0,31                                ; add           %bl,(%rdi)
24825  DB  0,0                                 ; add           %al,(%rax)
24826  DB  0,8                                 ; add           %cl,(%rax)
24827  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
24828  DB  8,33                                ; or            %ah,(%rcx)
24829  DB  4,61                                ; add           $0x3d,%al
24830  DB  8,33                                ; or            %ah,(%rcx)
24831  DB  4,61                                ; add           $0x3d,%al
24832  DB  255,0                               ; incl          (%rax)
24833  DB  0,0                                 ; add           %al,(%rax)
24834  DB  255,0                               ; incl          (%rax)
24835  DB  0,0                                 ; add           %al,(%rax)
24836  DB  255,0                               ; incl          (%rax)
24837  DB  0,0                                 ; add           %al,(%rax)
24838  DB  255,0                               ; incl          (%rax)
24839  DB  0,0                                 ; add           %al,(%rax)
24840  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
24841  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
24842  DB  128,128,59,255,0,255,0              ; addb          $0x0,-0xff00c5(%rax)
24843  DB  255,0                               ; incl          (%rax)
24844  DB  255,0                               ; incl          (%rax)
24845  DB  0,0                                 ; add           %al,(%rax)
24846  DB  0,0                                 ; add           %al,(%rax)
24847  DB  0,0                                 ; add           %al,(%rax)
24848  DB  0,0                                 ; add           %al,(%rax)
24849  DB  128,0,128                           ; addb          $0x80,(%rax)
24850  DB  55                                  ; (bad)
24851  DB  128,0,128                           ; addb          $0x80,(%rax)
24852  DB  55                                  ; (bad)
24853  DB  128,0,128                           ; addb          $0x80,(%rax)
24854  DB  55                                  ; (bad)
24855  DB  128,0,128                           ; addb          $0x80,(%rax)
24856  DB  55                                  ; (bad)
24857  DB  255,0                               ; incl          (%rax)
24858  DB  255,0                               ; incl          (%rax)
24859  DB  255,0                               ; incl          (%rax)
24860  DB  255,0                               ; incl          (%rax)
24861  DB  0,0                                 ; add           %al,(%rax)
24862  DB  0,0                                 ; add           %al,(%rax)
24863  DB  0,0                                 ; add           %al,(%rax)
24864  DB  0,0                                 ; add           %al,(%rax)
24865  DB  0,0                                 ; add           %al,(%rax)
24866  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24867  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24868  DB  63                                  ; (bad)
24869  DB  0,0                                 ; add           %al,(%rax)
24870  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24871  DB  0,127,67                            ; add           %bh,0x43(%rdi)
24872  DB  0,0                                 ; add           %al,(%rax)
24873  DB  127,67                              ; jg            5c9b <.literal16+0x5db>
24874  DB  0,0                                 ; add           %al,(%rax)
24875  DB  127,67                              ; jg            5c9f <.literal16+0x5df>
24876  DB  0,0                                 ; add           %al,(%rax)
24877  DB  127,67                              ; jg            5ca3 <.literal16+0x5e3>
24878  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
24879  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
24880  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
24881  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
24882  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
24883  DB  0,0                                 ; add           %al,(%rax)
24884  DB  52,0                                ; xor           $0x0,%al
24885  DB  0,0                                 ; add           %al,(%rax)
24886  DB  52,0                                ; xor           $0x0,%al
24887  DB  0,0                                 ; add           %al,(%rax)
24888  DB  52,0                                ; xor           $0x0,%al
24889  DB  0,0                                 ; add           %al,(%rax)
24890  DB  52,255                              ; xor           $0xff,%al
24891  DB  255                                 ; (bad)
24892  DB  127,0                               ; jg            5c94 <.literal16+0x5d4>
24893  DB  255                                 ; (bad)
24894  DB  255                                 ; (bad)
24895  DB  127,0                               ; jg            5c98 <.literal16+0x5d8>
24896  DB  255                                 ; (bad)
24897  DB  255                                 ; (bad)
24898  DB  127,0                               ; jg            5c9c <.literal16+0x5dc>
24899  DB  255                                 ; (bad)
24900  DB  255                                 ; (bad)
24901  DB  127,0                               ; jg            5ca0 <.literal16+0x5e0>
24902  DB  0,0                                 ; add           %al,(%rax)
24903  DB  0,63                                ; add           %bh,(%rdi)
24904  DB  0,0                                 ; add           %al,(%rax)
24905  DB  0,63                                ; add           %bh,(%rdi)
24906  DB  0,0                                 ; add           %al,(%rax)
24907  DB  0,63                                ; add           %bh,(%rdi)
24908  DB  0,0                                 ; add           %al,(%rax)
24909  DB  0,63                                ; add           %bh,(%rdi)
24910  DB  119,115                             ; ja            5d25 <.literal16+0x665>
24911  DB  248                                 ; clc
24912  DB  194,119,115                         ; retq          $0x7377
24913  DB  248                                 ; clc
24914  DB  194,119,115                         ; retq          $0x7377
24915  DB  248                                 ; clc
24916  DB  194,119,115                         ; retq          $0x7377
24917  DB  248                                 ; clc
24918  DB  194,117,191                         ; retq          $0xbf75
24919  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
24920  DB  63                                  ; (bad)
24921  DB  117,191                             ; jne           5c89 <.literal16+0x5c9>
24922  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
24923  DB  63                                  ; (bad)
24924  DB  249                                 ; stc
24925  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
24926  DB  249                                 ; stc
24927  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
24928  DB  249                                 ; stc
24929  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
24930  DB  249                                 ; stc
24931  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
24932  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
24933  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a39cca <_sk_callback_sse2+0xffffffffe9a346e3>
24934  DB  220,63                              ; fdivrl        (%rdi)
24935  DB  0,0                                 ; add           %al,(%rax)
24936  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24937  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24938  DB  63                                  ; (bad)
24939  DB  0,0                                 ; add           %al,(%rax)
24940  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
24941  DB  140,242                             ; mov           %?,%edx
24942  DB  66,81                               ; rex.X         push %rcx
24943  DB  140,242                             ; mov           %?,%edx
24944  DB  66,81                               ; rex.X         push %rcx
24945  DB  140,242                             ; mov           %?,%edx
24946  DB  66,81                               ; rex.X         push %rcx
24947  DB  140,242                             ; mov           %?,%edx
24948  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
24949  DB  63                                  ; (bad)
24950  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
24951  DB  63                                  ; (bad)
24952  DB  248                                 ; clc
24953  DB  245                                 ; cmc
24954  DB  154                                 ; (bad)
24955  DB  64,248                              ; rex           clc
24956  DB  245                                 ; cmc
24957  DB  154                                 ; (bad)
24958  DB  64,248                              ; rex           clc
24959  DB  245                                 ; cmc
24960  DB  154                                 ; (bad)
24961  DB  64,248                              ; rex           clc
24962  DB  245                                 ; cmc
24963  DB  154                                 ; (bad)
24964  DB  64,254                              ; rex           (bad)
24965  DB  210,221                             ; rcr           %cl,%ch
24966  DB  65,254                              ; rex.B         (bad)
24967  DB  210,221                             ; rcr           %cl,%ch
24968  DB  65,254                              ; rex.B         (bad)
24969  DB  210,221                             ; rcr           %cl,%ch
24970  DB  65,254                              ; rex.B         (bad)
24971  DB  210,221                             ; rcr           %cl,%ch
24972  DB  65,0,0                              ; add           %al,(%r8)
24973  DB  0,75,0                              ; add           %cl,0x0(%rbx)
24974  DB  0,0                                 ; add           %al,(%rax)
24975  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
24976  DB  0,75,0                              ; add           %cl,0x0(%rbx)
24977  DB  0,0                                 ; add           %al,(%rax)
24978  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
24979  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
24980  DB  0,0                                 ; add           %al,(%rax)
24981  DB  52,0                                ; xor           $0x0,%al
24982  DB  0,0                                 ; add           %al,(%rax)
24983  DB  52,0                                ; xor           $0x0,%al
24984  DB  0,0                                 ; add           %al,(%rax)
24985  DB  52,255                              ; xor           $0xff,%al
24986  DB  255                                 ; (bad)
24987  DB  127,0                               ; jg            5d64 <.literal16+0x6a4>
24988  DB  255                                 ; (bad)
24989  DB  255                                 ; (bad)
24990  DB  127,0                               ; jg            5d68 <.literal16+0x6a8>
24991  DB  255                                 ; (bad)
24992  DB  255                                 ; (bad)
24993  DB  127,0                               ; jg            5d6c <.literal16+0x6ac>
24994  DB  255                                 ; (bad)
24995  DB  255                                 ; (bad)
24996  DB  127,0                               ; jg            5d70 <.literal16+0x6b0>
24997  DB  0,0                                 ; add           %al,(%rax)
24998  DB  0,63                                ; add           %bh,(%rdi)
24999  DB  0,0                                 ; add           %al,(%rax)
25000  DB  0,63                                ; add           %bh,(%rdi)
25001  DB  0,0                                 ; add           %al,(%rax)
25002  DB  0,63                                ; add           %bh,(%rdi)
25003  DB  0,0                                 ; add           %al,(%rax)
25004  DB  0,63                                ; add           %bh,(%rdi)
25005  DB  119,115                             ; ja            5df5 <.literal16+0x735>
25006  DB  248                                 ; clc
25007  DB  194,119,115                         ; retq          $0x7377
25008  DB  248                                 ; clc
25009  DB  194,119,115                         ; retq          $0x7377
25010  DB  248                                 ; clc
25011  DB  194,119,115                         ; retq          $0x7377
25012  DB  248                                 ; clc
25013  DB  194,117,191                         ; retq          $0xbf75
25014  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25015  DB  63                                  ; (bad)
25016  DB  117,191                             ; jne           5d59 <.literal16+0x699>
25017  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25018  DB  63                                  ; (bad)
25019  DB  249                                 ; stc
25020  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25021  DB  249                                 ; stc
25022  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25023  DB  249                                 ; stc
25024  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25025  DB  249                                 ; stc
25026  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25027  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
25028  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a39d9a <_sk_callback_sse2+0xffffffffe9a347b3>
25029  DB  220,63                              ; fdivrl        (%rdi)
25030  DB  0,0                                 ; add           %al,(%rax)
25031  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25032  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25033  DB  63                                  ; (bad)
25034  DB  0,0                                 ; add           %al,(%rax)
25035  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
25036  DB  140,242                             ; mov           %?,%edx
25037  DB  66,81                               ; rex.X         push %rcx
25038  DB  140,242                             ; mov           %?,%edx
25039  DB  66,81                               ; rex.X         push %rcx
25040  DB  140,242                             ; mov           %?,%edx
25041  DB  66,81                               ; rex.X         push %rcx
25042  DB  140,242                             ; mov           %?,%edx
25043  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
25044  DB  63                                  ; (bad)
25045  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
25046  DB  63                                  ; (bad)
25047  DB  248                                 ; clc
25048  DB  245                                 ; cmc
25049  DB  154                                 ; (bad)
25050  DB  64,248                              ; rex           clc
25051  DB  245                                 ; cmc
25052  DB  154                                 ; (bad)
25053  DB  64,248                              ; rex           clc
25054  DB  245                                 ; cmc
25055  DB  154                                 ; (bad)
25056  DB  64,248                              ; rex           clc
25057  DB  245                                 ; cmc
25058  DB  154                                 ; (bad)
25059  DB  64,254                              ; rex           (bad)
25060  DB  210,221                             ; rcr           %cl,%ch
25061  DB  65,254                              ; rex.B         (bad)
25062  DB  210,221                             ; rcr           %cl,%ch
25063  DB  65,254                              ; rex.B         (bad)
25064  DB  210,221                             ; rcr           %cl,%ch
25065  DB  65,254                              ; rex.B         (bad)
25066  DB  210,221                             ; rcr           %cl,%ch
25067  DB  65,0,0                              ; add           %al,(%r8)
25068  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25069  DB  0,0                                 ; add           %al,(%rax)
25070  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25071  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25072  DB  0,0                                 ; add           %al,(%rax)
25073  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25074  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
25075  DB  0,0                                 ; add           %al,(%rax)
25076  DB  52,0                                ; xor           $0x0,%al
25077  DB  0,0                                 ; add           %al,(%rax)
25078  DB  52,0                                ; xor           $0x0,%al
25079  DB  0,0                                 ; add           %al,(%rax)
25080  DB  52,255                              ; xor           $0xff,%al
25081  DB  255                                 ; (bad)
25082  DB  127,0                               ; jg            5e34 <.literal16+0x774>
25083  DB  255                                 ; (bad)
25084  DB  255                                 ; (bad)
25085  DB  127,0                               ; jg            5e38 <.literal16+0x778>
25086  DB  255                                 ; (bad)
25087  DB  255                                 ; (bad)
25088  DB  127,0                               ; jg            5e3c <.literal16+0x77c>
25089  DB  255                                 ; (bad)
25090  DB  255                                 ; (bad)
25091  DB  127,0                               ; jg            5e40 <.literal16+0x780>
25092  DB  0,0                                 ; add           %al,(%rax)
25093  DB  0,63                                ; add           %bh,(%rdi)
25094  DB  0,0                                 ; add           %al,(%rax)
25095  DB  0,63                                ; add           %bh,(%rdi)
25096  DB  0,0                                 ; add           %al,(%rax)
25097  DB  0,63                                ; add           %bh,(%rdi)
25098  DB  0,0                                 ; add           %al,(%rax)
25099  DB  0,63                                ; add           %bh,(%rdi)
25100  DB  119,115                             ; ja            5ec5 <.literal16+0x805>
25101  DB  248                                 ; clc
25102  DB  194,119,115                         ; retq          $0x7377
25103  DB  248                                 ; clc
25104  DB  194,119,115                         ; retq          $0x7377
25105  DB  248                                 ; clc
25106  DB  194,119,115                         ; retq          $0x7377
25107  DB  248                                 ; clc
25108  DB  194,117,191                         ; retq          $0xbf75
25109  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25110  DB  63                                  ; (bad)
25111  DB  117,191                             ; jne           5e29 <.literal16+0x769>
25112  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25113  DB  63                                  ; (bad)
25114  DB  249                                 ; stc
25115  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25116  DB  249                                 ; stc
25117  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25118  DB  249                                 ; stc
25119  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25120  DB  249                                 ; stc
25121  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25122  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
25123  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a39e6a <_sk_callback_sse2+0xffffffffe9a34883>
25124  DB  220,63                              ; fdivrl        (%rdi)
25125  DB  0,0                                 ; add           %al,(%rax)
25126  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25127  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25128  DB  63                                  ; (bad)
25129  DB  0,0                                 ; add           %al,(%rax)
25130  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
25131  DB  140,242                             ; mov           %?,%edx
25132  DB  66,81                               ; rex.X         push %rcx
25133  DB  140,242                             ; mov           %?,%edx
25134  DB  66,81                               ; rex.X         push %rcx
25135  DB  140,242                             ; mov           %?,%edx
25136  DB  66,81                               ; rex.X         push %rcx
25137  DB  140,242                             ; mov           %?,%edx
25138  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
25139  DB  63                                  ; (bad)
25140  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
25141  DB  63                                  ; (bad)
25142  DB  248                                 ; clc
25143  DB  245                                 ; cmc
25144  DB  154                                 ; (bad)
25145  DB  64,248                              ; rex           clc
25146  DB  245                                 ; cmc
25147  DB  154                                 ; (bad)
25148  DB  64,248                              ; rex           clc
25149  DB  245                                 ; cmc
25150  DB  154                                 ; (bad)
25151  DB  64,248                              ; rex           clc
25152  DB  245                                 ; cmc
25153  DB  154                                 ; (bad)
25154  DB  64,254                              ; rex           (bad)
25155  DB  210,221                             ; rcr           %cl,%ch
25156  DB  65,254                              ; rex.B         (bad)
25157  DB  210,221                             ; rcr           %cl,%ch
25158  DB  65,254                              ; rex.B         (bad)
25159  DB  210,221                             ; rcr           %cl,%ch
25160  DB  65,254                              ; rex.B         (bad)
25161  DB  210,221                             ; rcr           %cl,%ch
25162  DB  65,0,0                              ; add           %al,(%r8)
25163  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25164  DB  0,0                                 ; add           %al,(%rax)
25165  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25166  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25167  DB  0,0                                 ; add           %al,(%rax)
25168  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25169  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
25170  DB  0,0                                 ; add           %al,(%rax)
25171  DB  52,0                                ; xor           $0x0,%al
25172  DB  0,0                                 ; add           %al,(%rax)
25173  DB  52,0                                ; xor           $0x0,%al
25174  DB  0,0                                 ; add           %al,(%rax)
25175  DB  52,255                              ; xor           $0xff,%al
25176  DB  255                                 ; (bad)
25177  DB  127,0                               ; jg            5f04 <.literal16+0x844>
25178  DB  255                                 ; (bad)
25179  DB  255                                 ; (bad)
25180  DB  127,0                               ; jg            5f08 <.literal16+0x848>
25181  DB  255                                 ; (bad)
25182  DB  255                                 ; (bad)
25183  DB  127,0                               ; jg            5f0c <.literal16+0x84c>
25184  DB  255                                 ; (bad)
25185  DB  255                                 ; (bad)
25186  DB  127,0                               ; jg            5f10 <.literal16+0x850>
25187  DB  0,0                                 ; add           %al,(%rax)
25188  DB  0,63                                ; add           %bh,(%rdi)
25189  DB  0,0                                 ; add           %al,(%rax)
25190  DB  0,63                                ; add           %bh,(%rdi)
25191  DB  0,0                                 ; add           %al,(%rax)
25192  DB  0,63                                ; add           %bh,(%rdi)
25193  DB  0,0                                 ; add           %al,(%rax)
25194  DB  0,63                                ; add           %bh,(%rdi)
25195  DB  119,115                             ; ja            5f95 <.literal16+0x8d5>
25196  DB  248                                 ; clc
25197  DB  194,119,115                         ; retq          $0x7377
25198  DB  248                                 ; clc
25199  DB  194,119,115                         ; retq          $0x7377
25200  DB  248                                 ; clc
25201  DB  194,119,115                         ; retq          $0x7377
25202  DB  248                                 ; clc
25203  DB  194,117,191                         ; retq          $0xbf75
25204  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25205  DB  63                                  ; (bad)
25206  DB  117,191                             ; jne           5ef9 <.literal16+0x839>
25207  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25208  DB  63                                  ; (bad)
25209  DB  249                                 ; stc
25210  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25211  DB  249                                 ; stc
25212  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25213  DB  249                                 ; stc
25214  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25215  DB  249                                 ; stc
25216  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25217  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
25218  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a39f3a <_sk_callback_sse2+0xffffffffe9a34953>
25219  DB  220,63                              ; fdivrl        (%rdi)
25220  DB  0,0                                 ; add           %al,(%rax)
25221  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25222  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25223  DB  63                                  ; (bad)
25224  DB  0,0                                 ; add           %al,(%rax)
25225  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
25226  DB  140,242                             ; mov           %?,%edx
25227  DB  66,81                               ; rex.X         push %rcx
25228  DB  140,242                             ; mov           %?,%edx
25229  DB  66,81                               ; rex.X         push %rcx
25230  DB  140,242                             ; mov           %?,%edx
25231  DB  66,81                               ; rex.X         push %rcx
25232  DB  140,242                             ; mov           %?,%edx
25233  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
25234  DB  63                                  ; (bad)
25235  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
25236  DB  63                                  ; (bad)
25237  DB  248                                 ; clc
25238  DB  245                                 ; cmc
25239  DB  154                                 ; (bad)
25240  DB  64,248                              ; rex           clc
25241  DB  245                                 ; cmc
25242  DB  154                                 ; (bad)
25243  DB  64,248                              ; rex           clc
25244  DB  245                                 ; cmc
25245  DB  154                                 ; (bad)
25246  DB  64,248                              ; rex           clc
25247  DB  245                                 ; cmc
25248  DB  154                                 ; (bad)
25249  DB  64,254                              ; rex           (bad)
25250  DB  210,221                             ; rcr           %cl,%ch
25251  DB  65,254                              ; rex.B         (bad)
25252  DB  210,221                             ; rcr           %cl,%ch
25253  DB  65,254                              ; rex.B         (bad)
25254  DB  210,221                             ; rcr           %cl,%ch
25255  DB  65,254                              ; rex.B         (bad)
25256  DB  210,221                             ; rcr           %cl,%ch
25257  DB  65,0,0                              ; add           %al,(%r8)
25258  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25259  DB  0,0                                 ; add           %al,(%rax)
25260  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25261  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25262  DB  0,0                                 ; add           %al,(%rax)
25263  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25264  DB  200,66,0,0                          ; enterq        $0x42,$0x0
25265  DB  200,66,0,0                          ; enterq        $0x42,$0x0
25266  DB  200,66,0,0                          ; enterq        $0x42,$0x0
25267  DB  200,66,0,0                          ; enterq        $0x42,$0x0
25268  DB  127,67                              ; jg            6017 <.literal16+0x957>
25269  DB  0,0                                 ; add           %al,(%rax)
25270  DB  127,67                              ; jg            601b <.literal16+0x95b>
25271  DB  0,0                                 ; add           %al,(%rax)
25272  DB  127,67                              ; jg            601f <.literal16+0x95f>
25273  DB  0,0                                 ; add           %al,(%rax)
25274  DB  127,67                              ; jg            6023 <.literal16+0x963>
25275  DB  0,0                                 ; add           %al,(%rax)
25276  DB  0,195                               ; add           %al,%bl
25277  DB  0,0                                 ; add           %al,(%rax)
25278  DB  0,195                               ; add           %al,%bl
25279  DB  0,0                                 ; add           %al,(%rax)
25280  DB  0,195                               ; add           %al,%bl
25281  DB  0,0                                 ; add           %al,(%rax)
25282  DB  0,195                               ; add           %al,%bl
25283  DB  0,0                                 ; add           %al,(%rax)
25284  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
25285  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
25286  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
25287  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
25288  DB  13,60,203,61,13                     ; or            $0xd3dcb3c,%eax
25289  DB  60,203                              ; cmp           $0xcb,%al
25290  DB  61,13,60,203,61                     ; cmp           $0x3dcb3c0d,%eax
25291  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
25292  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
25293  DB  3,59                                ; add           (%rbx),%edi
25294  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
25295  DB  18,3                                ; adc           (%rbx),%al
25296  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
25297  DB  3,59                                ; add           (%rbx),%edi
25298  DB  10,215                              ; or            %bh,%dl
25299  DB  163,59,10,215,163,59,10,215,163     ; movabs        %eax,0xa3d70a3ba3d70a3b
25300  DB  59,10                               ; cmp           (%rdx),%ecx
25301  DB  215                                 ; xlat          %ds:(%rbx)
25302  DB  163,59,194,24,17,60,194,24,17       ; movabs        %eax,0x1118c23c1118c23b
25303  DB  60,194                              ; cmp           $0xc2,%al
25304  DB  24,17                               ; sbb           %dl,(%rcx)
25305  DB  60,194                              ; cmp           $0xc2,%al
25306  DB  24,17                               ; sbb           %dl,(%rcx)
25307  DB  60,203                              ; cmp           $0xcb,%al
25308  DB  61,13,190,203,61                    ; cmp           $0x3dcbbe0d,%eax
25309  DB  13,190,203,61,13                    ; or            $0xd3dcbbe,%eax
25310  DB  190,203,61,13,190                   ; mov           $0xbe0d3dcb,%esi
25311  DB  80                                  ; push          %rax
25312  DB  128,3,62                            ; addb          $0x3e,(%rbx)
25313  DB  80                                  ; push          %rax
25314  DB  128,3,62                            ; addb          $0x3e,(%rbx)
25315  DB  80                                  ; push          %rax
25316  DB  128,3,62                            ; addb          $0x3e,(%rbx)
25317  DB  80                                  ; push          %rax
25318  DB  128,3,62                            ; addb          $0x3e,(%rbx)
25319  DB  31                                  ; (bad)
25320  DB  215                                 ; xlat          %ds:(%rbx)
25321  DB  118,63                              ; jbe           60a3 <.literal16+0x9e3>
25322  DB  31                                  ; (bad)
25323  DB  215                                 ; xlat          %ds:(%rbx)
25324  DB  118,63                              ; jbe           60a7 <.literal16+0x9e7>
25325  DB  31                                  ; (bad)
25326  DB  215                                 ; xlat          %ds:(%rbx)
25327  DB  118,63                              ; jbe           60ab <.literal16+0x9eb>
25328  DB  31                                  ; (bad)
25329  DB  215                                 ; xlat          %ds:(%rbx)
25330  DB  118,63                              ; jbe           60af <.literal16+0x9ef>
25331  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
25332  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
25333  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
25334  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
25335  DB  255,0                               ; incl          (%rax)
25336  DB  0,0                                 ; add           %al,(%rax)
25337  DB  255,0                               ; incl          (%rax)
25338  DB  0,0                                 ; add           %al,(%rax)
25339  DB  255,0                               ; incl          (%rax)
25340  DB  0,0                                 ; add           %al,(%rax)
25341  DB  255,0                               ; incl          (%rax)
25342  DB  0,0                                 ; add           %al,(%rax)
25343  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25344  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25345  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
25346  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25347  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
25348  DB  0,127,67                            ; add           %bh,0x43(%rdi)
25349  DB  0,0                                 ; add           %al,(%rax)
25350  DB  127,67                              ; jg            60fb <.literal16+0xa3b>
25351  DB  0,0                                 ; add           %al,(%rax)
25352  DB  127,67                              ; jg            60ff <.literal16+0xa3f>
25353  DB  0,0                                 ; add           %al,(%rax)
25354  DB  127,67                              ; jg            6103 <.literal16+0xa43>
25355  DB  255,0                               ; incl          (%rax)
25356  DB  0,0                                 ; add           %al,(%rax)
25357  DB  255,0                               ; incl          (%rax)
25358  DB  0,0                                 ; add           %al,(%rax)
25359  DB  255,0                               ; incl          (%rax)
25360  DB  0,0                                 ; add           %al,(%rax)
25361  DB  255,0                               ; incl          (%rax)
25362  DB  0,0                                 ; add           %al,(%rax)
25363  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25364  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25365  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
25366  DB  0,0                                 ; add           %al,(%rax)
25367  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25368  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25369  DB  63                                  ; (bad)
25370  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25371  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25372  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
25373  DB  0,0                                 ; add           %al,(%rax)
25374  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25375  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25376  DB  63                                  ; (bad)
25377  DB  255,0                               ; incl          (%rax)
25378  DB  0,0                                 ; add           %al,(%rax)
25379  DB  255,0                               ; incl          (%rax)
25380  DB  0,0                                 ; add           %al,(%rax)
25381  DB  255,0                               ; incl          (%rax)
25382  DB  0,0                                 ; add           %al,(%rax)
25383  DB  255,0                               ; incl          (%rax)
25384  DB  0,0                                 ; add           %al,(%rax)
25385  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25386  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25387  DB  128,128,59,0,248,0,0                ; addb          $0x0,0xf8003b(%rax)
25388  DB  0,248                               ; add           %bh,%al
25389  DB  0,0                                 ; add           %al,(%rax)
25390  DB  0,248                               ; add           %bh,%al
25391  DB  0,0                                 ; add           %al,(%rax)
25392  DB  0,248                               ; add           %bh,%al
25393  DB  0,0                                 ; add           %al,(%rax)
25394  DB  8,33                                ; or            %ah,(%rcx)
25395  DB  132,55                              ; test          %dh,(%rdi)
25396  DB  8,33                                ; or            %ah,(%rcx)
25397  DB  132,55                              ; test          %dh,(%rdi)
25398  DB  8,33                                ; or            %ah,(%rcx)
25399  DB  132,55                              ; test          %dh,(%rdi)
25400  DB  8,33                                ; or            %ah,(%rcx)
25401  DB  132,55                              ; test          %dh,(%rdi)
25402  DB  224,7                               ; loopne        6159 <.literal16+0xa99>
25403  DB  0,0                                 ; add           %al,(%rax)
25404  DB  224,7                               ; loopne        615d <.literal16+0xa9d>
25405  DB  0,0                                 ; add           %al,(%rax)
25406  DB  224,7                               ; loopne        6161 <.literal16+0xaa1>
25407  DB  0,0                                 ; add           %al,(%rax)
25408  DB  224,7                               ; loopne        6165 <.literal16+0xaa5>
25409  DB  0,0                                 ; add           %al,(%rax)
25410  DB  33,8                                ; and           %ecx,(%rax)
25411  DB  2,58                                ; add           (%rdx),%bh
25412  DB  33,8                                ; and           %ecx,(%rax)
25413  DB  2,58                                ; add           (%rdx),%bh
25414  DB  33,8                                ; and           %ecx,(%rax)
25415  DB  2,58                                ; add           (%rdx),%bh
25416  DB  33,8                                ; and           %ecx,(%rax)
25417  DB  2,58                                ; add           (%rdx),%bh
25418  DB  31                                  ; (bad)
25419  DB  0,0                                 ; add           %al,(%rax)
25420  DB  0,31                                ; add           %bl,(%rdi)
25421  DB  0,0                                 ; add           %al,(%rax)
25422  DB  0,31                                ; add           %bl,(%rdi)
25423  DB  0,0                                 ; add           %al,(%rax)
25424  DB  0,31                                ; add           %bl,(%rdi)
25425  DB  0,0                                 ; add           %al,(%rax)
25426  DB  0,8                                 ; add           %cl,(%rax)
25427  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
25428  DB  8,33                                ; or            %ah,(%rcx)
25429  DB  4,61                                ; add           $0x3d,%al
25430  DB  8,33                                ; or            %ah,(%rcx)
25431  DB  4,61                                ; add           $0x3d,%al
25432  DB  0,0                                 ; add           %al,(%rax)
25433  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25434  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25435  DB  63                                  ; (bad)
25436  DB  0,0                                 ; add           %al,(%rax)
25437  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25438  DB  248                                 ; clc
25439  DB  0,0                                 ; add           %al,(%rax)
25440  DB  0,248                               ; add           %bh,%al
25441  DB  0,0                                 ; add           %al,(%rax)
25442  DB  0,248                               ; add           %bh,%al
25443  DB  0,0                                 ; add           %al,(%rax)
25444  DB  0,248                               ; add           %bh,%al
25445  DB  0,0                                 ; add           %al,(%rax)
25446  DB  8,33                                ; or            %ah,(%rcx)
25447  DB  132,55                              ; test          %dh,(%rdi)
25448  DB  8,33                                ; or            %ah,(%rcx)
25449  DB  132,55                              ; test          %dh,(%rdi)
25450  DB  8,33                                ; or            %ah,(%rcx)
25451  DB  132,55                              ; test          %dh,(%rdi)
25452  DB  8,33                                ; or            %ah,(%rcx)
25453  DB  132,55                              ; test          %dh,(%rdi)
25454  DB  224,7                               ; loopne        61c9 <.literal16+0xb09>
25455  DB  0,0                                 ; add           %al,(%rax)
25456  DB  224,7                               ; loopne        61cd <.literal16+0xb0d>
25457  DB  0,0                                 ; add           %al,(%rax)
25458  DB  224,7                               ; loopne        61d1 <.literal16+0xb11>
25459  DB  0,0                                 ; add           %al,(%rax)
25460  DB  224,7                               ; loopne        61d5 <.literal16+0xb15>
25461  DB  0,0                                 ; add           %al,(%rax)
25462  DB  33,8                                ; and           %ecx,(%rax)
25463  DB  2,58                                ; add           (%rdx),%bh
25464  DB  33,8                                ; and           %ecx,(%rax)
25465  DB  2,58                                ; add           (%rdx),%bh
25466  DB  33,8                                ; and           %ecx,(%rax)
25467  DB  2,58                                ; add           (%rdx),%bh
25468  DB  33,8                                ; and           %ecx,(%rax)
25469  DB  2,58                                ; add           (%rdx),%bh
25470  DB  31                                  ; (bad)
25471  DB  0,0                                 ; add           %al,(%rax)
25472  DB  0,31                                ; add           %bl,(%rdi)
25473  DB  0,0                                 ; add           %al,(%rax)
25474  DB  0,31                                ; add           %bl,(%rdi)
25475  DB  0,0                                 ; add           %al,(%rax)
25476  DB  0,31                                ; add           %bl,(%rdi)
25477  DB  0,0                                 ; add           %al,(%rax)
25478  DB  0,8                                 ; add           %cl,(%rax)
25479  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
25480  DB  8,33                                ; or            %ah,(%rcx)
25481  DB  4,61                                ; add           $0x3d,%al
25482  DB  8,33                                ; or            %ah,(%rcx)
25483  DB  4,61                                ; add           $0x3d,%al
25484  DB  0,0                                 ; add           %al,(%rax)
25485  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25486  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25487  DB  63                                  ; (bad)
25488  DB  0,0                                 ; add           %al,(%rax)
25489  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25490  DB  0,248                               ; add           %bh,%al
25491  DB  65,0,0                              ; add           %al,(%r8)
25492  DB  248                                 ; clc
25493  DB  65,0,0                              ; add           %al,(%r8)
25494  DB  248                                 ; clc
25495  DB  65,0,0                              ; add           %al,(%r8)
25496  DB  248                                 ; clc
25497  DB  65,0,0                              ; add           %al,(%r8)
25498  DB  124,66                              ; jl            6266 <.literal16+0xba6>
25499  DB  0,0                                 ; add           %al,(%rax)
25500  DB  124,66                              ; jl            626a <.literal16+0xbaa>
25501  DB  0,0                                 ; add           %al,(%rax)
25502  DB  124,66                              ; jl            626e <.literal16+0xbae>
25503  DB  0,0                                 ; add           %al,(%rax)
25504  DB  124,66                              ; jl            6272 <.literal16+0xbb2>
25505  DB  0,240                               ; add           %dh,%al
25506  DB  0,0                                 ; add           %al,(%rax)
25507  DB  0,240                               ; add           %dh,%al
25508  DB  0,0                                 ; add           %al,(%rax)
25509  DB  0,240                               ; add           %dh,%al
25510  DB  0,0                                 ; add           %al,(%rax)
25511  DB  0,240                               ; add           %dh,%al
25512  DB  0,0                                 ; add           %al,(%rax)
25513  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
25514  DB  136,55                              ; mov           %dh,(%rdi)
25515  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
25516  DB  136,55                              ; mov           %dh,(%rdi)
25517  DB  0,15                                ; add           %cl,(%rdi)
25518  DB  0,0                                 ; add           %al,(%rax)
25519  DB  0,15                                ; add           %cl,(%rdi)
25520  DB  0,0                                 ; add           %al,(%rax)
25521  DB  0,15                                ; add           %cl,(%rdi)
25522  DB  0,0                                 ; add           %al,(%rax)
25523  DB  0,15                                ; add           %cl,(%rdi)
25524  DB  0,0                                 ; add           %al,(%rax)
25525  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
25526  DB  136,57                              ; mov           %bh,(%rcx)
25527  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
25528  DB  136,57                              ; mov           %bh,(%rcx)
25529  DB  240,0,0                             ; lock          add %al,(%rax)
25530  DB  0,240                               ; add           %dh,%al
25531  DB  0,0                                 ; add           %al,(%rax)
25532  DB  0,240                               ; add           %dh,%al
25533  DB  0,0                                 ; add           %al,(%rax)
25534  DB  0,240                               ; add           %dh,%al
25535  DB  0,0                                 ; add           %al,(%rax)
25536  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
25537  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
25538  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
25539  DB  0,0                                 ; add           %al,(%rax)
25540  DB  0,15                                ; add           %cl,(%rdi)
25541  DB  0,0                                 ; add           %al,(%rax)
25542  DB  0,15                                ; add           %cl,(%rdi)
25543  DB  0,0                                 ; add           %al,(%rax)
25544  DB  0,15                                ; add           %cl,(%rdi)
25545  DB  0,0                                 ; add           %al,(%rax)
25546  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
25547  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
25548  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
25549  DB  0,240                               ; add           %dh,%al
25550  DB  0,0                                 ; add           %al,(%rax)
25551  DB  0,240                               ; add           %dh,%al
25552  DB  0,0                                 ; add           %al,(%rax)
25553  DB  0,240                               ; add           %dh,%al
25554  DB  0,0                                 ; add           %al,(%rax)
25555  DB  0,240                               ; add           %dh,%al
25556  DB  0,0                                 ; add           %al,(%rax)
25557  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
25558  DB  136,55                              ; mov           %dh,(%rdi)
25559  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
25560  DB  136,55                              ; mov           %dh,(%rdi)
25561  DB  0,15                                ; add           %cl,(%rdi)
25562  DB  0,0                                 ; add           %al,(%rax)
25563  DB  0,15                                ; add           %cl,(%rdi)
25564  DB  0,0                                 ; add           %al,(%rax)
25565  DB  0,15                                ; add           %cl,(%rdi)
25566  DB  0,0                                 ; add           %al,(%rax)
25567  DB  0,15                                ; add           %cl,(%rdi)
25568  DB  0,0                                 ; add           %al,(%rax)
25569  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
25570  DB  136,57                              ; mov           %bh,(%rcx)
25571  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
25572  DB  136,57                              ; mov           %bh,(%rcx)
25573  DB  240,0,0                             ; lock          add %al,(%rax)
25574  DB  0,240                               ; add           %dh,%al
25575  DB  0,0                                 ; add           %al,(%rax)
25576  DB  0,240                               ; add           %dh,%al
25577  DB  0,0                                 ; add           %al,(%rax)
25578  DB  0,240                               ; add           %dh,%al
25579  DB  0,0                                 ; add           %al,(%rax)
25580  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
25581  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
25582  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
25583  DB  0,0                                 ; add           %al,(%rax)
25584  DB  0,15                                ; add           %cl,(%rdi)
25585  DB  0,0                                 ; add           %al,(%rax)
25586  DB  0,15                                ; add           %cl,(%rdi)
25587  DB  0,0                                 ; add           %al,(%rax)
25588  DB  0,15                                ; add           %cl,(%rdi)
25589  DB  0,0                                 ; add           %al,(%rax)
25590  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
25591  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
25592  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
25593  DB  0,0                                 ; add           %al,(%rax)
25594  DB  112,65                              ; jo            6375 <.literal16+0xcb5>
25595  DB  0,0                                 ; add           %al,(%rax)
25596  DB  112,65                              ; jo            6379 <.literal16+0xcb9>
25597  DB  0,0                                 ; add           %al,(%rax)
25598  DB  112,65                              ; jo            637d <.literal16+0xcbd>
25599  DB  0,0                                 ; add           %al,(%rax)
25600  DB  112,65                              ; jo            6381 <.literal16+0xcc1>
25601  DB  255,0                               ; incl          (%rax)
25602  DB  0,0                                 ; add           %al,(%rax)
25603  DB  255,0                               ; incl          (%rax)
25604  DB  0,0                                 ; add           %al,(%rax)
25605  DB  255,0                               ; incl          (%rax)
25606  DB  0,0                                 ; add           %al,(%rax)
25607  DB  255,0                               ; incl          (%rax)
25608  DB  0,0                                 ; add           %al,(%rax)
25609  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25610  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25611  DB  128,128,59,255,0,0,0                ; addb          $0x0,0xff3b(%rax)
25612  DB  255,0                               ; incl          (%rax)
25613  DB  0,0                                 ; add           %al,(%rax)
25614  DB  255,0                               ; incl          (%rax)
25615  DB  0,0                                 ; add           %al,(%rax)
25616  DB  255,0                               ; incl          (%rax)
25617  DB  0,0                                 ; add           %al,(%rax)
25618  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25619  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25620  DB  128,128,59,0,0,127,67               ; addb          $0x43,0x7f00003b(%rax)
25621  DB  0,0                                 ; add           %al,(%rax)
25622  DB  127,67                              ; jg            63cb <.literal16+0xd0b>
25623  DB  0,0                                 ; add           %al,(%rax)
25624  DB  127,67                              ; jg            63cf <.literal16+0xd0f>
25625  DB  0,0                                 ; add           %al,(%rax)
25626  DB  127,67                              ; jg            63d3 <.literal16+0xd13>
25627  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
25628  DB  0,0                                 ; add           %al,(%rax)
25629  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
25630  DB  0,0                                 ; add           %al,(%rax)
25631  DB  0,0                                 ; add           %al,(%rax)
25632  DB  0,56                                ; add           %bh,(%rax)
25633  DB  0,0                                 ; add           %al,(%rax)
25634  DB  0,56                                ; add           %bh,(%rax)
25635  DB  0,0                                 ; add           %al,(%rax)
25636  DB  0,56                                ; add           %bh,(%rax)
25637  DB  0,0                                 ; add           %al,(%rax)
25638  DB  0,56                                ; add           %bh,(%rax)
25639  DB  0,0                                 ; add           %al,(%rax)
25640  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
25641  DB  0,0                                 ; add           %al,(%rax)
25642  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
25643  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
25644  DB  128,0,4                             ; addb          $0x4,(%rax)
25645  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
25646  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
25647  DB  128,0,128                           ; addb          $0x80,(%rax)
25648  DB  0,0                                 ; add           %al,(%rax)
25649  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
25650  DB  0,0                                 ; add           %al,(%rax)
25651  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
25652  DB  0,56                                ; add           %bh,(%rax)
25653  DB  0,0                                 ; add           %al,(%rax)
25654  DB  0,56                                ; add           %bh,(%rax)
25655  DB  0,0                                 ; add           %al,(%rax)
25656  DB  0,56                                ; add           %bh,(%rax)
25657  DB  0,0                                 ; add           %al,(%rax)
25658  DB  0,56                                ; add           %bh,(%rax)
25659  DB  0,0                                 ; add           %al,(%rax)
25660  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
25661  DB  0,0                                 ; add           %al,(%rax)
25662  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
25663  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
25664  DB  128,0,4                             ; addb          $0x4,(%rax)
25665  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
25666  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
25667  DB  128,0,0                             ; addb          $0x0,(%rax)
25668  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
25669  DB  0,0                                 ; add           %al,(%rax)
25670  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
25671  DB  0,0                                 ; add           %al,(%rax)
25672  DB  128,56,0                            ; cmpb          $0x0,(%rax)
25673  DB  0,128,56,0,0,128                    ; add           %al,-0x7fffffc8(%rax)
25674  DB  56,0                                ; cmp           %al,(%rax)
25675  DB  0,128,56,0,64,254                   ; add           %al,-0x1bfffc8(%rax)
25676  DB  255,0                               ; incl          (%rax)
25677  DB  64,254                              ; rex           (bad)
25678  DB  255,0                               ; incl          (%rax)
25679  DB  64,254                              ; rex           (bad)
25680  DB  255,0                               ; incl          (%rax)
25681  DB  64,254                              ; rex           (bad)
25682  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
25683  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
25684  DB  55                                  ; (bad)
25685  DB  128,0,128                           ; addb          $0x80,(%rax)
25686  DB  55                                  ; (bad)
25687  DB  128,0,128                           ; addb          $0x80,(%rax)
25688  DB  55                                  ; (bad)
25689  DB  128,0,128                           ; addb          $0x80,(%rax)
25690  DB  55                                  ; (bad)
25691  DB  128,0,128                           ; addb          $0x80,(%rax)
25692  DB  55                                  ; (bad)
25693  DB  128,0,128                           ; addb          $0x80,(%rax)
25694  DB  55                                  ; (bad)
25695  DB  0,0                                 ; add           %al,(%rax)
25696  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25697  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25698  DB  63                                  ; (bad)
25699  DB  0,0                                 ; add           %al,(%rax)
25700  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25701  DB  255                                 ; (bad)
25702  DB  127,71                              ; jg            64bb <.literal16+0xdfb>
25703  DB  0,255                               ; add           %bh,%bh
25704  DB  127,71                              ; jg            64bf <.literal16+0xdff>
25705  DB  0,255                               ; add           %bh,%bh
25706  DB  127,71                              ; jg            64c3 <.literal16+0xe03>
25707  DB  0,255                               ; add           %bh,%bh
25708  DB  127,71                              ; jg            64c7 <.literal16+0xe07>
25709  DB  0,0                                 ; add           %al,(%rax)
25710  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25711  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25712  DB  63                                  ; (bad)
25713  DB  0,0                                 ; add           %al,(%rax)
25714  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25715  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25716  DB  63                                  ; (bad)
25717  DB  0,0                                 ; add           %al,(%rax)
25718  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25719  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25720  DB  63                                  ; (bad)
25721  DB  0,0                                 ; add           %al,(%rax)
25722  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25723  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25724  DB  63                                  ; (bad)
25725  DB  0,0                                 ; add           %al,(%rax)
25726  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25727  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25728  DB  63                                  ; (bad)
25729  DB  0,0                                 ; add           %al,(%rax)
25730  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25731  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25732  DB  63                                  ; (bad)
25733  DB  0,0                                 ; add           %al,(%rax)
25734  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25735  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25736  DB  63                                  ; (bad)
25737  DB  0,0                                 ; add           %al,(%rax)
25738  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25739  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25740  DB  63                                  ; (bad)
25741  DB  0,0                                 ; add           %al,(%rax)
25742  DB  128,191,0,0,128,191,0               ; cmpb          $0x0,-0x40800000(%rdi)
25743  DB  0,128,191,0,0,128                   ; add           %al,-0x7fffff41(%rax)
25744  DB  191,0,0,0,63                        ; mov           $0x3f000000,%edi
25745  DB  0,0                                 ; add           %al,(%rax)
25746  DB  0,63                                ; add           %bh,(%rdi)
25747  DB  0,0                                 ; add           %al,(%rax)
25748  DB  0,63                                ; add           %bh,(%rdi)
25749  DB  0,0                                 ; add           %al,(%rax)
25750  DB  0,63                                ; add           %bh,(%rdi)
25751  DB  0,0                                 ; add           %al,(%rax)
25752  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25753  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25754  DB  63                                  ; (bad)
25755  DB  0,0                                 ; add           %al,(%rax)
25756  DB  128,63,208                          ; cmpb          $0xd0,(%rdi)
25757  DB  179,89                              ; mov           $0x59,%bl
25758  DB  62,208                              ; ds            (bad)
25759  DB  179,89                              ; mov           $0x59,%bl
25760  DB  62,208                              ; ds            (bad)
25761  DB  179,89                              ; mov           $0x59,%bl
25762  DB  62,208                              ; ds            (bad)
25763  DB  179,89                              ; mov           $0x59,%bl
25764  DB  62,89                               ; ds            pop %rcx
25765  DB  23                                  ; (bad)
25766  DB  55                                  ; (bad)
25767  DB  63                                  ; (bad)
25768  DB  89                                  ; pop           %rcx
25769  DB  23                                  ; (bad)
25770  DB  55                                  ; (bad)
25771  DB  63                                  ; (bad)
25772  DB  89                                  ; pop           %rcx
25773  DB  23                                  ; (bad)
25774  DB  55                                  ; (bad)
25775  DB  63                                  ; (bad)
25776  DB  89                                  ; pop           %rcx
25777  DB  23                                  ; (bad)
25778  DB  55                                  ; (bad)
25779  DB  63                                  ; (bad)
25780  DB  152                                 ; cwtl
25781  DB  221,147,61,152,221,147              ; fstl          -0x6c2267c3(%rbx)
25782  DB  61,152,221,147,61                   ; cmp           $0x3d93dd98,%eax
25783  DB  152                                 ; cwtl
25784  DB  221,147,61,45,16,17                 ; fstl          0x11102d3d(%rbx)
25785  DB  192,45,16,17,192,45,16              ; shrb          $0x10,0x2dc01110(%rip)        # 2dc0765a <_sk_callback_sse2+0x2dc02073>
25786  DB  17,192                              ; adc           %eax,%eax
25787  DB  45,16,17,192,18                     ; sub           $0x12c01110,%eax
25788  DB  120,57                              ; js            658c <.literal16+0xecc>
25789  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
25790  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
25791  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
25792  DB  64,32,148,90,62,32,148,90           ; and           %dl,0x5a94203e(%rdx,%rbx,2)
25793  DB  62,32,148,90,62,32,148,90           ; and           %dl,%ds:0x5a94203e(%rdx,%rbx,2)
25794  DB  62,4,157                            ; ds            add $0x9d,%al
25795  DB  30                                  ; (bad)
25796  DB  62,4,157                            ; ds            add $0x9d,%al
25797  DB  30                                  ; (bad)
25798  DB  62,4,157                            ; ds            add $0x9d,%al
25799  DB  30                                  ; (bad)
25800  DB  62,4,157                            ; ds            add $0x9d,%al
25801  DB  30                                  ; (bad)
25802  DB  62,0,24                             ; add           %bl,%ds:(%rax)
25803  DB  161,57,0,24,161,57,0,24,161         ; movabs        0xa1180039a1180039,%eax
25804  DB  57,0                                ; cmp           %eax,(%rax)
25805  DB  24,161,57,1,0,0                     ; sbb           %ah,0x139(%rcx)
25806  DB  0,1                                 ; add           %al,(%rcx)
25807  DB  0,0                                 ; add           %al,(%rax)
25808  DB  0,1                                 ; add           %al,(%rcx)
25809  DB  0,0                                 ; add           %al,(%rax)
25810  DB  0,1                                 ; add           %al,(%rcx)
25811  DB  0,0                                 ; add           %al,(%rax)
25812  DB  0,111,43                            ; add           %ch,0x2b(%rdi)
25813  DB  231,187                             ; out           %eax,$0xbb
25814  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
25815  DB  43,231                              ; sub           %edi,%esp
25816  DB  187,111,43,231,187                  ; mov           $0xbbe72b6f,%ebx
25817  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
25818  DB  43,231                              ; sub           %edi,%esp
25819  DB  187,159,215,202,60                  ; mov           $0x3ccad79f,%ebx
25820  DB  159                                 ; lahf
25821  DB  215                                 ; xlat          %ds:(%rbx)
25822  DB  202,60,159                          ; lret          $0x9f3c
25823  DB  215                                 ; xlat          %ds:(%rbx)
25824  DB  202,60,159                          ; lret          $0x9f3c
25825  DB  215                                 ; xlat          %ds:(%rbx)
25826  DB  202,60,212                          ; lret          $0xd43c
25827  DB  100,84                              ; fs            push %rsp
25828  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
25829  DB  212                                 ; (bad)
25830  DB  100,84                              ; fs            push %rsp
25831  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
25832  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
25833  DB  240,34,62                           ; lock          and (%rsi),%bh
25834  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
25835  DB  240,34,62                           ; lock          and (%rsi),%bh
25836  DB  0,0                                 ; add           %al,(%rax)
25837  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
25838  DB  0,128,62,0,0,128                    ; add           %al,-0x7fffffc2(%rax)
25839  DB  62,0,0                              ; add           %al,%ds:(%rax)
25840  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
25841  DB  0,0                                 ; add           %al,(%rax)
25842  DB  63                                  ; (bad)
25843  DB  0,0                                 ; add           %al,(%rax)
25844  DB  0,63                                ; add           %bh,(%rdi)
25845  DB  0,0                                 ; add           %al,(%rax)
25846  DB  0,63                                ; add           %bh,(%rdi)
25847  DB  0,0                                 ; add           %al,(%rax)
25848  DB  0,63                                ; add           %bh,(%rdi)
25849  DB  0,0                                 ; add           %al,(%rax)
25850  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25851  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25852  DB  63                                  ; (bad)
25853  DB  0,0                                 ; add           %al,(%rax)
25854  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25855  DB  0,0                                 ; add           %al,(%rax)
25856  DB  63                                  ; (bad)
25857  DB  0,0                                 ; add           %al,(%rax)
25858  DB  0,63                                ; add           %bh,(%rdi)
25859  DB  0,0                                 ; add           %al,(%rax)
25860  DB  0,63                                ; add           %bh,(%rdi)
25861  DB  0,0                                 ; add           %al,(%rax)
25862  DB  0,63                                ; add           %bh,(%rdi)
25863  DB  0,0                                 ; add           %al,(%rax)
25864  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25865  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25866  DB  63                                  ; (bad)
25867  DB  0,0                                 ; add           %al,(%rax)
25868  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25869  DB  0,0                                 ; add           %al,(%rax)
25870  DB  191,0,0,0,191                       ; mov           $0xbf000000,%edi
25871  DB  0,0                                 ; add           %al,(%rax)
25872  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
25873  DB  0,0                                 ; add           %al,(%rax)
25874  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25875  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25876  DB  63                                  ; (bad)
25877  DB  0,0                                 ; add           %al,(%rax)
25878  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25879  DB  0,0                                 ; add           %al,(%rax)
25880  DB  63                                  ; (bad)
25881  DB  0,0                                 ; add           %al,(%rax)
25882  DB  0,63                                ; add           %bh,(%rdi)
25883  DB  0,0                                 ; add           %al,(%rax)
25884  DB  0,63                                ; add           %bh,(%rdi)
25885  DB  0,0                                 ; add           %al,(%rax)
25886  DB  0,63                                ; add           %bh,(%rdi)
25887  DB  0,0                                 ; add           %al,(%rax)
25888  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
25889  DB  0,0                                 ; add           %al,(%rax)
25890  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
25891  DB  0,0                                 ; add           %al,(%rax)
25892  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25893  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25894  DB  63                                  ; (bad)
25895  DB  0,0                                 ; add           %al,(%rax)
25896  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25897  DB  0,0                                 ; add           %al,(%rax)
25898  DB  63                                  ; (bad)
25899  DB  0,0                                 ; add           %al,(%rax)
25900  DB  0,63                                ; add           %bh,(%rdi)
25901  DB  0,0                                 ; add           %al,(%rax)
25902  DB  0,63                                ; add           %bh,(%rdi)
25903  DB  0,0                                 ; add           %al,(%rax)
25904  DB  0,63                                ; add           %bh,(%rdi)
25905  DB  0,0                                 ; add           %al,(%rax)
25906  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
25907  DB  0,192                               ; add           %al,%al
25908  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
25909  DB  0,0                                 ; add           %al,(%rax)
25910  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25911  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25912  DB  63                                  ; (bad)
25913  DB  0,0                                 ; add           %al,(%rax)
25914  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
25915  DB  28,199                              ; sbb           $0xc7,%al
25916  DB  62,114,28                           ; jb,pt         66d2 <.literal16+0x1012>
25917  DB  199                                 ; (bad)
25918  DB  62,114,28                           ; jb,pt         66d6 <.literal16+0x1016>
25919  DB  199                                 ; (bad)
25920  DB  62,114,28                           ; jb,pt         66da <.literal16+0x101a>
25921  DB  199                                 ; (bad)
25922  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
25923  DB  170                                 ; stos          %al,%es:(%rdi)
25924  DB  170                                 ; stos          %al,%es:(%rdi)
25925  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
25926  DB  171                                 ; stos          %eax,%es:(%rdi)
25927  DB  170                                 ; stos          %al,%es:(%rdi)
25928  DB  170                                 ; stos          %al,%es:(%rdi)
25929  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
25930  DB  0,0                                 ; add           %al,(%rax)
25931  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
25932  DB  0,0                                 ; add           %al,(%rax)
25933  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
25934  DB  0,0                                 ; add           %al,(%rax)
25935  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25936  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25937  DB  63                                  ; (bad)
25938  DB  0,0                                 ; add           %al,(%rax)
25939  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
25940  DB  85                                  ; push          %rbp
25941  DB  149                                 ; xchg          %eax,%ebp
25942  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
25943  DB  85                                  ; push          %rbp
25944  DB  85                                  ; push          %rbp
25945  DB  149                                 ; xchg          %eax,%ebp
25946  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
25947  DB  0,0                                 ; add           %al,(%rax)
25948  DB  192,63,0                            ; sarb          $0x0,(%rdi)
25949  DB  0,192                               ; add           %al,%al
25950  DB  63                                  ; (bad)
25951  DB  0,0                                 ; add           %al,(%rax)
25952  DB  192,63,0                            ; sarb          $0x0,(%rdi)
25953  DB  0,192                               ; add           %al,%al
25954  DB  63                                  ; (bad)
25955  DB  0,0                                 ; add           %al,(%rax)
25956  DB  0,63                                ; add           %bh,(%rdi)
25957  DB  0,0                                 ; add           %al,(%rax)
25958  DB  0,63                                ; add           %bh,(%rdi)
25959  DB  0,0                                 ; add           %al,(%rax)
25960  DB  0,63                                ; add           %bh,(%rdi)
25961  DB  0,0                                 ; add           %al,(%rax)
25962  DB  0,63                                ; add           %bh,(%rdi)
25963  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
25964  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f565 <_sk_callback_sse2+0x3d639f7e>
25965  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
25966  DB  0,63                                ; add           %bh,(%rdi)
25967  DB  0,0                                 ; add           %al,(%rax)
25968  DB  0,63                                ; add           %bh,(%rdi)
25969  DB  0,0                                 ; add           %al,(%rax)
25970  DB  0,63                                ; add           %bh,(%rdi)
25971  DB  0,0                                 ; add           %al,(%rax)
25972  DB  0,63                                ; add           %bh,(%rdi)
25973  DB  85                                  ; push          %rbp
25974  DB  85                                  ; push          %rbp
25975  DB  149                                 ; xchg          %eax,%ebp
25976  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
25977  DB  85                                  ; push          %rbp
25978  DB  85                                  ; push          %rbp
25979  DB  149                                 ; xchg          %eax,%ebp
25980  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
25981  DB  0,0                                 ; add           %al,(%rax)
25982  DB  192,63,0                            ; sarb          $0x0,(%rdi)
25983  DB  0,192                               ; add           %al,%al
25984  DB  63                                  ; (bad)
25985  DB  0,0                                 ; add           %al,(%rax)
25986  DB  192,63,0                            ; sarb          $0x0,(%rdi)
25987  DB  0,192                               ; add           %al,%al
25988  DB  63                                  ; (bad)
25989  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
25990  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f5a5 <_sk_callback_sse2+0x3d639fbe>
25991  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
25992  DB  192,63,0                            ; sarb          $0x0,(%rdi)
25993  DB  0,192                               ; add           %al,%al
25994  DB  63                                  ; (bad)
25995  DB  0,0                                 ; add           %al,(%rax)
25996  DB  192,63,0                            ; sarb          $0x0,(%rdi)
25997  DB  0,192                               ; add           %al,%al
25998  DB  63                                  ; (bad)
25999  DB  114,28                              ; jb            679e <.literal16+0x10de>
26000  DB  199                                 ; (bad)
26001  DB  62,114,28                           ; jb,pt         67a2 <.literal16+0x10e2>
26002  DB  199                                 ; (bad)
26003  DB  62,114,28                           ; jb,pt         67a6 <.literal16+0x10e6>
26004  DB  199                                 ; (bad)
26005  DB  62,114,28                           ; jb,pt         67aa <.literal16+0x10ea>
26006  DB  199                                 ; (bad)
26007  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
26008  DB  170                                 ; stos          %al,%es:(%rdi)
26009  DB  170                                 ; stos          %al,%es:(%rdi)
26010  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26011  DB  171                                 ; stos          %eax,%es:(%rdi)
26012  DB  170                                 ; stos          %al,%es:(%rdi)
26013  DB  170                                 ; stos          %al,%es:(%rdi)
26014  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26015  DB  0,0                                 ; add           %al,(%rax)
26016  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
26017  DB  0,192                               ; add           %al,%al
26018  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
26019  DB  0,0                                 ; add           %al,(%rax)
26020  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26021  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26022  DB  63                                  ; (bad)
26023  DB  0,0                                 ; add           %al,(%rax)
26024  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
26025  DB  28,199                              ; sbb           $0xc7,%al
26026  DB  62,114,28                           ; jb,pt         67e2 <.literal16+0x1122>
26027  DB  199                                 ; (bad)
26028  DB  62,114,28                           ; jb,pt         67e6 <.literal16+0x1126>
26029  DB  199                                 ; (bad)
26030  DB  62,114,28                           ; jb,pt         67ea <.literal16+0x112a>
26031  DB  199                                 ; (bad)
26032  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
26033  DB  170                                 ; stos          %al,%es:(%rdi)
26034  DB  170                                 ; stos          %al,%es:(%rdi)
26035  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26036  DB  171                                 ; stos          %eax,%es:(%rdi)
26037  DB  170                                 ; stos          %al,%es:(%rdi)
26038  DB  170                                 ; stos          %al,%es:(%rdi)
26039  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26040  DB  0,0                                 ; add           %al,(%rax)
26041  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
26042  DB  0,0                                 ; add           %al,(%rax)
26043  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
26044  DB  0,0                                 ; add           %al,(%rax)
26045  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26046  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26047  DB  63                                  ; (bad)
26048  DB  0,0                                 ; add           %al,(%rax)
26049  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
26050  DB  85                                  ; push          %rbp
26051  DB  149                                 ; xchg          %eax,%ebp
26052  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26053  DB  85                                  ; push          %rbp
26054  DB  85                                  ; push          %rbp
26055  DB  149                                 ; xchg          %eax,%ebp
26056  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26057  DB  0,0                                 ; add           %al,(%rax)
26058  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26059  DB  0,192                               ; add           %al,%al
26060  DB  63                                  ; (bad)
26061  DB  0,0                                 ; add           %al,(%rax)
26062  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26063  DB  0,192                               ; add           %al,%al
26064  DB  63                                  ; (bad)
26065  DB  0,0                                 ; add           %al,(%rax)
26066  DB  0,63                                ; add           %bh,(%rdi)
26067  DB  0,0                                 ; add           %al,(%rax)
26068  DB  0,63                                ; add           %bh,(%rdi)
26069  DB  0,0                                 ; add           %al,(%rax)
26070  DB  0,63                                ; add           %bh,(%rdi)
26071  DB  0,0                                 ; add           %al,(%rax)
26072  DB  0,63                                ; add           %bh,(%rdi)
26073  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
26074  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f675 <_sk_callback_sse2+0x3d63a08e>
26075  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
26076  DB  0,63                                ; add           %bh,(%rdi)
26077  DB  0,0                                 ; add           %al,(%rax)
26078  DB  0,63                                ; add           %bh,(%rdi)
26079  DB  0,0                                 ; add           %al,(%rax)
26080  DB  0,63                                ; add           %bh,(%rdi)
26081  DB  0,0                                 ; add           %al,(%rax)
26082  DB  0,63                                ; add           %bh,(%rdi)
26083  DB  85                                  ; push          %rbp
26084  DB  85                                  ; push          %rbp
26085  DB  149                                 ; xchg          %eax,%ebp
26086  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26087  DB  85                                  ; push          %rbp
26088  DB  85                                  ; push          %rbp
26089  DB  149                                 ; xchg          %eax,%ebp
26090  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26091  DB  0,0                                 ; add           %al,(%rax)
26092  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26093  DB  0,192                               ; add           %al,%al
26094  DB  63                                  ; (bad)
26095  DB  0,0                                 ; add           %al,(%rax)
26096  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26097  DB  0,192                               ; add           %al,%al
26098  DB  63                                  ; (bad)
26099  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
26100  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f6b5 <_sk_callback_sse2+0x3d63a0ce>
26101  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
26102  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26103  DB  0,192                               ; add           %al,%al
26104  DB  63                                  ; (bad)
26105  DB  0,0                                 ; add           %al,(%rax)
26106  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26107  DB  0,192                               ; add           %al,%al
26108  DB  63                                  ; (bad)
26109  DB  114,28                              ; jb            68ae <.literal16+0x11ee>
26110  DB  199                                 ; (bad)
26111  DB  62,114,28                           ; jb,pt         68b2 <_sk_callback_sse2+0x12cb>
26112  DB  199                                 ; (bad)
26113  DB  62,114,28                           ; jb,pt         68b6 <_sk_callback_sse2+0x12cf>
26114  DB  199                                 ; (bad)
26115  DB  62,114,28                           ; jb,pt         68ba <_sk_callback_sse2+0x12d3>
26116  DB  199                                 ; (bad)
26117  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
26118  DB  170                                 ; stos          %al,%es:(%rdi)
26119  DB  170                                 ; stos          %al,%es:(%rdi)
26120  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26121  DB  171                                 ; stos          %eax,%es:(%rdi)
26122  DB  170                                 ; stos          %al,%es:(%rdi)
26123  DB  170                                 ; stos          %al,%es:(%rdi)
26124  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26125ALIGN 32
26126
26127PUBLIC _sk_start_pipeline_ssse3_lowp
26128_sk_start_pipeline_ssse3_lowp LABEL PROC
26129  DB  85                                  ; push          %rbp
26130  DB  72,137,229                          ; mov           %rsp,%rbp
26131  DB  65,87                               ; push          %r15
26132  DB  65,86                               ; push          %r14
26133  DB  65,85                               ; push          %r13
26134  DB  65,84                               ; push          %r12
26135  DB  86                                  ; push          %rsi
26136  DB  87                                  ; push          %rdi
26137  DB  83                                  ; push          %rbx
26138  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
26139  DB  68,15,41,125,176                    ; movaps        %xmm15,-0x50(%rbp)
26140  DB  68,15,41,117,160                    ; movaps        %xmm14,-0x60(%rbp)
26141  DB  68,15,41,109,144                    ; movaps        %xmm13,-0x70(%rbp)
26142  DB  68,15,41,101,128                    ; movaps        %xmm12,-0x80(%rbp)
26143  DB  68,15,41,157,112,255,255,255        ; movaps        %xmm11,-0x90(%rbp)
26144  DB  68,15,41,149,96,255,255,255         ; movaps        %xmm10,-0xa0(%rbp)
26145  DB  68,15,41,141,80,255,255,255         ; movaps        %xmm9,-0xb0(%rbp)
26146  DB  68,15,41,133,64,255,255,255         ; movaps        %xmm8,-0xc0(%rbp)
26147  DB  15,41,189,48,255,255,255            ; movaps        %xmm7,-0xd0(%rbp)
26148  DB  15,41,181,32,255,255,255            ; movaps        %xmm6,-0xe0(%rbp)
26149  DB  76,137,195                          ; mov           %r8,%rbx
26150  DB  73,137,210                          ; mov           %rdx,%r10
26151  DB  73,137,207                          ; mov           %rcx,%r15
26152  DB  76,139,117,48                       ; mov           0x30(%rbp),%r14
26153  DB  76,137,206                          ; mov           %r9,%rsi
26154  DB  72,173                              ; lods          %ds:(%rsi),%rax
26155  DB  73,137,197                          ; mov           %rax,%r13
26156  DB  73,137,244                          ; mov           %rsi,%r12
26157  DB  73,141,79,8                         ; lea           0x8(%r15),%rcx
26158  DB  72,57,217                           ; cmp           %rbx,%rcx
26159  DB  118,5                               ; jbe           7e <_sk_start_pipeline_ssse3_lowp+0x7e>
26160  DB  76,137,250                          ; mov           %r15,%rdx
26161  DB  235,81                              ; jmp           cf <_sk_start_pipeline_ssse3_lowp+0xcf>
26162  DB  72,137,157,24,255,255,255           ; mov           %rbx,-0xe8(%rbp)
26163  DB  65,184,0,0,0,0                      ; mov           $0x0,%r8d
26164  DB  15,87,192                           ; xorps         %xmm0,%xmm0
26165  DB  15,87,201                           ; xorps         %xmm1,%xmm1
26166  DB  15,87,210                           ; xorps         %xmm2,%xmm2
26167  DB  15,87,219                           ; xorps         %xmm3,%xmm3
26168  DB  15,87,228                           ; xorps         %xmm4,%xmm4
26169  DB  15,87,237                           ; xorps         %xmm5,%xmm5
26170  DB  15,87,246                           ; xorps         %xmm6,%xmm6
26171  DB  15,87,255                           ; xorps         %xmm7,%xmm7
26172  DB  76,137,247                          ; mov           %r14,%rdi
26173  DB  76,137,230                          ; mov           %r12,%rsi
26174  DB  76,137,250                          ; mov           %r15,%rdx
26175  DB  76,137,209                          ; mov           %r10,%rcx
26176  DB  76,137,211                          ; mov           %r10,%rbx
26177  DB  65,255,213                          ; callq         *%r13
26178  DB  73,137,218                          ; mov           %rbx,%r10
26179  DB  72,139,157,24,255,255,255           ; mov           -0xe8(%rbp),%rbx
26180  DB  73,141,87,8                         ; lea           0x8(%r15),%rdx
26181  DB  73,131,199,16                       ; add           $0x10,%r15
26182  DB  73,57,223                           ; cmp           %rbx,%r15
26183  DB  73,137,215                          ; mov           %rdx,%r15
26184  DB  118,182                             ; jbe           85 <_sk_start_pipeline_ssse3_lowp+0x85>
26185  DB  73,137,216                          ; mov           %rbx,%r8
26186  DB  73,41,208                           ; sub           %rdx,%r8
26187  DB  116,36                              ; je            fb <_sk_start_pipeline_ssse3_lowp+0xfb>
26188  DB  15,87,192                           ; xorps         %xmm0,%xmm0
26189  DB  15,87,201                           ; xorps         %xmm1,%xmm1
26190  DB  15,87,210                           ; xorps         %xmm2,%xmm2
26191  DB  15,87,219                           ; xorps         %xmm3,%xmm3
26192  DB  15,87,228                           ; xorps         %xmm4,%xmm4
26193  DB  15,87,237                           ; xorps         %xmm5,%xmm5
26194  DB  15,87,246                           ; xorps         %xmm6,%xmm6
26195  DB  15,87,255                           ; xorps         %xmm7,%xmm7
26196  DB  76,137,247                          ; mov           %r14,%rdi
26197  DB  76,137,230                          ; mov           %r12,%rsi
26198  DB  76,137,209                          ; mov           %r10,%rcx
26199  DB  65,255,213                          ; callq         *%r13
26200  DB  72,137,216                          ; mov           %rbx,%rax
26201  DB  15,40,181,32,255,255,255            ; movaps        -0xe0(%rbp),%xmm6
26202  DB  15,40,189,48,255,255,255            ; movaps        -0xd0(%rbp),%xmm7
26203  DB  68,15,40,133,64,255,255,255         ; movaps        -0xc0(%rbp),%xmm8
26204  DB  68,15,40,141,80,255,255,255         ; movaps        -0xb0(%rbp),%xmm9
26205  DB  68,15,40,149,96,255,255,255         ; movaps        -0xa0(%rbp),%xmm10
26206  DB  68,15,40,157,112,255,255,255        ; movaps        -0x90(%rbp),%xmm11
26207  DB  68,15,40,101,128                    ; movaps        -0x80(%rbp),%xmm12
26208  DB  68,15,40,109,144                    ; movaps        -0x70(%rbp),%xmm13
26209  DB  68,15,40,117,160                    ; movaps        -0x60(%rbp),%xmm14
26210  DB  68,15,40,125,176                    ; movaps        -0x50(%rbp),%xmm15
26211  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
26212  DB  91                                  ; pop           %rbx
26213  DB  95                                  ; pop           %rdi
26214  DB  94                                  ; pop           %rsi
26215  DB  65,92                               ; pop           %r12
26216  DB  65,93                               ; pop           %r13
26217  DB  65,94                               ; pop           %r14
26218  DB  65,95                               ; pop           %r15
26219  DB  93                                  ; pop           %rbp
26220  DB  195                                 ; retq
26221
26222PUBLIC _sk_just_return_ssse3_lowp
26223_sk_just_return_ssse3_lowp LABEL PROC
26224  DB  195                                 ; retq
26225
26226PUBLIC _sk_constant_color_ssse3_lowp
26227_sk_constant_color_ssse3_lowp LABEL PROC
26228  DB  72,173                              ; lods          %ds:(%rsi),%rax
26229  DB  243,15,16,29,45,17,0,0              ; movss         0x112d(%rip),%xmm3        # 128c <_sk_xor__ssse3_lowp+0x9b>
26230  DB  243,15,16,0                         ; movss         (%rax),%xmm0
26231  DB  243,15,89,195                       ; mulss         %xmm3,%xmm0
26232  DB  243,68,15,44,200                    ; cvttss2si     %xmm0,%r9d
26233  DB  102,65,15,110,193                   ; movd          %r9d,%xmm0
26234  DB  242,15,112,192,0                    ; pshuflw       $0x0,%xmm0,%xmm0
26235  DB  102,15,112,192,80                   ; pshufd        $0x50,%xmm0,%xmm0
26236  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
26237  DB  243,15,89,203                       ; mulss         %xmm3,%xmm1
26238  DB  243,68,15,44,201                    ; cvttss2si     %xmm1,%r9d
26239  DB  102,65,15,110,201                   ; movd          %r9d,%xmm1
26240  DB  242,15,112,201,0                    ; pshuflw       $0x0,%xmm1,%xmm1
26241  DB  102,15,112,201,80                   ; pshufd        $0x50,%xmm1,%xmm1
26242  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
26243  DB  243,15,89,211                       ; mulss         %xmm3,%xmm2
26244  DB  243,68,15,44,202                    ; cvttss2si     %xmm2,%r9d
26245  DB  102,65,15,110,209                   ; movd          %r9d,%xmm2
26246  DB  242,15,112,210,0                    ; pshuflw       $0x0,%xmm2,%xmm2
26247  DB  102,15,112,210,80                   ; pshufd        $0x50,%xmm2,%xmm2
26248  DB  243,15,89,88,12                     ; mulss         0xc(%rax),%xmm3
26249  DB  243,15,44,195                       ; cvttss2si     %xmm3,%eax
26250  DB  102,15,110,216                      ; movd          %eax,%xmm3
26251  DB  242,15,112,219,0                    ; pshuflw       $0x0,%xmm3,%xmm3
26252  DB  102,15,112,219,80                   ; pshufd        $0x50,%xmm3,%xmm3
26253  DB  72,173                              ; lods          %ds:(%rsi),%rax
26254  DB  255,224                             ; jmpq          *%rax
26255
26256PUBLIC _sk_set_rgb_ssse3_lowp
26257_sk_set_rgb_ssse3_lowp LABEL PROC
26258  DB  72,173                              ; lods          %ds:(%rsi),%rax
26259  DB  243,15,16,21,182,16,0,0             ; movss         0x10b6(%rip),%xmm2        # 1290 <_sk_xor__ssse3_lowp+0x9f>
26260  DB  243,15,16,0                         ; movss         (%rax),%xmm0
26261  DB  243,15,89,194                       ; mulss         %xmm2,%xmm0
26262  DB  243,68,15,44,200                    ; cvttss2si     %xmm0,%r9d
26263  DB  102,65,15,110,193                   ; movd          %r9d,%xmm0
26264  DB  242,15,112,192,0                    ; pshuflw       $0x0,%xmm0,%xmm0
26265  DB  102,15,112,192,80                   ; pshufd        $0x50,%xmm0,%xmm0
26266  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
26267  DB  243,15,89,202                       ; mulss         %xmm2,%xmm1
26268  DB  243,68,15,44,201                    ; cvttss2si     %xmm1,%r9d
26269  DB  102,65,15,110,201                   ; movd          %r9d,%xmm1
26270  DB  242,15,112,201,0                    ; pshuflw       $0x0,%xmm1,%xmm1
26271  DB  102,15,112,201,80                   ; pshufd        $0x50,%xmm1,%xmm1
26272  DB  243,15,89,80,8                      ; mulss         0x8(%rax),%xmm2
26273  DB  243,15,44,194                       ; cvttss2si     %xmm2,%eax
26274  DB  102,15,110,208                      ; movd          %eax,%xmm2
26275  DB  242,15,112,210,0                    ; pshuflw       $0x0,%xmm2,%xmm2
26276  DB  102,15,112,210,80                   ; pshufd        $0x50,%xmm2,%xmm2
26277  DB  72,173                              ; lods          %ds:(%rsi),%rax
26278  DB  255,224                             ; jmpq          *%rax
26279
26280PUBLIC _sk_premul_ssse3_lowp
26281_sk_premul_ssse3_lowp LABEL PROC
26282  DB  102,15,56,11,195                    ; pmulhrsw      %xmm3,%xmm0
26283  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
26284  DB  102,15,56,11,203                    ; pmulhrsw      %xmm3,%xmm1
26285  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
26286  DB  102,15,56,11,211                    ; pmulhrsw      %xmm3,%xmm2
26287  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
26288  DB  72,173                              ; lods          %ds:(%rsi),%rax
26289  DB  255,224                             ; jmpq          *%rax
26290
26291PUBLIC _sk_load_8888_ssse3_lowp
26292_sk_load_8888_ssse3_lowp LABEL PROC
26293  DB  72,173                              ; lods          %ds:(%rsi),%rax
26294  DB  76,139,24                           ; mov           (%rax),%r11
26295  DB  77,133,192                          ; test          %r8,%r8
26296  DB  117,113                             ; jne           2cb <_sk_load_8888_ssse3_lowp+0x7b>
26297  DB  69,15,16,76,147,16                  ; movups        0x10(%r11,%rdx,4),%xmm9
26298  DB  69,15,16,4,147                      ; movups        (%r11,%rdx,4),%xmm8
26299  DB  102,15,111,5,51,16,0,0              ; movdqa        0x1033(%rip),%xmm0        # 12a0 <_sk_xor__ssse3_lowp+0xaf>
26300  DB  102,68,15,56,0,192                  ; pshufb        %xmm0,%xmm8
26301  DB  102,68,15,56,0,200                  ; pshufb        %xmm0,%xmm9
26302  DB  102,65,15,111,208                   ; movdqa        %xmm8,%xmm2
26303  DB  102,65,15,98,209                    ; punpckldq     %xmm9,%xmm2
26304  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
26305  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
26306  DB  102,15,96,194                       ; punpcklbw     %xmm2,%xmm0
26307  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
26308  DB  102,15,104,202                      ; punpckhbw     %xmm2,%xmm1
26309  DB  102,69,15,106,193                   ; punpckhdq     %xmm9,%xmm8
26310  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
26311  DB  102,65,15,96,208                    ; punpcklbw     %xmm8,%xmm2
26312  DB  102,65,15,104,216                   ; punpckhbw     %xmm8,%xmm3
26313  DB  102,68,15,111,5,253,15,0,0          ; movdqa        0xffd(%rip),%xmm8        # 12b0 <_sk_xor__ssse3_lowp+0xbf>
26314  DB  102,65,15,228,192                   ; pmulhuw       %xmm8,%xmm0
26315  DB  102,65,15,228,200                   ; pmulhuw       %xmm8,%xmm1
26316  DB  102,65,15,228,208                   ; pmulhuw       %xmm8,%xmm2
26317  DB  102,65,15,228,216                   ; pmulhuw       %xmm8,%xmm3
26318  DB  72,173                              ; lods          %ds:(%rsi),%rax
26319  DB  255,224                             ; jmpq          *%rax
26320  DB  69,137,193                          ; mov           %r8d,%r9d
26321  DB  65,128,225,7                        ; and           $0x7,%r9b
26322  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
26323  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
26324  DB  65,254,201                          ; dec           %r9b
26325  DB  65,128,249,6                        ; cmp           $0x6,%r9b
26326  DB  119,129                             ; ja            265 <_sk_load_8888_ssse3_lowp+0x15>
26327  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
26328  DB  76,141,21,133,0,0,0                 ; lea           0x85(%rip),%r10        # 374 <_sk_load_8888_ssse3_lowp+0x124>
26329  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
26330  DB  76,1,208                            ; add           %r10,%rax
26331  DB  255,224                             ; jmpq          *%rax
26332  DB  102,65,15,110,68,147,24             ; movd          0x18(%r11,%rdx,4),%xmm0
26333  DB  102,68,15,112,200,69                ; pshufd        $0x45,%xmm0,%xmm9
26334  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
26335  DB  243,65,15,16,68,147,20              ; movss         0x14(%r11,%rdx,4),%xmm0
26336  DB  65,15,198,193,0                     ; shufps        $0x0,%xmm9,%xmm0
26337  DB  65,15,198,193,226                   ; shufps        $0xe2,%xmm9,%xmm0
26338  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
26339  DB  243,65,15,16,68,147,16              ; movss         0x10(%r11,%rdx,4),%xmm0
26340  DB  243,68,15,16,200                    ; movss         %xmm0,%xmm9
26341  DB  243,65,15,16,68,147,12              ; movss         0xc(%r11,%rdx,4),%xmm0
26342  DB  65,15,198,192,32                    ; shufps        $0x20,%xmm8,%xmm0
26343  DB  68,15,198,192,36                    ; shufps        $0x24,%xmm0,%xmm8
26344  DB  243,65,15,16,68,147,8               ; movss         0x8(%r11,%rdx,4),%xmm0
26345  DB  65,15,198,192,48                    ; shufps        $0x30,%xmm8,%xmm0
26346  DB  68,15,198,192,132                   ; shufps        $0x84,%xmm0,%xmm8
26347  DB  243,65,15,16,68,147,4               ; movss         0x4(%r11,%rdx,4),%xmm0
26348  DB  65,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm0
26349  DB  65,15,198,192,226                   ; shufps        $0xe2,%xmm8,%xmm0
26350  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
26351  DB  243,65,15,16,4,147                  ; movss         (%r11,%rdx,4),%xmm0
26352  DB  243,68,15,16,192                    ; movss         %xmm0,%xmm8
26353  DB  233,244,254,255,255                 ; jmpq          265 <_sk_load_8888_ssse3_lowp+0x15>
26354  DB  15,31,0                             ; nopl          (%rax)
26355  DB  237                                 ; in            (%dx),%eax
26356  DB  255                                 ; (bad)
26357  DB  255                                 ; (bad)
26358  DB  255                                 ; (bad)
26359  DB  216,255                             ; fdivr         %st(7),%st
26360  DB  255                                 ; (bad)
26361  DB  255,199                             ; inc           %edi
26362  DB  255                                 ; (bad)
26363  DB  255                                 ; (bad)
26364  DB  255,182,255,255,255,170             ; pushq         -0x55000001(%rsi)
26365  DB  255                                 ; (bad)
26366  DB  255                                 ; (bad)
26367  DB  255,149,255,255,255,132             ; callq         *-0x7b000001(%rbp)
26368  DB  255                                 ; (bad)
26369  DB  255                                 ; (bad)
26370  DB  255                                 ; .byte         0xff
26371
26372PUBLIC _sk_store_8888_ssse3_lowp
26373_sk_store_8888_ssse3_lowp LABEL PROC
26374  DB  72,173                              ; lods          %ds:(%rsi),%rax
26375  DB  76,139,24                           ; mov           (%rax),%r11
26376  DB  102,68,15,111,208                   ; movdqa        %xmm0,%xmm10
26377  DB  102,65,15,113,210,7                 ; psrlw         $0x7,%xmm10
26378  DB  102,68,15,111,194                   ; movdqa        %xmm2,%xmm8
26379  DB  102,65,15,113,208,7                 ; psrlw         $0x7,%xmm8
26380  DB  102,69,15,103,208                   ; packuswb      %xmm8,%xmm10
26381  DB  102,68,15,111,193                   ; movdqa        %xmm1,%xmm8
26382  DB  102,65,15,113,208,7                 ; psrlw         $0x7,%xmm8
26383  DB  102,68,15,111,203                   ; movdqa        %xmm3,%xmm9
26384  DB  102,65,15,113,209,7                 ; psrlw         $0x7,%xmm9
26385  DB  102,69,15,103,193                   ; packuswb      %xmm9,%xmm8
26386  DB  102,69,15,111,202                   ; movdqa        %xmm10,%xmm9
26387  DB  102,69,15,96,200                    ; punpcklbw     %xmm8,%xmm9
26388  DB  102,69,15,104,208                   ; punpckhbw     %xmm8,%xmm10
26389  DB  102,69,15,111,193                   ; movdqa        %xmm9,%xmm8
26390  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
26391  DB  102,69,15,105,202                   ; punpckhwd     %xmm10,%xmm9
26392  DB  77,133,192                          ; test          %r8,%r8
26393  DB  117,17                              ; jne           3ff <_sk_store_8888_ssse3_lowp+0x6f>
26394  DB  243,69,15,127,76,147,16             ; movdqu        %xmm9,0x10(%r11,%rdx,4)
26395  DB  243,69,15,127,4,147                 ; movdqu        %xmm8,(%r11,%rdx,4)
26396  DB  72,173                              ; lods          %ds:(%rsi),%rax
26397  DB  255,224                             ; jmpq          *%rax
26398  DB  69,137,193                          ; mov           %r8d,%r9d
26399  DB  65,128,225,7                        ; and           $0x7,%r9b
26400  DB  65,254,201                          ; dec           %r9b
26401  DB  65,128,249,6                        ; cmp           $0x6,%r9b
26402  DB  119,236                             ; ja            3fb <_sk_store_8888_ssse3_lowp+0x6b>
26403  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
26404  DB  76,141,21,90,0,0,0                  ; lea           0x5a(%rip),%r10        # 474 <_sk_store_8888_ssse3_lowp+0xe4>
26405  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
26406  DB  76,1,208                            ; add           %r10,%rax
26407  DB  255,224                             ; jmpq          *%rax
26408  DB  102,69,15,112,209,78                ; pshufd        $0x4e,%xmm9,%xmm10
26409  DB  102,69,15,126,84,147,24             ; movd          %xmm10,0x18(%r11,%rdx,4)
26410  DB  102,69,15,112,209,229               ; pshufd        $0xe5,%xmm9,%xmm10
26411  DB  102,69,15,126,84,147,20             ; movd          %xmm10,0x14(%r11,%rdx,4)
26412  DB  102,69,15,126,76,147,16             ; movd          %xmm9,0x10(%r11,%rdx,4)
26413  DB  102,69,15,112,200,231               ; pshufd        $0xe7,%xmm8,%xmm9
26414  DB  102,69,15,126,76,147,12             ; movd          %xmm9,0xc(%r11,%rdx,4)
26415  DB  102,69,15,112,200,78                ; pshufd        $0x4e,%xmm8,%xmm9
26416  DB  102,69,15,126,76,147,8              ; movd          %xmm9,0x8(%r11,%rdx,4)
26417  DB  102,69,15,112,200,229               ; pshufd        $0xe5,%xmm8,%xmm9
26418  DB  102,69,15,126,76,147,4              ; movd          %xmm9,0x4(%r11,%rdx,4)
26419  DB  102,69,15,126,4,147                 ; movd          %xmm8,(%r11,%rdx,4)
26420  DB  235,136                             ; jmp           3fb <_sk_store_8888_ssse3_lowp+0x6b>
26421  DB  144                                 ; nop
26422  DB  247,255                             ; idiv          %edi
26423  DB  255                                 ; (bad)
26424  DB  255                                 ; (bad)
26425  DB  234                                 ; (bad)
26426  DB  255                                 ; (bad)
26427  DB  255                                 ; (bad)
26428  DB  255                                 ; (bad)
26429  DB  221,255                             ; (bad)
26430  DB  255                                 ; (bad)
26431  DB  255,208                             ; callq         *%rax
26432  DB  255                                 ; (bad)
26433  DB  255                                 ; (bad)
26434  DB  255,201                             ; dec           %ecx
26435  DB  255                                 ; (bad)
26436  DB  255                                 ; (bad)
26437  DB  255                                 ; (bad)
26438  DB  188,255,255,255,175                 ; mov           $0xafffffff,%esp
26439  DB  255                                 ; (bad)
26440  DB  255                                 ; (bad)
26441  DB  255                                 ; .byte         0xff
26442
26443PUBLIC _sk_load_a8_ssse3_lowp
26444_sk_load_a8_ssse3_lowp LABEL PROC
26445  DB  80                                  ; push          %rax
26446  DB  72,173                              ; lods          %ds:(%rsi),%rax
26447  DB  76,139,24                           ; mov           (%rax),%r11
26448  DB  77,133,192                          ; test          %r8,%r8
26449  DB  117,39                              ; jne           4c2 <_sk_load_a8_ssse3_lowp+0x32>
26450  DB  243,65,15,126,28,19                 ; movq          (%r11,%rdx,1),%xmm3
26451  DB  102,15,96,216                       ; punpcklbw     %xmm0,%xmm3
26452  DB  102,15,113,243,8                    ; psllw         $0x8,%xmm3
26453  DB  102,15,228,29,14,14,0,0             ; pmulhuw       0xe0e(%rip),%xmm3        # 12c0 <_sk_xor__ssse3_lowp+0xcf>
26454  DB  72,173                              ; lods          %ds:(%rsi),%rax
26455  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
26456  DB  15,87,201                           ; xorps         %xmm1,%xmm1
26457  DB  15,87,210                           ; xorps         %xmm2,%xmm2
26458  DB  65,89                               ; pop           %r9
26459  DB  255,224                             ; jmpq          *%rax
26460  DB  69,137,193                          ; mov           %r8d,%r9d
26461  DB  65,128,225,7                        ; and           $0x7,%r9b
26462  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
26463  DB  65,254,201                          ; dec           %r9b
26464  DB  65,128,249,6                        ; cmp           $0x6,%r9b
26465  DB  119,207                             ; ja            4a5 <_sk_load_a8_ssse3_lowp+0x15>
26466  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
26467  DB  76,141,21,95,0,0,0                  ; lea           0x5f(%rip),%r10        # 540 <_sk_load_a8_ssse3_lowp+0xb0>
26468  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
26469  DB  76,1,208                            ; add           %r10,%rax
26470  DB  255,224                             ; jmpq          *%rax
26471  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
26472  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
26473  DB  102,15,196,216,6                    ; pinsrw        $0x6,%eax,%xmm3
26474  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
26475  DB  102,15,196,216,5                    ; pinsrw        $0x5,%eax,%xmm3
26476  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
26477  DB  102,15,196,216,4                    ; pinsrw        $0x4,%eax,%xmm3
26478  DB  65,15,182,68,19,3                   ; movzbl        0x3(%r11,%rdx,1),%eax
26479  DB  102,15,196,216,3                    ; pinsrw        $0x3,%eax,%xmm3
26480  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
26481  DB  102,15,196,216,2                    ; pinsrw        $0x2,%eax,%xmm3
26482  DB  65,15,182,68,19,1                   ; movzbl        0x1(%r11,%rdx,1),%eax
26483  DB  102,15,196,216,1                    ; pinsrw        $0x1,%eax,%xmm3
26484  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
26485  DB  102,15,196,216,0                    ; pinsrw        $0x0,%eax,%xmm3
26486  DB  233,102,255,255,255                 ; jmpq          4a5 <_sk_load_a8_ssse3_lowp+0x15>
26487  DB  144                                 ; nop
26488  DB  240,255                             ; lock          (bad)
26489  DB  255                                 ; (bad)
26490  DB  255,229                             ; jmpq          *%rbp
26491  DB  255                                 ; (bad)
26492  DB  255                                 ; (bad)
26493  DB  255                                 ; (bad)
26494  DB  218,255                             ; (bad)
26495  DB  255                                 ; (bad)
26496  DB  255,207                             ; dec           %edi
26497  DB  255                                 ; (bad)
26498  DB  255                                 ; (bad)
26499  DB  255,196                             ; inc           %esp
26500  DB  255                                 ; (bad)
26501  DB  255                                 ; (bad)
26502  DB  255                                 ; (bad)
26503  DB  185,255,255,255,170                 ; mov           $0xaaffffff,%ecx
26504  DB  255                                 ; (bad)
26505  DB  255                                 ; (bad)
26506  DB  255                                 ; .byte         0xff
26507
26508PUBLIC _sk_store_a8_ssse3_lowp
26509_sk_store_a8_ssse3_lowp LABEL PROC
26510  DB  72,173                              ; lods          %ds:(%rsi),%rax
26511  DB  76,139,24                           ; mov           (%rax),%r11
26512  DB  102,68,15,111,195                   ; movdqa        %xmm3,%xmm8
26513  DB  102,65,15,113,208,7                 ; psrlw         $0x7,%xmm8
26514  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
26515  DB  77,133,192                          ; test          %r8,%r8
26516  DB  117,10                              ; jne           580 <_sk_store_a8_ssse3_lowp+0x24>
26517  DB  242,69,15,17,4,19                   ; movsd         %xmm8,(%r11,%rdx,1)
26518  DB  72,173                              ; lods          %ds:(%rsi),%rax
26519  DB  255,224                             ; jmpq          *%rax
26520  DB  69,137,193                          ; mov           %r8d,%r9d
26521  DB  65,128,225,7                        ; and           $0x7,%r9b
26522  DB  65,254,201                          ; dec           %r9b
26523  DB  65,128,249,6                        ; cmp           $0x6,%r9b
26524  DB  119,236                             ; ja            57c <_sk_store_a8_ssse3_lowp+0x20>
26525  DB  72,131,236,120                      ; sub           $0x78,%rsp
26526  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
26527  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
26528  DB  76,141,21,128,0,0,0                 ; lea           0x80(%rip),%r10        # 624 <_sk_store_a8_ssse3_lowp+0xc8>
26529  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
26530  DB  76,1,208                            ; add           %r10,%rax
26531  DB  255,224                             ; jmpq          *%rax
26532  DB  102,68,15,127,68,36,96              ; movdqa        %xmm8,0x60(%rsp)
26533  DB  138,68,36,108                       ; mov           0x6c(%rsp),%al
26534  DB  65,136,68,19,6                      ; mov           %al,0x6(%r11,%rdx,1)
26535  DB  102,68,15,127,68,36,80              ; movdqa        %xmm8,0x50(%rsp)
26536  DB  138,68,36,90                        ; mov           0x5a(%rsp),%al
26537  DB  65,136,68,19,5                      ; mov           %al,0x5(%r11,%rdx,1)
26538  DB  102,68,15,127,68,36,64              ; movdqa        %xmm8,0x40(%rsp)
26539  DB  138,68,36,72                        ; mov           0x48(%rsp),%al
26540  DB  65,136,68,19,4                      ; mov           %al,0x4(%r11,%rdx,1)
26541  DB  102,68,15,127,68,36,48              ; movdqa        %xmm8,0x30(%rsp)
26542  DB  138,68,36,54                        ; mov           0x36(%rsp),%al
26543  DB  65,136,68,19,3                      ; mov           %al,0x3(%r11,%rdx,1)
26544  DB  102,68,15,127,68,36,32              ; movdqa        %xmm8,0x20(%rsp)
26545  DB  138,68,36,36                        ; mov           0x24(%rsp),%al
26546  DB  65,136,68,19,2                      ; mov           %al,0x2(%r11,%rdx,1)
26547  DB  102,68,15,127,68,36,16              ; movdqa        %xmm8,0x10(%rsp)
26548  DB  138,68,36,18                        ; mov           0x12(%rsp),%al
26549  DB  65,136,68,19,1                      ; mov           %al,0x1(%r11,%rdx,1)
26550  DB  102,68,15,127,4,36                  ; movdqa        %xmm8,(%rsp)
26551  DB  138,4,36                            ; mov           (%rsp),%al
26552  DB  65,136,4,19                         ; mov           %al,(%r11,%rdx,1)
26553  DB  72,131,196,120                      ; add           $0x78,%rsp
26554  DB  233,89,255,255,255                  ; jmpq          57c <_sk_store_a8_ssse3_lowp+0x20>
26555  DB  144                                 ; nop
26556  DB  233,255,255,255,217                 ; jmpq          ffffffffda000628 <_sk_xor__ssse3_lowp+0xffffffffd9fff437>
26557  DB  255                                 ; (bad)
26558  DB  255                                 ; (bad)
26559  DB  255,201                             ; dec           %ecx
26560  DB  255                                 ; (bad)
26561  DB  255                                 ; (bad)
26562  DB  255                                 ; (bad)
26563  DB  185,255,255,255,169                 ; mov           $0xa9ffffff,%ecx
26564  DB  255                                 ; (bad)
26565  DB  255                                 ; (bad)
26566  DB  255,153,255,255,255,137             ; lcall         *-0x76000001(%rcx)
26567  DB  255                                 ; (bad)
26568  DB  255                                 ; (bad)
26569  DB  255                                 ; .byte         0xff
26570
26571PUBLIC _sk_load_g8_ssse3_lowp
26572_sk_load_g8_ssse3_lowp LABEL PROC
26573  DB  80                                  ; push          %rax
26574  DB  72,173                              ; lods          %ds:(%rsi),%rax
26575  DB  76,139,24                           ; mov           (%rax),%r11
26576  DB  77,133,192                          ; test          %r8,%r8
26577  DB  117,44                              ; jne           677 <_sk_load_g8_ssse3_lowp+0x37>
26578  DB  243,65,15,126,4,19                  ; movq          (%r11,%rdx,1),%xmm0
26579  DB  102,15,96,192                       ; punpcklbw     %xmm0,%xmm0
26580  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
26581  DB  102,15,228,5,110,12,0,0             ; pmulhuw       0xc6e(%rip),%xmm0        # 12d0 <_sk_xor__ssse3_lowp+0xdf>
26582  DB  72,173                              ; lods          %ds:(%rsi),%rax
26583  DB  15,40,29,117,12,0,0                 ; movaps        0xc75(%rip),%xmm3        # 12e0 <_sk_xor__ssse3_lowp+0xef>
26584  DB  102,15,111,200                      ; movdqa        %xmm0,%xmm1
26585  DB  102,15,111,208                      ; movdqa        %xmm0,%xmm2
26586  DB  65,89                               ; pop           %r9
26587  DB  255,224                             ; jmpq          *%rax
26588  DB  69,137,193                          ; mov           %r8d,%r9d
26589  DB  65,128,225,7                        ; and           $0x7,%r9b
26590  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
26591  DB  65,254,201                          ; dec           %r9b
26592  DB  65,128,249,6                        ; cmp           $0x6,%r9b
26593  DB  119,202                             ; ja            655 <_sk_load_g8_ssse3_lowp+0x15>
26594  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
26595  DB  76,141,21,94,0,0,0                  ; lea           0x5e(%rip),%r10        # 6f4 <_sk_load_g8_ssse3_lowp+0xb4>
26596  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
26597  DB  76,1,208                            ; add           %r10,%rax
26598  DB  255,224                             ; jmpq          *%rax
26599  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
26600  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
26601  DB  102,15,196,192,6                    ; pinsrw        $0x6,%eax,%xmm0
26602  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
26603  DB  102,15,196,192,5                    ; pinsrw        $0x5,%eax,%xmm0
26604  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
26605  DB  102,15,196,192,4                    ; pinsrw        $0x4,%eax,%xmm0
26606  DB  65,15,182,68,19,3                   ; movzbl        0x3(%r11,%rdx,1),%eax
26607  DB  102,15,196,192,3                    ; pinsrw        $0x3,%eax,%xmm0
26608  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
26609  DB  102,15,196,192,2                    ; pinsrw        $0x2,%eax,%xmm0
26610  DB  65,15,182,68,19,1                   ; movzbl        0x1(%r11,%rdx,1),%eax
26611  DB  102,15,196,192,1                    ; pinsrw        $0x1,%eax,%xmm0
26612  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
26613  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
26614  DB  233,97,255,255,255                  ; jmpq          655 <_sk_load_g8_ssse3_lowp+0x15>
26615  DB  241                                 ; icebp
26616  DB  255                                 ; (bad)
26617  DB  255                                 ; (bad)
26618  DB  255,230                             ; jmpq          *%rsi
26619  DB  255                                 ; (bad)
26620  DB  255                                 ; (bad)
26621  DB  255                                 ; (bad)
26622  DB  219,255                             ; (bad)
26623  DB  255                                 ; (bad)
26624  DB  255,208                             ; callq         *%rax
26625  DB  255                                 ; (bad)
26626  DB  255                                 ; (bad)
26627  DB  255,197                             ; inc           %ebp
26628  DB  255                                 ; (bad)
26629  DB  255                                 ; (bad)
26630  DB  255                                 ; (bad)
26631  DB  186,255,255,255,171                 ; mov           $0xabffffff,%edx
26632  DB  255                                 ; (bad)
26633  DB  255                                 ; (bad)
26634  DB  255                                 ; .byte         0xff
26635
26636PUBLIC _sk_srcover_rgba_8888_ssse3_lowp
26637_sk_srcover_rgba_8888_ssse3_lowp LABEL PROC
26638  DB  72,173                              ; lods          %ds:(%rsi),%rax
26639  DB  76,139,24                           ; mov           (%rax),%r11
26640  DB  77,133,192                          ; test          %r8,%r8
26641  DB  15,133,66,1,0,0                     ; jne           860 <_sk_srcover_rgba_8888_ssse3_lowp+0x150>
26642  DB  69,15,16,76,147,16                  ; movups        0x10(%r11,%rdx,4),%xmm9
26643  DB  69,15,16,4,147                      ; movups        (%r11,%rdx,4),%xmm8
26644  DB  77,133,192                          ; test          %r8,%r8
26645  DB  102,15,111,37,188,11,0,0            ; movdqa        0xbbc(%rip),%xmm4        # 12f0 <_sk_xor__ssse3_lowp+0xff>
26646  DB  102,68,15,56,0,196                  ; pshufb        %xmm4,%xmm8
26647  DB  102,68,15,56,0,204                  ; pshufb        %xmm4,%xmm9
26648  DB  102,65,15,111,240                   ; movdqa        %xmm8,%xmm6
26649  DB  102,65,15,98,241                    ; punpckldq     %xmm9,%xmm6
26650  DB  102,15,239,255                      ; pxor          %xmm7,%xmm7
26651  DB  102,15,239,228                      ; pxor          %xmm4,%xmm4
26652  DB  102,15,96,230                       ; punpcklbw     %xmm6,%xmm4
26653  DB  102,15,239,237                      ; pxor          %xmm5,%xmm5
26654  DB  102,15,104,238                      ; punpckhbw     %xmm6,%xmm5
26655  DB  102,69,15,106,193                   ; punpckhdq     %xmm9,%xmm8
26656  DB  102,15,239,246                      ; pxor          %xmm6,%xmm6
26657  DB  102,65,15,96,240                    ; punpcklbw     %xmm8,%xmm6
26658  DB  102,65,15,104,248                   ; punpckhbw     %xmm8,%xmm7
26659  DB  102,68,15,111,5,134,11,0,0          ; movdqa        0xb86(%rip),%xmm8        # 1300 <_sk_xor__ssse3_lowp+0x10f>
26660  DB  102,65,15,228,224                   ; pmulhuw       %xmm8,%xmm4
26661  DB  102,65,15,228,232                   ; pmulhuw       %xmm8,%xmm5
26662  DB  102,65,15,228,240                   ; pmulhuw       %xmm8,%xmm6
26663  DB  102,65,15,228,248                   ; pmulhuw       %xmm8,%xmm7
26664  DB  102,68,15,111,29,121,11,0,0         ; movdqa        0xb79(%rip),%xmm11        # 1310 <_sk_xor__ssse3_lowp+0x11f>
26665  DB  102,68,15,249,219                   ; psubw         %xmm3,%xmm11
26666  DB  102,68,15,111,196                   ; movdqa        %xmm4,%xmm8
26667  DB  102,69,15,56,11,195                 ; pmulhrsw      %xmm11,%xmm8
26668  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
26669  DB  102,68,15,253,192                   ; paddw         %xmm0,%xmm8
26670  DB  102,15,111,197                      ; movdqa        %xmm5,%xmm0
26671  DB  102,65,15,56,11,195                 ; pmulhrsw      %xmm11,%xmm0
26672  DB  102,68,15,56,29,200                 ; pabsw         %xmm0,%xmm9
26673  DB  102,68,15,253,201                   ; paddw         %xmm1,%xmm9
26674  DB  102,15,111,198                      ; movdqa        %xmm6,%xmm0
26675  DB  102,65,15,56,11,195                 ; pmulhrsw      %xmm11,%xmm0
26676  DB  102,68,15,56,29,208                 ; pabsw         %xmm0,%xmm10
26677  DB  102,68,15,253,210                   ; paddw         %xmm2,%xmm10
26678  DB  102,68,15,56,11,223                 ; pmulhrsw      %xmm7,%xmm11
26679  DB  102,69,15,56,29,219                 ; pabsw         %xmm11,%xmm11
26680  DB  102,68,15,253,219                   ; paddw         %xmm3,%xmm11
26681  DB  102,65,15,111,208                   ; movdqa        %xmm8,%xmm2
26682  DB  102,15,113,210,7                    ; psrlw         $0x7,%xmm2
26683  DB  102,65,15,111,194                   ; movdqa        %xmm10,%xmm0
26684  DB  102,15,113,208,7                    ; psrlw         $0x7,%xmm0
26685  DB  102,15,103,208                      ; packuswb      %xmm0,%xmm2
26686  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
26687  DB  102,15,113,208,7                    ; psrlw         $0x7,%xmm0
26688  DB  102,65,15,111,203                   ; movdqa        %xmm11,%xmm1
26689  DB  102,15,113,209,7                    ; psrlw         $0x7,%xmm1
26690  DB  102,15,103,193                      ; packuswb      %xmm1,%xmm0
26691  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
26692  DB  102,15,96,200                       ; punpcklbw     %xmm0,%xmm1
26693  DB  102,15,104,208                      ; punpckhbw     %xmm0,%xmm2
26694  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
26695  DB  102,15,97,194                       ; punpcklwd     %xmm2,%xmm0
26696  DB  102,15,105,202                      ; punpckhwd     %xmm2,%xmm1
26697  DB  15,133,207,0,0,0                    ; jne           90a <_sk_srcover_rgba_8888_ssse3_lowp+0x1fa>
26698  DB  243,65,15,127,76,147,16             ; movdqu        %xmm1,0x10(%r11,%rdx,4)
26699  DB  243,65,15,127,4,147                 ; movdqu        %xmm0,(%r11,%rdx,4)
26700  DB  72,173                              ; lods          %ds:(%rsi),%rax
26701  DB  102,65,15,111,192                   ; movdqa        %xmm8,%xmm0
26702  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
26703  DB  102,65,15,111,210                   ; movdqa        %xmm10,%xmm2
26704  DB  102,65,15,111,219                   ; movdqa        %xmm11,%xmm3
26705  DB  255,224                             ; jmpq          *%rax
26706  DB  69,137,193                          ; mov           %r8d,%r9d
26707  DB  65,128,225,7                        ; and           $0x7,%r9b
26708  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
26709  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
26710  DB  65,254,201                          ; dec           %r9b
26711  DB  65,128,249,6                        ; cmp           $0x6,%r9b
26712  DB  15,135,172,254,255,255              ; ja            729 <_sk_srcover_rgba_8888_ssse3_lowp+0x19>
26713  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
26714  DB  76,141,21,248,0,0,0                 ; lea           0xf8(%rip),%r10        # 980 <_sk_srcover_rgba_8888_ssse3_lowp+0x270>
26715  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
26716  DB  76,1,208                            ; add           %r10,%rax
26717  DB  255,224                             ; jmpq          *%rax
26718  DB  102,65,15,110,100,147,24            ; movd          0x18(%r11,%rdx,4),%xmm4
26719  DB  102,68,15,112,204,69                ; pshufd        $0x45,%xmm4,%xmm9
26720  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
26721  DB  243,65,15,16,100,147,20             ; movss         0x14(%r11,%rdx,4),%xmm4
26722  DB  65,15,198,225,0                     ; shufps        $0x0,%xmm9,%xmm4
26723  DB  65,15,198,225,226                   ; shufps        $0xe2,%xmm9,%xmm4
26724  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
26725  DB  243,65,15,16,100,147,16             ; movss         0x10(%r11,%rdx,4),%xmm4
26726  DB  243,68,15,16,204                    ; movss         %xmm4,%xmm9
26727  DB  243,65,15,16,100,147,12             ; movss         0xc(%r11,%rdx,4),%xmm4
26728  DB  65,15,198,224,32                    ; shufps        $0x20,%xmm8,%xmm4
26729  DB  68,15,198,196,36                    ; shufps        $0x24,%xmm4,%xmm8
26730  DB  243,65,15,16,100,147,8              ; movss         0x8(%r11,%rdx,4),%xmm4
26731  DB  65,15,198,224,48                    ; shufps        $0x30,%xmm8,%xmm4
26732  DB  68,15,198,196,132                   ; shufps        $0x84,%xmm4,%xmm8
26733  DB  243,65,15,16,100,147,4              ; movss         0x4(%r11,%rdx,4),%xmm4
26734  DB  65,15,198,224,0                     ; shufps        $0x0,%xmm8,%xmm4
26735  DB  65,15,198,224,226                   ; shufps        $0xe2,%xmm8,%xmm4
26736  DB  68,15,40,196                        ; movaps        %xmm4,%xmm8
26737  DB  243,65,15,16,36,147                 ; movss         (%r11,%rdx,4),%xmm4
26738  DB  243,68,15,16,196                    ; movss         %xmm4,%xmm8
26739  DB  233,31,254,255,255                  ; jmpq          729 <_sk_srcover_rgba_8888_ssse3_lowp+0x19>
26740  DB  69,137,193                          ; mov           %r8d,%r9d
26741  DB  65,128,225,7                        ; and           $0x7,%r9b
26742  DB  65,254,201                          ; dec           %r9b
26743  DB  65,128,249,6                        ; cmp           $0x6,%r9b
26744  DB  15,135,42,255,255,255               ; ja            848 <_sk_srcover_rgba_8888_ssse3_lowp+0x138>
26745  DB  65,15,182,193                       ; movzbl        %r9b,%eax
26746  DB  76,141,13,115,0,0,0                 ; lea           0x73(%rip),%r9        # 99c <_sk_srcover_rgba_8888_ssse3_lowp+0x28c>
26747  DB  73,99,4,129                         ; movslq        (%r9,%rax,4),%rax
26748  DB  76,1,200                            ; add           %r9,%rax
26749  DB  255,224                             ; jmpq          *%rax
26750  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
26751  DB  102,65,15,126,84,147,24             ; movd          %xmm2,0x18(%r11,%rdx,4)
26752  DB  102,15,112,209,229                  ; pshufd        $0xe5,%xmm1,%xmm2
26753  DB  102,65,15,126,84,147,20             ; movd          %xmm2,0x14(%r11,%rdx,4)
26754  DB  102,65,15,126,76,147,16             ; movd          %xmm1,0x10(%r11,%rdx,4)
26755  DB  102,15,112,200,231                  ; pshufd        $0xe7,%xmm0,%xmm1
26756  DB  102,65,15,126,76,147,12             ; movd          %xmm1,0xc(%r11,%rdx,4)
26757  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
26758  DB  102,65,15,126,76,147,8              ; movd          %xmm1,0x8(%r11,%rdx,4)
26759  DB  102,15,112,200,229                  ; pshufd        $0xe5,%xmm0,%xmm1
26760  DB  102,65,15,126,76,147,4              ; movd          %xmm1,0x4(%r11,%rdx,4)
26761  DB  102,65,15,126,4,147                 ; movd          %xmm0,(%r11,%rdx,4)
26762  DB  233,200,254,255,255                 ; jmpq          848 <_sk_srcover_rgba_8888_ssse3_lowp+0x138>
26763  DB  122,255                             ; jp            981 <_sk_srcover_rgba_8888_ssse3_lowp+0x271>
26764  DB  255                                 ; (bad)
26765  DB  255,101,255                         ; jmpq          *-0x1(%rbp)
26766  DB  255                                 ; (bad)
26767  DB  255,84,255,255                      ; callq         *-0x1(%rdi,%rdi,8)
26768  DB  255,67,255                          ; incl          -0x1(%rbx)
26769  DB  255                                 ; (bad)
26770  DB  255,55                              ; pushq         (%rdi)
26771  DB  255                                 ; (bad)
26772  DB  255                                 ; (bad)
26773  DB  255,34                              ; jmpq          *(%rdx)
26774  DB  255                                 ; (bad)
26775  DB  255                                 ; (bad)
26776  DB  255,17                              ; callq         *(%rcx)
26777  DB  255                                 ; (bad)
26778  DB  255                                 ; (bad)
26779  DB  255                                 ; (bad)
26780  DB  217,255                             ; fcos
26781  DB  255                                 ; (bad)
26782  DB  255,205                             ; dec           %ebp
26783  DB  255                                 ; (bad)
26784  DB  255                                 ; (bad)
26785  DB  255,193                             ; inc           %ecx
26786  DB  255                                 ; (bad)
26787  DB  255                                 ; (bad)
26788  DB  255,181,255,255,255,174             ; pushq         -0x51000001(%rbp)
26789  DB  255                                 ; (bad)
26790  DB  255                                 ; (bad)
26791  DB  255,162,255,255,255,150             ; jmpq          *-0x69000001(%rdx)
26792  DB  255                                 ; (bad)
26793  DB  255                                 ; (bad)
26794  DB  255                                 ; .byte         0xff
26795
26796PUBLIC _sk_scale_1_float_ssse3_lowp
26797_sk_scale_1_float_ssse3_lowp LABEL PROC
26798  DB  72,173                              ; lods          %ds:(%rsi),%rax
26799  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
26800  DB  243,68,15,89,5,204,8,0,0            ; mulss         0x8cc(%rip),%xmm8        # 1294 <_sk_xor__ssse3_lowp+0xa3>
26801  DB  243,65,15,44,192                    ; cvttss2si     %xmm8,%eax
26802  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
26803  DB  242,69,15,112,192,0                 ; pshuflw       $0x0,%xmm8,%xmm8
26804  DB  102,69,15,112,192,80                ; pshufd        $0x50,%xmm8,%xmm8
26805  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
26806  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
26807  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
26808  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
26809  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
26810  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
26811  DB  102,65,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm3
26812  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
26813  DB  72,173                              ; lods          %ds:(%rsi),%rax
26814  DB  255,224                             ; jmpq          *%rax
26815
26816PUBLIC _sk_scale_u8_ssse3_lowp
26817_sk_scale_u8_ssse3_lowp LABEL PROC
26818  DB  80                                  ; push          %rax
26819  DB  72,173                              ; lods          %ds:(%rsi),%rax
26820  DB  76,139,24                           ; mov           (%rax),%r11
26821  DB  77,133,192                          ; test          %r8,%r8
26822  DB  117,76                              ; jne           a65 <_sk_scale_u8_ssse3_lowp+0x57>
26823  DB  243,69,15,126,4,19                  ; movq          (%r11,%rdx,1),%xmm8
26824  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
26825  DB  102,65,15,113,240,8                 ; psllw         $0x8,%xmm8
26826  DB  102,68,15,228,5,237,8,0,0           ; pmulhuw       0x8ed(%rip),%xmm8        # 1320 <_sk_xor__ssse3_lowp+0x12f>
26827  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
26828  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
26829  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
26830  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
26831  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
26832  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
26833  DB  102,65,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm3
26834  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
26835  DB  72,173                              ; lods          %ds:(%rsi),%rax
26836  DB  65,89                               ; pop           %r9
26837  DB  255,224                             ; jmpq          *%rax
26838  DB  69,137,193                          ; mov           %r8d,%r9d
26839  DB  65,128,225,7                        ; and           $0x7,%r9b
26840  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
26841  DB  65,254,201                          ; dec           %r9b
26842  DB  65,128,249,6                        ; cmp           $0x6,%r9b
26843  DB  119,170                             ; ja            a24 <_sk_scale_u8_ssse3_lowp+0x16>
26844  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
26845  DB  76,141,21,103,0,0,0                 ; lea           0x67(%rip),%r10        # aec <_sk_scale_u8_ssse3_lowp+0xde>
26846  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
26847  DB  76,1,208                            ; add           %r10,%rax
26848  DB  255,224                             ; jmpq          *%rax
26849  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
26850  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
26851  DB  102,68,15,196,192,6                 ; pinsrw        $0x6,%eax,%xmm8
26852  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
26853  DB  102,68,15,196,192,5                 ; pinsrw        $0x5,%eax,%xmm8
26854  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
26855  DB  102,68,15,196,192,4                 ; pinsrw        $0x4,%eax,%xmm8
26856  DB  65,15,182,68,19,3                   ; movzbl        0x3(%r11,%rdx,1),%eax
26857  DB  102,68,15,196,192,3                 ; pinsrw        $0x3,%eax,%xmm8
26858  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
26859  DB  102,68,15,196,192,2                 ; pinsrw        $0x2,%eax,%xmm8
26860  DB  65,15,182,68,19,1                   ; movzbl        0x1(%r11,%rdx,1),%eax
26861  DB  102,68,15,196,192,1                 ; pinsrw        $0x1,%eax,%xmm8
26862  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
26863  DB  102,68,15,196,192,0                 ; pinsrw        $0x0,%eax,%xmm8
26864  DB  233,57,255,255,255                  ; jmpq          a24 <_sk_scale_u8_ssse3_lowp+0x16>
26865  DB  144                                 ; nop
26866  DB  239                                 ; out           %eax,(%dx)
26867  DB  255                                 ; (bad)
26868  DB  255                                 ; (bad)
26869  DB  255,227                             ; jmpq          *%rbx
26870  DB  255                                 ; (bad)
26871  DB  255                                 ; (bad)
26872  DB  255,215                             ; callq         *%rdi
26873  DB  255                                 ; (bad)
26874  DB  255                                 ; (bad)
26875  DB  255,203                             ; dec           %ebx
26876  DB  255                                 ; (bad)
26877  DB  255                                 ; (bad)
26878  DB  255                                 ; (bad)
26879  DB  191,255,255,255,179                 ; mov           $0xb3ffffff,%edi
26880  DB  255                                 ; (bad)
26881  DB  255                                 ; (bad)
26882  DB  255                                 ; .byte         0xff
26883  DB  162                                 ; .byte         0xa2
26884  DB  255                                 ; (bad)
26885  DB  255                                 ; (bad)
26886  DB  255                                 ; .byte         0xff
26887
26888PUBLIC _sk_lerp_1_float_ssse3_lowp
26889_sk_lerp_1_float_ssse3_lowp LABEL PROC
26890  DB  72,173                              ; lods          %ds:(%rsi),%rax
26891  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
26892  DB  243,68,15,89,5,128,7,0,0            ; mulss         0x780(%rip),%xmm8        # 1298 <_sk_xor__ssse3_lowp+0xa7>
26893  DB  243,65,15,44,192                    ; cvttss2si     %xmm8,%eax
26894  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
26895  DB  242,69,15,112,192,0                 ; pshuflw       $0x0,%xmm8,%xmm8
26896  DB  102,69,15,112,192,80                ; pshufd        $0x50,%xmm8,%xmm8
26897  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
26898  DB  102,68,15,56,29,200                 ; pabsw         %xmm0,%xmm9
26899  DB  102,68,15,111,21,237,7,0,0          ; movdqa        0x7ed(%rip),%xmm10        # 1330 <_sk_xor__ssse3_lowp+0x13f>
26900  DB  102,69,15,249,208                   ; psubw         %xmm8,%xmm10
26901  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
26902  DB  102,65,15,56,11,194                 ; pmulhrsw      %xmm10,%xmm0
26903  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
26904  DB  102,65,15,253,193                   ; paddw         %xmm9,%xmm0
26905  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
26906  DB  102,68,15,56,29,201                 ; pabsw         %xmm1,%xmm9
26907  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
26908  DB  102,65,15,56,11,202                 ; pmulhrsw      %xmm10,%xmm1
26909  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
26910  DB  102,65,15,253,201                   ; paddw         %xmm9,%xmm1
26911  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
26912  DB  102,68,15,56,29,202                 ; pabsw         %xmm2,%xmm9
26913  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
26914  DB  102,65,15,56,11,210                 ; pmulhrsw      %xmm10,%xmm2
26915  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
26916  DB  102,65,15,253,209                   ; paddw         %xmm9,%xmm2
26917  DB  102,65,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm3
26918  DB  102,68,15,56,29,195                 ; pabsw         %xmm3,%xmm8
26919  DB  102,68,15,56,11,215                 ; pmulhrsw      %xmm7,%xmm10
26920  DB  102,65,15,56,29,218                 ; pabsw         %xmm10,%xmm3
26921  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
26922  DB  72,173                              ; lods          %ds:(%rsi),%rax
26923  DB  255,224                             ; jmpq          *%rax
26924
26925PUBLIC _sk_lerp_u8_ssse3_lowp
26926_sk_lerp_u8_ssse3_lowp LABEL PROC
26927  DB  80                                  ; push          %rax
26928  DB  72,173                              ; lods          %ds:(%rsi),%rax
26929  DB  76,139,24                           ; mov           (%rax),%r11
26930  DB  77,133,192                          ; test          %r8,%r8
26931  DB  15,133,171,0,0,0                    ; jne           c77 <_sk_lerp_u8_ssse3_lowp+0xba>
26932  DB  243,69,15,126,4,19                  ; movq          (%r11,%rdx,1),%xmm8
26933  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
26934  DB  102,65,15,113,240,8                 ; psllw         $0x8,%xmm8
26935  DB  102,68,15,228,5,90,7,0,0            ; pmulhuw       0x75a(%rip),%xmm8        # 1340 <_sk_xor__ssse3_lowp+0x14f>
26936  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
26937  DB  102,68,15,56,29,200                 ; pabsw         %xmm0,%xmm9
26938  DB  102,68,15,111,21,85,7,0,0           ; movdqa        0x755(%rip),%xmm10        # 1350 <_sk_xor__ssse3_lowp+0x15f>
26939  DB  102,69,15,249,208                   ; psubw         %xmm8,%xmm10
26940  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
26941  DB  102,65,15,56,11,194                 ; pmulhrsw      %xmm10,%xmm0
26942  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
26943  DB  102,65,15,253,193                   ; paddw         %xmm9,%xmm0
26944  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
26945  DB  102,68,15,56,29,201                 ; pabsw         %xmm1,%xmm9
26946  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
26947  DB  102,65,15,56,11,202                 ; pmulhrsw      %xmm10,%xmm1
26948  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
26949  DB  102,65,15,253,201                   ; paddw         %xmm9,%xmm1
26950  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
26951  DB  102,68,15,56,29,202                 ; pabsw         %xmm2,%xmm9
26952  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
26953  DB  102,65,15,56,11,210                 ; pmulhrsw      %xmm10,%xmm2
26954  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
26955  DB  102,65,15,253,209                   ; paddw         %xmm9,%xmm2
26956  DB  102,65,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm3
26957  DB  102,68,15,56,29,195                 ; pabsw         %xmm3,%xmm8
26958  DB  102,68,15,56,11,215                 ; pmulhrsw      %xmm7,%xmm10
26959  DB  102,65,15,56,29,218                 ; pabsw         %xmm10,%xmm3
26960  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
26961  DB  72,173                              ; lods          %ds:(%rsi),%rax
26962  DB  65,89                               ; pop           %r9
26963  DB  255,224                             ; jmpq          *%rax
26964  DB  69,137,193                          ; mov           %r8d,%r9d
26965  DB  65,128,225,7                        ; and           $0x7,%r9b
26966  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
26967  DB  65,254,201                          ; dec           %r9b
26968  DB  65,128,249,6                        ; cmp           $0x6,%r9b
26969  DB  15,135,71,255,255,255               ; ja            bd7 <_sk_lerp_u8_ssse3_lowp+0x1a>
26970  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
26971  DB  76,141,21,105,0,0,0                 ; lea           0x69(%rip),%r10        # d04 <_sk_lerp_u8_ssse3_lowp+0x147>
26972  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
26973  DB  76,1,208                            ; add           %r10,%rax
26974  DB  255,224                             ; jmpq          *%rax
26975  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
26976  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
26977  DB  102,68,15,196,192,6                 ; pinsrw        $0x6,%eax,%xmm8
26978  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
26979  DB  102,68,15,196,192,5                 ; pinsrw        $0x5,%eax,%xmm8
26980  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
26981  DB  102,68,15,196,192,4                 ; pinsrw        $0x4,%eax,%xmm8
26982  DB  65,15,182,68,19,3                   ; movzbl        0x3(%r11,%rdx,1),%eax
26983  DB  102,68,15,196,192,3                 ; pinsrw        $0x3,%eax,%xmm8
26984  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
26985  DB  102,68,15,196,192,2                 ; pinsrw        $0x2,%eax,%xmm8
26986  DB  65,15,182,68,19,1                   ; movzbl        0x1(%r11,%rdx,1),%eax
26987  DB  102,68,15,196,192,1                 ; pinsrw        $0x1,%eax,%xmm8
26988  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
26989  DB  102,68,15,196,192,0                 ; pinsrw        $0x0,%eax,%xmm8
26990  DB  233,214,254,255,255                 ; jmpq          bd7 <_sk_lerp_u8_ssse3_lowp+0x1a>
26991  DB  15,31,0                             ; nopl          (%rax)
26992  DB  237                                 ; in            (%dx),%eax
26993  DB  255                                 ; (bad)
26994  DB  255                                 ; (bad)
26995  DB  255,225                             ; jmpq          *%rcx
26996  DB  255                                 ; (bad)
26997  DB  255                                 ; (bad)
26998  DB  255,213                             ; callq         *%rbp
26999  DB  255                                 ; (bad)
27000  DB  255                                 ; (bad)
27001  DB  255,201                             ; dec           %ecx
27002  DB  255                                 ; (bad)
27003  DB  255                                 ; (bad)
27004  DB  255                                 ; (bad)
27005  DB  189,255,255,255,177                 ; mov           $0xb1ffffff,%ebp
27006  DB  255                                 ; (bad)
27007  DB  255                                 ; (bad)
27008  DB  255                                 ; .byte         0xff
27009  DB  160                                 ; .byte         0xa0
27010  DB  255                                 ; (bad)
27011  DB  255                                 ; (bad)
27012  DB  255                                 ; .byte         0xff
27013
27014PUBLIC _sk_swap_rb_ssse3_lowp
27015_sk_swap_rb_ssse3_lowp LABEL PROC
27016  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
27017  DB  72,173                              ; lods          %ds:(%rsi),%rax
27018  DB  15,40,194                           ; movaps        %xmm2,%xmm0
27019  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
27020  DB  255,224                             ; jmpq          *%rax
27021
27022PUBLIC _sk_swap_ssse3_lowp
27023_sk_swap_ssse3_lowp LABEL PROC
27024  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
27025  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
27026  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
27027  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
27028  DB  72,173                              ; lods          %ds:(%rsi),%rax
27029  DB  15,40,196                           ; movaps        %xmm4,%xmm0
27030  DB  15,40,205                           ; movaps        %xmm5,%xmm1
27031  DB  15,40,214                           ; movaps        %xmm6,%xmm2
27032  DB  15,40,223                           ; movaps        %xmm7,%xmm3
27033  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
27034  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
27035  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
27036  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
27037  DB  255,224                             ; jmpq          *%rax
27038
27039PUBLIC _sk_move_src_dst_ssse3_lowp
27040_sk_move_src_dst_ssse3_lowp LABEL PROC
27041  DB  72,173                              ; lods          %ds:(%rsi),%rax
27042  DB  15,40,224                           ; movaps        %xmm0,%xmm4
27043  DB  15,40,233                           ; movaps        %xmm1,%xmm5
27044  DB  15,40,242                           ; movaps        %xmm2,%xmm6
27045  DB  15,40,251                           ; movaps        %xmm3,%xmm7
27046  DB  255,224                             ; jmpq          *%rax
27047
27048PUBLIC _sk_move_dst_src_ssse3_lowp
27049_sk_move_dst_src_ssse3_lowp LABEL PROC
27050  DB  72,173                              ; lods          %ds:(%rsi),%rax
27051  DB  15,40,196                           ; movaps        %xmm4,%xmm0
27052  DB  15,40,205                           ; movaps        %xmm5,%xmm1
27053  DB  15,40,214                           ; movaps        %xmm6,%xmm2
27054  DB  15,40,223                           ; movaps        %xmm7,%xmm3
27055  DB  255,224                             ; jmpq          *%rax
27056
27057PUBLIC _sk_clear_ssse3_lowp
27058_sk_clear_ssse3_lowp LABEL PROC
27059  DB  72,173                              ; lods          %ds:(%rsi),%rax
27060  DB  15,87,192                           ; xorps         %xmm0,%xmm0
27061  DB  15,87,201                           ; xorps         %xmm1,%xmm1
27062  DB  15,87,210                           ; xorps         %xmm2,%xmm2
27063  DB  15,87,219                           ; xorps         %xmm3,%xmm3
27064  DB  255,224                             ; jmpq          *%rax
27065
27066PUBLIC _sk_srcatop_ssse3_lowp
27067_sk_srcatop_ssse3_lowp LABEL PROC
27068  DB  102,15,56,11,199                    ; pmulhrsw      %xmm7,%xmm0
27069  DB  102,68,15,56,29,192                 ; pabsw         %xmm0,%xmm8
27070  DB  102,68,15,111,13,189,5,0,0          ; movdqa        0x5bd(%rip),%xmm9        # 1360 <_sk_xor__ssse3_lowp+0x16f>
27071  DB  102,68,15,249,203                   ; psubw         %xmm3,%xmm9
27072  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
27073  DB  102,65,15,56,11,193                 ; pmulhrsw      %xmm9,%xmm0
27074  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27075  DB  102,65,15,253,192                   ; paddw         %xmm8,%xmm0
27076  DB  102,15,56,11,207                    ; pmulhrsw      %xmm7,%xmm1
27077  DB  102,68,15,56,29,193                 ; pabsw         %xmm1,%xmm8
27078  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
27079  DB  102,65,15,56,11,201                 ; pmulhrsw      %xmm9,%xmm1
27080  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27081  DB  102,65,15,253,200                   ; paddw         %xmm8,%xmm1
27082  DB  102,15,56,11,215                    ; pmulhrsw      %xmm7,%xmm2
27083  DB  102,68,15,56,29,194                 ; pabsw         %xmm2,%xmm8
27084  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
27085  DB  102,65,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm2
27086  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27087  DB  102,65,15,253,208                   ; paddw         %xmm8,%xmm2
27088  DB  102,15,56,11,223                    ; pmulhrsw      %xmm7,%xmm3
27089  DB  102,68,15,56,29,195                 ; pabsw         %xmm3,%xmm8
27090  DB  102,68,15,56,11,207                 ; pmulhrsw      %xmm7,%xmm9
27091  DB  102,65,15,56,29,217                 ; pabsw         %xmm9,%xmm3
27092  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27093  DB  72,173                              ; lods          %ds:(%rsi),%rax
27094  DB  255,224                             ; jmpq          *%rax
27095
27096PUBLIC _sk_dstatop_ssse3_lowp
27097_sk_dstatop_ssse3_lowp LABEL PROC
27098  DB  102,68,15,111,196                   ; movdqa        %xmm4,%xmm8
27099  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27100  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27101  DB  102,68,15,111,13,60,5,0,0           ; movdqa        0x53c(%rip),%xmm9        # 1370 <_sk_xor__ssse3_lowp+0x17f>
27102  DB  102,68,15,249,207                   ; psubw         %xmm7,%xmm9
27103  DB  102,65,15,56,11,193                 ; pmulhrsw      %xmm9,%xmm0
27104  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27105  DB  102,65,15,253,192                   ; paddw         %xmm8,%xmm0
27106  DB  102,68,15,111,197                   ; movdqa        %xmm5,%xmm8
27107  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27108  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27109  DB  102,65,15,56,11,201                 ; pmulhrsw      %xmm9,%xmm1
27110  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27111  DB  102,65,15,253,200                   ; paddw         %xmm8,%xmm1
27112  DB  102,68,15,111,198                   ; movdqa        %xmm6,%xmm8
27113  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27114  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27115  DB  102,65,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm2
27116  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27117  DB  102,65,15,253,208                   ; paddw         %xmm8,%xmm2
27118  DB  102,68,15,111,199                   ; movdqa        %xmm7,%xmm8
27119  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27120  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27121  DB  102,68,15,56,11,203                 ; pmulhrsw      %xmm3,%xmm9
27122  DB  102,65,15,56,29,217                 ; pabsw         %xmm9,%xmm3
27123  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27124  DB  72,173                              ; lods          %ds:(%rsi),%rax
27125  DB  255,224                             ; jmpq          *%rax
27126
27127PUBLIC _sk_srcin_ssse3_lowp
27128_sk_srcin_ssse3_lowp LABEL PROC
27129  DB  102,15,56,11,199                    ; pmulhrsw      %xmm7,%xmm0
27130  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27131  DB  102,15,56,11,207                    ; pmulhrsw      %xmm7,%xmm1
27132  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27133  DB  102,15,56,11,215                    ; pmulhrsw      %xmm7,%xmm2
27134  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27135  DB  102,15,56,11,223                    ; pmulhrsw      %xmm7,%xmm3
27136  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
27137  DB  72,173                              ; lods          %ds:(%rsi),%rax
27138  DB  255,224                             ; jmpq          *%rax
27139
27140PUBLIC _sk_dstin_ssse3_lowp
27141_sk_dstin_ssse3_lowp LABEL PROC
27142  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
27143  DB  102,15,56,11,195                    ; pmulhrsw      %xmm3,%xmm0
27144  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27145  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
27146  DB  102,15,56,11,203                    ; pmulhrsw      %xmm3,%xmm1
27147  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27148  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
27149  DB  102,15,56,11,211                    ; pmulhrsw      %xmm3,%xmm2
27150  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27151  DB  102,15,56,11,223                    ; pmulhrsw      %xmm7,%xmm3
27152  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
27153  DB  72,173                              ; lods          %ds:(%rsi),%rax
27154  DB  255,224                             ; jmpq          *%rax
27155
27156PUBLIC _sk_srcout_ssse3_lowp
27157_sk_srcout_ssse3_lowp LABEL PROC
27158  DB  102,68,15,111,5,98,4,0,0            ; movdqa        0x462(%rip),%xmm8        # 1380 <_sk_xor__ssse3_lowp+0x18f>
27159  DB  102,68,15,249,199                   ; psubw         %xmm7,%xmm8
27160  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27161  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27162  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27163  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27164  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27165  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27166  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27167  DB  102,65,15,56,29,216                 ; pabsw         %xmm8,%xmm3
27168  DB  72,173                              ; lods          %ds:(%rsi),%rax
27169  DB  255,224                             ; jmpq          *%rax
27170
27171PUBLIC _sk_dstout_ssse3_lowp
27172_sk_dstout_ssse3_lowp LABEL PROC
27173  DB  102,68,15,111,5,51,4,0,0            ; movdqa        0x433(%rip),%xmm8        # 1390 <_sk_xor__ssse3_lowp+0x19f>
27174  DB  102,68,15,249,195                   ; psubw         %xmm3,%xmm8
27175  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
27176  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27177  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27178  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
27179  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27180  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27181  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
27182  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27183  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27184  DB  102,68,15,56,11,199                 ; pmulhrsw      %xmm7,%xmm8
27185  DB  102,65,15,56,29,216                 ; pabsw         %xmm8,%xmm3
27186  DB  72,173                              ; lods          %ds:(%rsi),%rax
27187  DB  255,224                             ; jmpq          *%rax
27188
27189PUBLIC _sk_srcover_ssse3_lowp
27190_sk_srcover_ssse3_lowp LABEL PROC
27191  DB  102,68,15,111,5,248,3,0,0           ; movdqa        0x3f8(%rip),%xmm8        # 13a0 <_sk_xor__ssse3_lowp+0x1af>
27192  DB  102,68,15,249,195                   ; psubw         %xmm3,%xmm8
27193  DB  102,68,15,111,204                   ; movdqa        %xmm4,%xmm9
27194  DB  102,69,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm9
27195  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27196  DB  102,65,15,253,193                   ; paddw         %xmm9,%xmm0
27197  DB  102,68,15,111,205                   ; movdqa        %xmm5,%xmm9
27198  DB  102,69,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm9
27199  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27200  DB  102,65,15,253,201                   ; paddw         %xmm9,%xmm1
27201  DB  102,68,15,111,206                   ; movdqa        %xmm6,%xmm9
27202  DB  102,69,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm9
27203  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27204  DB  102,65,15,253,209                   ; paddw         %xmm9,%xmm2
27205  DB  102,68,15,56,11,199                 ; pmulhrsw      %xmm7,%xmm8
27206  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27207  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27208  DB  72,173                              ; lods          %ds:(%rsi),%rax
27209  DB  255,224                             ; jmpq          *%rax
27210
27211PUBLIC _sk_dstover_ssse3_lowp
27212_sk_dstover_ssse3_lowp LABEL PROC
27213  DB  102,68,15,111,5,163,3,0,0           ; movdqa        0x3a3(%rip),%xmm8        # 13b0 <_sk_xor__ssse3_lowp+0x1bf>
27214  DB  102,68,15,249,199                   ; psubw         %xmm7,%xmm8
27215  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27216  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27217  DB  102,15,253,196                      ; paddw         %xmm4,%xmm0
27218  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27219  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27220  DB  102,15,253,205                      ; paddw         %xmm5,%xmm1
27221  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27222  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27223  DB  102,15,253,214                      ; paddw         %xmm6,%xmm2
27224  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27225  DB  102,65,15,56,29,216                 ; pabsw         %xmm8,%xmm3
27226  DB  102,15,253,223                      ; paddw         %xmm7,%xmm3
27227  DB  72,173                              ; lods          %ds:(%rsi),%rax
27228  DB  255,224                             ; jmpq          *%rax
27229
27230PUBLIC _sk_modulate_ssse3_lowp
27231_sk_modulate_ssse3_lowp LABEL PROC
27232  DB  102,15,56,11,196                    ; pmulhrsw      %xmm4,%xmm0
27233  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27234  DB  102,15,56,11,205                    ; pmulhrsw      %xmm5,%xmm1
27235  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27236  DB  102,15,56,11,214                    ; pmulhrsw      %xmm6,%xmm2
27237  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27238  DB  102,15,56,11,223                    ; pmulhrsw      %xmm7,%xmm3
27239  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
27240  DB  72,173                              ; lods          %ds:(%rsi),%rax
27241  DB  255,224                             ; jmpq          *%rax
27242
27243PUBLIC _sk_multiply_ssse3_lowp
27244_sk_multiply_ssse3_lowp LABEL PROC
27245  DB  102,68,15,111,5,56,3,0,0            ; movdqa        0x338(%rip),%xmm8        # 13c0 <_sk_xor__ssse3_lowp+0x1cf>
27246  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
27247  DB  102,68,15,249,207                   ; psubw         %xmm7,%xmm9
27248  DB  102,68,15,111,208                   ; movdqa        %xmm0,%xmm10
27249  DB  102,69,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm10
27250  DB  102,69,15,56,29,210                 ; pabsw         %xmm10,%xmm10
27251  DB  102,68,15,249,195                   ; psubw         %xmm3,%xmm8
27252  DB  102,15,56,11,196                    ; pmulhrsw      %xmm4,%xmm0
27253  DB  102,68,15,111,220                   ; movdqa        %xmm4,%xmm11
27254  DB  102,69,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm11
27255  DB  102,69,15,56,29,219                 ; pabsw         %xmm11,%xmm11
27256  DB  102,69,15,253,218                   ; paddw         %xmm10,%xmm11
27257  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27258  DB  102,65,15,253,195                   ; paddw         %xmm11,%xmm0
27259  DB  102,68,15,111,209                   ; movdqa        %xmm1,%xmm10
27260  DB  102,69,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm10
27261  DB  102,69,15,56,29,210                 ; pabsw         %xmm10,%xmm10
27262  DB  102,15,56,11,205                    ; pmulhrsw      %xmm5,%xmm1
27263  DB  102,68,15,111,221                   ; movdqa        %xmm5,%xmm11
27264  DB  102,69,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm11
27265  DB  102,69,15,56,29,219                 ; pabsw         %xmm11,%xmm11
27266  DB  102,69,15,253,218                   ; paddw         %xmm10,%xmm11
27267  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27268  DB  102,65,15,253,203                   ; paddw         %xmm11,%xmm1
27269  DB  102,68,15,111,210                   ; movdqa        %xmm2,%xmm10
27270  DB  102,69,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm10
27271  DB  102,69,15,56,29,210                 ; pabsw         %xmm10,%xmm10
27272  DB  102,15,56,11,214                    ; pmulhrsw      %xmm6,%xmm2
27273  DB  102,68,15,111,222                   ; movdqa        %xmm6,%xmm11
27274  DB  102,69,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm11
27275  DB  102,69,15,56,29,219                 ; pabsw         %xmm11,%xmm11
27276  DB  102,69,15,253,218                   ; paddw         %xmm10,%xmm11
27277  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27278  DB  102,65,15,253,211                   ; paddw         %xmm11,%xmm2
27279  DB  102,68,15,56,11,203                 ; pmulhrsw      %xmm3,%xmm9
27280  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27281  DB  102,68,15,56,11,199                 ; pmulhrsw      %xmm7,%xmm8
27282  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27283  DB  102,69,15,253,193                   ; paddw         %xmm9,%xmm8
27284  DB  102,15,56,11,223                    ; pmulhrsw      %xmm7,%xmm3
27285  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
27286  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27287  DB  72,173                              ; lods          %ds:(%rsi),%rax
27288  DB  255,224                             ; jmpq          *%rax
27289
27290PUBLIC _sk_plus__ssse3_lowp
27291_sk_plus__ssse3_lowp LABEL PROC
27292  DB  102,15,253,196                      ; paddw         %xmm4,%xmm0
27293  DB  102,15,253,205                      ; paddw         %xmm5,%xmm1
27294  DB  102,15,253,214                      ; paddw         %xmm6,%xmm2
27295  DB  102,15,253,223                      ; paddw         %xmm7,%xmm3
27296  DB  72,173                              ; lods          %ds:(%rsi),%rax
27297  DB  255,224                             ; jmpq          *%rax
27298
27299PUBLIC _sk_screen_ssse3_lowp
27300_sk_screen_ssse3_lowp LABEL PROC
27301  DB  102,68,15,111,5,74,2,0,0            ; movdqa        0x24a(%rip),%xmm8        # 13d0 <_sk_xor__ssse3_lowp+0x1df>
27302  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
27303  DB  102,68,15,249,200                   ; psubw         %xmm0,%xmm9
27304  DB  102,68,15,56,11,204                 ; pmulhrsw      %xmm4,%xmm9
27305  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27306  DB  102,65,15,253,193                   ; paddw         %xmm9,%xmm0
27307  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
27308  DB  102,68,15,249,201                   ; psubw         %xmm1,%xmm9
27309  DB  102,68,15,56,11,205                 ; pmulhrsw      %xmm5,%xmm9
27310  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27311  DB  102,65,15,253,201                   ; paddw         %xmm9,%xmm1
27312  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
27313  DB  102,68,15,249,202                   ; psubw         %xmm2,%xmm9
27314  DB  102,68,15,56,11,206                 ; pmulhrsw      %xmm6,%xmm9
27315  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27316  DB  102,65,15,253,209                   ; paddw         %xmm9,%xmm2
27317  DB  102,68,15,249,195                   ; psubw         %xmm3,%xmm8
27318  DB  102,68,15,56,11,199                 ; pmulhrsw      %xmm7,%xmm8
27319  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27320  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27321  DB  72,173                              ; lods          %ds:(%rsi),%rax
27322  DB  255,224                             ; jmpq          *%rax
27323
27324PUBLIC _sk_xor__ssse3_lowp
27325_sk_xor__ssse3_lowp LABEL PROC
27326  DB  102,68,15,111,5,230,1,0,0           ; movdqa        0x1e6(%rip),%xmm8        # 13e0 <_sk_xor__ssse3_lowp+0x1ef>
27327  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
27328  DB  102,68,15,249,207                   ; psubw         %xmm7,%xmm9
27329  DB  102,65,15,56,11,193                 ; pmulhrsw      %xmm9,%xmm0
27330  DB  102,68,15,56,29,208                 ; pabsw         %xmm0,%xmm10
27331  DB  102,68,15,249,195                   ; psubw         %xmm3,%xmm8
27332  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
27333  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27334  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27335  DB  102,65,15,253,194                   ; paddw         %xmm10,%xmm0
27336  DB  102,65,15,56,11,201                 ; pmulhrsw      %xmm9,%xmm1
27337  DB  102,68,15,56,29,209                 ; pabsw         %xmm1,%xmm10
27338  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
27339  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27340  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27341  DB  102,65,15,253,202                   ; paddw         %xmm10,%xmm1
27342  DB  102,65,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm2
27343  DB  102,68,15,56,29,210                 ; pabsw         %xmm2,%xmm10
27344  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
27345  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27346  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27347  DB  102,65,15,253,210                   ; paddw         %xmm10,%xmm2
27348  DB  102,68,15,56,11,203                 ; pmulhrsw      %xmm3,%xmm9
27349  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27350  DB  102,68,15,56,11,199                 ; pmulhrsw      %xmm7,%xmm8
27351  DB  102,65,15,56,29,216                 ; pabsw         %xmm8,%xmm3
27352  DB  102,65,15,253,217                   ; paddw         %xmm9,%xmm3
27353  DB  72,173                              ; lods          %ds:(%rsi),%rax
27354  DB  255,224                             ; jmpq          *%rax
27355
27356ALIGN 4
27357  DB  0,0                                 ; add           %al,(%rax)
27358  DB  0,71,0                              ; add           %al,0x0(%rdi)
27359  DB  0,0                                 ; add           %al,(%rax)
27360  DB  71,0,0                              ; rex.RXB       add %r8b,(%r8)
27361  DB  0,71,0                              ; add           %al,0x0(%rdi)
27362  DB  0,0                                 ; add           %al,(%rax)
27363  DB  71                                  ; rex.RXB
27364
27365ALIGN 16
27366  DB  0,4,8                               ; add           %al,(%rax,%rcx,1)
27367  DB  12,1                                ; or            $0x1,%al
27368  DB  5,9,13,2,6                          ; add           $0x6020d09,%eax
27369  DB  10,14                               ; or            (%rsi),%cl
27370  DB  3,7                                 ; add           (%rdi),%eax
27371  DB  11,15                               ; or            (%rdi),%ecx
27372  DB  129,128,129,128,129,128,129,128,129,128; addl          $0x80818081,-0x7f7e7f7f(%rax)
27373  DB  129,128,129,128,129,128,129,128,129,128; addl          $0x80818081,-0x7f7e7f7f(%rax)
27374  DB  129,128,129,128,129,128,129,128,129,128; addl          $0x80818081,-0x7f7e7f7f(%rax)
27375  DB  129,128,129,128,129,128,129,128,129,128; addl          $0x80818081,-0x7f7e7f7f(%rax)
27376  DB  129,128,129,128,129,128,129,128,0,128; addl          $0x80008081,-0x7f7e7f7f(%rax)
27377  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27378  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27379  DB  0,128,0,4,8,12                      ; add           %al,0xc080400(%rax)
27380  DB  1,5,9,13,2,6                        ; add           %eax,0x6020d09(%rip)        # 6022003 <_sk_xor__ssse3_lowp+0x6020e12>
27381  DB  10,14                               ; or            (%rsi),%cl
27382  DB  3,7                                 ; add           (%rdi),%eax
27383  DB  11,15                               ; or            (%rdi),%ecx
27384  DB  129,128,129,128,129,128,129,128,129,128; addl          $0x80818081,-0x7f7e7f7f(%rax)
27385  DB  129,128,129,128,129,128,0,128,0,128 ; addl          $0x80008000,-0x7f7e7f7f(%rax)
27386  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27387  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27388  DB  129,128,129,128,129,128,129,128,129,128; addl          $0x80818081,-0x7f7e7f7f(%rax)
27389  DB  129,128,129,128,129,128,0,128,0,128 ; addl          $0x80008000,-0x7f7e7f7f(%rax)
27390  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27391  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27392  DB  129,128,129,128,129,128,129,128,129,128; addl          $0x80818081,-0x7f7e7f7f(%rax)
27393  DB  129,128,129,128,129,128,0,128,0,128 ; addl          $0x80008000,-0x7f7e7f7f(%rax)
27394  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27395  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27396  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27397  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27398  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27399  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27400  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27401  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27402  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27403  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27404  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27405  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27406  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27407  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27408  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27409  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27410  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27411  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27412  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27413  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27414  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27415  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27416  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27417  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27418  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27419  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
27420ENDIF
27421END
27422