SkJumper_generated_win.S revision c4fcbed6b2b2d1e2253e325b292931cb3d05d3fe
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,225,75,0,0        ; vbroadcastss  0x4be1(%rip),%ymm1        # 4d54 <_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,193,75,0,0        ; vbroadcastss  0x4bc1(%rip),%ymm2        # 4d58 <_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,136,75,0,0         ; vpbroadcastd  0x4b88(%rip),%ymm10        # 4d5c <_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,109,75,0,0         ; vpbroadcastd  0x4b6d(%rip),%ymm12        # 4d60 <_sk_callback_hsw+0x138>
144  DB  196,98,125,88,45,104,75,0,0         ; vpbroadcastd  0x4b68(%rip),%ymm13        # 4d64 <_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,26,75,0,0          ; vbroadcastss  0x4b1a(%rip),%ymm9        # 4d68 <_sk_callback_hsw+0x140>
160  DB  196,98,125,24,21,21,75,0,0          ; vbroadcastss  0x4b15(%rip),%ymm10        # 4d6c <_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,109,74,0,0          ; vbroadcastss  0x4a6d(%rip),%ymm8        # 4d70 <_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,64,74,0,0           ; vbroadcastss  0x4a40(%rip),%ymm8        # 4d74 <_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,231,73,0,0          ; vbroadcastss  0x49e7(%rip),%ymm8        # 4d78 <_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,202,73,0,0         ; vbroadcastss  0x49ca(%rip),%ymm0        # 4d7c <_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,173,73,0,0          ; vbroadcastss  0x49ad(%rip),%ymm8        # 4d80 <_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,140,73,0,0          ; vbroadcastss  0x498c(%rip),%ymm8        # 4d84 <_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,87,73,0,0           ; vbroadcastss  0x4957(%rip),%ymm8        # 4d88 <_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,210,72,0,0          ; vbroadcastss  0x48d2(%rip),%ymm8        # 4d8c <_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,90,72,0,0           ; vbroadcastss  0x485a(%rip),%ymm8        # 4d90 <_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,9,72,0,0            ; vbroadcastss  0x4809(%rip),%ymm8        # 4d94 <_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,172,71,0,0          ; vbroadcastss  0x47ac(%rip),%ymm8        # 4d98 <_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,106,71,0,0          ; vbroadcastss  0x476a(%rip),%ymm8        # 4d9c <_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,88,71,0,0           ; vbroadcastss  0x4758(%rip),%ymm8        # 4da0 <_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,99,70,0,0          ; vbroadcastss  0x4663(%rip),%ymm9        # 4da4 <_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,132,69,0,0          ; vbroadcastss  0x4584(%rip),%ymm8        # 4da8 <_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,188,68,0,0          ; vbroadcastss  0x44bc(%rip),%ymm8        # 4dac <_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,195,67,0,0         ; vbroadcastss  0x43c3(%rip),%ymm11        # 4db4 <_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,180,67,0,0         ; vbroadcastss  0x43b4(%rip),%ymm12        # 4db8 <_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,119,67,0,0          ; vbroadcastss  0x4377(%rip),%ymm8        # 4db0 <_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,118,65,0,0         ; vbroadcastss  0x4176(%rip),%ymm14        # 4dbc <_sk_callback_hsw+0x194>
813  DB  196,98,125,24,61,113,65,0,0         ; vbroadcastss  0x4171(%rip),%ymm15        # 4dc0 <_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,98,65,0,0          ; vbroadcastss  0x4162(%rip),%ymm0        # 4dc4 <_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,79,64,0,0         ; vbroadcastss  0x404f(%rip),%ymm1        # 4dc8 <_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,96,63,0,0          ; vbroadcastss  0x3f60(%rip),%ymm14        # 4dcc <_sk_callback_hsw+0x1a4>
926  DB  196,98,125,24,61,91,63,0,0          ; vbroadcastss  0x3f5b(%rip),%ymm15        # 4dd0 <_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,76,63,0,0          ; vbroadcastss  0x3f4c(%rip),%ymm0        # 4dd4 <_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,57,62,0,0         ; vbroadcastss  0x3e39(%rip),%ymm1        # 4dd8 <_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,204,61,0,0         ; vbroadcastss  0x3dcc(%rip),%ymm13        # 4ddc <_sk_callback_hsw+0x1b4>
1013  DB  196,98,125,24,53,199,61,0,0         ; vbroadcastss  0x3dc7(%rip),%ymm14        # 4de0 <_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,184,61,0,0         ; vbroadcastss  0x3db8(%rip),%ymm15        # 4de4 <_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,154,60,0,0         ; vbroadcastss  0x3c9a(%rip),%ymm0        # 4de8 <_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,45,60,0,0          ; vbroadcastss  0x3c2d(%rip),%ymm13        # 4dec <_sk_callback_hsw+0x1c4>
1101  DB  196,98,125,24,53,40,60,0,0          ; vbroadcastss  0x3c28(%rip),%ymm14        # 4df0 <_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,25,60,0,0          ; vbroadcastss  0x3c19(%rip),%ymm15        # 4df4 <_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,251,58,0,0         ; vbroadcastss  0x3afb(%rip),%ymm0        # 4df8 <_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,24,62,0,0             ; vandps        0x3e18(%rip),%ymm7,%ymm4        # 5180 <_sk_callback_hsw+0x558>
1188  DB  197,252,91,228                      ; vcvtdq2ps     %ymm4,%ymm4
1189  DB  196,226,69,0,45,43,62,0,0           ; vpshufb       0x3e2b(%rip),%ymm7,%ymm5        # 51a0 <_sk_callback_hsw+0x578>
1190  DB  197,252,91,237                      ; vcvtdq2ps     %ymm5,%ymm5
1191  DB  196,226,69,0,53,62,62,0,0           ; vpshufb       0x3e3e(%rip),%ymm7,%ymm6        # 51c0 <_sk_callback_hsw+0x598>
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,100,58,0,0          ; vbroadcastss  0x3a64(%rip),%ymm8        # 4dfc <_sk_callback_hsw+0x1d4>
1196  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
1197  DB  196,98,125,24,13,91,58,0,0          ; vbroadcastss  0x3a5b(%rip),%ymm9        # 4e00 <_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,128,57,0,0          ; vbroadcastss  0x3980(%rip),%ymm8        # 4e04 <_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,99,57,0,0           ; vbroadcastss  0x3963(%rip),%ymm8        # 4e08 <_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,171,56,0,0         ; vbroadcastss  0x38ab(%rip),%ymm10        # 4e0c <_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,140,56,0,0          ; vbroadcastss  0x388c(%rip),%ymm8        # 4e10 <_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,126,56,0,0         ; vbroadcastss  0x387e(%rip),%ymm11        # 4e14 <_sk_callback_hsw+0x1ec>
1350  DB  196,98,125,24,37,121,56,0,0         ; vbroadcastss  0x3879(%rip),%ymm12        # 4e18 <_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,106,56,0,0         ; vbroadcastss  0x386a(%rip),%ymm14        # 4e1c <_sk_callback_hsw+0x1f4>
1354  DB  196,66,45,168,238                   ; vfmadd213ps   %ymm14,%ymm10,%ymm13
1355  DB  196,98,125,24,21,96,56,0,0          ; vbroadcastss  0x3860(%rip),%ymm10        # 4e20 <_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,4,56,0,0            ; vbroadcastss  0x3804(%rip),%ymm8        # 4e24 <_sk_callback_hsw+0x1fc>
1378  DB  196,65,124,89,208                   ; vmulps        %ymm8,%ymm0,%ymm10
1379  DB  196,98,125,24,29,250,55,0,0         ; vbroadcastss  0x37fa(%rip),%ymm11        # 4e28 <_sk_callback_hsw+0x200>
1380  DB  196,98,125,24,37,245,55,0,0         ; vbroadcastss  0x37f5(%rip),%ymm12        # 4e2c <_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,230,55,0,0         ; vbroadcastss  0x37e6(%rip),%ymm14        # 4e30 <_sk_callback_hsw+0x208>
1384  DB  196,66,53,168,238                   ; vfmadd213ps   %ymm14,%ymm9,%ymm13
1385  DB  196,98,125,24,61,220,55,0,0         ; vbroadcastss  0x37dc(%rip),%ymm15        # 4e34 <_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,200,55,0,0         ; vbroadcastss  0x37c8(%rip),%ymm13        # 4e38 <_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,61,55,0,0          ; vbroadcastss  0x373d(%rip),%ymm11        # 4e3c <_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,42,55,0,0          ; vbroadcastss  0x372a(%rip),%ymm14        # 4e40 <_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,17,55,0,0          ; vbroadcastss  0x3711(%rip),%ymm14        # 4e48 <_sk_callback_hsw+0x220>
1432  DB  196,66,37,168,238                   ; vfmadd213ps   %ymm14,%ymm11,%ymm13
1433  DB  196,98,125,24,53,255,54,0,0         ; vbroadcastss  0x36ff(%rip),%ymm14        # 4e44 <_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,226,54,0,0         ; vbroadcastss  0x36e2(%rip),%ymm11        # 4e50 <_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,165,54,0,0          ; vbroadcastss  0x36a5(%rip),%ymm8        # 4e4c <_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,108,54,0,0          ; vbroadcastss  0x366c(%rip),%ymm8        # 4e54 <_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,79,54,0,0          ; vbroadcastss  0x364f(%rip),%ymm9        # 4e58 <_sk_callback_hsw+0x230>
1472  DB  196,66,109,170,202                  ; vfmsub213ps   %ymm10,%ymm2,%ymm9
1473  DB  196,98,125,24,29,69,54,0,0          ; vbroadcastss  0x3645(%rip),%ymm11        # 4e5c <_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,47,54,0,0          ; vbroadcastss  0x362f(%rip),%ymm13        # 4e64 <_sk_callback_hsw+0x23c>
1479  DB  196,193,4,89,197                    ; vmulps        %ymm13,%ymm15,%ymm0
1480  DB  196,98,125,24,53,37,54,0,0          ; vbroadcastss  0x3625(%rip),%ymm14        # 4e68 <_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,11,54,0,0         ; vbroadcastss  0x360b(%rip),%ymm3        # 4e60 <_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,246,53,0,0         ; vbroadcastss  0x35f6(%rip),%ymm12        # 4e6c <_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,162,53,0,0         ; vbroadcastss  0x35a2(%rip),%ymm0        # 4e70 <_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  72,173                              ; lods          %ds:(%rsi),%rax
1546  DB  76,139,24                           ; mov           (%rax),%r11
1547  DB  77,133,192                          ; test          %r8,%r8
1548  DB  117,58                              ; jne           19b5 <_sk_scale_u8_hsw+0x44>
1549  DB  196,66,121,48,4,19                  ; vpmovzxbw     (%r11,%rdx,1),%xmm8
1550  DB  197,57,219,5,215,57,0,0             ; vpand         0x39d7(%rip),%xmm8,%xmm8        # 5360 <_sk_callback_hsw+0x738>
1551  DB  196,66,125,51,192                   ; vpmovzxwd     %xmm8,%ymm8
1552  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1553  DB  196,98,125,24,13,216,52,0,0         ; vbroadcastss  0x34d8(%rip),%ymm9        # 4e74 <_sk_callback_hsw+0x24c>
1554  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
1555  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
1556  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
1557  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
1558  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
1559  DB  72,173                              ; lods          %ds:(%rsi),%rax
1560  DB  255,224                             ; jmpq          *%rax
1561  DB  69,137,193                          ; mov           %r8d,%r9d
1562  DB  65,128,225,7                        ; and           $0x7,%r9b
1563  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
1564  DB  65,254,201                          ; dec           %r9b
1565  DB  65,128,249,6                        ; cmp           $0x6,%r9b
1566  DB  119,183                             ; ja            1981 <_sk_scale_u8_hsw+0x10>
1567  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
1568  DB  76,141,21,123,0,0,0                 ; lea           0x7b(%rip),%r10        # 1a50 <_sk_scale_u8_hsw+0xdf>
1569  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
1570  DB  76,1,208                            ; add           %r10,%rax
1571  DB  255,224                             ; jmpq          *%rax
1572  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
1573  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
1574  DB  235,152                             ; jmp           1981 <_sk_scale_u8_hsw+0x10>
1575  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
1576  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
1577  DB  197,57,196,192,2                    ; vpinsrw       $0x2,%eax,%xmm8,%xmm8
1578  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
1579  DB  197,121,110,200                     ; vmovd         %eax,%xmm9
1580  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
1581  DB  196,67,57,2,193,1                   ; vpblendd      $0x1,%xmm9,%xmm8,%xmm8
1582  DB  233,111,255,255,255                 ; jmpq          1981 <_sk_scale_u8_hsw+0x10>
1583  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
1584  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
1585  DB  197,57,196,192,6                    ; vpinsrw       $0x6,%eax,%xmm8,%xmm8
1586  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
1587  DB  197,57,196,192,5                    ; vpinsrw       $0x5,%eax,%xmm8,%xmm8
1588  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
1589  DB  197,57,196,192,4                    ; vpinsrw       $0x4,%eax,%xmm8,%xmm8
1590  DB  196,65,121,110,12,19                ; vmovd         (%r11,%rdx,1),%xmm9
1591  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
1592  DB  196,67,49,2,192,12                  ; vpblendd      $0xc,%xmm8,%xmm9,%xmm8
1593  DB  233,51,255,255,255                  ; jmpq          1981 <_sk_scale_u8_hsw+0x10>
1594  DB  102,144                             ; xchg          %ax,%ax
1595  DB  142,255                             ; mov           %edi,%?
1596  DB  255                                 ; (bad)
1597  DB  255,169,255,255,255,153             ; ljmp          *-0x66000001(%rcx)
1598  DB  255                                 ; (bad)
1599  DB  255                                 ; (bad)
1600  DB  255                                 ; (bad)
1601  DB  232,255,255,255,221                 ; callq         ffffffffde001a60 <_sk_callback_hsw+0xffffffffddffce38>
1602  DB  255                                 ; (bad)
1603  DB  255                                 ; (bad)
1604  DB  255,210                             ; callq         *%rdx
1605  DB  255                                 ; (bad)
1606  DB  255                                 ; (bad)
1607  DB  255,194                             ; inc           %edx
1608  DB  255                                 ; (bad)
1609  DB  255                                 ; (bad)
1610  DB  255                                 ; .byte         0xff
1611
1612PUBLIC _sk_lerp_1_float_hsw
1613_sk_lerp_1_float_hsw LABEL PROC
1614  DB  72,173                              ; lods          %ds:(%rsi),%rax
1615  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
1616  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1617  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
1618  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1619  DB  196,226,61,168,205                  ; vfmadd213ps   %ymm5,%ymm8,%ymm1
1620  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1621  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
1622  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
1623  DB  196,226,61,168,223                  ; vfmadd213ps   %ymm7,%ymm8,%ymm3
1624  DB  72,173                              ; lods          %ds:(%rsi),%rax
1625  DB  255,224                             ; jmpq          *%rax
1626
1627PUBLIC _sk_lerp_u8_hsw
1628_sk_lerp_u8_hsw LABEL PROC
1629  DB  72,173                              ; lods          %ds:(%rsi),%rax
1630  DB  76,139,24                           ; mov           (%rax),%r11
1631  DB  77,133,192                          ; test          %r8,%r8
1632  DB  117,78                              ; jne           1af3 <_sk_lerp_u8_hsw+0x58>
1633  DB  196,66,121,48,4,19                  ; vpmovzxbw     (%r11,%rdx,1),%xmm8
1634  DB  197,57,219,5,189,56,0,0             ; vpand         0x38bd(%rip),%xmm8,%xmm8        # 5370 <_sk_callback_hsw+0x748>
1635  DB  196,66,125,51,192                   ; vpmovzxwd     %xmm8,%ymm8
1636  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1637  DB  196,98,125,24,13,178,51,0,0         ; vbroadcastss  0x33b2(%rip),%ymm9        # 4e78 <_sk_callback_hsw+0x250>
1638  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
1639  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1640  DB  196,226,61,168,196                  ; vfmadd213ps   %ymm4,%ymm8,%ymm0
1641  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1642  DB  196,226,61,168,205                  ; vfmadd213ps   %ymm5,%ymm8,%ymm1
1643  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1644  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
1645  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
1646  DB  196,226,61,168,223                  ; vfmadd213ps   %ymm7,%ymm8,%ymm3
1647  DB  72,173                              ; lods          %ds:(%rsi),%rax
1648  DB  255,224                             ; jmpq          *%rax
1649  DB  69,137,193                          ; mov           %r8d,%r9d
1650  DB  65,128,225,7                        ; and           $0x7,%r9b
1651  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
1652  DB  65,254,201                          ; dec           %r9b
1653  DB  65,128,249,6                        ; cmp           $0x6,%r9b
1654  DB  119,163                             ; ja            1aab <_sk_lerp_u8_hsw+0x10>
1655  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
1656  DB  76,141,21,121,0,0,0                 ; lea           0x79(%rip),%r10        # 1b8c <_sk_lerp_u8_hsw+0xf1>
1657  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
1658  DB  76,1,208                            ; add           %r10,%rax
1659  DB  255,224                             ; jmpq          *%rax
1660  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
1661  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
1662  DB  235,132                             ; jmp           1aab <_sk_lerp_u8_hsw+0x10>
1663  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
1664  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
1665  DB  197,57,196,192,2                    ; vpinsrw       $0x2,%eax,%xmm8,%xmm8
1666  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
1667  DB  197,121,110,200                     ; vmovd         %eax,%xmm9
1668  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
1669  DB  196,67,57,2,193,1                   ; vpblendd      $0x1,%xmm9,%xmm8,%xmm8
1670  DB  233,91,255,255,255                  ; jmpq          1aab <_sk_lerp_u8_hsw+0x10>
1671  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
1672  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
1673  DB  197,57,196,192,6                    ; vpinsrw       $0x6,%eax,%xmm8,%xmm8
1674  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
1675  DB  197,57,196,192,5                    ; vpinsrw       $0x5,%eax,%xmm8,%xmm8
1676  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
1677  DB  197,57,196,192,4                    ; vpinsrw       $0x4,%eax,%xmm8,%xmm8
1678  DB  196,65,121,110,12,19                ; vmovd         (%r11,%rdx,1),%xmm9
1679  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
1680  DB  196,67,49,2,192,12                  ; vpblendd      $0xc,%xmm8,%xmm9,%xmm8
1681  DB  233,31,255,255,255                  ; jmpq          1aab <_sk_lerp_u8_hsw+0x10>
1682  DB  144                                 ; nop
1683  DB  255                                 ; (bad)
1684  DB  255                                 ; (bad)
1685  DB  255,171,255,255,255,155             ; ljmp          *-0x64000001(%rbx)
1686  DB  255                                 ; (bad)
1687  DB  255                                 ; (bad)
1688  DB  255                                 ; (bad)
1689  DB  234                                 ; (bad)
1690  DB  255                                 ; (bad)
1691  DB  255                                 ; (bad)
1692  DB  255                                 ; (bad)
1693  DB  223,255                             ; (bad)
1694  DB  255                                 ; (bad)
1695  DB  255,212                             ; callq         *%rsp
1696  DB  255                                 ; (bad)
1697  DB  255                                 ; (bad)
1698  DB  255,196                             ; inc           %esp
1699  DB  255                                 ; (bad)
1700  DB  255                                 ; (bad)
1701  DB  255                                 ; .byte         0xff
1702
1703PUBLIC _sk_lerp_565_hsw
1704_sk_lerp_565_hsw LABEL PROC
1705  DB  72,173                              ; lods          %ds:(%rsi),%rax
1706  DB  76,139,24                           ; mov           (%rax),%r11
1707  DB  77,133,192                          ; test          %r8,%r8
1708  DB  15,133,169,0,0,0                    ; jne           1c5f <_sk_lerp_565_hsw+0xb7>
1709  DB  196,65,122,111,4,83                 ; vmovdqu       (%r11,%rdx,2),%xmm8
1710  DB  196,66,125,51,192                   ; vpmovzxwd     %xmm8,%ymm8
1711  DB  196,98,125,88,13,178,50,0,0         ; vpbroadcastd  0x32b2(%rip),%ymm9        # 4e7c <_sk_callback_hsw+0x254>
1712  DB  196,65,61,219,201                   ; vpand         %ymm9,%ymm8,%ymm9
1713  DB  196,65,124,91,201                   ; vcvtdq2ps     %ymm9,%ymm9
1714  DB  196,98,125,24,21,163,50,0,0         ; vbroadcastss  0x32a3(%rip),%ymm10        # 4e80 <_sk_callback_hsw+0x258>
1715  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
1716  DB  196,98,125,88,21,153,50,0,0         ; vpbroadcastd  0x3299(%rip),%ymm10        # 4e84 <_sk_callback_hsw+0x25c>
1717  DB  196,65,61,219,210                   ; vpand         %ymm10,%ymm8,%ymm10
1718  DB  196,65,124,91,210                   ; vcvtdq2ps     %ymm10,%ymm10
1719  DB  196,98,125,24,29,138,50,0,0         ; vbroadcastss  0x328a(%rip),%ymm11        # 4e88 <_sk_callback_hsw+0x260>
1720  DB  196,65,44,89,211                    ; vmulps        %ymm11,%ymm10,%ymm10
1721  DB  196,98,125,88,29,128,50,0,0         ; vpbroadcastd  0x3280(%rip),%ymm11        # 4e8c <_sk_callback_hsw+0x264>
1722  DB  196,65,61,219,195                   ; vpand         %ymm11,%ymm8,%ymm8
1723  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
1724  DB  196,98,125,24,29,113,50,0,0         ; vbroadcastss  0x3271(%rip),%ymm11        # 4e90 <_sk_callback_hsw+0x268>
1725  DB  196,65,60,89,195                    ; vmulps        %ymm11,%ymm8,%ymm8
1726  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
1727  DB  196,226,53,168,196                  ; vfmadd213ps   %ymm4,%ymm9,%ymm0
1728  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
1729  DB  196,226,45,168,205                  ; vfmadd213ps   %ymm5,%ymm10,%ymm1
1730  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
1731  DB  196,226,61,168,214                  ; vfmadd213ps   %ymm6,%ymm8,%ymm2
1732  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
1733  DB  196,98,101,168,207                  ; vfmadd213ps   %ymm7,%ymm3,%ymm9
1734  DB  196,98,101,168,215                  ; vfmadd213ps   %ymm7,%ymm3,%ymm10
1735  DB  196,98,101,168,199                  ; vfmadd213ps   %ymm7,%ymm3,%ymm8
1736  DB  196,193,44,95,216                   ; vmaxps        %ymm8,%ymm10,%ymm3
1737  DB  197,180,95,219                      ; vmaxps        %ymm3,%ymm9,%ymm3
1738  DB  72,173                              ; lods          %ds:(%rsi),%rax
1739  DB  255,224                             ; jmpq          *%rax
1740  DB  69,137,193                          ; mov           %r8d,%r9d
1741  DB  65,128,225,7                        ; and           $0x7,%r9b
1742  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
1743  DB  65,254,201                          ; dec           %r9b
1744  DB  65,128,249,6                        ; cmp           $0x6,%r9b
1745  DB  15,135,68,255,255,255               ; ja            1bbc <_sk_lerp_565_hsw+0x14>
1746  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
1747  DB  76,141,21,101,0,0,0                 ; lea           0x65(%rip),%r10        # 1ce8 <_sk_lerp_565_hsw+0x140>
1748  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
1749  DB  76,1,208                            ; add           %r10,%rax
1750  DB  255,224                             ; jmpq          *%rax
1751  DB  65,15,183,4,83                      ; movzwl        (%r11,%rdx,2),%eax
1752  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
1753  DB  233,34,255,255,255                  ; jmpq          1bbc <_sk_lerp_565_hsw+0x14>
1754  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
1755  DB  196,65,57,196,68,83,4,2             ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm8,%xmm8
1756  DB  196,65,121,110,12,83                ; vmovd         (%r11,%rdx,2),%xmm9
1757  DB  196,67,57,2,193,1                   ; vpblendd      $0x1,%xmm9,%xmm8,%xmm8
1758  DB  233,4,255,255,255                   ; jmpq          1bbc <_sk_lerp_565_hsw+0x14>
1759  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
1760  DB  196,65,57,196,68,83,12,6            ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm8,%xmm8
1761  DB  196,65,57,196,68,83,10,5            ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm8,%xmm8
1762  DB  196,65,57,196,68,83,8,4             ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm8,%xmm8
1763  DB  196,65,122,126,12,83                ; vmovq         (%r11,%rdx,2),%xmm9
1764  DB  196,67,49,2,192,12                  ; vpblendd      $0xc,%xmm8,%xmm9,%xmm8
1765  DB  233,214,254,255,255                 ; jmpq          1bbc <_sk_lerp_565_hsw+0x14>
1766  DB  102,144                             ; xchg          %ax,%ax
1767  DB  164                                 ; movsb         %ds:(%rsi),%es:(%rdi)
1768  DB  255                                 ; (bad)
1769  DB  255                                 ; (bad)
1770  DB  255                                 ; (bad)
1771  DB  191,255,255,255,178                 ; mov           $0xb2ffffff,%edi
1772  DB  255                                 ; (bad)
1773  DB  255                                 ; (bad)
1774  DB  255                                 ; (bad)
1775  DB  237                                 ; in            (%dx),%eax
1776  DB  255                                 ; (bad)
1777  DB  255                                 ; (bad)
1778  DB  255,229                             ; jmpq          *%rbp
1779  DB  255                                 ; (bad)
1780  DB  255                                 ; (bad)
1781  DB  255                                 ; (bad)
1782  DB  221,255                             ; (bad)
1783  DB  255                                 ; (bad)
1784  DB  255,208                             ; callq         *%rax
1785  DB  255                                 ; (bad)
1786  DB  255                                 ; (bad)
1787  DB  255                                 ; .byte         0xff
1788
1789PUBLIC _sk_load_tables_hsw
1790_sk_load_tables_hsw LABEL PROC
1791  DB  73,137,201                          ; mov           %rcx,%r9
1792  DB  72,173                              ; lods          %ds:(%rsi),%rax
1793  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
1794  DB  76,3,16                             ; add           (%rax),%r10
1795  DB  77,133,192                          ; test          %r8,%r8
1796  DB  117,105                             ; jne           1d82 <_sk_load_tables_hsw+0x7e>
1797  DB  196,193,124,16,26                   ; vmovups       (%r10),%ymm3
1798  DB  197,228,84,13,186,52,0,0            ; vandps        0x34ba(%rip),%ymm3,%ymm1        # 51e0 <_sk_callback_hsw+0x5b8>
1799  DB  196,65,61,118,192                   ; vpcmpeqd      %ymm8,%ymm8,%ymm8
1800  DB  72,139,72,8                         ; mov           0x8(%rax),%rcx
1801  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
1802  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
1803  DB  196,226,109,146,4,137               ; vgatherdps    %ymm2,(%rcx,%ymm1,4),%ymm0
1804  DB  196,226,101,0,21,186,52,0,0         ; vpshufb       0x34ba(%rip),%ymm3,%ymm2        # 5200 <_sk_callback_hsw+0x5d8>
1805  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
1806  DB  196,194,53,146,12,146               ; vgatherdps    %ymm9,(%r10,%ymm2,4),%ymm1
1807  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1808  DB  196,98,101,0,13,194,52,0,0          ; vpshufb       0x34c2(%rip),%ymm3,%ymm9        # 5220 <_sk_callback_hsw+0x5f8>
1809  DB  196,162,61,146,20,136               ; vgatherdps    %ymm8,(%rax,%ymm9,4),%ymm2
1810  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
1811  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1812  DB  196,98,125,24,5,30,49,0,0           ; vbroadcastss  0x311e(%rip),%ymm8        # 4e94 <_sk_callback_hsw+0x26c>
1813  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
1814  DB  72,173                              ; lods          %ds:(%rsi),%rax
1815  DB  76,137,201                          ; mov           %r9,%rcx
1816  DB  255,224                             ; jmpq          *%rax
1817  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
1818  DB  68,41,193                           ; sub           %r8d,%ecx
1819  DB  192,225,3                           ; shl           $0x3,%cl
1820  DB  73,199,195,255,255,255,255          ; mov           $0xffffffffffffffff,%r11
1821  DB  73,211,235                          ; shr           %cl,%r11
1822  DB  196,193,249,110,195                 ; vmovq         %r11,%xmm0
1823  DB  196,226,125,33,192                  ; vpmovsxbd     %xmm0,%ymm0
1824  DB  196,194,125,44,26                   ; vmaskmovps    (%r10),%ymm0,%ymm3
1825  DB  233,115,255,255,255                 ; jmpq          1d1e <_sk_load_tables_hsw+0x1a>
1826
1827PUBLIC _sk_load_tables_u16_be_hsw
1828_sk_load_tables_u16_be_hsw LABEL PROC
1829  DB  72,173                              ; lods          %ds:(%rsi),%rax
1830  DB  76,139,8                            ; mov           (%rax),%r9
1831  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
1832  DB  77,133,192                          ; test          %r8,%r8
1833  DB  15,133,201,0,0,0                    ; jne           1e8a <_sk_load_tables_u16_be_hsw+0xdf>
1834  DB  196,1,121,16,4,81                   ; vmovupd       (%r9,%r10,2),%xmm8
1835  DB  196,129,121,16,84,81,16             ; vmovupd       0x10(%r9,%r10,2),%xmm2
1836  DB  196,129,121,16,92,81,32             ; vmovupd       0x20(%r9,%r10,2),%xmm3
1837  DB  196,1,122,111,76,81,48              ; vmovdqu       0x30(%r9,%r10,2),%xmm9
1838  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
1839  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
1840  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
1841  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
1842  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
1843  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
1844  DB  197,241,97,195                      ; vpunpcklwd    %xmm3,%xmm1,%xmm0
1845  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
1846  DB  197,185,108,200                     ; vpunpcklqdq   %xmm0,%xmm8,%xmm1
1847  DB  197,185,109,208                     ; vpunpckhqdq   %xmm0,%xmm8,%xmm2
1848  DB  197,49,108,195                      ; vpunpcklqdq   %xmm3,%xmm9,%xmm8
1849  DB  197,121,111,21,110,53,0,0           ; vmovdqa       0x356e(%rip),%xmm10        # 5380 <_sk_callback_hsw+0x758>
1850  DB  196,193,113,219,194                 ; vpand         %xmm10,%xmm1,%xmm0
1851  DB  196,226,125,51,200                  ; vpmovzxwd     %xmm0,%ymm1
1852  DB  196,65,37,118,219                   ; vpcmpeqd      %ymm11,%ymm11,%ymm11
1853  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
1854  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
1855  DB  196,65,29,118,228                   ; vpcmpeqd      %ymm12,%ymm12,%ymm12
1856  DB  196,194,29,146,4,137                ; vgatherdps    %ymm12,(%r9,%ymm1,4),%ymm0
1857  DB  196,193,105,219,202                 ; vpand         %xmm10,%xmm2,%xmm1
1858  DB  196,226,125,51,209                  ; vpmovzxwd     %xmm1,%ymm2
1859  DB  196,65,29,118,228                   ; vpcmpeqd      %ymm12,%ymm12,%ymm12
1860  DB  196,194,29,146,12,146               ; vgatherdps    %ymm12,(%r10,%ymm2,4),%ymm1
1861  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1862  DB  196,193,57,219,210                  ; vpand         %xmm10,%xmm8,%xmm2
1863  DB  196,98,125,51,194                   ; vpmovzxwd     %xmm2,%ymm8
1864  DB  196,162,37,146,20,128               ; vgatherdps    %ymm11,(%rax,%ymm8,4),%ymm2
1865  DB  197,177,109,219                     ; vpunpckhqdq   %xmm3,%xmm9,%xmm3
1866  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
1867  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
1868  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
1869  DB  196,226,125,51,219                  ; vpmovzxwd     %xmm3,%ymm3
1870  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
1871  DB  196,98,125,24,5,23,48,0,0           ; vbroadcastss  0x3017(%rip),%ymm8        # 4e98 <_sk_callback_hsw+0x270>
1872  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
1873  DB  72,173                              ; lods          %ds:(%rsi),%rax
1874  DB  255,224                             ; jmpq          *%rax
1875  DB  196,1,123,16,4,81                   ; vmovsd        (%r9,%r10,2),%xmm8
1876  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
1877  DB  73,131,248,1                        ; cmp           $0x1,%r8
1878  DB  116,85                              ; je            1ef0 <_sk_load_tables_u16_be_hsw+0x145>
1879  DB  196,1,57,22,68,81,8                 ; vmovhpd       0x8(%r9,%r10,2),%xmm8,%xmm8
1880  DB  73,131,248,3                        ; cmp           $0x3,%r8
1881  DB  114,72                              ; jb            1ef0 <_sk_load_tables_u16_be_hsw+0x145>
1882  DB  196,129,123,16,84,81,16             ; vmovsd        0x10(%r9,%r10,2),%xmm2
1883  DB  73,131,248,3                        ; cmp           $0x3,%r8
1884  DB  116,72                              ; je            1efd <_sk_load_tables_u16_be_hsw+0x152>
1885  DB  196,129,105,22,84,81,24             ; vmovhpd       0x18(%r9,%r10,2),%xmm2,%xmm2
1886  DB  73,131,248,5                        ; cmp           $0x5,%r8
1887  DB  114,59                              ; jb            1efd <_sk_load_tables_u16_be_hsw+0x152>
1888  DB  196,129,123,16,92,81,32             ; vmovsd        0x20(%r9,%r10,2),%xmm3
1889  DB  73,131,248,5                        ; cmp           $0x5,%r8
1890  DB  15,132,9,255,255,255                ; je            1ddc <_sk_load_tables_u16_be_hsw+0x31>
1891  DB  196,129,97,22,92,81,40              ; vmovhpd       0x28(%r9,%r10,2),%xmm3,%xmm3
1892  DB  73,131,248,7                        ; cmp           $0x7,%r8
1893  DB  15,130,248,254,255,255              ; jb            1ddc <_sk_load_tables_u16_be_hsw+0x31>
1894  DB  196,1,122,126,76,81,48              ; vmovq         0x30(%r9,%r10,2),%xmm9
1895  DB  233,236,254,255,255                 ; jmpq          1ddc <_sk_load_tables_u16_be_hsw+0x31>
1896  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
1897  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
1898  DB  233,223,254,255,255                 ; jmpq          1ddc <_sk_load_tables_u16_be_hsw+0x31>
1899  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
1900  DB  233,214,254,255,255                 ; jmpq          1ddc <_sk_load_tables_u16_be_hsw+0x31>
1901
1902PUBLIC _sk_load_tables_rgb_u16_be_hsw
1903_sk_load_tables_rgb_u16_be_hsw LABEL PROC
1904  DB  72,173                              ; lods          %ds:(%rsi),%rax
1905  DB  76,139,8                            ; mov           (%rax),%r9
1906  DB  76,141,20,82                        ; lea           (%rdx,%rdx,2),%r10
1907  DB  77,133,192                          ; test          %r8,%r8
1908  DB  15,133,193,0,0,0                    ; jne           1fd9 <_sk_load_tables_rgb_u16_be_hsw+0xd3>
1909  DB  196,129,122,111,4,81                ; vmovdqu       (%r9,%r10,2),%xmm0
1910  DB  196,129,122,111,84,81,12            ; vmovdqu       0xc(%r9,%r10,2),%xmm2
1911  DB  196,129,122,111,76,81,24            ; vmovdqu       0x18(%r9,%r10,2),%xmm1
1912  DB  196,129,122,111,92,81,32            ; vmovdqu       0x20(%r9,%r10,2),%xmm3
1913  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
1914  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
1915  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
1916  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
1917  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
1918  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
1919  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
1920  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
1921  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
1922  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
1923  DB  197,249,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm0
1924  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
1925  DB  197,241,105,203                     ; vpunpckhwd    %xmm3,%xmm1,%xmm1
1926  DB  197,185,108,218                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm3
1927  DB  197,185,109,210                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm2
1928  DB  197,121,108,193                     ; vpunpcklqdq   %xmm1,%xmm0,%xmm8
1929  DB  197,121,111,13,14,52,0,0            ; vmovdqa       0x340e(%rip),%xmm9        # 5390 <_sk_callback_hsw+0x768>
1930  DB  196,193,97,219,193                  ; vpand         %xmm9,%xmm3,%xmm0
1931  DB  196,226,125,51,200                  ; vpmovzxwd     %xmm0,%ymm1
1932  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
1933  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
1934  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
1935  DB  196,65,45,118,210                   ; vpcmpeqd      %ymm10,%ymm10,%ymm10
1936  DB  196,194,45,146,4,137                ; vgatherdps    %ymm10,(%r9,%ymm1,4),%ymm0
1937  DB  196,193,105,219,201                 ; vpand         %xmm9,%xmm2,%xmm1
1938  DB  196,226,125,51,209                  ; vpmovzxwd     %xmm1,%ymm2
1939  DB  196,65,45,118,210                   ; vpcmpeqd      %ymm10,%ymm10,%ymm10
1940  DB  196,194,45,146,12,146               ; vgatherdps    %ymm10,(%r10,%ymm2,4),%ymm1
1941  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
1942  DB  196,193,57,219,209                  ; vpand         %xmm9,%xmm8,%xmm2
1943  DB  196,98,125,51,194                   ; vpmovzxwd     %xmm2,%ymm8
1944  DB  196,162,101,146,20,128              ; vgatherdps    %ymm3,(%rax,%ymm8,4),%ymm2
1945  DB  72,173                              ; lods          %ds:(%rsi),%rax
1946  DB  196,226,125,24,29,197,46,0,0        ; vbroadcastss  0x2ec5(%rip),%ymm3        # 4e9c <_sk_callback_hsw+0x274>
1947  DB  255,224                             ; jmpq          *%rax
1948  DB  196,129,121,110,4,81                ; vmovd         (%r9,%r10,2),%xmm0
1949  DB  196,129,121,196,68,81,4,2           ; vpinsrw       $0x2,0x4(%r9,%r10,2),%xmm0,%xmm0
1950  DB  73,131,248,1                        ; cmp           $0x1,%r8
1951  DB  117,5                               ; jne           1ff2 <_sk_load_tables_rgb_u16_be_hsw+0xec>
1952  DB  233,90,255,255,255                  ; jmpq          1f4c <_sk_load_tables_rgb_u16_be_hsw+0x46>
1953  DB  196,129,121,110,76,81,6             ; vmovd         0x6(%r9,%r10,2),%xmm1
1954  DB  196,1,113,196,68,81,10,2            ; vpinsrw       $0x2,0xa(%r9,%r10,2),%xmm1,%xmm8
1955  DB  73,131,248,3                        ; cmp           $0x3,%r8
1956  DB  114,26                              ; jb            2021 <_sk_load_tables_rgb_u16_be_hsw+0x11b>
1957  DB  196,129,121,110,76,81,12            ; vmovd         0xc(%r9,%r10,2),%xmm1
1958  DB  196,129,113,196,84,81,16,2          ; vpinsrw       $0x2,0x10(%r9,%r10,2),%xmm1,%xmm2
1959  DB  73,131,248,3                        ; cmp           $0x3,%r8
1960  DB  117,10                              ; jne           2026 <_sk_load_tables_rgb_u16_be_hsw+0x120>
1961  DB  233,43,255,255,255                  ; jmpq          1f4c <_sk_load_tables_rgb_u16_be_hsw+0x46>
1962  DB  233,38,255,255,255                  ; jmpq          1f4c <_sk_load_tables_rgb_u16_be_hsw+0x46>
1963  DB  196,129,121,110,76,81,18            ; vmovd         0x12(%r9,%r10,2),%xmm1
1964  DB  196,1,113,196,76,81,22,2            ; vpinsrw       $0x2,0x16(%r9,%r10,2),%xmm1,%xmm9
1965  DB  73,131,248,5                        ; cmp           $0x5,%r8
1966  DB  114,26                              ; jb            2055 <_sk_load_tables_rgb_u16_be_hsw+0x14f>
1967  DB  196,129,121,110,76,81,24            ; vmovd         0x18(%r9,%r10,2),%xmm1
1968  DB  196,129,113,196,76,81,28,2          ; vpinsrw       $0x2,0x1c(%r9,%r10,2),%xmm1,%xmm1
1969  DB  73,131,248,5                        ; cmp           $0x5,%r8
1970  DB  117,10                              ; jne           205a <_sk_load_tables_rgb_u16_be_hsw+0x154>
1971  DB  233,247,254,255,255                 ; jmpq          1f4c <_sk_load_tables_rgb_u16_be_hsw+0x46>
1972  DB  233,242,254,255,255                 ; jmpq          1f4c <_sk_load_tables_rgb_u16_be_hsw+0x46>
1973  DB  196,129,121,110,92,81,30            ; vmovd         0x1e(%r9,%r10,2),%xmm3
1974  DB  196,1,97,196,92,81,34,2             ; vpinsrw       $0x2,0x22(%r9,%r10,2),%xmm3,%xmm11
1975  DB  73,131,248,7                        ; cmp           $0x7,%r8
1976  DB  114,20                              ; jb            2083 <_sk_load_tables_rgb_u16_be_hsw+0x17d>
1977  DB  196,129,121,110,92,81,36            ; vmovd         0x24(%r9,%r10,2),%xmm3
1978  DB  196,129,97,196,92,81,40,2           ; vpinsrw       $0x2,0x28(%r9,%r10,2),%xmm3,%xmm3
1979  DB  233,201,254,255,255                 ; jmpq          1f4c <_sk_load_tables_rgb_u16_be_hsw+0x46>
1980  DB  233,196,254,255,255                 ; jmpq          1f4c <_sk_load_tables_rgb_u16_be_hsw+0x46>
1981
1982PUBLIC _sk_byte_tables_hsw
1983_sk_byte_tables_hsw LABEL PROC
1984  DB  72,173                              ; lods          %ds:(%rsi),%rax
1985  DB  196,98,125,24,5,13,46,0,0           ; vbroadcastss  0x2e0d(%rip),%ymm8        # 4ea0 <_sk_callback_hsw+0x278>
1986  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
1987  DB  197,125,91,200                      ; vcvtps2dq     %ymm0,%ymm9
1988  DB  196,65,249,126,201                  ; vmovq         %xmm9,%r9
1989  DB  69,137,202                          ; mov           %r9d,%r10d
1990  DB  76,139,24                           ; mov           (%rax),%r11
1991  DB  196,131,121,32,4,19,0               ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm0
1992  DB  196,67,249,22,202,1                 ; vpextrq       $0x1,%xmm9,%r10
1993  DB  73,193,233,32                       ; shr           $0x20,%r9
1994  DB  196,3,121,32,20,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm0,%xmm10
1995  DB  69,137,209                          ; mov           %r10d,%r9d
1996  DB  73,193,234,32                       ; shr           $0x20,%r10
1997  DB  196,99,125,57,200,1                 ; vextracti128  $0x1,%ymm9,%xmm0
1998  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
1999  DB  196,67,41,32,201,2                  ; vpinsrb       $0x2,%r9d,%xmm10,%xmm9
2000  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
2001  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
2002  DB  196,67,49,32,202,3                  ; vpinsrb       $0x3,%r10d,%xmm9,%xmm9
2003  DB  69,137,202                          ; mov           %r9d,%r10d
2004  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
2005  DB  196,67,49,32,202,4                  ; vpinsrb       $0x4,%r10d,%xmm9,%xmm9
2006  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
2007  DB  73,193,233,32                       ; shr           $0x20,%r9
2008  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
2009  DB  196,195,49,32,193,5                 ; vpinsrb       $0x5,%r9d,%xmm9,%xmm0
2010  DB  69,137,209                          ; mov           %r10d,%r9d
2011  DB  73,193,234,32                       ; shr           $0x20,%r10
2012  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
2013  DB  196,195,121,32,193,6                ; vpinsrb       $0x6,%r9d,%xmm0,%xmm0
2014  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
2015  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
2016  DB  196,67,121,32,202,7                 ; vpinsrb       $0x7,%r10d,%xmm0,%xmm9
2017  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2018  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
2019  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
2020  DB  69,137,211                          ; mov           %r10d,%r11d
2021  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
2022  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
2023  DB  73,193,234,32                       ; shr           $0x20,%r10
2024  DB  196,131,121,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm0,%xmm0
2025  DB  69,137,218                          ; mov           %r11d,%r10d
2026  DB  73,193,235,32                       ; shr           $0x20,%r11
2027  DB  196,227,125,57,201,1                ; vextracti128  $0x1,%ymm1,%xmm1
2028  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2029  DB  196,195,121,32,194,2                ; vpinsrb       $0x2,%r10d,%xmm0,%xmm0
2030  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
2031  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
2032  DB  196,195,121,32,195,3                ; vpinsrb       $0x3,%r11d,%xmm0,%xmm0
2033  DB  69,137,211                          ; mov           %r10d,%r11d
2034  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
2035  DB  196,195,121,32,195,4                ; vpinsrb       $0x4,%r11d,%xmm0,%xmm0
2036  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
2037  DB  73,193,234,32                       ; shr           $0x20,%r10
2038  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2039  DB  196,195,121,32,194,5                ; vpinsrb       $0x5,%r10d,%xmm0,%xmm0
2040  DB  69,137,218                          ; mov           %r11d,%r10d
2041  DB  73,193,235,32                       ; shr           $0x20,%r11
2042  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2043  DB  196,195,121,32,194,6                ; vpinsrb       $0x6,%r10d,%xmm0,%xmm0
2044  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
2045  DB  196,195,121,32,201,7                ; vpinsrb       $0x7,%r9d,%xmm0,%xmm1
2046  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
2047  DB  196,193,108,89,192                  ; vmulps        %ymm8,%ymm2,%ymm0
2048  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
2049  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2050  DB  69,137,211                          ; mov           %r10d,%r11d
2051  DB  196,131,121,32,20,25,0              ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm2
2052  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2053  DB  73,193,234,32                       ; shr           $0x20,%r10
2054  DB  196,131,105,32,20,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm2
2055  DB  69,137,218                          ; mov           %r11d,%r10d
2056  DB  73,193,235,32                       ; shr           $0x20,%r11
2057  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2058  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2059  DB  196,195,105,32,210,2                ; vpinsrb       $0x2,%r10d,%xmm2,%xmm2
2060  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2061  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
2062  DB  196,195,105,32,211,3                ; vpinsrb       $0x3,%r11d,%xmm2,%xmm2
2063  DB  69,137,211                          ; mov           %r10d,%r11d
2064  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
2065  DB  196,195,105,32,211,4                ; vpinsrb       $0x4,%r11d,%xmm2,%xmm2
2066  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2067  DB  73,193,234,32                       ; shr           $0x20,%r10
2068  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2069  DB  196,195,105,32,194,5                ; vpinsrb       $0x5,%r10d,%xmm2,%xmm0
2070  DB  69,137,218                          ; mov           %r11d,%r10d
2071  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2072  DB  196,195,121,32,194,6                ; vpinsrb       $0x6,%r10d,%xmm0,%xmm0
2073  DB  73,193,235,32                       ; shr           $0x20,%r11
2074  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
2075  DB  196,195,121,32,209,7                ; vpinsrb       $0x7,%r9d,%xmm0,%xmm2
2076  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
2077  DB  196,193,100,89,192                  ; vmulps        %ymm8,%ymm3,%ymm0
2078  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
2079  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
2080  DB  68,137,200                          ; mov           %r9d,%eax
2081  DB  196,195,121,32,28,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm3
2082  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2083  DB  73,193,233,32                       ; shr           $0x20,%r9
2084  DB  196,131,97,32,28,10,1               ; vpinsrb       $0x1,(%r10,%r9,1),%xmm3,%xmm3
2085  DB  65,137,193                          ; mov           %eax,%r9d
2086  DB  72,193,232,32                       ; shr           $0x20,%rax
2087  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2088  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
2089  DB  196,195,97,32,217,2                 ; vpinsrb       $0x2,%r9d,%xmm3,%xmm3
2090  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
2091  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2092  DB  196,227,97,32,216,3                 ; vpinsrb       $0x3,%eax,%xmm3,%xmm3
2093  DB  68,137,200                          ; mov           %r9d,%eax
2094  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2095  DB  196,227,97,32,216,4                 ; vpinsrb       $0x4,%eax,%xmm3,%xmm3
2096  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2097  DB  73,193,233,32                       ; shr           $0x20,%r9
2098  DB  67,15,182,4,10                      ; movzbl        (%r10,%r9,1),%eax
2099  DB  196,227,97,32,192,5                 ; vpinsrb       $0x5,%eax,%xmm3,%xmm0
2100  DB  68,137,216                          ; mov           %r11d,%eax
2101  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2102  DB  196,227,121,32,216,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm3
2103  DB  73,193,235,32                       ; shr           $0x20,%r11
2104  DB  67,15,182,4,26                      ; movzbl        (%r10,%r11,1),%eax
2105  DB  196,194,125,49,193                  ; vpmovzxbd     %xmm9,%ymm0
2106  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2107  DB  196,98,125,24,5,178,43,0,0          ; vbroadcastss  0x2bb2(%rip),%ymm8        # 4ea4 <_sk_callback_hsw+0x27c>
2108  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2109  DB  196,226,125,49,201                  ; vpmovzxbd     %xmm1,%ymm1
2110  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2111  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2112  DB  196,226,125,49,210                  ; vpmovzxbd     %xmm2,%ymm2
2113  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2114  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2115  DB  196,227,97,32,216,7                 ; vpinsrb       $0x7,%eax,%xmm3,%xmm3
2116  DB  196,226,125,49,219                  ; vpmovzxbd     %xmm3,%ymm3
2117  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2118  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2119  DB  72,173                              ; lods          %ds:(%rsi),%rax
2120  DB  255,224                             ; jmpq          *%rax
2121
2122PUBLIC _sk_byte_tables_rgb_hsw
2123_sk_byte_tables_rgb_hsw LABEL PROC
2124  DB  72,173                              ; lods          %ds:(%rsi),%rax
2125  DB  68,139,72,24                        ; mov           0x18(%rax),%r9d
2126  DB  65,255,201                          ; dec           %r9d
2127  DB  196,65,121,110,193                  ; vmovd         %r9d,%xmm8
2128  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
2129  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
2130  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
2131  DB  197,125,91,200                      ; vcvtps2dq     %ymm0,%ymm9
2132  DB  196,65,249,126,201                  ; vmovq         %xmm9,%r9
2133  DB  69,137,202                          ; mov           %r9d,%r10d
2134  DB  76,139,24                           ; mov           (%rax),%r11
2135  DB  196,131,121,32,4,19,0               ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm0
2136  DB  196,67,249,22,202,1                 ; vpextrq       $0x1,%xmm9,%r10
2137  DB  73,193,233,32                       ; shr           $0x20,%r9
2138  DB  196,3,121,32,20,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm0,%xmm10
2139  DB  69,137,209                          ; mov           %r10d,%r9d
2140  DB  73,193,234,32                       ; shr           $0x20,%r10
2141  DB  196,99,125,57,200,1                 ; vextracti128  $0x1,%ymm9,%xmm0
2142  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
2143  DB  196,67,41,32,201,2                  ; vpinsrb       $0x2,%r9d,%xmm10,%xmm9
2144  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
2145  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
2146  DB  196,67,49,32,202,3                  ; vpinsrb       $0x3,%r10d,%xmm9,%xmm9
2147  DB  69,137,202                          ; mov           %r9d,%r10d
2148  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
2149  DB  196,67,49,32,202,4                  ; vpinsrb       $0x4,%r10d,%xmm9,%xmm9
2150  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
2151  DB  73,193,233,32                       ; shr           $0x20,%r9
2152  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
2153  DB  196,195,49,32,193,5                 ; vpinsrb       $0x5,%r9d,%xmm9,%xmm0
2154  DB  69,137,209                          ; mov           %r10d,%r9d
2155  DB  73,193,234,32                       ; shr           $0x20,%r10
2156  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
2157  DB  196,195,121,32,193,6                ; vpinsrb       $0x6,%r9d,%xmm0,%xmm0
2158  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
2159  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
2160  DB  196,67,121,32,202,7                 ; vpinsrb       $0x7,%r10d,%xmm0,%xmm9
2161  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
2162  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
2163  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
2164  DB  69,137,211                          ; mov           %r10d,%r11d
2165  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
2166  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
2167  DB  73,193,234,32                       ; shr           $0x20,%r10
2168  DB  196,131,121,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm0,%xmm0
2169  DB  69,137,218                          ; mov           %r11d,%r10d
2170  DB  73,193,235,32                       ; shr           $0x20,%r11
2171  DB  196,227,125,57,201,1                ; vextracti128  $0x1,%ymm1,%xmm1
2172  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2173  DB  196,195,121,32,194,2                ; vpinsrb       $0x2,%r10d,%xmm0,%xmm0
2174  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
2175  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
2176  DB  196,195,121,32,195,3                ; vpinsrb       $0x3,%r11d,%xmm0,%xmm0
2177  DB  69,137,211                          ; mov           %r10d,%r11d
2178  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
2179  DB  196,195,121,32,195,4                ; vpinsrb       $0x4,%r11d,%xmm0,%xmm0
2180  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
2181  DB  73,193,234,32                       ; shr           $0x20,%r10
2182  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2183  DB  196,195,121,32,194,5                ; vpinsrb       $0x5,%r10d,%xmm0,%xmm0
2184  DB  69,137,218                          ; mov           %r11d,%r10d
2185  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2186  DB  196,195,121,32,194,6                ; vpinsrb       $0x6,%r10d,%xmm0,%xmm0
2187  DB  73,193,235,32                       ; shr           $0x20,%r11
2188  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
2189  DB  196,195,121,32,201,7                ; vpinsrb       $0x7,%r9d,%xmm0,%xmm1
2190  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
2191  DB  197,188,89,194                      ; vmulps        %ymm2,%ymm8,%ymm0
2192  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
2193  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
2194  DB  68,137,200                          ; mov           %r9d,%eax
2195  DB  196,195,121,32,20,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm2
2196  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2197  DB  73,193,233,32                       ; shr           $0x20,%r9
2198  DB  196,131,105,32,20,10,1              ; vpinsrb       $0x1,(%r10,%r9,1),%xmm2,%xmm2
2199  DB  65,137,193                          ; mov           %eax,%r9d
2200  DB  72,193,232,32                       ; shr           $0x20,%rax
2201  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2202  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
2203  DB  196,195,105,32,209,2                ; vpinsrb       $0x2,%r9d,%xmm2,%xmm2
2204  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
2205  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2206  DB  196,227,105,32,208,3                ; vpinsrb       $0x3,%eax,%xmm2,%xmm2
2207  DB  68,137,200                          ; mov           %r9d,%eax
2208  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2209  DB  196,227,105,32,208,4                ; vpinsrb       $0x4,%eax,%xmm2,%xmm2
2210  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2211  DB  73,193,233,32                       ; shr           $0x20,%r9
2212  DB  67,15,182,4,10                      ; movzbl        (%r10,%r9,1),%eax
2213  DB  196,227,105,32,192,5                ; vpinsrb       $0x5,%eax,%xmm2,%xmm0
2214  DB  68,137,216                          ; mov           %r11d,%eax
2215  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
2216  DB  196,227,121,32,208,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm2
2217  DB  73,193,235,32                       ; shr           $0x20,%r11
2218  DB  67,15,182,4,26                      ; movzbl        (%r10,%r11,1),%eax
2219  DB  196,194,125,49,193                  ; vpmovzxbd     %xmm9,%ymm0
2220  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2221  DB  196,98,125,24,5,158,41,0,0          ; vbroadcastss  0x299e(%rip),%ymm8        # 4ea8 <_sk_callback_hsw+0x280>
2222  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2223  DB  196,226,125,49,201                  ; vpmovzxbd     %xmm1,%ymm1
2224  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2225  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2226  DB  196,227,105,32,208,7                ; vpinsrb       $0x7,%eax,%xmm2,%xmm2
2227  DB  196,226,125,49,210                  ; vpmovzxbd     %xmm2,%ymm2
2228  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2229  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2230  DB  72,173                              ; lods          %ds:(%rsi),%rax
2231  DB  255,224                             ; jmpq          *%rax
2232
2233PUBLIC _sk_table_r_hsw
2234_sk_table_r_hsw LABEL PROC
2235  DB  72,173                              ; lods          %ds:(%rsi),%rax
2236  DB  76,139,8                            ; mov           (%rax),%r9
2237  DB  139,64,8                            ; mov           0x8(%rax),%eax
2238  DB  255,200                             ; dec           %eax
2239  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
2240  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
2241  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
2242  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
2243  DB  197,125,91,192                      ; vcvtps2dq     %ymm0,%ymm8
2244  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
2245  DB  196,130,53,146,4,129                ; vgatherdps    %ymm9,(%r9,%ymm8,4),%ymm0
2246  DB  72,173                              ; lods          %ds:(%rsi),%rax
2247  DB  255,224                             ; jmpq          *%rax
2248
2249PUBLIC _sk_table_g_hsw
2250_sk_table_g_hsw LABEL PROC
2251  DB  72,173                              ; lods          %ds:(%rsi),%rax
2252  DB  76,139,8                            ; mov           (%rax),%r9
2253  DB  139,64,8                            ; mov           0x8(%rax),%eax
2254  DB  255,200                             ; dec           %eax
2255  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
2256  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
2257  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
2258  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
2259  DB  197,125,91,193                      ; vcvtps2dq     %ymm1,%ymm8
2260  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
2261  DB  196,130,53,146,12,129               ; vgatherdps    %ymm9,(%r9,%ymm8,4),%ymm1
2262  DB  72,173                              ; lods          %ds:(%rsi),%rax
2263  DB  255,224                             ; jmpq          *%rax
2264
2265PUBLIC _sk_table_b_hsw
2266_sk_table_b_hsw LABEL PROC
2267  DB  72,173                              ; lods          %ds:(%rsi),%rax
2268  DB  76,139,8                            ; mov           (%rax),%r9
2269  DB  139,64,8                            ; mov           0x8(%rax),%eax
2270  DB  255,200                             ; dec           %eax
2271  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
2272  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
2273  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
2274  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
2275  DB  197,125,91,194                      ; vcvtps2dq     %ymm2,%ymm8
2276  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
2277  DB  196,130,53,146,20,129               ; vgatherdps    %ymm9,(%r9,%ymm8,4),%ymm2
2278  DB  72,173                              ; lods          %ds:(%rsi),%rax
2279  DB  255,224                             ; jmpq          *%rax
2280
2281PUBLIC _sk_table_a_hsw
2282_sk_table_a_hsw LABEL PROC
2283  DB  72,173                              ; lods          %ds:(%rsi),%rax
2284  DB  76,139,8                            ; mov           (%rax),%r9
2285  DB  139,64,8                            ; mov           0x8(%rax),%eax
2286  DB  255,200                             ; dec           %eax
2287  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
2288  DB  196,66,125,88,192                   ; vpbroadcastd  %xmm8,%ymm8
2289  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
2290  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
2291  DB  197,125,91,195                      ; vcvtps2dq     %ymm3,%ymm8
2292  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
2293  DB  196,130,53,146,28,129               ; vgatherdps    %ymm9,(%r9,%ymm8,4),%ymm3
2294  DB  72,173                              ; lods          %ds:(%rsi),%rax
2295  DB  255,224                             ; jmpq          *%rax
2296
2297PUBLIC _sk_parametric_r_hsw
2298_sk_parametric_r_hsw LABEL PROC
2299  DB  72,173                              ; lods          %ds:(%rsi),%rax
2300  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
2301  DB  196,65,124,194,192,2                ; vcmpleps      %ymm8,%ymm0,%ymm8
2302  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
2303  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
2304  DB  196,66,125,168,202                  ; vfmadd213ps   %ymm10,%ymm0,%ymm9
2305  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
2306  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
2307  DB  196,66,125,168,211                  ; vfmadd213ps   %ymm11,%ymm0,%ymm10
2308  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
2309  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
2310  DB  196,98,125,24,37,120,40,0,0         ; vbroadcastss  0x2878(%rip),%ymm12        # 4eac <_sk_callback_hsw+0x284>
2311  DB  196,98,125,24,45,115,40,0,0         ; vbroadcastss  0x2873(%rip),%ymm13        # 4eb0 <_sk_callback_hsw+0x288>
2312  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
2313  DB  196,98,125,24,45,105,40,0,0         ; vbroadcastss  0x2869(%rip),%ymm13        # 4eb4 <_sk_callback_hsw+0x28c>
2314  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
2315  DB  196,98,125,24,45,95,40,0,0          ; vbroadcastss  0x285f(%rip),%ymm13        # 4eb8 <_sk_callback_hsw+0x290>
2316  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
2317  DB  196,98,125,24,29,85,40,0,0          ; vbroadcastss  0x2855(%rip),%ymm11        # 4ebc <_sk_callback_hsw+0x294>
2318  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
2319  DB  196,98,125,24,37,75,40,0,0          ; vbroadcastss  0x284b(%rip),%ymm12        # 4ec0 <_sk_callback_hsw+0x298>
2320  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
2321  DB  196,98,125,24,37,65,40,0,0          ; vbroadcastss  0x2841(%rip),%ymm12        # 4ec4 <_sk_callback_hsw+0x29c>
2322  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
2323  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
2324  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
2325  DB  196,99,125,8,208,1                  ; vroundps      $0x1,%ymm0,%ymm10
2326  DB  196,65,124,92,210                   ; vsubps        %ymm10,%ymm0,%ymm10
2327  DB  196,98,125,24,29,34,40,0,0          ; vbroadcastss  0x2822(%rip),%ymm11        # 4ec8 <_sk_callback_hsw+0x2a0>
2328  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
2329  DB  196,98,125,24,29,24,40,0,0          ; vbroadcastss  0x2818(%rip),%ymm11        # 4ecc <_sk_callback_hsw+0x2a4>
2330  DB  196,98,45,172,216                   ; vfnmadd213ps  %ymm0,%ymm10,%ymm11
2331  DB  196,226,125,24,5,14,40,0,0          ; vbroadcastss  0x280e(%rip),%ymm0        # 4ed0 <_sk_callback_hsw+0x2a8>
2332  DB  196,193,124,92,194                  ; vsubps        %ymm10,%ymm0,%ymm0
2333  DB  196,98,125,24,21,4,40,0,0           ; vbroadcastss  0x2804(%rip),%ymm10        # 4ed4 <_sk_callback_hsw+0x2ac>
2334  DB  197,172,94,192                      ; vdivps        %ymm0,%ymm10,%ymm0
2335  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
2336  DB  196,98,125,24,21,247,39,0,0         ; vbroadcastss  0x27f7(%rip),%ymm10        # 4ed8 <_sk_callback_hsw+0x2b0>
2337  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
2338  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
2339  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
2340  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
2341  DB  196,195,125,74,193,128              ; vblendvps     %ymm8,%ymm9,%ymm0,%ymm0
2342  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
2343  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
2344  DB  196,98,125,24,5,206,39,0,0          ; vbroadcastss  0x27ce(%rip),%ymm8        # 4edc <_sk_callback_hsw+0x2b4>
2345  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
2346  DB  72,173                              ; lods          %ds:(%rsi),%rax
2347  DB  255,224                             ; jmpq          *%rax
2348
2349PUBLIC _sk_parametric_g_hsw
2350_sk_parametric_g_hsw LABEL PROC
2351  DB  72,173                              ; lods          %ds:(%rsi),%rax
2352  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
2353  DB  196,65,116,194,192,2                ; vcmpleps      %ymm8,%ymm1,%ymm8
2354  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
2355  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
2356  DB  196,66,117,168,202                  ; vfmadd213ps   %ymm10,%ymm1,%ymm9
2357  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
2358  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
2359  DB  196,66,117,168,211                  ; vfmadd213ps   %ymm11,%ymm1,%ymm10
2360  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
2361  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
2362  DB  196,98,125,24,37,134,39,0,0         ; vbroadcastss  0x2786(%rip),%ymm12        # 4ee0 <_sk_callback_hsw+0x2b8>
2363  DB  196,98,125,24,45,129,39,0,0         ; vbroadcastss  0x2781(%rip),%ymm13        # 4ee4 <_sk_callback_hsw+0x2bc>
2364  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
2365  DB  196,98,125,24,45,119,39,0,0         ; vbroadcastss  0x2777(%rip),%ymm13        # 4ee8 <_sk_callback_hsw+0x2c0>
2366  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
2367  DB  196,98,125,24,45,109,39,0,0         ; vbroadcastss  0x276d(%rip),%ymm13        # 4eec <_sk_callback_hsw+0x2c4>
2368  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
2369  DB  196,98,125,24,29,99,39,0,0          ; vbroadcastss  0x2763(%rip),%ymm11        # 4ef0 <_sk_callback_hsw+0x2c8>
2370  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
2371  DB  196,98,125,24,37,89,39,0,0          ; vbroadcastss  0x2759(%rip),%ymm12        # 4ef4 <_sk_callback_hsw+0x2cc>
2372  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
2373  DB  196,98,125,24,37,79,39,0,0          ; vbroadcastss  0x274f(%rip),%ymm12        # 4ef8 <_sk_callback_hsw+0x2d0>
2374  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
2375  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
2376  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
2377  DB  196,99,125,8,209,1                  ; vroundps      $0x1,%ymm1,%ymm10
2378  DB  196,65,116,92,210                   ; vsubps        %ymm10,%ymm1,%ymm10
2379  DB  196,98,125,24,29,48,39,0,0          ; vbroadcastss  0x2730(%rip),%ymm11        # 4efc <_sk_callback_hsw+0x2d4>
2380  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
2381  DB  196,98,125,24,29,38,39,0,0          ; vbroadcastss  0x2726(%rip),%ymm11        # 4f00 <_sk_callback_hsw+0x2d8>
2382  DB  196,98,45,172,217                   ; vfnmadd213ps  %ymm1,%ymm10,%ymm11
2383  DB  196,226,125,24,13,28,39,0,0         ; vbroadcastss  0x271c(%rip),%ymm1        # 4f04 <_sk_callback_hsw+0x2dc>
2384  DB  196,193,116,92,202                  ; vsubps        %ymm10,%ymm1,%ymm1
2385  DB  196,98,125,24,21,18,39,0,0          ; vbroadcastss  0x2712(%rip),%ymm10        # 4f08 <_sk_callback_hsw+0x2e0>
2386  DB  197,172,94,201                      ; vdivps        %ymm1,%ymm10,%ymm1
2387  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
2388  DB  196,98,125,24,21,5,39,0,0           ; vbroadcastss  0x2705(%rip),%ymm10        # 4f0c <_sk_callback_hsw+0x2e4>
2389  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
2390  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
2391  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
2392  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
2393  DB  196,195,117,74,201,128              ; vblendvps     %ymm8,%ymm9,%ymm1,%ymm1
2394  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
2395  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
2396  DB  196,98,125,24,5,220,38,0,0          ; vbroadcastss  0x26dc(%rip),%ymm8        # 4f10 <_sk_callback_hsw+0x2e8>
2397  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
2398  DB  72,173                              ; lods          %ds:(%rsi),%rax
2399  DB  255,224                             ; jmpq          *%rax
2400
2401PUBLIC _sk_parametric_b_hsw
2402_sk_parametric_b_hsw LABEL PROC
2403  DB  72,173                              ; lods          %ds:(%rsi),%rax
2404  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
2405  DB  196,65,108,194,192,2                ; vcmpleps      %ymm8,%ymm2,%ymm8
2406  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
2407  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
2408  DB  196,66,109,168,202                  ; vfmadd213ps   %ymm10,%ymm2,%ymm9
2409  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
2410  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
2411  DB  196,66,109,168,211                  ; vfmadd213ps   %ymm11,%ymm2,%ymm10
2412  DB  196,226,125,24,16                   ; vbroadcastss  (%rax),%ymm2
2413  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
2414  DB  196,98,125,24,37,148,38,0,0         ; vbroadcastss  0x2694(%rip),%ymm12        # 4f14 <_sk_callback_hsw+0x2ec>
2415  DB  196,98,125,24,45,143,38,0,0         ; vbroadcastss  0x268f(%rip),%ymm13        # 4f18 <_sk_callback_hsw+0x2f0>
2416  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
2417  DB  196,98,125,24,45,133,38,0,0         ; vbroadcastss  0x2685(%rip),%ymm13        # 4f1c <_sk_callback_hsw+0x2f4>
2418  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
2419  DB  196,98,125,24,45,123,38,0,0         ; vbroadcastss  0x267b(%rip),%ymm13        # 4f20 <_sk_callback_hsw+0x2f8>
2420  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
2421  DB  196,98,125,24,29,113,38,0,0         ; vbroadcastss  0x2671(%rip),%ymm11        # 4f24 <_sk_callback_hsw+0x2fc>
2422  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
2423  DB  196,98,125,24,37,103,38,0,0         ; vbroadcastss  0x2667(%rip),%ymm12        # 4f28 <_sk_callback_hsw+0x300>
2424  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
2425  DB  196,98,125,24,37,93,38,0,0          ; vbroadcastss  0x265d(%rip),%ymm12        # 4f2c <_sk_callback_hsw+0x304>
2426  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
2427  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
2428  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
2429  DB  196,99,125,8,210,1                  ; vroundps      $0x1,%ymm2,%ymm10
2430  DB  196,65,108,92,210                   ; vsubps        %ymm10,%ymm2,%ymm10
2431  DB  196,98,125,24,29,62,38,0,0          ; vbroadcastss  0x263e(%rip),%ymm11        # 4f30 <_sk_callback_hsw+0x308>
2432  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
2433  DB  196,98,125,24,29,52,38,0,0          ; vbroadcastss  0x2634(%rip),%ymm11        # 4f34 <_sk_callback_hsw+0x30c>
2434  DB  196,98,45,172,218                   ; vfnmadd213ps  %ymm2,%ymm10,%ymm11
2435  DB  196,226,125,24,21,42,38,0,0         ; vbroadcastss  0x262a(%rip),%ymm2        # 4f38 <_sk_callback_hsw+0x310>
2436  DB  196,193,108,92,210                  ; vsubps        %ymm10,%ymm2,%ymm2
2437  DB  196,98,125,24,21,32,38,0,0          ; vbroadcastss  0x2620(%rip),%ymm10        # 4f3c <_sk_callback_hsw+0x314>
2438  DB  197,172,94,210                      ; vdivps        %ymm2,%ymm10,%ymm2
2439  DB  197,164,88,210                      ; vaddps        %ymm2,%ymm11,%ymm2
2440  DB  196,98,125,24,21,19,38,0,0          ; vbroadcastss  0x2613(%rip),%ymm10        # 4f40 <_sk_callback_hsw+0x318>
2441  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
2442  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
2443  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
2444  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
2445  DB  196,195,109,74,209,128              ; vblendvps     %ymm8,%ymm9,%ymm2,%ymm2
2446  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
2447  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
2448  DB  196,98,125,24,5,234,37,0,0          ; vbroadcastss  0x25ea(%rip),%ymm8        # 4f44 <_sk_callback_hsw+0x31c>
2449  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
2450  DB  72,173                              ; lods          %ds:(%rsi),%rax
2451  DB  255,224                             ; jmpq          *%rax
2452
2453PUBLIC _sk_parametric_a_hsw
2454_sk_parametric_a_hsw LABEL PROC
2455  DB  72,173                              ; lods          %ds:(%rsi),%rax
2456  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
2457  DB  196,65,100,194,192,2                ; vcmpleps      %ymm8,%ymm3,%ymm8
2458  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
2459  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
2460  DB  196,66,101,168,202                  ; vfmadd213ps   %ymm10,%ymm3,%ymm9
2461  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
2462  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
2463  DB  196,66,101,168,211                  ; vfmadd213ps   %ymm11,%ymm3,%ymm10
2464  DB  196,226,125,24,24                   ; vbroadcastss  (%rax),%ymm3
2465  DB  196,65,124,91,218                   ; vcvtdq2ps     %ymm10,%ymm11
2466  DB  196,98,125,24,37,162,37,0,0         ; vbroadcastss  0x25a2(%rip),%ymm12        # 4f48 <_sk_callback_hsw+0x320>
2467  DB  196,98,125,24,45,157,37,0,0         ; vbroadcastss  0x259d(%rip),%ymm13        # 4f4c <_sk_callback_hsw+0x324>
2468  DB  196,65,44,84,213                    ; vandps        %ymm13,%ymm10,%ymm10
2469  DB  196,98,125,24,45,147,37,0,0         ; vbroadcastss  0x2593(%rip),%ymm13        # 4f50 <_sk_callback_hsw+0x328>
2470  DB  196,65,44,86,213                    ; vorps         %ymm13,%ymm10,%ymm10
2471  DB  196,98,125,24,45,137,37,0,0         ; vbroadcastss  0x2589(%rip),%ymm13        # 4f54 <_sk_callback_hsw+0x32c>
2472  DB  196,66,37,184,236                   ; vfmadd231ps   %ymm12,%ymm11,%ymm13
2473  DB  196,98,125,24,29,127,37,0,0         ; vbroadcastss  0x257f(%rip),%ymm11        # 4f58 <_sk_callback_hsw+0x330>
2474  DB  196,66,45,172,221                   ; vfnmadd213ps  %ymm13,%ymm10,%ymm11
2475  DB  196,98,125,24,37,117,37,0,0         ; vbroadcastss  0x2575(%rip),%ymm12        # 4f5c <_sk_callback_hsw+0x334>
2476  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
2477  DB  196,98,125,24,37,107,37,0,0         ; vbroadcastss  0x256b(%rip),%ymm12        # 4f60 <_sk_callback_hsw+0x338>
2478  DB  196,65,28,94,210                    ; vdivps        %ymm10,%ymm12,%ymm10
2479  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
2480  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
2481  DB  196,99,125,8,211,1                  ; vroundps      $0x1,%ymm3,%ymm10
2482  DB  196,65,100,92,210                   ; vsubps        %ymm10,%ymm3,%ymm10
2483  DB  196,98,125,24,29,76,37,0,0          ; vbroadcastss  0x254c(%rip),%ymm11        # 4f64 <_sk_callback_hsw+0x33c>
2484  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
2485  DB  196,98,125,24,29,66,37,0,0          ; vbroadcastss  0x2542(%rip),%ymm11        # 4f68 <_sk_callback_hsw+0x340>
2486  DB  196,98,45,172,219                   ; vfnmadd213ps  %ymm3,%ymm10,%ymm11
2487  DB  196,226,125,24,29,56,37,0,0         ; vbroadcastss  0x2538(%rip),%ymm3        # 4f6c <_sk_callback_hsw+0x344>
2488  DB  196,193,100,92,218                  ; vsubps        %ymm10,%ymm3,%ymm3
2489  DB  196,98,125,24,21,46,37,0,0          ; vbroadcastss  0x252e(%rip),%ymm10        # 4f70 <_sk_callback_hsw+0x348>
2490  DB  197,172,94,219                      ; vdivps        %ymm3,%ymm10,%ymm3
2491  DB  197,164,88,219                      ; vaddps        %ymm3,%ymm11,%ymm3
2492  DB  196,98,125,24,21,33,37,0,0          ; vbroadcastss  0x2521(%rip),%ymm10        # 4f74 <_sk_callback_hsw+0x34c>
2493  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
2494  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
2495  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
2496  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
2497  DB  196,195,101,74,217,128              ; vblendvps     %ymm8,%ymm9,%ymm3,%ymm3
2498  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
2499  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
2500  DB  196,98,125,24,5,248,36,0,0          ; vbroadcastss  0x24f8(%rip),%ymm8        # 4f78 <_sk_callback_hsw+0x350>
2501  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
2502  DB  72,173                              ; lods          %ds:(%rsi),%rax
2503  DB  255,224                             ; jmpq          *%rax
2504
2505PUBLIC _sk_lab_to_xyz_hsw
2506_sk_lab_to_xyz_hsw LABEL PROC
2507  DB  196,98,125,24,5,234,36,0,0          ; vbroadcastss  0x24ea(%rip),%ymm8        # 4f7c <_sk_callback_hsw+0x354>
2508  DB  196,98,125,24,13,229,36,0,0         ; vbroadcastss  0x24e5(%rip),%ymm9        # 4f80 <_sk_callback_hsw+0x358>
2509  DB  196,98,125,24,21,224,36,0,0         ; vbroadcastss  0x24e0(%rip),%ymm10        # 4f84 <_sk_callback_hsw+0x35c>
2510  DB  196,194,53,168,202                  ; vfmadd213ps   %ymm10,%ymm9,%ymm1
2511  DB  196,194,53,168,210                  ; vfmadd213ps   %ymm10,%ymm9,%ymm2
2512  DB  196,98,125,24,13,209,36,0,0         ; vbroadcastss  0x24d1(%rip),%ymm9        # 4f88 <_sk_callback_hsw+0x360>
2513  DB  196,66,125,184,200                  ; vfmadd231ps   %ymm8,%ymm0,%ymm9
2514  DB  196,226,125,24,5,199,36,0,0         ; vbroadcastss  0x24c7(%rip),%ymm0        # 4f8c <_sk_callback_hsw+0x364>
2515  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
2516  DB  196,98,125,24,5,190,36,0,0          ; vbroadcastss  0x24be(%rip),%ymm8        # 4f90 <_sk_callback_hsw+0x368>
2517  DB  196,98,117,168,192                  ; vfmadd213ps   %ymm0,%ymm1,%ymm8
2518  DB  196,98,125,24,13,180,36,0,0         ; vbroadcastss  0x24b4(%rip),%ymm9        # 4f94 <_sk_callback_hsw+0x36c>
2519  DB  196,98,109,172,200                  ; vfnmadd213ps  %ymm0,%ymm2,%ymm9
2520  DB  196,193,60,89,200                   ; vmulps        %ymm8,%ymm8,%ymm1
2521  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
2522  DB  196,226,125,24,21,161,36,0,0        ; vbroadcastss  0x24a1(%rip),%ymm2        # 4f98 <_sk_callback_hsw+0x370>
2523  DB  197,108,194,209,1                   ; vcmpltps      %ymm1,%ymm2,%ymm10
2524  DB  196,98,125,24,29,151,36,0,0         ; vbroadcastss  0x2497(%rip),%ymm11        # 4f9c <_sk_callback_hsw+0x374>
2525  DB  196,65,60,88,195                    ; vaddps        %ymm11,%ymm8,%ymm8
2526  DB  196,98,125,24,37,141,36,0,0         ; vbroadcastss  0x248d(%rip),%ymm12        # 4fa0 <_sk_callback_hsw+0x378>
2527  DB  196,65,60,89,196                    ; vmulps        %ymm12,%ymm8,%ymm8
2528  DB  196,99,61,74,193,160                ; vblendvps     %ymm10,%ymm1,%ymm8,%ymm8
2529  DB  197,252,89,200                      ; vmulps        %ymm0,%ymm0,%ymm1
2530  DB  197,252,89,201                      ; vmulps        %ymm1,%ymm0,%ymm1
2531  DB  197,108,194,209,1                   ; vcmpltps      %ymm1,%ymm2,%ymm10
2532  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
2533  DB  196,193,124,89,196                  ; vmulps        %ymm12,%ymm0,%ymm0
2534  DB  196,227,125,74,201,160              ; vblendvps     %ymm10,%ymm1,%ymm0,%ymm1
2535  DB  196,193,52,89,193                   ; vmulps        %ymm9,%ymm9,%ymm0
2536  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
2537  DB  197,236,194,208,1                   ; vcmpltps      %ymm0,%ymm2,%ymm2
2538  DB  196,65,52,88,203                    ; vaddps        %ymm11,%ymm9,%ymm9
2539  DB  196,65,52,89,204                    ; vmulps        %ymm12,%ymm9,%ymm9
2540  DB  196,227,53,74,208,32                ; vblendvps     %ymm2,%ymm0,%ymm9,%ymm2
2541  DB  196,226,125,24,5,66,36,0,0          ; vbroadcastss  0x2442(%rip),%ymm0        # 4fa4 <_sk_callback_hsw+0x37c>
2542  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
2543  DB  196,98,125,24,5,57,36,0,0           ; vbroadcastss  0x2439(%rip),%ymm8        # 4fa8 <_sk_callback_hsw+0x380>
2544  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2545  DB  72,173                              ; lods          %ds:(%rsi),%rax
2546  DB  255,224                             ; jmpq          *%rax
2547
2548PUBLIC _sk_load_a8_hsw
2549_sk_load_a8_hsw LABEL PROC
2550  DB  72,173                              ; lods          %ds:(%rsi),%rax
2551  DB  76,139,24                           ; mov           (%rax),%r11
2552  DB  77,133,192                          ; test          %r8,%r8
2553  DB  117,52                              ; jne           2bb6 <_sk_load_a8_hsw+0x3e>
2554  DB  196,194,121,48,4,19                 ; vpmovzxbw     (%r11,%rdx,1),%xmm0
2555  DB  197,249,219,5,16,40,0,0             ; vpand         0x2810(%rip),%xmm0,%xmm0        # 53a0 <_sk_callback_hsw+0x778>
2556  DB  196,226,125,51,192                  ; vpmovzxwd     %xmm0,%ymm0
2557  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2558  DB  196,226,125,24,13,10,36,0,0         ; vbroadcastss  0x240a(%rip),%ymm1        # 4fac <_sk_callback_hsw+0x384>
2559  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
2560  DB  72,173                              ; lods          %ds:(%rsi),%rax
2561  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
2562  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
2563  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
2564  DB  255,224                             ; jmpq          *%rax
2565  DB  69,137,193                          ; mov           %r8d,%r9d
2566  DB  65,128,225,7                        ; and           $0x7,%r9b
2567  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2568  DB  65,254,201                          ; dec           %r9b
2569  DB  65,128,249,6                        ; cmp           $0x6,%r9b
2570  DB  119,190                             ; ja            2b88 <_sk_load_a8_hsw+0x10>
2571  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
2572  DB  76,141,21,119,0,0,0                 ; lea           0x77(%rip),%r10        # 2c4c <_sk_load_a8_hsw+0xd4>
2573  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
2574  DB  76,1,208                            ; add           %r10,%rax
2575  DB  255,224                             ; jmpq          *%rax
2576  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
2577  DB  197,249,110,192                     ; vmovd         %eax,%xmm0
2578  DB  235,159                             ; jmp           2b88 <_sk_load_a8_hsw+0x10>
2579  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
2580  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2581  DB  197,249,196,192,2                   ; vpinsrw       $0x2,%eax,%xmm0,%xmm0
2582  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
2583  DB  197,249,110,200                     ; vmovd         %eax,%xmm1
2584  DB  196,226,121,48,201                  ; vpmovzxbw     %xmm1,%xmm1
2585  DB  196,227,121,2,193,1                 ; vpblendd      $0x1,%xmm1,%xmm0,%xmm0
2586  DB  233,119,255,255,255                 ; jmpq          2b88 <_sk_load_a8_hsw+0x10>
2587  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
2588  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2589  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
2590  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
2591  DB  197,249,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm0,%xmm0
2592  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
2593  DB  197,249,196,192,4                   ; vpinsrw       $0x4,%eax,%xmm0,%xmm0
2594  DB  196,193,121,110,12,19               ; vmovd         (%r11,%rdx,1),%xmm1
2595  DB  196,226,121,48,201                  ; vpmovzxbw     %xmm1,%xmm1
2596  DB  196,227,113,2,192,12                ; vpblendd      $0xc,%xmm0,%xmm1,%xmm0
2597  DB  233,60,255,255,255                  ; jmpq          2b88 <_sk_load_a8_hsw+0x10>
2598  DB  146                                 ; xchg          %eax,%edx
2599  DB  255                                 ; (bad)
2600  DB  255                                 ; (bad)
2601  DB  255,172,255,255,255,157,255         ; ljmp          *-0x620001(%rdi,%rdi,8)
2602  DB  255                                 ; (bad)
2603  DB  255                                 ; (bad)
2604  DB  234                                 ; (bad)
2605  DB  255                                 ; (bad)
2606  DB  255                                 ; (bad)
2607  DB  255                                 ; (bad)
2608  DB  223,255                             ; (bad)
2609  DB  255                                 ; (bad)
2610  DB  255,212                             ; callq         *%rsp
2611  DB  255                                 ; (bad)
2612  DB  255                                 ; (bad)
2613  DB  255,197                             ; inc           %ebp
2614  DB  255                                 ; (bad)
2615  DB  255                                 ; (bad)
2616  DB  255                                 ; .byte         0xff
2617
2618PUBLIC _sk_gather_a8_hsw
2619_sk_gather_a8_hsw LABEL PROC
2620  DB  72,173                              ; lods          %ds:(%rsi),%rax
2621  DB  76,139,8                            ; mov           (%rax),%r9
2622  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2623  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2624  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2625  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2626  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2627  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2628  DB  68,137,208                          ; mov           %r10d,%eax
2629  DB  196,195,121,32,12,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm1
2630  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2631  DB  73,193,234,32                       ; shr           $0x20,%r10
2632  DB  196,131,113,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm1,%xmm1
2633  DB  65,137,194                          ; mov           %eax,%r10d
2634  DB  72,193,232,32                       ; shr           $0x20,%rax
2635  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2636  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2637  DB  196,195,113,32,202,2                ; vpinsrb       $0x2,%r10d,%xmm1,%xmm1
2638  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2639  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2640  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
2641  DB  68,137,208                          ; mov           %r10d,%eax
2642  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2643  DB  196,227,113,32,200,4                ; vpinsrb       $0x4,%eax,%xmm1,%xmm1
2644  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2645  DB  73,193,234,32                       ; shr           $0x20,%r10
2646  DB  67,15,182,4,17                      ; movzbl        (%r9,%r10,1),%eax
2647  DB  196,227,113,32,192,5                ; vpinsrb       $0x5,%eax,%xmm1,%xmm0
2648  DB  68,137,216                          ; mov           %r11d,%eax
2649  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2650  DB  196,227,121,32,192,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm0
2651  DB  73,193,235,32                       ; shr           $0x20,%r11
2652  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
2653  DB  196,227,121,32,192,7                ; vpinsrb       $0x7,%eax,%xmm0,%xmm0
2654  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2655  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2656  DB  196,226,125,24,13,146,34,0,0        ; vbroadcastss  0x2292(%rip),%ymm1        # 4fb0 <_sk_callback_hsw+0x388>
2657  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
2658  DB  72,173                              ; lods          %ds:(%rsi),%rax
2659  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
2660  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
2661  DB  197,237,239,210                     ; vpxor         %ymm2,%ymm2,%ymm2
2662  DB  255,224                             ; jmpq          *%rax
2663
2664PUBLIC _sk_store_a8_hsw
2665_sk_store_a8_hsw LABEL PROC
2666  DB  72,173                              ; lods          %ds:(%rsi),%rax
2667  DB  76,139,24                           ; mov           (%rax),%r11
2668  DB  196,98,125,24,5,116,34,0,0          ; vbroadcastss  0x2274(%rip),%ymm8        # 4fb4 <_sk_callback_hsw+0x38c>
2669  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
2670  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
2671  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
2672  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
2673  DB  196,65,57,103,192                   ; vpackuswb     %xmm8,%xmm8,%xmm8
2674  DB  77,133,192                          ; test          %r8,%r8
2675  DB  117,10                              ; jne           2d69 <_sk_store_a8_hsw+0x37>
2676  DB  196,65,123,17,4,19                  ; vmovsd        %xmm8,(%r11,%rdx,1)
2677  DB  72,173                              ; lods          %ds:(%rsi),%rax
2678  DB  255,224                             ; jmpq          *%rax
2679  DB  69,137,193                          ; mov           %r8d,%r9d
2680  DB  65,128,225,7                        ; and           $0x7,%r9b
2681  DB  65,254,201                          ; dec           %r9b
2682  DB  65,128,249,6                        ; cmp           $0x6,%r9b
2683  DB  119,236                             ; ja            2d65 <_sk_store_a8_hsw+0x33>
2684  DB  196,66,121,48,192                   ; vpmovzxbw     %xmm8,%xmm8
2685  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
2686  DB  76,141,21,87,0,0,0                  ; lea           0x57(%rip),%r10        # 2de0 <_sk_store_a8_hsw+0xae>
2687  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
2688  DB  76,1,208                            ; add           %r10,%rax
2689  DB  255,224                             ; jmpq          *%rax
2690  DB  196,67,121,20,4,19,0                ; vpextrb       $0x0,%xmm8,(%r11,%rdx,1)
2691  DB  235,202                             ; jmp           2d65 <_sk_store_a8_hsw+0x33>
2692  DB  196,67,121,20,68,19,2,4             ; vpextrb       $0x4,%xmm8,0x2(%r11,%rdx,1)
2693  DB  196,98,57,0,5,4,38,0,0              ; vpshufb       0x2604(%rip),%xmm8,%xmm8        # 53b0 <_sk_callback_hsw+0x788>
2694  DB  196,67,121,21,4,19,0                ; vpextrw       $0x0,%xmm8,(%r11,%rdx,1)
2695  DB  235,176                             ; jmp           2d65 <_sk_store_a8_hsw+0x33>
2696  DB  196,67,121,20,68,19,6,12            ; vpextrb       $0xc,%xmm8,0x6(%r11,%rdx,1)
2697  DB  196,67,121,20,68,19,5,10            ; vpextrb       $0xa,%xmm8,0x5(%r11,%rdx,1)
2698  DB  196,67,121,20,68,19,4,8             ; vpextrb       $0x8,%xmm8,0x4(%r11,%rdx,1)
2699  DB  196,98,57,0,5,234,37,0,0            ; vpshufb       0x25ea(%rip),%xmm8,%xmm8        # 53c0 <_sk_callback_hsw+0x798>
2700  DB  196,65,121,126,4,19                 ; vmovd         %xmm8,(%r11,%rdx,1)
2701  DB  235,135                             ; jmp           2d65 <_sk_store_a8_hsw+0x33>
2702  DB  102,144                             ; xchg          %ax,%ax
2703  DB  178,255                             ; mov           $0xff,%dl
2704  DB  255                                 ; (bad)
2705  DB  255,195                             ; inc           %ebx
2706  DB  255                                 ; (bad)
2707  DB  255                                 ; (bad)
2708  DB  255                                 ; (bad)
2709  DB  187,255,255,255,237                 ; mov           $0xedffffff,%ebx
2710  DB  255                                 ; (bad)
2711  DB  255                                 ; (bad)
2712  DB  255,229                             ; jmpq          *%rbp
2713  DB  255                                 ; (bad)
2714  DB  255                                 ; (bad)
2715  DB  255                                 ; (bad)
2716  DB  221,255                             ; (bad)
2717  DB  255                                 ; (bad)
2718  DB  255,213                             ; callq         *%rbp
2719  DB  255                                 ; (bad)
2720  DB  255                                 ; (bad)
2721  DB  255                                 ; .byte         0xff
2722
2723PUBLIC _sk_load_g8_hsw
2724_sk_load_g8_hsw LABEL PROC
2725  DB  72,173                              ; lods          %ds:(%rsi),%rax
2726  DB  76,139,24                           ; mov           (%rax),%r11
2727  DB  77,133,192                          ; test          %r8,%r8
2728  DB  117,57                              ; jne           2e3f <_sk_load_g8_hsw+0x43>
2729  DB  196,194,121,48,4,19                 ; vpmovzxbw     (%r11,%rdx,1),%xmm0
2730  DB  197,249,219,5,188,37,0,0            ; vpand         0x25bc(%rip),%xmm0,%xmm0        # 53d0 <_sk_callback_hsw+0x7a8>
2731  DB  196,226,125,51,192                  ; vpmovzxwd     %xmm0,%ymm0
2732  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2733  DB  196,226,125,24,13,146,33,0,0        ; vbroadcastss  0x2192(%rip),%ymm1        # 4fb8 <_sk_callback_hsw+0x390>
2734  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2735  DB  72,173                              ; lods          %ds:(%rsi),%rax
2736  DB  196,226,125,24,29,135,33,0,0        ; vbroadcastss  0x2187(%rip),%ymm3        # 4fbc <_sk_callback_hsw+0x394>
2737  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
2738  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
2739  DB  255,224                             ; jmpq          *%rax
2740  DB  69,137,193                          ; mov           %r8d,%r9d
2741  DB  65,128,225,7                        ; and           $0x7,%r9b
2742  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2743  DB  65,254,201                          ; dec           %r9b
2744  DB  65,128,249,6                        ; cmp           $0x6,%r9b
2745  DB  119,185                             ; ja            2e0c <_sk_load_g8_hsw+0x10>
2746  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
2747  DB  76,141,21,122,0,0,0                 ; lea           0x7a(%rip),%r10        # 2ed8 <_sk_load_g8_hsw+0xdc>
2748  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
2749  DB  76,1,208                            ; add           %r10,%rax
2750  DB  255,224                             ; jmpq          *%rax
2751  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
2752  DB  197,249,110,192                     ; vmovd         %eax,%xmm0
2753  DB  235,154                             ; jmp           2e0c <_sk_load_g8_hsw+0x10>
2754  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
2755  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2756  DB  197,249,196,192,2                   ; vpinsrw       $0x2,%eax,%xmm0,%xmm0
2757  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
2758  DB  197,249,110,200                     ; vmovd         %eax,%xmm1
2759  DB  196,226,121,48,201                  ; vpmovzxbw     %xmm1,%xmm1
2760  DB  196,227,121,2,193,1                 ; vpblendd      $0x1,%xmm1,%xmm0,%xmm0
2761  DB  233,114,255,255,255                 ; jmpq          2e0c <_sk_load_g8_hsw+0x10>
2762  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
2763  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2764  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
2765  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
2766  DB  197,249,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm0,%xmm0
2767  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
2768  DB  197,249,196,192,4                   ; vpinsrw       $0x4,%eax,%xmm0,%xmm0
2769  DB  196,193,121,110,12,19               ; vmovd         (%r11,%rdx,1),%xmm1
2770  DB  196,226,121,48,201                  ; vpmovzxbw     %xmm1,%xmm1
2771  DB  196,227,113,2,192,12                ; vpblendd      $0xc,%xmm0,%xmm1,%xmm0
2772  DB  233,55,255,255,255                  ; jmpq          2e0c <_sk_load_g8_hsw+0x10>
2773  DB  15,31,0                             ; nopl          (%rax)
2774  DB  143                                 ; (bad)
2775  DB  255                                 ; (bad)
2776  DB  255                                 ; (bad)
2777  DB  255,169,255,255,255,154             ; ljmp          *-0x65000001(%rcx)
2778  DB  255                                 ; (bad)
2779  DB  255                                 ; (bad)
2780  DB  255,231                             ; jmpq          *%rdi
2781  DB  255                                 ; (bad)
2782  DB  255                                 ; (bad)
2783  DB  255                                 ; (bad)
2784  DB  220,255                             ; fdivr         %st,%st(7)
2785  DB  255                                 ; (bad)
2786  DB  255,209                             ; callq         *%rcx
2787  DB  255                                 ; (bad)
2788  DB  255                                 ; (bad)
2789  DB  255,194                             ; inc           %edx
2790  DB  255                                 ; (bad)
2791  DB  255                                 ; (bad)
2792  DB  255                                 ; .byte         0xff
2793
2794PUBLIC _sk_gather_g8_hsw
2795_sk_gather_g8_hsw LABEL PROC
2796  DB  72,173                              ; lods          %ds:(%rsi),%rax
2797  DB  76,139,8                            ; mov           (%rax),%r9
2798  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2799  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2800  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2801  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2802  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2803  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2804  DB  68,137,208                          ; mov           %r10d,%eax
2805  DB  196,195,121,32,12,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm1
2806  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2807  DB  73,193,234,32                       ; shr           $0x20,%r10
2808  DB  196,131,113,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm1,%xmm1
2809  DB  65,137,194                          ; mov           %eax,%r10d
2810  DB  72,193,232,32                       ; shr           $0x20,%rax
2811  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2812  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
2813  DB  196,195,113,32,202,2                ; vpinsrb       $0x2,%r10d,%xmm1,%xmm1
2814  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2815  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2816  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
2817  DB  68,137,208                          ; mov           %r10d,%eax
2818  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2819  DB  196,227,113,32,200,4                ; vpinsrb       $0x4,%eax,%xmm1,%xmm1
2820  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2821  DB  73,193,234,32                       ; shr           $0x20,%r10
2822  DB  67,15,182,4,17                      ; movzbl        (%r9,%r10,1),%eax
2823  DB  196,227,113,32,192,5                ; vpinsrb       $0x5,%eax,%xmm1,%xmm0
2824  DB  68,137,216                          ; mov           %r11d,%eax
2825  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
2826  DB  196,227,121,32,192,6                ; vpinsrb       $0x6,%eax,%xmm0,%xmm0
2827  DB  73,193,235,32                       ; shr           $0x20,%r11
2828  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
2829  DB  196,227,121,32,192,7                ; vpinsrb       $0x7,%eax,%xmm0,%xmm0
2830  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2831  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2832  DB  196,226,125,24,13,22,32,0,0         ; vbroadcastss  0x2016(%rip),%ymm1        # 4fc0 <_sk_callback_hsw+0x398>
2833  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2834  DB  72,173                              ; lods          %ds:(%rsi),%rax
2835  DB  196,226,125,24,29,11,32,0,0         ; vbroadcastss  0x200b(%rip),%ymm3        # 4fc4 <_sk_callback_hsw+0x39c>
2836  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
2837  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
2838  DB  255,224                             ; jmpq          *%rax
2839
2840PUBLIC _sk_gather_i8_hsw
2841_sk_gather_i8_hsw LABEL PROC
2842  DB  72,173                              ; lods          %ds:(%rsi),%rax
2843  DB  73,137,193                          ; mov           %rax,%r9
2844  DB  77,133,201                          ; test          %r9,%r9
2845  DB  116,5                               ; je            2fd2 <_sk_gather_i8_hsw+0xf>
2846  DB  76,137,200                          ; mov           %r9,%rax
2847  DB  235,2                               ; jmp           2fd4 <_sk_gather_i8_hsw+0x11>
2848  DB  72,173                              ; lods          %ds:(%rsi),%rax
2849  DB  83                                  ; push          %rbx
2850  DB  76,139,16                           ; mov           (%rax),%r10
2851  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2852  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2853  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2854  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2855  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2856  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
2857  DB  68,137,216                          ; mov           %r11d,%eax
2858  DB  196,195,121,32,12,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm1
2859  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
2860  DB  73,193,235,32                       ; shr           $0x20,%r11
2861  DB  196,131,113,32,12,26,1              ; vpinsrb       $0x1,(%r10,%r11,1),%xmm1,%xmm1
2862  DB  65,137,195                          ; mov           %eax,%r11d
2863  DB  72,193,232,32                       ; shr           $0x20,%rax
2864  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2865  DB  196,131,113,32,12,26,2              ; vpinsrb       $0x2,(%r10,%r11,1),%xmm1,%xmm1
2866  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
2867  DB  196,195,113,32,12,2,3               ; vpinsrb       $0x3,(%r10,%rax,1),%xmm1,%xmm1
2868  DB  68,137,216                          ; mov           %r11d,%eax
2869  DB  196,195,113,32,12,2,4               ; vpinsrb       $0x4,(%r10,%rax,1),%xmm1,%xmm1
2870  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
2871  DB  73,193,235,32                       ; shr           $0x20,%r11
2872  DB  196,131,113,32,4,26,5               ; vpinsrb       $0x5,(%r10,%r11,1),%xmm1,%xmm0
2873  DB  137,216                             ; mov           %ebx,%eax
2874  DB  196,195,121,32,4,2,6                ; vpinsrb       $0x6,(%r10,%rax,1),%xmm0,%xmm0
2875  DB  72,193,235,32                       ; shr           $0x20,%rbx
2876  DB  196,195,121,32,4,26,7               ; vpinsrb       $0x7,(%r10,%rbx,1),%xmm0,%xmm0
2877  DB  196,226,125,49,192                  ; vpmovzxbd     %xmm0,%ymm0
2878  DB  73,139,65,8                         ; mov           0x8(%r9),%rax
2879  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
2880  DB  196,226,117,144,28,128              ; vpgatherdd    %ymm1,(%rax,%ymm0,4),%ymm3
2881  DB  197,229,219,5,199,33,0,0            ; vpand         0x21c7(%rip),%ymm3,%ymm0        # 5240 <_sk_callback_hsw+0x618>
2882  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2883  DB  196,98,125,24,5,66,31,0,0           ; vbroadcastss  0x1f42(%rip),%ymm8        # 4fc8 <_sk_callback_hsw+0x3a0>
2884  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
2885  DB  196,226,101,0,13,204,33,0,0         ; vpshufb       0x21cc(%rip),%ymm3,%ymm1        # 5260 <_sk_callback_hsw+0x638>
2886  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2887  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
2888  DB  196,226,101,0,21,218,33,0,0         ; vpshufb       0x21da(%rip),%ymm3,%ymm2        # 5280 <_sk_callback_hsw+0x658>
2889  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2890  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
2891  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
2892  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
2893  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
2894  DB  72,173                              ; lods          %ds:(%rsi),%rax
2895  DB  91                                  ; pop           %rbx
2896  DB  255,224                             ; jmpq          *%rax
2897
2898PUBLIC _sk_load_565_hsw
2899_sk_load_565_hsw LABEL PROC
2900  DB  72,173                              ; lods          %ds:(%rsi),%rax
2901  DB  76,139,24                           ; mov           (%rax),%r11
2902  DB  77,133,192                          ; test          %r8,%r8
2903  DB  117,114                             ; jne           313e <_sk_load_565_hsw+0x7c>
2904  DB  196,193,122,111,4,83                ; vmovdqu       (%r11,%rdx,2),%xmm0
2905  DB  196,226,125,51,208                  ; vpmovzxwd     %xmm0,%ymm2
2906  DB  196,226,125,88,5,236,30,0,0         ; vpbroadcastd  0x1eec(%rip),%ymm0        # 4fcc <_sk_callback_hsw+0x3a4>
2907  DB  197,237,219,192                     ; vpand         %ymm0,%ymm2,%ymm0
2908  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
2909  DB  196,226,125,24,13,223,30,0,0        ; vbroadcastss  0x1edf(%rip),%ymm1        # 4fd0 <_sk_callback_hsw+0x3a8>
2910  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
2911  DB  196,226,125,88,13,214,30,0,0        ; vpbroadcastd  0x1ed6(%rip),%ymm1        # 4fd4 <_sk_callback_hsw+0x3ac>
2912  DB  197,237,219,201                     ; vpand         %ymm1,%ymm2,%ymm1
2913  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
2914  DB  196,226,125,24,29,201,30,0,0        ; vbroadcastss  0x1ec9(%rip),%ymm3        # 4fd8 <_sk_callback_hsw+0x3b0>
2915  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
2916  DB  196,226,125,88,29,192,30,0,0        ; vpbroadcastd  0x1ec0(%rip),%ymm3        # 4fdc <_sk_callback_hsw+0x3b4>
2917  DB  197,237,219,211                     ; vpand         %ymm3,%ymm2,%ymm2
2918  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
2919  DB  196,226,125,24,29,179,30,0,0        ; vbroadcastss  0x1eb3(%rip),%ymm3        # 4fe0 <_sk_callback_hsw+0x3b8>
2920  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
2921  DB  72,173                              ; lods          %ds:(%rsi),%rax
2922  DB  196,226,125,24,29,168,30,0,0        ; vbroadcastss  0x1ea8(%rip),%ymm3        # 4fe4 <_sk_callback_hsw+0x3bc>
2923  DB  255,224                             ; jmpq          *%rax
2924  DB  69,137,193                          ; mov           %r8d,%r9d
2925  DB  65,128,225,7                        ; and           $0x7,%r9b
2926  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2927  DB  65,254,201                          ; dec           %r9b
2928  DB  65,128,249,6                        ; cmp           $0x6,%r9b
2929  DB  119,128                             ; ja            30d2 <_sk_load_565_hsw+0x10>
2930  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
2931  DB  76,141,21,99,0,0,0                  ; lea           0x63(%rip),%r10        # 31c0 <_sk_load_565_hsw+0xfe>
2932  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
2933  DB  76,1,208                            ; add           %r10,%rax
2934  DB  255,224                             ; jmpq          *%rax
2935  DB  65,15,183,4,83                      ; movzwl        (%r11,%rdx,2),%eax
2936  DB  197,249,110,192                     ; vmovd         %eax,%xmm0
2937  DB  233,94,255,255,255                  ; jmpq          30d2 <_sk_load_565_hsw+0x10>
2938  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2939  DB  196,193,121,196,68,83,4,2           ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm0,%xmm0
2940  DB  196,193,121,110,12,83               ; vmovd         (%r11,%rdx,2),%xmm1
2941  DB  196,227,121,2,193,1                 ; vpblendd      $0x1,%xmm1,%xmm0,%xmm0
2942  DB  233,65,255,255,255                  ; jmpq          30d2 <_sk_load_565_hsw+0x10>
2943  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
2944  DB  196,193,121,196,68,83,12,6          ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm0,%xmm0
2945  DB  196,193,121,196,68,83,10,5          ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm0,%xmm0
2946  DB  196,193,121,196,68,83,8,4           ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm0,%xmm0
2947  DB  196,193,122,126,12,83               ; vmovq         (%r11,%rdx,2),%xmm1
2948  DB  196,227,113,2,192,12                ; vpblendd      $0xc,%xmm0,%xmm1,%xmm0
2949  DB  233,20,255,255,255                  ; jmpq          30d2 <_sk_load_565_hsw+0x10>
2950  DB  102,144                             ; xchg          %ax,%ax
2951  DB  166                                 ; cmpsb         %es:(%rdi),%ds:(%rsi)
2952  DB  255                                 ; (bad)
2953  DB  255                                 ; (bad)
2954  DB  255,192                             ; inc           %eax
2955  DB  255                                 ; (bad)
2956  DB  255                                 ; (bad)
2957  DB  255,180,255,255,255,237,255         ; pushq         -0x120001(%rdi,%rdi,8)
2958  DB  255                                 ; (bad)
2959  DB  255,229                             ; jmpq          *%rbp
2960  DB  255                                 ; (bad)
2961  DB  255                                 ; (bad)
2962  DB  255                                 ; (bad)
2963  DB  221,255                             ; (bad)
2964  DB  255                                 ; (bad)
2965  DB  255,209                             ; callq         *%rcx
2966  DB  255                                 ; (bad)
2967  DB  255                                 ; (bad)
2968  DB  255                                 ; .byte         0xff
2969
2970PUBLIC _sk_gather_565_hsw
2971_sk_gather_565_hsw LABEL PROC
2972  DB  72,173                              ; lods          %ds:(%rsi),%rax
2973  DB  76,139,8                            ; mov           (%rax),%r9
2974  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
2975  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
2976  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
2977  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
2978  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
2979  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2980  DB  68,137,208                          ; mov           %r10d,%eax
2981  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
2982  DB  197,249,110,200                     ; vmovd         %eax,%xmm1
2983  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2984  DB  73,193,234,32                       ; shr           $0x20,%r10
2985  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
2986  DB  197,241,196,200,1                   ; vpinsrw       $0x1,%eax,%xmm1,%xmm1
2987  DB  68,137,216                          ; mov           %r11d,%eax
2988  DB  73,193,235,32                       ; shr           $0x20,%r11
2989  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
2990  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
2991  DB  197,241,196,200,2                   ; vpinsrw       $0x2,%eax,%xmm1,%xmm1
2992  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
2993  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
2994  DB  197,241,196,200,3                   ; vpinsrw       $0x3,%eax,%xmm1,%xmm1
2995  DB  68,137,208                          ; mov           %r10d,%eax
2996  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
2997  DB  197,241,196,200,4                   ; vpinsrw       $0x4,%eax,%xmm1,%xmm1
2998  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
2999  DB  73,193,234,32                       ; shr           $0x20,%r10
3000  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
3001  DB  197,241,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm1,%xmm0
3002  DB  68,137,216                          ; mov           %r11d,%eax
3003  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
3004  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
3005  DB  73,193,235,32                       ; shr           $0x20,%r11
3006  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
3007  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
3008  DB  196,226,125,51,208                  ; vpmovzxwd     %xmm0,%ymm2
3009  DB  196,226,125,88,5,91,29,0,0          ; vpbroadcastd  0x1d5b(%rip),%ymm0        # 4fe8 <_sk_callback_hsw+0x3c0>
3010  DB  197,237,219,192                     ; vpand         %ymm0,%ymm2,%ymm0
3011  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3012  DB  196,226,125,24,13,78,29,0,0         ; vbroadcastss  0x1d4e(%rip),%ymm1        # 4fec <_sk_callback_hsw+0x3c4>
3013  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
3014  DB  196,226,125,88,13,69,29,0,0         ; vpbroadcastd  0x1d45(%rip),%ymm1        # 4ff0 <_sk_callback_hsw+0x3c8>
3015  DB  197,237,219,201                     ; vpand         %ymm1,%ymm2,%ymm1
3016  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3017  DB  196,226,125,24,29,56,29,0,0         ; vbroadcastss  0x1d38(%rip),%ymm3        # 4ff4 <_sk_callback_hsw+0x3cc>
3018  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
3019  DB  196,226,125,88,29,47,29,0,0         ; vpbroadcastd  0x1d2f(%rip),%ymm3        # 4ff8 <_sk_callback_hsw+0x3d0>
3020  DB  197,237,219,211                     ; vpand         %ymm3,%ymm2,%ymm2
3021  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3022  DB  196,226,125,24,29,34,29,0,0         ; vbroadcastss  0x1d22(%rip),%ymm3        # 4ffc <_sk_callback_hsw+0x3d4>
3023  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
3024  DB  72,173                              ; lods          %ds:(%rsi),%rax
3025  DB  196,226,125,24,29,23,29,0,0         ; vbroadcastss  0x1d17(%rip),%ymm3        # 5000 <_sk_callback_hsw+0x3d8>
3026  DB  255,224                             ; jmpq          *%rax
3027
3028PUBLIC _sk_store_565_hsw
3029_sk_store_565_hsw LABEL PROC
3030  DB  72,173                              ; lods          %ds:(%rsi),%rax
3031  DB  76,139,24                           ; mov           (%rax),%r11
3032  DB  196,98,125,24,5,11,29,0,0           ; vbroadcastss  0x1d0b(%rip),%ymm8        # 5004 <_sk_callback_hsw+0x3dc>
3033  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
3034  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
3035  DB  196,193,53,114,241,11               ; vpslld        $0xb,%ymm9,%ymm9
3036  DB  196,98,125,24,21,246,28,0,0         ; vbroadcastss  0x1cf6(%rip),%ymm10        # 5008 <_sk_callback_hsw+0x3e0>
3037  DB  196,65,116,89,210                   ; vmulps        %ymm10,%ymm1,%ymm10
3038  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3039  DB  196,193,45,114,242,5                ; vpslld        $0x5,%ymm10,%ymm10
3040  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
3041  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
3042  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
3043  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
3044  DB  196,67,125,57,193,1                 ; vextracti128  $0x1,%ymm8,%xmm9
3045  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
3046  DB  77,133,192                          ; test          %r8,%r8
3047  DB  117,10                              ; jne           3350 <_sk_store_565_hsw+0x65>
3048  DB  196,65,122,127,4,83                 ; vmovdqu       %xmm8,(%r11,%rdx,2)
3049  DB  72,173                              ; lods          %ds:(%rsi),%rax
3050  DB  255,224                             ; jmpq          *%rax
3051  DB  69,137,193                          ; mov           %r8d,%r9d
3052  DB  65,128,225,7                        ; and           $0x7,%r9b
3053  DB  65,254,201                          ; dec           %r9b
3054  DB  65,128,249,6                        ; cmp           $0x6,%r9b
3055  DB  119,236                             ; ja            334c <_sk_store_565_hsw+0x61>
3056  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
3057  DB  76,141,21,69,0,0,0                  ; lea           0x45(%rip),%r10        # 33b0 <_sk_store_565_hsw+0xc5>
3058  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
3059  DB  76,1,208                            ; add           %r10,%rax
3060  DB  255,224                             ; jmpq          *%rax
3061  DB  196,67,121,21,4,83,0                ; vpextrw       $0x0,%xmm8,(%r11,%rdx,2)
3062  DB  235,207                             ; jmp           334c <_sk_store_565_hsw+0x61>
3063  DB  196,67,121,21,68,83,4,2             ; vpextrw       $0x2,%xmm8,0x4(%r11,%rdx,2)
3064  DB  196,65,121,126,4,83                 ; vmovd         %xmm8,(%r11,%rdx,2)
3065  DB  235,191                             ; jmp           334c <_sk_store_565_hsw+0x61>
3066  DB  196,67,121,21,68,83,12,6            ; vpextrw       $0x6,%xmm8,0xc(%r11,%rdx,2)
3067  DB  196,67,121,21,68,83,10,5            ; vpextrw       $0x5,%xmm8,0xa(%r11,%rdx,2)
3068  DB  196,67,121,21,68,83,8,4             ; vpextrw       $0x4,%xmm8,0x8(%r11,%rdx,2)
3069  DB  196,65,121,214,4,83                 ; vmovq         %xmm8,(%r11,%rdx,2)
3070  DB  235,159                             ; jmp           334c <_sk_store_565_hsw+0x61>
3071  DB  15,31,0                             ; nopl          (%rax)
3072  DB  196                                 ; (bad)
3073  DB  255                                 ; (bad)
3074  DB  255                                 ; (bad)
3075  DB  255,213                             ; callq         *%rbp
3076  DB  255                                 ; (bad)
3077  DB  255                                 ; (bad)
3078  DB  255,205                             ; dec           %ebp
3079  DB  255                                 ; (bad)
3080  DB  255                                 ; (bad)
3081  DB  255,245                             ; push          %rbp
3082  DB  255                                 ; (bad)
3083  DB  255                                 ; (bad)
3084  DB  255                                 ; (bad)
3085  DB  237                                 ; in            (%dx),%eax
3086  DB  255                                 ; (bad)
3087  DB  255                                 ; (bad)
3088  DB  255,229                             ; jmpq          *%rbp
3089  DB  255                                 ; (bad)
3090  DB  255                                 ; (bad)
3091  DB  255                                 ; (bad)
3092  DB  221,255                             ; (bad)
3093  DB  255                                 ; (bad)
3094  DB  255                                 ; .byte         0xff
3095
3096PUBLIC _sk_load_4444_hsw
3097_sk_load_4444_hsw LABEL PROC
3098  DB  72,173                              ; lods          %ds:(%rsi),%rax
3099  DB  76,139,24                           ; mov           (%rax),%r11
3100  DB  77,133,192                          ; test          %r8,%r8
3101  DB  15,133,138,0,0,0                    ; jne           3464 <_sk_load_4444_hsw+0x98>
3102  DB  196,193,122,111,4,83                ; vmovdqu       (%r11,%rdx,2),%xmm0
3103  DB  196,226,125,51,216                  ; vpmovzxwd     %xmm0,%ymm3
3104  DB  196,226,125,88,5,30,28,0,0          ; vpbroadcastd  0x1c1e(%rip),%ymm0        # 500c <_sk_callback_hsw+0x3e4>
3105  DB  197,229,219,192                     ; vpand         %ymm0,%ymm3,%ymm0
3106  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3107  DB  196,226,125,24,13,17,28,0,0         ; vbroadcastss  0x1c11(%rip),%ymm1        # 5010 <_sk_callback_hsw+0x3e8>
3108  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
3109  DB  196,226,125,88,13,8,28,0,0          ; vpbroadcastd  0x1c08(%rip),%ymm1        # 5014 <_sk_callback_hsw+0x3ec>
3110  DB  197,229,219,201                     ; vpand         %ymm1,%ymm3,%ymm1
3111  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3112  DB  196,226,125,24,21,251,27,0,0        ; vbroadcastss  0x1bfb(%rip),%ymm2        # 5018 <_sk_callback_hsw+0x3f0>
3113  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
3114  DB  196,226,125,88,21,242,27,0,0        ; vpbroadcastd  0x1bf2(%rip),%ymm2        # 501c <_sk_callback_hsw+0x3f4>
3115  DB  197,229,219,210                     ; vpand         %ymm2,%ymm3,%ymm2
3116  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3117  DB  196,98,125,24,5,229,27,0,0          ; vbroadcastss  0x1be5(%rip),%ymm8        # 5020 <_sk_callback_hsw+0x3f8>
3118  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
3119  DB  196,98,125,88,5,219,27,0,0          ; vpbroadcastd  0x1bdb(%rip),%ymm8        # 5024 <_sk_callback_hsw+0x3fc>
3120  DB  196,193,101,219,216                 ; vpand         %ymm8,%ymm3,%ymm3
3121  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
3122  DB  196,98,125,24,5,205,27,0,0          ; vbroadcastss  0x1bcd(%rip),%ymm8        # 5028 <_sk_callback_hsw+0x400>
3123  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
3124  DB  72,173                              ; lods          %ds:(%rsi),%rax
3125  DB  255,224                             ; jmpq          *%rax
3126  DB  69,137,193                          ; mov           %r8d,%r9d
3127  DB  65,128,225,7                        ; and           $0x7,%r9b
3128  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
3129  DB  65,254,201                          ; dec           %r9b
3130  DB  65,128,249,6                        ; cmp           $0x6,%r9b
3131  DB  15,135,100,255,255,255              ; ja            33e0 <_sk_load_4444_hsw+0x14>
3132  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
3133  DB  76,141,21,97,0,0,0                  ; lea           0x61(%rip),%r10        # 34e8 <_sk_load_4444_hsw+0x11c>
3134  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
3135  DB  76,1,208                            ; add           %r10,%rax
3136  DB  255,224                             ; jmpq          *%rax
3137  DB  65,15,183,4,83                      ; movzwl        (%r11,%rdx,2),%eax
3138  DB  197,249,110,192                     ; vmovd         %eax,%xmm0
3139  DB  233,66,255,255,255                  ; jmpq          33e0 <_sk_load_4444_hsw+0x14>
3140  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
3141  DB  196,193,121,196,68,83,4,2           ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm0,%xmm0
3142  DB  196,193,121,110,12,83               ; vmovd         (%r11,%rdx,2),%xmm1
3143  DB  196,227,121,2,193,1                 ; vpblendd      $0x1,%xmm1,%xmm0,%xmm0
3144  DB  233,37,255,255,255                  ; jmpq          33e0 <_sk_load_4444_hsw+0x14>
3145  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
3146  DB  196,193,121,196,68,83,12,6          ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm0,%xmm0
3147  DB  196,193,121,196,68,83,10,5          ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm0,%xmm0
3148  DB  196,193,121,196,68,83,8,4           ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm0,%xmm0
3149  DB  196,193,122,126,12,83               ; vmovq         (%r11,%rdx,2),%xmm1
3150  DB  196,227,113,2,192,12                ; vpblendd      $0xc,%xmm0,%xmm1,%xmm0
3151  DB  233,248,254,255,255                 ; jmpq          33e0 <_sk_load_4444_hsw+0x14>
3152  DB  168,255                             ; test          $0xff,%al
3153  DB  255                                 ; (bad)
3154  DB  255,194                             ; inc           %edx
3155  DB  255                                 ; (bad)
3156  DB  255                                 ; (bad)
3157  DB  255,182,255,255,255,239             ; pushq         -0x10000001(%rsi)
3158  DB  255                                 ; (bad)
3159  DB  255                                 ; (bad)
3160  DB  255,231                             ; jmpq          *%rdi
3161  DB  255                                 ; (bad)
3162  DB  255                                 ; (bad)
3163  DB  255                                 ; (bad)
3164  DB  223,255                             ; (bad)
3165  DB  255                                 ; (bad)
3166  DB  255,211                             ; callq         *%rbx
3167  DB  255                                 ; (bad)
3168  DB  255                                 ; (bad)
3169  DB  255                                 ; .byte         0xff
3170
3171PUBLIC _sk_gather_4444_hsw
3172_sk_gather_4444_hsw LABEL PROC
3173  DB  72,173                              ; lods          %ds:(%rsi),%rax
3174  DB  76,139,8                            ; mov           (%rax),%r9
3175  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
3176  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
3177  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
3178  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
3179  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
3180  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
3181  DB  68,137,208                          ; mov           %r10d,%eax
3182  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
3183  DB  197,249,110,200                     ; vmovd         %eax,%xmm1
3184  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
3185  DB  73,193,234,32                       ; shr           $0x20,%r10
3186  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
3187  DB  197,241,196,200,1                   ; vpinsrw       $0x1,%eax,%xmm1,%xmm1
3188  DB  68,137,216                          ; mov           %r11d,%eax
3189  DB  73,193,235,32                       ; shr           $0x20,%r11
3190  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
3191  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
3192  DB  197,241,196,200,2                   ; vpinsrw       $0x2,%eax,%xmm1,%xmm1
3193  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
3194  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
3195  DB  197,241,196,200,3                   ; vpinsrw       $0x3,%eax,%xmm1,%xmm1
3196  DB  68,137,208                          ; mov           %r10d,%eax
3197  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
3198  DB  197,241,196,200,4                   ; vpinsrw       $0x4,%eax,%xmm1,%xmm1
3199  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
3200  DB  73,193,234,32                       ; shr           $0x20,%r10
3201  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
3202  DB  197,241,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm1,%xmm0
3203  DB  68,137,216                          ; mov           %r11d,%eax
3204  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
3205  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
3206  DB  73,193,235,32                       ; shr           $0x20,%r11
3207  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
3208  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
3209  DB  196,226,125,51,216                  ; vpmovzxwd     %xmm0,%ymm3
3210  DB  196,226,125,88,5,119,26,0,0         ; vpbroadcastd  0x1a77(%rip),%ymm0        # 502c <_sk_callback_hsw+0x404>
3211  DB  197,229,219,192                     ; vpand         %ymm0,%ymm3,%ymm0
3212  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3213  DB  196,226,125,24,13,106,26,0,0        ; vbroadcastss  0x1a6a(%rip),%ymm1        # 5030 <_sk_callback_hsw+0x408>
3214  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
3215  DB  196,226,125,88,13,97,26,0,0         ; vpbroadcastd  0x1a61(%rip),%ymm1        # 5034 <_sk_callback_hsw+0x40c>
3216  DB  197,229,219,201                     ; vpand         %ymm1,%ymm3,%ymm1
3217  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3218  DB  196,226,125,24,21,84,26,0,0         ; vbroadcastss  0x1a54(%rip),%ymm2        # 5038 <_sk_callback_hsw+0x410>
3219  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
3220  DB  196,226,125,88,21,75,26,0,0         ; vpbroadcastd  0x1a4b(%rip),%ymm2        # 503c <_sk_callback_hsw+0x414>
3221  DB  197,229,219,210                     ; vpand         %ymm2,%ymm3,%ymm2
3222  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3223  DB  196,98,125,24,5,62,26,0,0           ; vbroadcastss  0x1a3e(%rip),%ymm8        # 5040 <_sk_callback_hsw+0x418>
3224  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
3225  DB  196,98,125,88,5,52,26,0,0           ; vpbroadcastd  0x1a34(%rip),%ymm8        # 5044 <_sk_callback_hsw+0x41c>
3226  DB  196,193,101,219,216                 ; vpand         %ymm8,%ymm3,%ymm3
3227  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
3228  DB  196,98,125,24,5,38,26,0,0           ; vbroadcastss  0x1a26(%rip),%ymm8        # 5048 <_sk_callback_hsw+0x420>
3229  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
3230  DB  72,173                              ; lods          %ds:(%rsi),%rax
3231  DB  255,224                             ; jmpq          *%rax
3232
3233PUBLIC _sk_store_4444_hsw
3234_sk_store_4444_hsw LABEL PROC
3235  DB  72,173                              ; lods          %ds:(%rsi),%rax
3236  DB  76,139,24                           ; mov           (%rax),%r11
3237  DB  196,98,125,24,5,19,26,0,0           ; vbroadcastss  0x1a13(%rip),%ymm8        # 504c <_sk_callback_hsw+0x424>
3238  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
3239  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
3240  DB  196,193,53,114,241,12               ; vpslld        $0xc,%ymm9,%ymm9
3241  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
3242  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3243  DB  196,193,45,114,242,8                ; vpslld        $0x8,%ymm10,%ymm10
3244  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
3245  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
3246  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3247  DB  196,193,45,114,242,4                ; vpslld        $0x4,%ymm10,%ymm10
3248  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
3249  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
3250  DB  196,65,45,235,192                   ; vpor          %ymm8,%ymm10,%ymm8
3251  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
3252  DB  196,67,125,57,193,1                 ; vextracti128  $0x1,%ymm8,%xmm9
3253  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
3254  DB  77,133,192                          ; test          %r8,%r8
3255  DB  117,10                              ; jne           369c <_sk_store_4444_hsw+0x71>
3256  DB  196,65,122,127,4,83                 ; vmovdqu       %xmm8,(%r11,%rdx,2)
3257  DB  72,173                              ; lods          %ds:(%rsi),%rax
3258  DB  255,224                             ; jmpq          *%rax
3259  DB  69,137,193                          ; mov           %r8d,%r9d
3260  DB  65,128,225,7                        ; and           $0x7,%r9b
3261  DB  65,254,201                          ; dec           %r9b
3262  DB  65,128,249,6                        ; cmp           $0x6,%r9b
3263  DB  119,236                             ; ja            3698 <_sk_store_4444_hsw+0x6d>
3264  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
3265  DB  76,141,21,69,0,0,0                  ; lea           0x45(%rip),%r10        # 36fc <_sk_store_4444_hsw+0xd1>
3266  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
3267  DB  76,1,208                            ; add           %r10,%rax
3268  DB  255,224                             ; jmpq          *%rax
3269  DB  196,67,121,21,4,83,0                ; vpextrw       $0x0,%xmm8,(%r11,%rdx,2)
3270  DB  235,207                             ; jmp           3698 <_sk_store_4444_hsw+0x6d>
3271  DB  196,67,121,21,68,83,4,2             ; vpextrw       $0x2,%xmm8,0x4(%r11,%rdx,2)
3272  DB  196,65,121,126,4,83                 ; vmovd         %xmm8,(%r11,%rdx,2)
3273  DB  235,191                             ; jmp           3698 <_sk_store_4444_hsw+0x6d>
3274  DB  196,67,121,21,68,83,12,6            ; vpextrw       $0x6,%xmm8,0xc(%r11,%rdx,2)
3275  DB  196,67,121,21,68,83,10,5            ; vpextrw       $0x5,%xmm8,0xa(%r11,%rdx,2)
3276  DB  196,67,121,21,68,83,8,4             ; vpextrw       $0x4,%xmm8,0x8(%r11,%rdx,2)
3277  DB  196,65,121,214,4,83                 ; vmovq         %xmm8,(%r11,%rdx,2)
3278  DB  235,159                             ; jmp           3698 <_sk_store_4444_hsw+0x6d>
3279  DB  15,31,0                             ; nopl          (%rax)
3280  DB  196                                 ; (bad)
3281  DB  255                                 ; (bad)
3282  DB  255                                 ; (bad)
3283  DB  255,213                             ; callq         *%rbp
3284  DB  255                                 ; (bad)
3285  DB  255                                 ; (bad)
3286  DB  255,205                             ; dec           %ebp
3287  DB  255                                 ; (bad)
3288  DB  255                                 ; (bad)
3289  DB  255,245                             ; push          %rbp
3290  DB  255                                 ; (bad)
3291  DB  255                                 ; (bad)
3292  DB  255                                 ; (bad)
3293  DB  237                                 ; in            (%dx),%eax
3294  DB  255                                 ; (bad)
3295  DB  255                                 ; (bad)
3296  DB  255,229                             ; jmpq          *%rbp
3297  DB  255                                 ; (bad)
3298  DB  255                                 ; (bad)
3299  DB  255                                 ; (bad)
3300  DB  221,255                             ; (bad)
3301  DB  255                                 ; (bad)
3302  DB  255                                 ; .byte         0xff
3303
3304PUBLIC _sk_load_8888_hsw
3305_sk_load_8888_hsw LABEL PROC
3306  DB  73,137,201                          ; mov           %rcx,%r9
3307  DB  72,173                              ; lods          %ds:(%rsi),%rax
3308  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
3309  DB  76,3,16                             ; add           (%rax),%r10
3310  DB  77,133,192                          ; test          %r8,%r8
3311  DB  117,88                              ; jne           3785 <_sk_load_8888_hsw+0x6d>
3312  DB  196,193,124,16,26                   ; vmovups       (%r10),%ymm3
3313  DB  197,228,84,5,102,27,0,0             ; vandps        0x1b66(%rip),%ymm3,%ymm0        # 52a0 <_sk_callback_hsw+0x678>
3314  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3315  DB  196,98,125,24,5,9,25,0,0            ; vbroadcastss  0x1909(%rip),%ymm8        # 5050 <_sk_callback_hsw+0x428>
3316  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
3317  DB  196,226,101,0,13,107,27,0,0         ; vpshufb       0x1b6b(%rip),%ymm3,%ymm1        # 52c0 <_sk_callback_hsw+0x698>
3318  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3319  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
3320  DB  196,226,101,0,21,121,27,0,0         ; vpshufb       0x1b79(%rip),%ymm3,%ymm2        # 52e0 <_sk_callback_hsw+0x6b8>
3321  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3322  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
3323  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
3324  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
3325  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
3326  DB  72,173                              ; lods          %ds:(%rsi),%rax
3327  DB  76,137,201                          ; mov           %r9,%rcx
3328  DB  255,224                             ; jmpq          *%rax
3329  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
3330  DB  68,41,193                           ; sub           %r8d,%ecx
3331  DB  192,225,3                           ; shl           $0x3,%cl
3332  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
3333  DB  72,211,232                          ; shr           %cl,%rax
3334  DB  196,225,249,110,192                 ; vmovq         %rax,%xmm0
3335  DB  196,226,125,33,192                  ; vpmovsxbd     %xmm0,%ymm0
3336  DB  196,194,125,44,26                   ; vmaskmovps    (%r10),%ymm0,%ymm3
3337  DB  235,135                             ; jmp           3732 <_sk_load_8888_hsw+0x1a>
3338
3339PUBLIC _sk_gather_8888_hsw
3340_sk_gather_8888_hsw LABEL PROC
3341  DB  72,173                              ; lods          %ds:(%rsi),%rax
3342  DB  76,139,8                            ; mov           (%rax),%r9
3343  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
3344  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
3345  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
3346  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
3347  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
3348  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
3349  DB  196,194,117,144,28,129              ; vpgatherdd    %ymm1,(%r9,%ymm0,4),%ymm3
3350  DB  197,229,219,5,39,27,0,0             ; vpand         0x1b27(%rip),%ymm3,%ymm0        # 5300 <_sk_callback_hsw+0x6d8>
3351  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3352  DB  196,98,125,24,5,110,24,0,0          ; vbroadcastss  0x186e(%rip),%ymm8        # 5054 <_sk_callback_hsw+0x42c>
3353  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
3354  DB  196,226,101,0,13,44,27,0,0          ; vpshufb       0x1b2c(%rip),%ymm3,%ymm1        # 5320 <_sk_callback_hsw+0x6f8>
3355  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3356  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
3357  DB  196,226,101,0,21,58,27,0,0          ; vpshufb       0x1b3a(%rip),%ymm3,%ymm2        # 5340 <_sk_callback_hsw+0x718>
3358  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3359  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
3360  DB  197,229,114,211,24                  ; vpsrld        $0x18,%ymm3,%ymm3
3361  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
3362  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
3363  DB  72,173                              ; lods          %ds:(%rsi),%rax
3364  DB  255,224                             ; jmpq          *%rax
3365
3366PUBLIC _sk_store_8888_hsw
3367_sk_store_8888_hsw LABEL PROC
3368  DB  73,137,201                          ; mov           %rcx,%r9
3369  DB  72,173                              ; lods          %ds:(%rsi),%rax
3370  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
3371  DB  76,3,16                             ; add           (%rax),%r10
3372  DB  196,98,125,24,5,30,24,0,0           ; vbroadcastss  0x181e(%rip),%ymm8        # 5058 <_sk_callback_hsw+0x430>
3373  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
3374  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
3375  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
3376  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3377  DB  196,193,45,114,242,8                ; vpslld        $0x8,%ymm10,%ymm10
3378  DB  196,65,45,235,201                   ; vpor          %ymm9,%ymm10,%ymm9
3379  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
3380  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3381  DB  196,193,45,114,242,16               ; vpslld        $0x10,%ymm10,%ymm10
3382  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
3383  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
3384  DB  196,193,61,114,240,24               ; vpslld        $0x18,%ymm8,%ymm8
3385  DB  196,65,45,235,192                   ; vpor          %ymm8,%ymm10,%ymm8
3386  DB  196,65,53,235,192                   ; vpor          %ymm8,%ymm9,%ymm8
3387  DB  77,133,192                          ; test          %r8,%r8
3388  DB  117,12                              ; jne           3894 <_sk_store_8888_hsw+0x73>
3389  DB  196,65,124,17,2                     ; vmovups       %ymm8,(%r10)
3390  DB  72,173                              ; lods          %ds:(%rsi),%rax
3391  DB  76,137,201                          ; mov           %r9,%rcx
3392  DB  255,224                             ; jmpq          *%rax
3393  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
3394  DB  68,41,193                           ; sub           %r8d,%ecx
3395  DB  192,225,3                           ; shl           $0x3,%cl
3396  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
3397  DB  72,211,232                          ; shr           %cl,%rax
3398  DB  196,97,249,110,200                  ; vmovq         %rax,%xmm9
3399  DB  196,66,125,33,201                   ; vpmovsxbd     %xmm9,%ymm9
3400  DB  196,66,53,46,2                      ; vmaskmovps    %ymm8,%ymm9,(%r10)
3401  DB  235,211                             ; jmp           388d <_sk_store_8888_hsw+0x6c>
3402
3403PUBLIC _sk_load_f16_hsw
3404_sk_load_f16_hsw LABEL PROC
3405  DB  72,173                              ; lods          %ds:(%rsi),%rax
3406  DB  72,139,0                            ; mov           (%rax),%rax
3407  DB  77,133,192                          ; test          %r8,%r8
3408  DB  117,97                              ; jne           3925 <_sk_load_f16_hsw+0x6b>
3409  DB  197,121,16,4,208                    ; vmovupd       (%rax,%rdx,8),%xmm8
3410  DB  197,249,16,84,208,16                ; vmovupd       0x10(%rax,%rdx,8),%xmm2
3411  DB  197,249,16,92,208,32                ; vmovupd       0x20(%rax,%rdx,8),%xmm3
3412  DB  197,122,111,76,208,48               ; vmovdqu       0x30(%rax,%rdx,8),%xmm9
3413  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
3414  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
3415  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
3416  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
3417  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
3418  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
3419  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
3420  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
3421  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
3422  DB  196,226,125,19,192                  ; vcvtph2ps     %xmm0,%ymm0
3423  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
3424  DB  196,226,125,19,201                  ; vcvtph2ps     %xmm1,%ymm1
3425  DB  197,177,108,211                     ; vpunpcklqdq   %xmm3,%xmm9,%xmm2
3426  DB  196,226,125,19,210                  ; vcvtph2ps     %xmm2,%ymm2
3427  DB  197,177,109,219                     ; vpunpckhqdq   %xmm3,%xmm9,%xmm3
3428  DB  196,226,125,19,219                  ; vcvtph2ps     %xmm3,%ymm3
3429  DB  72,173                              ; lods          %ds:(%rsi),%rax
3430  DB  255,224                             ; jmpq          *%rax
3431  DB  197,123,16,4,208                    ; vmovsd        (%rax,%rdx,8),%xmm8
3432  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
3433  DB  73,131,248,1                        ; cmp           $0x1,%r8
3434  DB  116,79                              ; je            3984 <_sk_load_f16_hsw+0xca>
3435  DB  197,57,22,68,208,8                  ; vmovhpd       0x8(%rax,%rdx,8),%xmm8,%xmm8
3436  DB  73,131,248,3                        ; cmp           $0x3,%r8
3437  DB  114,67                              ; jb            3984 <_sk_load_f16_hsw+0xca>
3438  DB  197,251,16,84,208,16                ; vmovsd        0x10(%rax,%rdx,8),%xmm2
3439  DB  73,131,248,3                        ; cmp           $0x3,%r8
3440  DB  116,68                              ; je            3991 <_sk_load_f16_hsw+0xd7>
3441  DB  197,233,22,84,208,24                ; vmovhpd       0x18(%rax,%rdx,8),%xmm2,%xmm2
3442  DB  73,131,248,5                        ; cmp           $0x5,%r8
3443  DB  114,56                              ; jb            3991 <_sk_load_f16_hsw+0xd7>
3444  DB  197,251,16,92,208,32                ; vmovsd        0x20(%rax,%rdx,8),%xmm3
3445  DB  73,131,248,5                        ; cmp           $0x5,%r8
3446  DB  15,132,114,255,255,255              ; je            38db <_sk_load_f16_hsw+0x21>
3447  DB  197,225,22,92,208,40                ; vmovhpd       0x28(%rax,%rdx,8),%xmm3,%xmm3
3448  DB  73,131,248,7                        ; cmp           $0x7,%r8
3449  DB  15,130,98,255,255,255               ; jb            38db <_sk_load_f16_hsw+0x21>
3450  DB  197,122,126,76,208,48               ; vmovq         0x30(%rax,%rdx,8),%xmm9
3451  DB  233,87,255,255,255                  ; jmpq          38db <_sk_load_f16_hsw+0x21>
3452  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
3453  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
3454  DB  233,74,255,255,255                  ; jmpq          38db <_sk_load_f16_hsw+0x21>
3455  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
3456  DB  233,65,255,255,255                  ; jmpq          38db <_sk_load_f16_hsw+0x21>
3457
3458PUBLIC _sk_gather_f16_hsw
3459_sk_gather_f16_hsw LABEL PROC
3460  DB  72,173                              ; lods          %ds:(%rsi),%rax
3461  DB  76,139,8                            ; mov           (%rax),%r9
3462  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
3463  DB  196,226,125,88,80,16                ; vpbroadcastd  0x10(%rax),%ymm2
3464  DB  196,226,109,64,201                  ; vpmulld       %ymm1,%ymm2,%ymm1
3465  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
3466  DB  197,245,254,192                     ; vpaddd        %ymm0,%ymm1,%ymm0
3467  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
3468  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
3469  DB  196,194,237,144,28,193              ; vpgatherdq    %ymm2,(%r9,%xmm0,8),%ymm3
3470  DB  196,227,125,57,192,1                ; vextracti128  $0x1,%ymm0,%xmm0
3471  DB  196,194,245,144,20,193              ; vpgatherdq    %ymm1,(%r9,%xmm0,8),%ymm2
3472  DB  196,227,125,57,216,1                ; vextracti128  $0x1,%ymm3,%xmm0
3473  DB  196,227,125,57,209,1                ; vextracti128  $0x1,%ymm2,%xmm1
3474  DB  197,97,97,192                       ; vpunpcklwd    %xmm0,%xmm3,%xmm8
3475  DB  197,225,105,192                     ; vpunpckhwd    %xmm0,%xmm3,%xmm0
3476  DB  197,233,97,217                      ; vpunpcklwd    %xmm1,%xmm2,%xmm3
3477  DB  197,233,105,201                     ; vpunpckhwd    %xmm1,%xmm2,%xmm1
3478  DB  197,57,97,200                       ; vpunpcklwd    %xmm0,%xmm8,%xmm9
3479  DB  197,57,105,192                      ; vpunpckhwd    %xmm0,%xmm8,%xmm8
3480  DB  197,225,97,209                      ; vpunpcklwd    %xmm1,%xmm3,%xmm2
3481  DB  197,225,105,217                     ; vpunpckhwd    %xmm1,%xmm3,%xmm3
3482  DB  197,177,108,194                     ; vpunpcklqdq   %xmm2,%xmm9,%xmm0
3483  DB  196,226,125,19,192                  ; vcvtph2ps     %xmm0,%ymm0
3484  DB  197,177,109,202                     ; vpunpckhqdq   %xmm2,%xmm9,%xmm1
3485  DB  196,226,125,19,201                  ; vcvtph2ps     %xmm1,%ymm1
3486  DB  197,185,108,211                     ; vpunpcklqdq   %xmm3,%xmm8,%xmm2
3487  DB  196,226,125,19,210                  ; vcvtph2ps     %xmm2,%ymm2
3488  DB  197,185,109,219                     ; vpunpckhqdq   %xmm3,%xmm8,%xmm3
3489  DB  196,226,125,19,219                  ; vcvtph2ps     %xmm3,%ymm3
3490  DB  72,173                              ; lods          %ds:(%rsi),%rax
3491  DB  255,224                             ; jmpq          *%rax
3492
3493PUBLIC _sk_store_f16_hsw
3494_sk_store_f16_hsw LABEL PROC
3495  DB  72,173                              ; lods          %ds:(%rsi),%rax
3496  DB  72,139,0                            ; mov           (%rax),%rax
3497  DB  196,195,125,29,192,4                ; vcvtps2ph     $0x4,%ymm0,%xmm8
3498  DB  196,195,125,29,201,4                ; vcvtps2ph     $0x4,%ymm1,%xmm9
3499  DB  196,195,125,29,210,4                ; vcvtps2ph     $0x4,%ymm2,%xmm10
3500  DB  196,195,125,29,219,4                ; vcvtps2ph     $0x4,%ymm3,%xmm11
3501  DB  196,65,57,97,225                    ; vpunpcklwd    %xmm9,%xmm8,%xmm12
3502  DB  196,65,57,105,193                   ; vpunpckhwd    %xmm9,%xmm8,%xmm8
3503  DB  196,65,41,97,203                    ; vpunpcklwd    %xmm11,%xmm10,%xmm9
3504  DB  196,65,41,105,235                   ; vpunpckhwd    %xmm11,%xmm10,%xmm13
3505  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
3506  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
3507  DB  196,65,57,98,205                    ; vpunpckldq    %xmm13,%xmm8,%xmm9
3508  DB  196,65,57,106,197                   ; vpunpckhdq    %xmm13,%xmm8,%xmm8
3509  DB  77,133,192                          ; test          %r8,%r8
3510  DB  117,27                              ; jne           3a89 <_sk_store_f16_hsw+0x65>
3511  DB  197,120,17,28,208                   ; vmovups       %xmm11,(%rax,%rdx,8)
3512  DB  197,120,17,84,208,16                ; vmovups       %xmm10,0x10(%rax,%rdx,8)
3513  DB  197,120,17,76,208,32                ; vmovups       %xmm9,0x20(%rax,%rdx,8)
3514  DB  197,122,127,68,208,48               ; vmovdqu       %xmm8,0x30(%rax,%rdx,8)
3515  DB  72,173                              ; lods          %ds:(%rsi),%rax
3516  DB  255,224                             ; jmpq          *%rax
3517  DB  197,121,214,28,208                  ; vmovq         %xmm11,(%rax,%rdx,8)
3518  DB  73,131,248,1                        ; cmp           $0x1,%r8
3519  DB  116,241                             ; je            3a85 <_sk_store_f16_hsw+0x61>
3520  DB  197,121,23,92,208,8                 ; vmovhpd       %xmm11,0x8(%rax,%rdx,8)
3521  DB  73,131,248,3                        ; cmp           $0x3,%r8
3522  DB  114,229                             ; jb            3a85 <_sk_store_f16_hsw+0x61>
3523  DB  197,121,214,84,208,16               ; vmovq         %xmm10,0x10(%rax,%rdx,8)
3524  DB  116,221                             ; je            3a85 <_sk_store_f16_hsw+0x61>
3525  DB  197,121,23,84,208,24                ; vmovhpd       %xmm10,0x18(%rax,%rdx,8)
3526  DB  73,131,248,5                        ; cmp           $0x5,%r8
3527  DB  114,209                             ; jb            3a85 <_sk_store_f16_hsw+0x61>
3528  DB  197,121,214,76,208,32               ; vmovq         %xmm9,0x20(%rax,%rdx,8)
3529  DB  116,201                             ; je            3a85 <_sk_store_f16_hsw+0x61>
3530  DB  197,121,23,76,208,40                ; vmovhpd       %xmm9,0x28(%rax,%rdx,8)
3531  DB  73,131,248,7                        ; cmp           $0x7,%r8
3532  DB  114,189                             ; jb            3a85 <_sk_store_f16_hsw+0x61>
3533  DB  197,121,214,68,208,48               ; vmovq         %xmm8,0x30(%rax,%rdx,8)
3534  DB  235,181                             ; jmp           3a85 <_sk_store_f16_hsw+0x61>
3535
3536PUBLIC _sk_load_u16_be_hsw
3537_sk_load_u16_be_hsw LABEL PROC
3538  DB  72,173                              ; lods          %ds:(%rsi),%rax
3539  DB  76,139,8                            ; mov           (%rax),%r9
3540  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
3541  DB  77,133,192                          ; test          %r8,%r8
3542  DB  15,133,204,0,0,0                    ; jne           3bb2 <_sk_load_u16_be_hsw+0xe2>
3543  DB  196,65,121,16,4,65                  ; vmovupd       (%r9,%rax,2),%xmm8
3544  DB  196,193,121,16,84,65,16             ; vmovupd       0x10(%r9,%rax,2),%xmm2
3545  DB  196,193,121,16,92,65,32             ; vmovupd       0x20(%r9,%rax,2),%xmm3
3546  DB  196,65,122,111,76,65,48             ; vmovdqu       0x30(%r9,%rax,2),%xmm9
3547  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
3548  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
3549  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
3550  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
3551  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
3552  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
3553  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
3554  DB  197,113,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm11
3555  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
3556  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
3557  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
3558  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
3559  DB  196,226,125,51,192                  ; vpmovzxwd     %xmm0,%ymm0
3560  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3561  DB  196,98,125,24,21,21,21,0,0          ; vbroadcastss  0x1515(%rip),%ymm10        # 505c <_sk_callback_hsw+0x434>
3562  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
3563  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
3564  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
3565  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
3566  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
3567  DB  196,226,125,51,201                  ; vpmovzxwd     %xmm1,%ymm1
3568  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3569  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
3570  DB  196,193,49,108,211                  ; vpunpcklqdq   %xmm11,%xmm9,%xmm2
3571  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
3572  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
3573  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
3574  DB  196,226,125,51,210                  ; vpmovzxwd     %xmm2,%ymm2
3575  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3576  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
3577  DB  196,193,49,109,219                  ; vpunpckhqdq   %xmm11,%xmm9,%xmm3
3578  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
3579  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
3580  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
3581  DB  196,226,125,51,219                  ; vpmovzxwd     %xmm3,%ymm3
3582  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
3583  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
3584  DB  72,173                              ; lods          %ds:(%rsi),%rax
3585  DB  255,224                             ; jmpq          *%rax
3586  DB  196,65,123,16,4,65                  ; vmovsd        (%r9,%rax,2),%xmm8
3587  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
3588  DB  73,131,248,1                        ; cmp           $0x1,%r8
3589  DB  116,85                              ; je            3c18 <_sk_load_u16_be_hsw+0x148>
3590  DB  196,65,57,22,68,65,8                ; vmovhpd       0x8(%r9,%rax,2),%xmm8,%xmm8
3591  DB  73,131,248,3                        ; cmp           $0x3,%r8
3592  DB  114,72                              ; jb            3c18 <_sk_load_u16_be_hsw+0x148>
3593  DB  196,193,123,16,84,65,16             ; vmovsd        0x10(%r9,%rax,2),%xmm2
3594  DB  73,131,248,3                        ; cmp           $0x3,%r8
3595  DB  116,72                              ; je            3c25 <_sk_load_u16_be_hsw+0x155>
3596  DB  196,193,105,22,84,65,24             ; vmovhpd       0x18(%r9,%rax,2),%xmm2,%xmm2
3597  DB  73,131,248,5                        ; cmp           $0x5,%r8
3598  DB  114,59                              ; jb            3c25 <_sk_load_u16_be_hsw+0x155>
3599  DB  196,193,123,16,92,65,32             ; vmovsd        0x20(%r9,%rax,2),%xmm3
3600  DB  73,131,248,5                        ; cmp           $0x5,%r8
3601  DB  15,132,6,255,255,255                ; je            3b01 <_sk_load_u16_be_hsw+0x31>
3602  DB  196,193,97,22,92,65,40              ; vmovhpd       0x28(%r9,%rax,2),%xmm3,%xmm3
3603  DB  73,131,248,7                        ; cmp           $0x7,%r8
3604  DB  15,130,245,254,255,255              ; jb            3b01 <_sk_load_u16_be_hsw+0x31>
3605  DB  196,65,122,126,76,65,48             ; vmovq         0x30(%r9,%rax,2),%xmm9
3606  DB  233,233,254,255,255                 ; jmpq          3b01 <_sk_load_u16_be_hsw+0x31>
3607  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
3608  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
3609  DB  233,220,254,255,255                 ; jmpq          3b01 <_sk_load_u16_be_hsw+0x31>
3610  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
3611  DB  233,211,254,255,255                 ; jmpq          3b01 <_sk_load_u16_be_hsw+0x31>
3612
3613PUBLIC _sk_load_rgb_u16_be_hsw
3614_sk_load_rgb_u16_be_hsw LABEL PROC
3615  DB  72,173                              ; lods          %ds:(%rsi),%rax
3616  DB  76,139,8                            ; mov           (%rax),%r9
3617  DB  72,141,4,82                         ; lea           (%rdx,%rdx,2),%rax
3618  DB  77,133,192                          ; test          %r8,%r8
3619  DB  15,133,204,0,0,0                    ; jne           3d0c <_sk_load_rgb_u16_be_hsw+0xde>
3620  DB  196,193,122,111,4,65                ; vmovdqu       (%r9,%rax,2),%xmm0
3621  DB  196,193,122,111,84,65,12            ; vmovdqu       0xc(%r9,%rax,2),%xmm2
3622  DB  196,193,122,111,76,65,24            ; vmovdqu       0x18(%r9,%rax,2),%xmm1
3623  DB  196,193,122,111,92,65,32            ; vmovdqu       0x20(%r9,%rax,2),%xmm3
3624  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
3625  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
3626  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
3627  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
3628  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
3629  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
3630  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
3631  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
3632  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
3633  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
3634  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
3635  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
3636  DB  197,241,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm3
3637  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
3638  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
3639  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
3640  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
3641  DB  196,226,125,51,192                  ; vpmovzxwd     %xmm0,%ymm0
3642  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
3643  DB  196,98,125,24,21,166,19,0,0         ; vbroadcastss  0x13a6(%rip),%ymm10        # 5060 <_sk_callback_hsw+0x438>
3644  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
3645  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
3646  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
3647  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
3648  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
3649  DB  196,226,125,51,201                  ; vpmovzxwd     %xmm1,%ymm1
3650  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
3651  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
3652  DB  197,177,108,211                     ; vpunpcklqdq   %xmm3,%xmm9,%xmm2
3653  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
3654  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
3655  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
3656  DB  196,226,125,51,210                  ; vpmovzxwd     %xmm2,%ymm2
3657  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
3658  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
3659  DB  72,173                              ; lods          %ds:(%rsi),%rax
3660  DB  196,226,125,24,29,90,19,0,0         ; vbroadcastss  0x135a(%rip),%ymm3        # 5064 <_sk_callback_hsw+0x43c>
3661  DB  255,224                             ; jmpq          *%rax
3662  DB  196,193,121,110,4,65                ; vmovd         (%r9,%rax,2),%xmm0
3663  DB  196,193,121,196,68,65,4,2           ; vpinsrw       $0x2,0x4(%r9,%rax,2),%xmm0,%xmm0
3664  DB  73,131,248,1                        ; cmp           $0x1,%r8
3665  DB  117,5                               ; jne           3d25 <_sk_load_rgb_u16_be_hsw+0xf7>
3666  DB  233,79,255,255,255                  ; jmpq          3c74 <_sk_load_rgb_u16_be_hsw+0x46>
3667  DB  196,193,121,110,76,65,6             ; vmovd         0x6(%r9,%rax,2),%xmm1
3668  DB  196,65,113,196,68,65,10,2           ; vpinsrw       $0x2,0xa(%r9,%rax,2),%xmm1,%xmm8
3669  DB  73,131,248,3                        ; cmp           $0x3,%r8
3670  DB  114,26                              ; jb            3d54 <_sk_load_rgb_u16_be_hsw+0x126>
3671  DB  196,193,121,110,76,65,12            ; vmovd         0xc(%r9,%rax,2),%xmm1
3672  DB  196,193,113,196,84,65,16,2          ; vpinsrw       $0x2,0x10(%r9,%rax,2),%xmm1,%xmm2
3673  DB  73,131,248,3                        ; cmp           $0x3,%r8
3674  DB  117,10                              ; jne           3d59 <_sk_load_rgb_u16_be_hsw+0x12b>
3675  DB  233,32,255,255,255                  ; jmpq          3c74 <_sk_load_rgb_u16_be_hsw+0x46>
3676  DB  233,27,255,255,255                  ; jmpq          3c74 <_sk_load_rgb_u16_be_hsw+0x46>
3677  DB  196,193,121,110,76,65,18            ; vmovd         0x12(%r9,%rax,2),%xmm1
3678  DB  196,65,113,196,76,65,22,2           ; vpinsrw       $0x2,0x16(%r9,%rax,2),%xmm1,%xmm9
3679  DB  73,131,248,5                        ; cmp           $0x5,%r8
3680  DB  114,26                              ; jb            3d88 <_sk_load_rgb_u16_be_hsw+0x15a>
3681  DB  196,193,121,110,76,65,24            ; vmovd         0x18(%r9,%rax,2),%xmm1
3682  DB  196,193,113,196,76,65,28,2          ; vpinsrw       $0x2,0x1c(%r9,%rax,2),%xmm1,%xmm1
3683  DB  73,131,248,5                        ; cmp           $0x5,%r8
3684  DB  117,10                              ; jne           3d8d <_sk_load_rgb_u16_be_hsw+0x15f>
3685  DB  233,236,254,255,255                 ; jmpq          3c74 <_sk_load_rgb_u16_be_hsw+0x46>
3686  DB  233,231,254,255,255                 ; jmpq          3c74 <_sk_load_rgb_u16_be_hsw+0x46>
3687  DB  196,193,121,110,92,65,30            ; vmovd         0x1e(%r9,%rax,2),%xmm3
3688  DB  196,65,97,196,92,65,34,2            ; vpinsrw       $0x2,0x22(%r9,%rax,2),%xmm3,%xmm11
3689  DB  73,131,248,7                        ; cmp           $0x7,%r8
3690  DB  114,20                              ; jb            3db6 <_sk_load_rgb_u16_be_hsw+0x188>
3691  DB  196,193,121,110,92,65,36            ; vmovd         0x24(%r9,%rax,2),%xmm3
3692  DB  196,193,97,196,92,65,40,2           ; vpinsrw       $0x2,0x28(%r9,%rax,2),%xmm3,%xmm3
3693  DB  233,190,254,255,255                 ; jmpq          3c74 <_sk_load_rgb_u16_be_hsw+0x46>
3694  DB  233,185,254,255,255                 ; jmpq          3c74 <_sk_load_rgb_u16_be_hsw+0x46>
3695
3696PUBLIC _sk_store_u16_be_hsw
3697_sk_store_u16_be_hsw LABEL PROC
3698  DB  72,173                              ; lods          %ds:(%rsi),%rax
3699  DB  76,139,8                            ; mov           (%rax),%r9
3700  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
3701  DB  196,98,125,24,5,151,18,0,0          ; vbroadcastss  0x1297(%rip),%ymm8        # 5068 <_sk_callback_hsw+0x440>
3702  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
3703  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
3704  DB  196,67,125,25,202,1                 ; vextractf128  $0x1,%ymm9,%xmm10
3705  DB  196,66,49,43,202                    ; vpackusdw     %xmm10,%xmm9,%xmm9
3706  DB  196,193,41,113,241,8                ; vpsllw        $0x8,%xmm9,%xmm10
3707  DB  196,193,49,113,209,8                ; vpsrlw        $0x8,%xmm9,%xmm9
3708  DB  196,65,41,235,201                   ; vpor          %xmm9,%xmm10,%xmm9
3709  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
3710  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
3711  DB  196,67,125,25,211,1                 ; vextractf128  $0x1,%ymm10,%xmm11
3712  DB  196,66,41,43,211                    ; vpackusdw     %xmm11,%xmm10,%xmm10
3713  DB  196,193,33,113,242,8                ; vpsllw        $0x8,%xmm10,%xmm11
3714  DB  196,193,41,113,210,8                ; vpsrlw        $0x8,%xmm10,%xmm10
3715  DB  196,65,33,235,210                   ; vpor          %xmm10,%xmm11,%xmm10
3716  DB  196,65,108,89,216                   ; vmulps        %ymm8,%ymm2,%ymm11
3717  DB  196,65,125,91,219                   ; vcvtps2dq     %ymm11,%ymm11
3718  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
3719  DB  196,66,33,43,220                    ; vpackusdw     %xmm12,%xmm11,%xmm11
3720  DB  196,193,25,113,243,8                ; vpsllw        $0x8,%xmm11,%xmm12
3721  DB  196,193,33,113,211,8                ; vpsrlw        $0x8,%xmm11,%xmm11
3722  DB  196,65,25,235,219                   ; vpor          %xmm11,%xmm12,%xmm11
3723  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
3724  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
3725  DB  196,67,125,25,196,1                 ; vextractf128  $0x1,%ymm8,%xmm12
3726  DB  196,66,57,43,196                    ; vpackusdw     %xmm12,%xmm8,%xmm8
3727  DB  196,193,25,113,240,8                ; vpsllw        $0x8,%xmm8,%xmm12
3728  DB  196,193,57,113,208,8                ; vpsrlw        $0x8,%xmm8,%xmm8
3729  DB  196,65,25,235,192                   ; vpor          %xmm8,%xmm12,%xmm8
3730  DB  196,65,49,97,226                    ; vpunpcklwd    %xmm10,%xmm9,%xmm12
3731  DB  196,65,49,105,234                   ; vpunpckhwd    %xmm10,%xmm9,%xmm13
3732  DB  196,65,33,97,200                    ; vpunpcklwd    %xmm8,%xmm11,%xmm9
3733  DB  196,65,33,105,192                   ; vpunpckhwd    %xmm8,%xmm11,%xmm8
3734  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
3735  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
3736  DB  196,65,17,98,200                    ; vpunpckldq    %xmm8,%xmm13,%xmm9
3737  DB  196,65,17,106,192                   ; vpunpckhdq    %xmm8,%xmm13,%xmm8
3738  DB  77,133,192                          ; test          %r8,%r8
3739  DB  117,31                              ; jne           3eb5 <_sk_store_u16_be_hsw+0xfa>
3740  DB  196,65,120,17,28,65                 ; vmovups       %xmm11,(%r9,%rax,2)
3741  DB  196,65,120,17,84,65,16              ; vmovups       %xmm10,0x10(%r9,%rax,2)
3742  DB  196,65,120,17,76,65,32              ; vmovups       %xmm9,0x20(%r9,%rax,2)
3743  DB  196,65,122,127,68,65,48             ; vmovdqu       %xmm8,0x30(%r9,%rax,2)
3744  DB  72,173                              ; lods          %ds:(%rsi),%rax
3745  DB  255,224                             ; jmpq          *%rax
3746  DB  196,65,121,214,28,65                ; vmovq         %xmm11,(%r9,%rax,2)
3747  DB  73,131,248,1                        ; cmp           $0x1,%r8
3748  DB  116,240                             ; je            3eb1 <_sk_store_u16_be_hsw+0xf6>
3749  DB  196,65,121,23,92,65,8               ; vmovhpd       %xmm11,0x8(%r9,%rax,2)
3750  DB  73,131,248,3                        ; cmp           $0x3,%r8
3751  DB  114,227                             ; jb            3eb1 <_sk_store_u16_be_hsw+0xf6>
3752  DB  196,65,121,214,84,65,16             ; vmovq         %xmm10,0x10(%r9,%rax,2)
3753  DB  116,218                             ; je            3eb1 <_sk_store_u16_be_hsw+0xf6>
3754  DB  196,65,121,23,84,65,24              ; vmovhpd       %xmm10,0x18(%r9,%rax,2)
3755  DB  73,131,248,5                        ; cmp           $0x5,%r8
3756  DB  114,205                             ; jb            3eb1 <_sk_store_u16_be_hsw+0xf6>
3757  DB  196,65,121,214,76,65,32             ; vmovq         %xmm9,0x20(%r9,%rax,2)
3758  DB  116,196                             ; je            3eb1 <_sk_store_u16_be_hsw+0xf6>
3759  DB  196,65,121,23,76,65,40              ; vmovhpd       %xmm9,0x28(%r9,%rax,2)
3760  DB  73,131,248,7                        ; cmp           $0x7,%r8
3761  DB  114,183                             ; jb            3eb1 <_sk_store_u16_be_hsw+0xf6>
3762  DB  196,65,121,214,68,65,48             ; vmovq         %xmm8,0x30(%r9,%rax,2)
3763  DB  235,174                             ; jmp           3eb1 <_sk_store_u16_be_hsw+0xf6>
3764
3765PUBLIC _sk_load_f32_hsw
3766_sk_load_f32_hsw LABEL PROC
3767  DB  72,173                              ; lods          %ds:(%rsi),%rax
3768  DB  73,131,248,7                        ; cmp           $0x7,%r8
3769  DB  119,110                             ; ja            3f79 <_sk_load_f32_hsw+0x76>
3770  DB  76,139,8                            ; mov           (%rax),%r9
3771  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
3772  DB  76,141,29,135,0,0,0                 ; lea           0x87(%rip),%r11        # 3fa4 <_sk_load_f32_hsw+0xa1>
3773  DB  75,99,4,131                         ; movslq        (%r11,%r8,4),%rax
3774  DB  76,1,216                            ; add           %r11,%rax
3775  DB  255,224                             ; jmpq          *%rax
3776  DB  196,3,125,24,68,145,112,1           ; vinsertf128   $0x1,0x70(%r9,%r10,4),%ymm0,%ymm8
3777  DB  196,131,125,24,92,145,96,1          ; vinsertf128   $0x1,0x60(%r9,%r10,4),%ymm0,%ymm3
3778  DB  196,131,125,24,76,145,80,1          ; vinsertf128   $0x1,0x50(%r9,%r10,4),%ymm0,%ymm1
3779  DB  196,131,125,24,84,145,64,1          ; vinsertf128   $0x1,0x40(%r9,%r10,4),%ymm0,%ymm2
3780  DB  196,129,121,16,68,145,48            ; vmovupd       0x30(%r9,%r10,4),%xmm0
3781  DB  196,195,125,13,192,12               ; vblendpd      $0xc,%ymm8,%ymm0,%ymm0
3782  DB  196,1,121,16,68,145,32              ; vmovupd       0x20(%r9,%r10,4),%xmm8
3783  DB  196,99,61,13,203,12                 ; vblendpd      $0xc,%ymm3,%ymm8,%ymm9
3784  DB  196,129,121,16,92,145,16            ; vmovupd       0x10(%r9,%r10,4),%xmm3
3785  DB  196,99,101,13,209,12                ; vblendpd      $0xc,%ymm1,%ymm3,%ymm10
3786  DB  196,129,121,16,12,145               ; vmovupd       (%r9,%r10,4),%xmm1
3787  DB  196,227,117,13,202,12               ; vblendpd      $0xc,%ymm2,%ymm1,%ymm1
3788  DB  196,193,116,20,210                  ; vunpcklps     %ymm10,%ymm1,%ymm2
3789  DB  196,193,116,21,218                  ; vunpckhps     %ymm10,%ymm1,%ymm3
3790  DB  197,180,20,200                      ; vunpcklps     %ymm0,%ymm9,%ymm1
3791  DB  197,52,21,192                       ; vunpckhps     %ymm0,%ymm9,%ymm8
3792  DB  197,237,20,193                      ; vunpcklpd     %ymm1,%ymm2,%ymm0
3793  DB  197,237,21,201                      ; vunpckhpd     %ymm1,%ymm2,%ymm1
3794  DB  196,193,101,20,208                  ; vunpcklpd     %ymm8,%ymm3,%ymm2
3795  DB  196,193,101,21,216                  ; vunpckhpd     %ymm8,%ymm3,%ymm3
3796  DB  72,173                              ; lods          %ds:(%rsi),%rax
3797  DB  255,224                             ; jmpq          *%rax
3798  DB  15,31,0                             ; nopl          (%rax)
3799  DB  130                                 ; (bad)
3800  DB  255                                 ; (bad)
3801  DB  255                                 ; (bad)
3802  DB  255,201                             ; dec           %ecx
3803  DB  255                                 ; (bad)
3804  DB  255                                 ; (bad)
3805  DB  255                                 ; (bad)
3806  DB  188,255,255,255,175                 ; mov           $0xafffffff,%esp
3807  DB  255                                 ; (bad)
3808  DB  255                                 ; (bad)
3809  DB  255,162,255,255,255,154             ; jmpq          *-0x65000001(%rdx)
3810  DB  255                                 ; (bad)
3811  DB  255                                 ; (bad)
3812  DB  255,146,255,255,255,138             ; callq         *-0x75000001(%rdx)
3813  DB  255                                 ; (bad)
3814  DB  255                                 ; (bad)
3815  DB  255                                 ; .byte         0xff
3816
3817PUBLIC _sk_store_f32_hsw
3818_sk_store_f32_hsw LABEL PROC
3819  DB  72,173                              ; lods          %ds:(%rsi),%rax
3820  DB  76,139,8                            ; mov           (%rax),%r9
3821  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
3822  DB  197,124,20,193                      ; vunpcklps     %ymm1,%ymm0,%ymm8
3823  DB  197,124,21,217                      ; vunpckhps     %ymm1,%ymm0,%ymm11
3824  DB  197,108,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm9
3825  DB  197,108,21,227                      ; vunpckhps     %ymm3,%ymm2,%ymm12
3826  DB  196,65,61,20,209                    ; vunpcklpd     %ymm9,%ymm8,%ymm10
3827  DB  196,65,61,21,201                    ; vunpckhpd     %ymm9,%ymm8,%ymm9
3828  DB  196,65,37,20,196                    ; vunpcklpd     %ymm12,%ymm11,%ymm8
3829  DB  196,65,37,21,220                    ; vunpckhpd     %ymm12,%ymm11,%ymm11
3830  DB  77,133,192                          ; test          %r8,%r8
3831  DB  117,55                              ; jne           4031 <_sk_store_f32_hsw+0x6d>
3832  DB  196,67,45,24,225,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm12
3833  DB  196,67,61,24,235,1                  ; vinsertf128   $0x1,%xmm11,%ymm8,%ymm13
3834  DB  196,67,45,6,201,49                  ; vperm2f128    $0x31,%ymm9,%ymm10,%ymm9
3835  DB  196,67,61,6,195,49                  ; vperm2f128    $0x31,%ymm11,%ymm8,%ymm8
3836  DB  196,65,125,17,36,129                ; vmovupd       %ymm12,(%r9,%rax,4)
3837  DB  196,65,125,17,108,129,32            ; vmovupd       %ymm13,0x20(%r9,%rax,4)
3838  DB  196,65,125,17,76,129,64             ; vmovupd       %ymm9,0x40(%r9,%rax,4)
3839  DB  196,65,125,17,68,129,96             ; vmovupd       %ymm8,0x60(%r9,%rax,4)
3840  DB  72,173                              ; lods          %ds:(%rsi),%rax
3841  DB  255,224                             ; jmpq          *%rax
3842  DB  196,65,121,17,20,129                ; vmovupd       %xmm10,(%r9,%rax,4)
3843  DB  73,131,248,1                        ; cmp           $0x1,%r8
3844  DB  116,240                             ; je            402d <_sk_store_f32_hsw+0x69>
3845  DB  196,65,121,17,76,129,16             ; vmovupd       %xmm9,0x10(%r9,%rax,4)
3846  DB  73,131,248,3                        ; cmp           $0x3,%r8
3847  DB  114,227                             ; jb            402d <_sk_store_f32_hsw+0x69>
3848  DB  196,65,121,17,68,129,32             ; vmovupd       %xmm8,0x20(%r9,%rax,4)
3849  DB  116,218                             ; je            402d <_sk_store_f32_hsw+0x69>
3850  DB  196,65,121,17,92,129,48             ; vmovupd       %xmm11,0x30(%r9,%rax,4)
3851  DB  73,131,248,5                        ; cmp           $0x5,%r8
3852  DB  114,205                             ; jb            402d <_sk_store_f32_hsw+0x69>
3853  DB  196,67,125,25,84,129,64,1           ; vextractf128  $0x1,%ymm10,0x40(%r9,%rax,4)
3854  DB  116,195                             ; je            402d <_sk_store_f32_hsw+0x69>
3855  DB  196,67,125,25,76,129,80,1           ; vextractf128  $0x1,%ymm9,0x50(%r9,%rax,4)
3856  DB  73,131,248,7                        ; cmp           $0x7,%r8
3857  DB  114,181                             ; jb            402d <_sk_store_f32_hsw+0x69>
3858  DB  196,67,125,25,68,129,96,1           ; vextractf128  $0x1,%ymm8,0x60(%r9,%rax,4)
3859  DB  235,171                             ; jmp           402d <_sk_store_f32_hsw+0x69>
3860
3861PUBLIC _sk_clamp_x_hsw
3862_sk_clamp_x_hsw LABEL PROC
3863  DB  72,173                              ; lods          %ds:(%rsi),%rax
3864  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3865  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
3866  DB  196,98,125,88,0                     ; vpbroadcastd  (%rax),%ymm8
3867  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
3868  DB  196,65,61,254,193                   ; vpaddd        %ymm9,%ymm8,%ymm8
3869  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
3870  DB  72,173                              ; lods          %ds:(%rsi),%rax
3871  DB  255,224                             ; jmpq          *%rax
3872
3873PUBLIC _sk_clamp_y_hsw
3874_sk_clamp_y_hsw LABEL PROC
3875  DB  72,173                              ; lods          %ds:(%rsi),%rax
3876  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3877  DB  197,188,95,201                      ; vmaxps        %ymm1,%ymm8,%ymm1
3878  DB  196,98,125,88,0                     ; vpbroadcastd  (%rax),%ymm8
3879  DB  196,65,53,118,201                   ; vpcmpeqd      %ymm9,%ymm9,%ymm9
3880  DB  196,65,61,254,193                   ; vpaddd        %ymm9,%ymm8,%ymm8
3881  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
3882  DB  72,173                              ; lods          %ds:(%rsi),%rax
3883  DB  255,224                             ; jmpq          *%rax
3884
3885PUBLIC _sk_repeat_x_hsw
3886_sk_repeat_x_hsw LABEL PROC
3887  DB  72,173                              ; lods          %ds:(%rsi),%rax
3888  DB  196,98,125,24,64,4                  ; vbroadcastss  0x4(%rax),%ymm8
3889  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
3890  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
3891  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3892  DB  196,98,53,172,192                   ; vfnmadd213ps  %ymm0,%ymm9,%ymm8
3893  DB  197,253,118,192                     ; vpcmpeqd      %ymm0,%ymm0,%ymm0
3894  DB  197,181,254,192                     ; vpaddd        %ymm0,%ymm9,%ymm0
3895  DB  197,188,93,192                      ; vminps        %ymm0,%ymm8,%ymm0
3896  DB  72,173                              ; lods          %ds:(%rsi),%rax
3897  DB  255,224                             ; jmpq          *%rax
3898
3899PUBLIC _sk_repeat_y_hsw
3900_sk_repeat_y_hsw LABEL PROC
3901  DB  72,173                              ; lods          %ds:(%rsi),%rax
3902  DB  196,98,125,24,64,4                  ; vbroadcastss  0x4(%rax),%ymm8
3903  DB  197,60,89,193                       ; vmulps        %ymm1,%ymm8,%ymm8
3904  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
3905  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
3906  DB  196,98,53,172,193                   ; vfnmadd213ps  %ymm1,%ymm9,%ymm8
3907  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
3908  DB  197,181,254,201                     ; vpaddd        %ymm1,%ymm9,%ymm1
3909  DB  197,188,93,201                      ; vminps        %ymm1,%ymm8,%ymm1
3910  DB  72,173                              ; lods          %ds:(%rsi),%rax
3911  DB  255,224                             ; jmpq          *%rax
3912
3913PUBLIC _sk_mirror_x_hsw
3914_sk_mirror_x_hsw LABEL PROC
3915  DB  72,173                              ; lods          %ds:(%rsi),%rax
3916  DB  197,122,16,0                        ; vmovss        (%rax),%xmm8
3917  DB  197,122,16,72,4                     ; vmovss        0x4(%rax),%xmm9
3918  DB  196,66,125,24,208                   ; vbroadcastss  %xmm8,%ymm10
3919  DB  196,65,124,92,218                   ; vsubps        %ymm10,%ymm0,%ymm11
3920  DB  196,193,58,88,192                   ; vaddss        %xmm8,%xmm8,%xmm0
3921  DB  196,98,125,24,192                   ; vbroadcastss  %xmm0,%ymm8
3922  DB  197,178,89,5,37,15,0,0              ; vmulss        0xf25(%rip),%xmm9,%xmm0        # 506c <_sk_callback_hsw+0x444>
3923  DB  196,226,125,24,192                  ; vbroadcastss  %xmm0,%ymm0
3924  DB  197,164,89,192                      ; vmulps        %ymm0,%ymm11,%ymm0
3925  DB  196,227,125,8,192,1                 ; vroundps      $0x1,%ymm0,%ymm0
3926  DB  196,194,61,172,195                  ; vfnmadd213ps  %ymm11,%ymm8,%ymm0
3927  DB  196,193,124,92,194                  ; vsubps        %ymm10,%ymm0,%ymm0
3928  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3929  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
3930  DB  197,188,84,192                      ; vandps        %ymm0,%ymm8,%ymm0
3931  DB  196,65,61,118,192                   ; vpcmpeqd      %ymm8,%ymm8,%ymm8
3932  DB  196,65,45,254,192                   ; vpaddd        %ymm8,%ymm10,%ymm8
3933  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
3934  DB  72,173                              ; lods          %ds:(%rsi),%rax
3935  DB  255,224                             ; jmpq          *%rax
3936
3937PUBLIC _sk_mirror_y_hsw
3938_sk_mirror_y_hsw LABEL PROC
3939  DB  72,173                              ; lods          %ds:(%rsi),%rax
3940  DB  197,122,16,0                        ; vmovss        (%rax),%xmm8
3941  DB  197,122,16,72,4                     ; vmovss        0x4(%rax),%xmm9
3942  DB  196,66,125,24,208                   ; vbroadcastss  %xmm8,%ymm10
3943  DB  196,65,116,92,218                   ; vsubps        %ymm10,%ymm1,%ymm11
3944  DB  196,193,58,88,200                   ; vaddss        %xmm8,%xmm8,%xmm1
3945  DB  196,98,125,24,193                   ; vbroadcastss  %xmm1,%ymm8
3946  DB  197,178,89,13,201,14,0,0            ; vmulss        0xec9(%rip),%xmm9,%xmm1        # 5070 <_sk_callback_hsw+0x448>
3947  DB  196,226,125,24,201                  ; vbroadcastss  %xmm1,%ymm1
3948  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
3949  DB  196,227,125,8,201,1                 ; vroundps      $0x1,%ymm1,%ymm1
3950  DB  196,194,61,172,203                  ; vfnmadd213ps  %ymm11,%ymm8,%ymm1
3951  DB  196,193,116,92,202                  ; vsubps        %ymm10,%ymm1,%ymm1
3952  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3953  DB  197,60,92,193                       ; vsubps        %ymm1,%ymm8,%ymm8
3954  DB  197,188,84,201                      ; vandps        %ymm1,%ymm8,%ymm1
3955  DB  196,65,61,118,192                   ; vpcmpeqd      %ymm8,%ymm8,%ymm8
3956  DB  196,65,45,254,192                   ; vpaddd        %ymm8,%ymm10,%ymm8
3957  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
3958  DB  72,173                              ; lods          %ds:(%rsi),%rax
3959  DB  255,224                             ; jmpq          *%rax
3960
3961PUBLIC _sk_clamp_x_1_hsw
3962_sk_clamp_x_1_hsw LABEL PROC
3963  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3964  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
3965  DB  196,98,125,24,5,130,14,0,0          ; vbroadcastss  0xe82(%rip),%ymm8        # 5074 <_sk_callback_hsw+0x44c>
3966  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
3967  DB  72,173                              ; lods          %ds:(%rsi),%rax
3968  DB  255,224                             ; jmpq          *%rax
3969
3970PUBLIC _sk_repeat_x_1_hsw
3971_sk_repeat_x_1_hsw LABEL PROC
3972  DB  196,99,125,8,192,1                  ; vroundps      $0x1,%ymm0,%ymm8
3973  DB  196,193,124,92,192                  ; vsubps        %ymm8,%ymm0,%ymm0
3974  DB  72,173                              ; lods          %ds:(%rsi),%rax
3975  DB  255,224                             ; jmpq          *%rax
3976
3977PUBLIC _sk_mirror_x_1_hsw
3978_sk_mirror_x_1_hsw LABEL PROC
3979  DB  196,98,125,24,5,101,14,0,0          ; vbroadcastss  0xe65(%rip),%ymm8        # 5078 <_sk_callback_hsw+0x450>
3980  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
3981  DB  196,98,125,24,13,91,14,0,0          ; vbroadcastss  0xe5b(%rip),%ymm9        # 507c <_sk_callback_hsw+0x454>
3982  DB  196,65,124,89,201                   ; vmulps        %ymm9,%ymm0,%ymm9
3983  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
3984  DB  196,65,52,88,201                    ; vaddps        %ymm9,%ymm9,%ymm9
3985  DB  196,193,124,92,193                  ; vsubps        %ymm9,%ymm0,%ymm0
3986  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
3987  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
3988  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
3989  DB  197,188,84,192                      ; vandps        %ymm0,%ymm8,%ymm0
3990  DB  72,173                              ; lods          %ds:(%rsi),%rax
3991  DB  255,224                             ; jmpq          *%rax
3992
3993PUBLIC _sk_luminance_to_alpha_hsw
3994_sk_luminance_to_alpha_hsw LABEL PROC
3995  DB  196,226,125,24,29,43,14,0,0         ; vbroadcastss  0xe2b(%rip),%ymm3        # 5080 <_sk_callback_hsw+0x458>
3996  DB  196,98,125,24,5,38,14,0,0           ; vbroadcastss  0xe26(%rip),%ymm8        # 5084 <_sk_callback_hsw+0x45c>
3997  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
3998  DB  196,226,125,184,203                 ; vfmadd231ps   %ymm3,%ymm0,%ymm1
3999  DB  196,226,125,24,29,23,14,0,0         ; vbroadcastss  0xe17(%rip),%ymm3        # 5088 <_sk_callback_hsw+0x460>
4000  DB  196,226,109,168,217                 ; vfmadd213ps   %ymm1,%ymm2,%ymm3
4001  DB  72,173                              ; lods          %ds:(%rsi),%rax
4002  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
4003  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
4004  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
4005  DB  255,224                             ; jmpq          *%rax
4006
4007PUBLIC _sk_matrix_2x3_hsw
4008_sk_matrix_2x3_hsw LABEL PROC
4009  DB  72,173                              ; lods          %ds:(%rsi),%rax
4010  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
4011  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
4012  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
4013  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
4014  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
4015  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
4016  DB  196,98,125,24,88,12                 ; vbroadcastss  0xc(%rax),%ymm11
4017  DB  196,98,125,24,72,20                 ; vbroadcastss  0x14(%rax),%ymm9
4018  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
4019  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
4020  DB  72,173                              ; lods          %ds:(%rsi),%rax
4021  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
4022  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
4023  DB  255,224                             ; jmpq          *%rax
4024
4025PUBLIC _sk_matrix_3x4_hsw
4026_sk_matrix_3x4_hsw LABEL PROC
4027  DB  72,173                              ; lods          %ds:(%rsi),%rax
4028  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
4029  DB  196,98,125,24,80,12                 ; vbroadcastss  0xc(%rax),%ymm10
4030  DB  196,98,125,24,88,24                 ; vbroadcastss  0x18(%rax),%ymm11
4031  DB  196,98,125,24,64,36                 ; vbroadcastss  0x24(%rax),%ymm8
4032  DB  196,66,109,184,195                  ; vfmadd231ps   %ymm11,%ymm2,%ymm8
4033  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
4034  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
4035  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
4036  DB  196,98,125,24,88,16                 ; vbroadcastss  0x10(%rax),%ymm11
4037  DB  196,98,125,24,96,28                 ; vbroadcastss  0x1c(%rax),%ymm12
4038  DB  196,98,125,24,72,40                 ; vbroadcastss  0x28(%rax),%ymm9
4039  DB  196,66,109,184,204                  ; vfmadd231ps   %ymm12,%ymm2,%ymm9
4040  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
4041  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
4042  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
4043  DB  196,98,125,24,96,20                 ; vbroadcastss  0x14(%rax),%ymm12
4044  DB  196,98,125,24,104,32                ; vbroadcastss  0x20(%rax),%ymm13
4045  DB  196,98,125,24,80,44                 ; vbroadcastss  0x2c(%rax),%ymm10
4046  DB  196,66,109,184,213                  ; vfmadd231ps   %ymm13,%ymm2,%ymm10
4047  DB  196,66,117,184,212                  ; vfmadd231ps   %ymm12,%ymm1,%ymm10
4048  DB  196,66,125,184,211                  ; vfmadd231ps   %ymm11,%ymm0,%ymm10
4049  DB  72,173                              ; lods          %ds:(%rsi),%rax
4050  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
4051  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
4052  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
4053  DB  255,224                             ; jmpq          *%rax
4054
4055PUBLIC _sk_matrix_4x5_hsw
4056_sk_matrix_4x5_hsw LABEL PROC
4057  DB  72,173                              ; lods          %ds:(%rsi),%rax
4058  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
4059  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
4060  DB  196,98,125,24,88,32                 ; vbroadcastss  0x20(%rax),%ymm11
4061  DB  196,98,125,24,96,48                 ; vbroadcastss  0x30(%rax),%ymm12
4062  DB  196,98,125,24,64,64                 ; vbroadcastss  0x40(%rax),%ymm8
4063  DB  196,66,101,184,196                  ; vfmadd231ps   %ymm12,%ymm3,%ymm8
4064  DB  196,66,109,184,195                  ; vfmadd231ps   %ymm11,%ymm2,%ymm8
4065  DB  196,66,117,184,194                  ; vfmadd231ps   %ymm10,%ymm1,%ymm8
4066  DB  196,66,125,184,193                  ; vfmadd231ps   %ymm9,%ymm0,%ymm8
4067  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
4068  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
4069  DB  196,98,125,24,96,36                 ; vbroadcastss  0x24(%rax),%ymm12
4070  DB  196,98,125,24,104,52                ; vbroadcastss  0x34(%rax),%ymm13
4071  DB  196,98,125,24,72,68                 ; vbroadcastss  0x44(%rax),%ymm9
4072  DB  196,66,101,184,205                  ; vfmadd231ps   %ymm13,%ymm3,%ymm9
4073  DB  196,66,109,184,204                  ; vfmadd231ps   %ymm12,%ymm2,%ymm9
4074  DB  196,66,117,184,203                  ; vfmadd231ps   %ymm11,%ymm1,%ymm9
4075  DB  196,66,125,184,202                  ; vfmadd231ps   %ymm10,%ymm0,%ymm9
4076  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
4077  DB  196,98,125,24,96,24                 ; vbroadcastss  0x18(%rax),%ymm12
4078  DB  196,98,125,24,104,40                ; vbroadcastss  0x28(%rax),%ymm13
4079  DB  196,98,125,24,112,56                ; vbroadcastss  0x38(%rax),%ymm14
4080  DB  196,98,125,24,80,72                 ; vbroadcastss  0x48(%rax),%ymm10
4081  DB  196,66,101,184,214                  ; vfmadd231ps   %ymm14,%ymm3,%ymm10
4082  DB  196,66,109,184,213                  ; vfmadd231ps   %ymm13,%ymm2,%ymm10
4083  DB  196,66,117,184,212                  ; vfmadd231ps   %ymm12,%ymm1,%ymm10
4084  DB  196,66,125,184,211                  ; vfmadd231ps   %ymm11,%ymm0,%ymm10
4085  DB  196,98,125,24,96,12                 ; vbroadcastss  0xc(%rax),%ymm12
4086  DB  196,98,125,24,104,28                ; vbroadcastss  0x1c(%rax),%ymm13
4087  DB  196,98,125,24,112,44                ; vbroadcastss  0x2c(%rax),%ymm14
4088  DB  196,98,125,24,120,60                ; vbroadcastss  0x3c(%rax),%ymm15
4089  DB  196,98,125,24,88,76                 ; vbroadcastss  0x4c(%rax),%ymm11
4090  DB  196,66,101,184,223                  ; vfmadd231ps   %ymm15,%ymm3,%ymm11
4091  DB  196,66,109,184,222                  ; vfmadd231ps   %ymm14,%ymm2,%ymm11
4092  DB  196,66,117,184,221                  ; vfmadd231ps   %ymm13,%ymm1,%ymm11
4093  DB  196,66,125,184,220                  ; vfmadd231ps   %ymm12,%ymm0,%ymm11
4094  DB  72,173                              ; lods          %ds:(%rsi),%rax
4095  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
4096  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
4097  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
4098  DB  197,124,41,219                      ; vmovaps       %ymm11,%ymm3
4099  DB  255,224                             ; jmpq          *%rax
4100
4101PUBLIC _sk_matrix_4x3_hsw
4102_sk_matrix_4x3_hsw LABEL PROC
4103  DB  72,173                              ; lods          %ds:(%rsi),%rax
4104  DB  196,226,125,24,16                   ; vbroadcastss  (%rax),%ymm2
4105  DB  196,226,125,24,88,16                ; vbroadcastss  0x10(%rax),%ymm3
4106  DB  196,98,125,24,64,32                 ; vbroadcastss  0x20(%rax),%ymm8
4107  DB  196,98,117,184,195                  ; vfmadd231ps   %ymm3,%ymm1,%ymm8
4108  DB  196,98,125,184,194                  ; vfmadd231ps   %ymm2,%ymm0,%ymm8
4109  DB  196,226,125,24,80,4                 ; vbroadcastss  0x4(%rax),%ymm2
4110  DB  196,226,125,24,88,20                ; vbroadcastss  0x14(%rax),%ymm3
4111  DB  196,98,125,24,72,36                 ; vbroadcastss  0x24(%rax),%ymm9
4112  DB  196,98,117,184,203                  ; vfmadd231ps   %ymm3,%ymm1,%ymm9
4113  DB  196,98,125,184,202                  ; vfmadd231ps   %ymm2,%ymm0,%ymm9
4114  DB  196,226,125,24,88,8                 ; vbroadcastss  0x8(%rax),%ymm3
4115  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
4116  DB  196,226,125,24,80,40                ; vbroadcastss  0x28(%rax),%ymm2
4117  DB  196,194,117,184,210                 ; vfmadd231ps   %ymm10,%ymm1,%ymm2
4118  DB  196,226,125,184,211                 ; vfmadd231ps   %ymm3,%ymm0,%ymm2
4119  DB  196,98,125,24,80,12                 ; vbroadcastss  0xc(%rax),%ymm10
4120  DB  196,98,125,24,88,28                 ; vbroadcastss  0x1c(%rax),%ymm11
4121  DB  196,226,125,24,88,44                ; vbroadcastss  0x2c(%rax),%ymm3
4122  DB  196,194,117,184,219                 ; vfmadd231ps   %ymm11,%ymm1,%ymm3
4123  DB  196,194,125,184,218                 ; vfmadd231ps   %ymm10,%ymm0,%ymm3
4124  DB  72,173                              ; lods          %ds:(%rsi),%rax
4125  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
4126  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
4127  DB  255,224                             ; jmpq          *%rax
4128
4129PUBLIC _sk_matrix_perspective_hsw
4130_sk_matrix_perspective_hsw LABEL PROC
4131  DB  72,173                              ; lods          %ds:(%rsi),%rax
4132  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
4133  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
4134  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
4135  DB  196,66,117,184,209                  ; vfmadd231ps   %ymm9,%ymm1,%ymm10
4136  DB  196,66,125,184,208                  ; vfmadd231ps   %ymm8,%ymm0,%ymm10
4137  DB  196,98,125,24,64,12                 ; vbroadcastss  0xc(%rax),%ymm8
4138  DB  196,98,125,24,72,16                 ; vbroadcastss  0x10(%rax),%ymm9
4139  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
4140  DB  196,66,117,184,217                  ; vfmadd231ps   %ymm9,%ymm1,%ymm11
4141  DB  196,66,125,184,216                  ; vfmadd231ps   %ymm8,%ymm0,%ymm11
4142  DB  196,98,125,24,64,24                 ; vbroadcastss  0x18(%rax),%ymm8
4143  DB  196,98,125,24,72,28                 ; vbroadcastss  0x1c(%rax),%ymm9
4144  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
4145  DB  196,66,117,184,225                  ; vfmadd231ps   %ymm9,%ymm1,%ymm12
4146  DB  196,66,125,184,224                  ; vfmadd231ps   %ymm8,%ymm0,%ymm12
4147  DB  196,193,124,83,204                  ; vrcpps        %ymm12,%ymm1
4148  DB  197,172,89,193                      ; vmulps        %ymm1,%ymm10,%ymm0
4149  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
4150  DB  72,173                              ; lods          %ds:(%rsi),%rax
4151  DB  255,224                             ; jmpq          *%rax
4152
4153PUBLIC _sk_evenly_spaced_gradient_hsw
4154_sk_evenly_spaced_gradient_hsw LABEL PROC
4155  DB  83                                  ; push          %rbx
4156  DB  72,173                              ; lods          %ds:(%rsi),%rax
4157  DB  76,139,16                           ; mov           (%rax),%r10
4158  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
4159  DB  77,137,211                          ; mov           %r10,%r11
4160  DB  73,255,203                          ; dec           %r11
4161  DB  120,7                               ; js            452a <_sk_evenly_spaced_gradient_hsw+0x19>
4162  DB  196,193,242,42,203                  ; vcvtsi2ss     %r11,%xmm1,%xmm1
4163  DB  235,22                              ; jmp           4540 <_sk_evenly_spaced_gradient_hsw+0x2f>
4164  DB  76,137,219                          ; mov           %r11,%rbx
4165  DB  72,209,235                          ; shr           %rbx
4166  DB  65,131,227,1                        ; and           $0x1,%r11d
4167  DB  73,9,219                            ; or            %rbx,%r11
4168  DB  196,193,242,42,203                  ; vcvtsi2ss     %r11,%xmm1,%xmm1
4169  DB  197,242,88,201                      ; vaddss        %xmm1,%xmm1,%xmm1
4170  DB  196,226,125,24,201                  ; vbroadcastss  %xmm1,%ymm1
4171  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
4172  DB  197,126,91,217                      ; vcvttps2dq    %ymm1,%ymm11
4173  DB  73,131,250,8                        ; cmp           $0x8,%r10
4174  DB  119,70                              ; ja            4599 <_sk_evenly_spaced_gradient_hsw+0x88>
4175  DB  196,66,37,22,1                      ; vpermps       (%r9),%ymm11,%ymm8
4176  DB  72,139,88,40                        ; mov           0x28(%rax),%rbx
4177  DB  196,98,37,22,11                     ; vpermps       (%rbx),%ymm11,%ymm9
4178  DB  72,139,88,16                        ; mov           0x10(%rax),%rbx
4179  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
4180  DB  196,226,37,22,11                    ; vpermps       (%rbx),%ymm11,%ymm1
4181  DB  72,139,88,48                        ; mov           0x30(%rax),%rbx
4182  DB  196,98,37,22,19                     ; vpermps       (%rbx),%ymm11,%ymm10
4183  DB  196,194,37,22,17                    ; vpermps       (%r9),%ymm11,%ymm2
4184  DB  72,139,88,56                        ; mov           0x38(%rax),%rbx
4185  DB  196,98,37,22,35                     ; vpermps       (%rbx),%ymm11,%ymm12
4186  DB  72,139,88,32                        ; mov           0x20(%rax),%rbx
4187  DB  196,226,37,22,27                    ; vpermps       (%rbx),%ymm11,%ymm3
4188  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
4189  DB  196,98,37,22,40                     ; vpermps       (%rax),%ymm11,%ymm13
4190  DB  235,110                             ; jmp           4607 <_sk_evenly_spaced_gradient_hsw+0xf6>
4191  DB  196,65,13,118,246                   ; vpcmpeqd      %ymm14,%ymm14,%ymm14
4192  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
4193  DB  196,2,117,146,4,153                 ; vgatherdps    %ymm1,(%r9,%ymm11,4),%ymm8
4194  DB  72,139,88,40                        ; mov           0x28(%rax),%rbx
4195  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
4196  DB  196,34,117,146,12,155               ; vgatherdps    %ymm1,(%rbx,%ymm11,4),%ymm9
4197  DB  72,139,88,16                        ; mov           0x10(%rax),%rbx
4198  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
4199  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
4200  DB  196,162,109,146,12,155              ; vgatherdps    %ymm2,(%rbx,%ymm11,4),%ymm1
4201  DB  72,139,88,48                        ; mov           0x30(%rax),%rbx
4202  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
4203  DB  196,34,109,146,20,155               ; vgatherdps    %ymm2,(%rbx,%ymm11,4),%ymm10
4204  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
4205  DB  196,130,101,146,20,153              ; vgatherdps    %ymm3,(%r9,%ymm11,4),%ymm2
4206  DB  72,139,88,56                        ; mov           0x38(%rax),%rbx
4207  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
4208  DB  196,34,101,146,36,155               ; vgatherdps    %ymm3,(%rbx,%ymm11,4),%ymm12
4209  DB  72,139,88,32                        ; mov           0x20(%rax),%rbx
4210  DB  196,65,21,118,237                   ; vpcmpeqd      %ymm13,%ymm13,%ymm13
4211  DB  196,162,21,146,28,155               ; vgatherdps    %ymm13,(%rbx,%ymm11,4),%ymm3
4212  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
4213  DB  196,34,13,146,44,152                ; vgatherdps    %ymm14,(%rax,%ymm11,4),%ymm13
4214  DB  196,66,125,168,193                  ; vfmadd213ps   %ymm9,%ymm0,%ymm8
4215  DB  196,194,125,168,202                 ; vfmadd213ps   %ymm10,%ymm0,%ymm1
4216  DB  196,194,125,168,212                 ; vfmadd213ps   %ymm12,%ymm0,%ymm2
4217  DB  196,194,125,168,221                 ; vfmadd213ps   %ymm13,%ymm0,%ymm3
4218  DB  72,173                              ; lods          %ds:(%rsi),%rax
4219  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
4220  DB  91                                  ; pop           %rbx
4221  DB  255,224                             ; jmpq          *%rax
4222
4223PUBLIC _sk_gauss_a_to_rgba_hsw
4224_sk_gauss_a_to_rgba_hsw LABEL PROC
4225  DB  196,226,125,24,5,95,10,0,0          ; vbroadcastss  0xa5f(%rip),%ymm0        # 508c <_sk_callback_hsw+0x464>
4226  DB  196,226,125,24,13,90,10,0,0         ; vbroadcastss  0xa5a(%rip),%ymm1        # 5090 <_sk_callback_hsw+0x468>
4227  DB  196,226,101,168,200                 ; vfmadd213ps   %ymm0,%ymm3,%ymm1
4228  DB  196,226,125,24,5,80,10,0,0          ; vbroadcastss  0xa50(%rip),%ymm0        # 5094 <_sk_callback_hsw+0x46c>
4229  DB  196,226,101,184,193                 ; vfmadd231ps   %ymm1,%ymm3,%ymm0
4230  DB  196,226,125,24,13,70,10,0,0         ; vbroadcastss  0xa46(%rip),%ymm1        # 5098 <_sk_callback_hsw+0x470>
4231  DB  196,226,101,184,200                 ; vfmadd231ps   %ymm0,%ymm3,%ymm1
4232  DB  196,226,125,24,5,60,10,0,0          ; vbroadcastss  0xa3c(%rip),%ymm0        # 509c <_sk_callback_hsw+0x474>
4233  DB  196,226,101,184,193                 ; vfmadd231ps   %ymm1,%ymm3,%ymm0
4234  DB  72,173                              ; lods          %ds:(%rsi),%rax
4235  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
4236  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
4237  DB  197,252,40,216                      ; vmovaps       %ymm0,%ymm3
4238  DB  255,224                             ; jmpq          *%rax
4239
4240PUBLIC _sk_gradient_hsw
4241_sk_gradient_hsw LABEL PROC
4242  DB  72,173                              ; lods          %ds:(%rsi),%rax
4243  DB  76,139,8                            ; mov           (%rax),%r9
4244  DB  73,131,249,1                        ; cmp           $0x1,%r9
4245  DB  15,134,180,0,0,0                    ; jbe           4738 <_sk_gradient_hsw+0xc3>
4246  DB  76,139,80,72                        ; mov           0x48(%rax),%r10
4247  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
4248  DB  65,187,1,0,0,0                      ; mov           $0x1,%r11d
4249  DB  196,226,125,24,21,5,10,0,0          ; vbroadcastss  0xa05(%rip),%ymm2        # 50a0 <_sk_callback_hsw+0x478>
4250  DB  196,65,53,239,201                   ; vpxor         %ymm9,%ymm9,%ymm9
4251  DB  196,130,125,24,28,154               ; vbroadcastss  (%r10,%r11,4),%ymm3
4252  DB  197,228,194,216,2                   ; vcmpleps      %ymm0,%ymm3,%ymm3
4253  DB  196,227,117,74,218,48               ; vblendvps     %ymm3,%ymm2,%ymm1,%ymm3
4254  DB  196,65,101,254,201                  ; vpaddd        %ymm9,%ymm3,%ymm9
4255  DB  73,255,195                          ; inc           %r11
4256  DB  77,57,217                           ; cmp           %r11,%r9
4257  DB  117,226                             ; jne           46a0 <_sk_gradient_hsw+0x2b>
4258  DB  76,139,80,8                         ; mov           0x8(%rax),%r10
4259  DB  73,131,249,8                        ; cmp           $0x8,%r9
4260  DB  118,121                             ; jbe           4741 <_sk_gradient_hsw+0xcc>
4261  DB  196,65,13,118,246                   ; vpcmpeqd      %ymm14,%ymm14,%ymm14
4262  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
4263  DB  196,2,117,146,4,138                 ; vgatherdps    %ymm1,(%r10,%ymm9,4),%ymm8
4264  DB  76,139,72,40                        ; mov           0x28(%rax),%r9
4265  DB  197,245,118,201                     ; vpcmpeqd      %ymm1,%ymm1,%ymm1
4266  DB  196,2,117,146,20,137                ; vgatherdps    %ymm1,(%r9,%ymm9,4),%ymm10
4267  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
4268  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
4269  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
4270  DB  196,130,109,146,12,137              ; vgatherdps    %ymm2,(%r9,%ymm9,4),%ymm1
4271  DB  76,139,72,48                        ; mov           0x30(%rax),%r9
4272  DB  197,237,118,210                     ; vpcmpeqd      %ymm2,%ymm2,%ymm2
4273  DB  196,2,109,146,28,137                ; vgatherdps    %ymm2,(%r9,%ymm9,4),%ymm11
4274  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
4275  DB  196,130,101,146,20,138              ; vgatherdps    %ymm3,(%r10,%ymm9,4),%ymm2
4276  DB  76,139,72,56                        ; mov           0x38(%rax),%r9
4277  DB  197,229,118,219                     ; vpcmpeqd      %ymm3,%ymm3,%ymm3
4278  DB  196,2,101,146,36,137                ; vgatherdps    %ymm3,(%r9,%ymm9,4),%ymm12
4279  DB  76,139,72,32                        ; mov           0x20(%rax),%r9
4280  DB  196,65,21,118,237                   ; vpcmpeqd      %ymm13,%ymm13,%ymm13
4281  DB  196,130,21,146,28,137               ; vgatherdps    %ymm13,(%r9,%ymm9,4),%ymm3
4282  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
4283  DB  196,34,13,146,44,136                ; vgatherdps    %ymm14,(%rax,%ymm9,4),%ymm13
4284  DB  235,77                              ; jmp           4785 <_sk_gradient_hsw+0x110>
4285  DB  76,139,80,8                         ; mov           0x8(%rax),%r10
4286  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
4287  DB  196,66,53,22,2                      ; vpermps       (%r10),%ymm9,%ymm8
4288  DB  76,139,72,40                        ; mov           0x28(%rax),%r9
4289  DB  196,66,53,22,17                     ; vpermps       (%r9),%ymm9,%ymm10
4290  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
4291  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
4292  DB  196,194,53,22,9                     ; vpermps       (%r9),%ymm9,%ymm1
4293  DB  76,139,72,48                        ; mov           0x30(%rax),%r9
4294  DB  196,66,53,22,25                     ; vpermps       (%r9),%ymm9,%ymm11
4295  DB  196,194,53,22,18                    ; vpermps       (%r10),%ymm9,%ymm2
4296  DB  76,139,72,56                        ; mov           0x38(%rax),%r9
4297  DB  196,66,53,22,33                     ; vpermps       (%r9),%ymm9,%ymm12
4298  DB  76,139,72,32                        ; mov           0x20(%rax),%r9
4299  DB  196,194,53,22,25                    ; vpermps       (%r9),%ymm9,%ymm3
4300  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
4301  DB  196,98,53,22,40                     ; vpermps       (%rax),%ymm9,%ymm13
4302  DB  196,66,125,168,194                  ; vfmadd213ps   %ymm10,%ymm0,%ymm8
4303  DB  196,194,125,168,203                 ; vfmadd213ps   %ymm11,%ymm0,%ymm1
4304  DB  196,194,125,168,212                 ; vfmadd213ps   %ymm12,%ymm0,%ymm2
4305  DB  196,194,125,168,221                 ; vfmadd213ps   %ymm13,%ymm0,%ymm3
4306  DB  72,173                              ; lods          %ds:(%rsi),%rax
4307  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
4308  DB  255,224                             ; jmpq          *%rax
4309
4310PUBLIC _sk_evenly_spaced_2_stop_gradient_hsw
4311_sk_evenly_spaced_2_stop_gradient_hsw LABEL PROC
4312  DB  72,173                              ; lods          %ds:(%rsi),%rax
4313  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
4314  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
4315  DB  196,98,125,184,193                  ; vfmadd231ps   %ymm1,%ymm0,%ymm8
4316  DB  196,226,125,24,80,4                 ; vbroadcastss  0x4(%rax),%ymm2
4317  DB  196,226,125,24,72,20                ; vbroadcastss  0x14(%rax),%ymm1
4318  DB  196,226,125,184,202                 ; vfmadd231ps   %ymm2,%ymm0,%ymm1
4319  DB  196,226,125,24,88,8                 ; vbroadcastss  0x8(%rax),%ymm3
4320  DB  196,226,125,24,80,24                ; vbroadcastss  0x18(%rax),%ymm2
4321  DB  196,226,125,184,211                 ; vfmadd231ps   %ymm3,%ymm0,%ymm2
4322  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
4323  DB  196,226,125,24,88,28                ; vbroadcastss  0x1c(%rax),%ymm3
4324  DB  196,194,125,184,217                 ; vfmadd231ps   %ymm9,%ymm0,%ymm3
4325  DB  72,173                              ; lods          %ds:(%rsi),%rax
4326  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
4327  DB  255,224                             ; jmpq          *%rax
4328
4329PUBLIC _sk_xy_to_unit_angle_hsw
4330_sk_xy_to_unit_angle_hsw LABEL PROC
4331  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
4332  DB  197,60,92,200                       ; vsubps        %ymm0,%ymm8,%ymm9
4333  DB  197,52,84,200                       ; vandps        %ymm0,%ymm9,%ymm9
4334  DB  197,60,92,209                       ; vsubps        %ymm1,%ymm8,%ymm10
4335  DB  197,44,84,209                       ; vandps        %ymm1,%ymm10,%ymm10
4336  DB  196,65,52,93,218                    ; vminps        %ymm10,%ymm9,%ymm11
4337  DB  196,65,52,95,226                    ; vmaxps        %ymm10,%ymm9,%ymm12
4338  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
4339  DB  196,65,36,89,227                    ; vmulps        %ymm11,%ymm11,%ymm12
4340  DB  196,98,125,24,45,132,8,0,0          ; vbroadcastss  0x884(%rip),%ymm13        # 50a4 <_sk_callback_hsw+0x47c>
4341  DB  196,98,125,24,53,127,8,0,0          ; vbroadcastss  0x87f(%rip),%ymm14        # 50a8 <_sk_callback_hsw+0x480>
4342  DB  196,66,29,184,245                   ; vfmadd231ps   %ymm13,%ymm12,%ymm14
4343  DB  196,98,125,24,45,117,8,0,0          ; vbroadcastss  0x875(%rip),%ymm13        # 50ac <_sk_callback_hsw+0x484>
4344  DB  196,66,29,184,238                   ; vfmadd231ps   %ymm14,%ymm12,%ymm13
4345  DB  196,98,125,24,53,107,8,0,0          ; vbroadcastss  0x86b(%rip),%ymm14        # 50b0 <_sk_callback_hsw+0x488>
4346  DB  196,66,29,184,245                   ; vfmadd231ps   %ymm13,%ymm12,%ymm14
4347  DB  196,65,36,89,222                    ; vmulps        %ymm14,%ymm11,%ymm11
4348  DB  196,65,52,194,202,1                 ; vcmpltps      %ymm10,%ymm9,%ymm9
4349  DB  196,98,125,24,21,86,8,0,0           ; vbroadcastss  0x856(%rip),%ymm10        # 50b4 <_sk_callback_hsw+0x48c>
4350  DB  196,65,44,92,211                    ; vsubps        %ymm11,%ymm10,%ymm10
4351  DB  196,67,37,74,202,144                ; vblendvps     %ymm9,%ymm10,%ymm11,%ymm9
4352  DB  196,193,124,194,192,1               ; vcmpltps      %ymm8,%ymm0,%ymm0
4353  DB  196,98,125,24,21,64,8,0,0           ; vbroadcastss  0x840(%rip),%ymm10        # 50b8 <_sk_callback_hsw+0x490>
4354  DB  196,65,44,92,209                    ; vsubps        %ymm9,%ymm10,%ymm10
4355  DB  196,195,53,74,194,0                 ; vblendvps     %ymm0,%ymm10,%ymm9,%ymm0
4356  DB  196,65,116,194,200,1                ; vcmpltps      %ymm8,%ymm1,%ymm9
4357  DB  196,98,125,24,21,42,8,0,0           ; vbroadcastss  0x82a(%rip),%ymm10        # 50bc <_sk_callback_hsw+0x494>
4358  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
4359  DB  196,195,125,74,194,144              ; vblendvps     %ymm9,%ymm10,%ymm0,%ymm0
4360  DB  196,65,124,194,200,3                ; vcmpunordps   %ymm8,%ymm0,%ymm9
4361  DB  196,195,125,74,192,144              ; vblendvps     %ymm9,%ymm8,%ymm0,%ymm0
4362  DB  72,173                              ; lods          %ds:(%rsi),%rax
4363  DB  255,224                             ; jmpq          *%rax
4364
4365PUBLIC _sk_xy_to_radius_hsw
4366_sk_xy_to_radius_hsw LABEL PROC
4367  DB  197,116,89,193                      ; vmulps        %ymm1,%ymm1,%ymm8
4368  DB  196,98,125,184,192                  ; vfmadd231ps   %ymm0,%ymm0,%ymm8
4369  DB  196,193,124,81,192                  ; vsqrtps       %ymm8,%ymm0
4370  DB  72,173                              ; lods          %ds:(%rsi),%rax
4371  DB  255,224                             ; jmpq          *%rax
4372
4373PUBLIC _sk_save_xy_hsw
4374_sk_save_xy_hsw LABEL PROC
4375  DB  72,173                              ; lods          %ds:(%rsi),%rax
4376  DB  196,98,125,24,5,247,7,0,0           ; vbroadcastss  0x7f7(%rip),%ymm8        # 50c0 <_sk_callback_hsw+0x498>
4377  DB  196,65,124,88,200                   ; vaddps        %ymm8,%ymm0,%ymm9
4378  DB  196,67,125,8,209,1                  ; vroundps      $0x1,%ymm9,%ymm10
4379  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
4380  DB  196,65,116,88,192                   ; vaddps        %ymm8,%ymm1,%ymm8
4381  DB  196,67,125,8,208,1                  ; vroundps      $0x1,%ymm8,%ymm10
4382  DB  196,65,60,92,194                    ; vsubps        %ymm10,%ymm8,%ymm8
4383  DB  197,252,17,0                        ; vmovups       %ymm0,(%rax)
4384  DB  197,252,17,72,32                    ; vmovups       %ymm1,0x20(%rax)
4385  DB  197,124,17,72,64                    ; vmovups       %ymm9,0x40(%rax)
4386  DB  197,124,17,64,96                    ; vmovups       %ymm8,0x60(%rax)
4387  DB  72,173                              ; lods          %ds:(%rsi),%rax
4388  DB  255,224                             ; jmpq          *%rax
4389
4390PUBLIC _sk_accumulate_hsw
4391_sk_accumulate_hsw LABEL PROC
4392  DB  72,173                              ; lods          %ds:(%rsi),%rax
4393  DB  197,124,16,128,128,0,0,0            ; vmovups       0x80(%rax),%ymm8
4394  DB  197,60,89,128,160,0,0,0             ; vmulps        0xa0(%rax),%ymm8,%ymm8
4395  DB  196,226,61,184,224                  ; vfmadd231ps   %ymm0,%ymm8,%ymm4
4396  DB  196,226,61,184,233                  ; vfmadd231ps   %ymm1,%ymm8,%ymm5
4397  DB  196,226,61,184,242                  ; vfmadd231ps   %ymm2,%ymm8,%ymm6
4398  DB  196,98,101,168,199                  ; vfmadd213ps   %ymm7,%ymm3,%ymm8
4399  DB  72,173                              ; lods          %ds:(%rsi),%rax
4400  DB  197,124,41,199                      ; vmovaps       %ymm8,%ymm7
4401  DB  255,224                             ; jmpq          *%rax
4402
4403PUBLIC _sk_bilinear_nx_hsw
4404_sk_bilinear_nx_hsw LABEL PROC
4405  DB  72,173                              ; lods          %ds:(%rsi),%rax
4406  DB  196,226,125,24,5,139,7,0,0          ; vbroadcastss  0x78b(%rip),%ymm0        # 50c4 <_sk_callback_hsw+0x49c>
4407  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
4408  DB  196,98,125,24,5,130,7,0,0           ; vbroadcastss  0x782(%rip),%ymm8        # 50c8 <_sk_callback_hsw+0x4a0>
4409  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
4410  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
4411  DB  72,173                              ; lods          %ds:(%rsi),%rax
4412  DB  255,224                             ; jmpq          *%rax
4413
4414PUBLIC _sk_bilinear_px_hsw
4415_sk_bilinear_px_hsw LABEL PROC
4416  DB  72,173                              ; lods          %ds:(%rsi),%rax
4417  DB  196,226,125,24,5,106,7,0,0          ; vbroadcastss  0x76a(%rip),%ymm0        # 50cc <_sk_callback_hsw+0x4a4>
4418  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
4419  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
4420  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
4421  DB  72,173                              ; lods          %ds:(%rsi),%rax
4422  DB  255,224                             ; jmpq          *%rax
4423
4424PUBLIC _sk_bilinear_ny_hsw
4425_sk_bilinear_ny_hsw LABEL PROC
4426  DB  72,173                              ; lods          %ds:(%rsi),%rax
4427  DB  196,226,125,24,13,78,7,0,0          ; vbroadcastss  0x74e(%rip),%ymm1        # 50d0 <_sk_callback_hsw+0x4a8>
4428  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
4429  DB  196,98,125,24,5,68,7,0,0            ; vbroadcastss  0x744(%rip),%ymm8        # 50d4 <_sk_callback_hsw+0x4ac>
4430  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
4431  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
4432  DB  72,173                              ; lods          %ds:(%rsi),%rax
4433  DB  255,224                             ; jmpq          *%rax
4434
4435PUBLIC _sk_bilinear_py_hsw
4436_sk_bilinear_py_hsw LABEL PROC
4437  DB  72,173                              ; lods          %ds:(%rsi),%rax
4438  DB  196,226,125,24,13,44,7,0,0          ; vbroadcastss  0x72c(%rip),%ymm1        # 50d8 <_sk_callback_hsw+0x4b0>
4439  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
4440  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
4441  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
4442  DB  72,173                              ; lods          %ds:(%rsi),%rax
4443  DB  255,224                             ; jmpq          *%rax
4444
4445PUBLIC _sk_bicubic_n3x_hsw
4446_sk_bicubic_n3x_hsw LABEL PROC
4447  DB  72,173                              ; lods          %ds:(%rsi),%rax
4448  DB  196,226,125,24,5,15,7,0,0           ; vbroadcastss  0x70f(%rip),%ymm0        # 50dc <_sk_callback_hsw+0x4b4>
4449  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
4450  DB  196,98,125,24,5,6,7,0,0             ; vbroadcastss  0x706(%rip),%ymm8        # 50e0 <_sk_callback_hsw+0x4b8>
4451  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
4452  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
4453  DB  196,98,125,24,21,247,6,0,0          ; vbroadcastss  0x6f7(%rip),%ymm10        # 50e4 <_sk_callback_hsw+0x4bc>
4454  DB  196,98,125,24,29,242,6,0,0          ; vbroadcastss  0x6f2(%rip),%ymm11        # 50e8 <_sk_callback_hsw+0x4c0>
4455  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
4456  DB  196,65,36,89,193                    ; vmulps        %ymm9,%ymm11,%ymm8
4457  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
4458  DB  72,173                              ; lods          %ds:(%rsi),%rax
4459  DB  255,224                             ; jmpq          *%rax
4460
4461PUBLIC _sk_bicubic_n1x_hsw
4462_sk_bicubic_n1x_hsw LABEL PROC
4463  DB  72,173                              ; lods          %ds:(%rsi),%rax
4464  DB  196,226,125,24,5,213,6,0,0          ; vbroadcastss  0x6d5(%rip),%ymm0        # 50ec <_sk_callback_hsw+0x4c4>
4465  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
4466  DB  196,98,125,24,5,204,6,0,0           ; vbroadcastss  0x6cc(%rip),%ymm8        # 50f0 <_sk_callback_hsw+0x4c8>
4467  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
4468  DB  196,98,125,24,13,194,6,0,0          ; vbroadcastss  0x6c2(%rip),%ymm9        # 50f4 <_sk_callback_hsw+0x4cc>
4469  DB  196,98,125,24,21,189,6,0,0          ; vbroadcastss  0x6bd(%rip),%ymm10        # 50f8 <_sk_callback_hsw+0x4d0>
4470  DB  196,66,61,168,209                   ; vfmadd213ps   %ymm9,%ymm8,%ymm10
4471  DB  196,98,125,24,13,179,6,0,0          ; vbroadcastss  0x6b3(%rip),%ymm9        # 50fc <_sk_callback_hsw+0x4d4>
4472  DB  196,66,61,184,202                   ; vfmadd231ps   %ymm10,%ymm8,%ymm9
4473  DB  196,98,125,24,21,169,6,0,0          ; vbroadcastss  0x6a9(%rip),%ymm10        # 5100 <_sk_callback_hsw+0x4d8>
4474  DB  196,66,61,184,209                   ; vfmadd231ps   %ymm9,%ymm8,%ymm10
4475  DB  197,124,17,144,128,0,0,0            ; vmovups       %ymm10,0x80(%rax)
4476  DB  72,173                              ; lods          %ds:(%rsi),%rax
4477  DB  255,224                             ; jmpq          *%rax
4478
4479PUBLIC _sk_bicubic_p1x_hsw
4480_sk_bicubic_p1x_hsw LABEL PROC
4481  DB  72,173                              ; lods          %ds:(%rsi),%rax
4482  DB  196,98,125,24,5,145,6,0,0           ; vbroadcastss  0x691(%rip),%ymm8        # 5104 <_sk_callback_hsw+0x4dc>
4483  DB  197,188,88,0                        ; vaddps        (%rax),%ymm8,%ymm0
4484  DB  197,124,16,72,64                    ; vmovups       0x40(%rax),%ymm9
4485  DB  196,98,125,24,21,131,6,0,0          ; vbroadcastss  0x683(%rip),%ymm10        # 5108 <_sk_callback_hsw+0x4e0>
4486  DB  196,98,125,24,29,126,6,0,0          ; vbroadcastss  0x67e(%rip),%ymm11        # 510c <_sk_callback_hsw+0x4e4>
4487  DB  196,66,53,168,218                   ; vfmadd213ps   %ymm10,%ymm9,%ymm11
4488  DB  196,66,53,168,216                   ; vfmadd213ps   %ymm8,%ymm9,%ymm11
4489  DB  196,98,125,24,5,111,6,0,0           ; vbroadcastss  0x66f(%rip),%ymm8        # 5110 <_sk_callback_hsw+0x4e8>
4490  DB  196,66,53,184,195                   ; vfmadd231ps   %ymm11,%ymm9,%ymm8
4491  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
4492  DB  72,173                              ; lods          %ds:(%rsi),%rax
4493  DB  255,224                             ; jmpq          *%rax
4494
4495PUBLIC _sk_bicubic_p3x_hsw
4496_sk_bicubic_p3x_hsw LABEL PROC
4497  DB  72,173                              ; lods          %ds:(%rsi),%rax
4498  DB  196,226,125,24,5,87,6,0,0           ; vbroadcastss  0x657(%rip),%ymm0        # 5114 <_sk_callback_hsw+0x4ec>
4499  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
4500  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
4501  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
4502  DB  196,98,125,24,21,68,6,0,0           ; vbroadcastss  0x644(%rip),%ymm10        # 5118 <_sk_callback_hsw+0x4f0>
4503  DB  196,98,125,24,29,63,6,0,0           ; vbroadcastss  0x63f(%rip),%ymm11        # 511c <_sk_callback_hsw+0x4f4>
4504  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
4505  DB  196,65,52,89,195                    ; vmulps        %ymm11,%ymm9,%ymm8
4506  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
4507  DB  72,173                              ; lods          %ds:(%rsi),%rax
4508  DB  255,224                             ; jmpq          *%rax
4509
4510PUBLIC _sk_bicubic_n3y_hsw
4511_sk_bicubic_n3y_hsw LABEL PROC
4512  DB  72,173                              ; lods          %ds:(%rsi),%rax
4513  DB  196,226,125,24,13,34,6,0,0          ; vbroadcastss  0x622(%rip),%ymm1        # 5120 <_sk_callback_hsw+0x4f8>
4514  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
4515  DB  196,98,125,24,5,24,6,0,0            ; vbroadcastss  0x618(%rip),%ymm8        # 5124 <_sk_callback_hsw+0x4fc>
4516  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
4517  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
4518  DB  196,98,125,24,21,9,6,0,0            ; vbroadcastss  0x609(%rip),%ymm10        # 5128 <_sk_callback_hsw+0x500>
4519  DB  196,98,125,24,29,4,6,0,0            ; vbroadcastss  0x604(%rip),%ymm11        # 512c <_sk_callback_hsw+0x504>
4520  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
4521  DB  196,65,36,89,193                    ; vmulps        %ymm9,%ymm11,%ymm8
4522  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
4523  DB  72,173                              ; lods          %ds:(%rsi),%rax
4524  DB  255,224                             ; jmpq          *%rax
4525
4526PUBLIC _sk_bicubic_n1y_hsw
4527_sk_bicubic_n1y_hsw LABEL PROC
4528  DB  72,173                              ; lods          %ds:(%rsi),%rax
4529  DB  196,226,125,24,13,231,5,0,0         ; vbroadcastss  0x5e7(%rip),%ymm1        # 5130 <_sk_callback_hsw+0x508>
4530  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
4531  DB  196,98,125,24,5,221,5,0,0           ; vbroadcastss  0x5dd(%rip),%ymm8        # 5134 <_sk_callback_hsw+0x50c>
4532  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
4533  DB  196,98,125,24,13,211,5,0,0          ; vbroadcastss  0x5d3(%rip),%ymm9        # 5138 <_sk_callback_hsw+0x510>
4534  DB  196,98,125,24,21,206,5,0,0          ; vbroadcastss  0x5ce(%rip),%ymm10        # 513c <_sk_callback_hsw+0x514>
4535  DB  196,66,61,168,209                   ; vfmadd213ps   %ymm9,%ymm8,%ymm10
4536  DB  196,98,125,24,13,196,5,0,0          ; vbroadcastss  0x5c4(%rip),%ymm9        # 5140 <_sk_callback_hsw+0x518>
4537  DB  196,66,61,184,202                   ; vfmadd231ps   %ymm10,%ymm8,%ymm9
4538  DB  196,98,125,24,21,186,5,0,0          ; vbroadcastss  0x5ba(%rip),%ymm10        # 5144 <_sk_callback_hsw+0x51c>
4539  DB  196,66,61,184,209                   ; vfmadd231ps   %ymm9,%ymm8,%ymm10
4540  DB  197,124,17,144,160,0,0,0            ; vmovups       %ymm10,0xa0(%rax)
4541  DB  72,173                              ; lods          %ds:(%rsi),%rax
4542  DB  255,224                             ; jmpq          *%rax
4543
4544PUBLIC _sk_bicubic_p1y_hsw
4545_sk_bicubic_p1y_hsw LABEL PROC
4546  DB  72,173                              ; lods          %ds:(%rsi),%rax
4547  DB  196,98,125,24,5,162,5,0,0           ; vbroadcastss  0x5a2(%rip),%ymm8        # 5148 <_sk_callback_hsw+0x520>
4548  DB  197,188,88,72,32                    ; vaddps        0x20(%rax),%ymm8,%ymm1
4549  DB  197,124,16,72,96                    ; vmovups       0x60(%rax),%ymm9
4550  DB  196,98,125,24,21,147,5,0,0          ; vbroadcastss  0x593(%rip),%ymm10        # 514c <_sk_callback_hsw+0x524>
4551  DB  196,98,125,24,29,142,5,0,0          ; vbroadcastss  0x58e(%rip),%ymm11        # 5150 <_sk_callback_hsw+0x528>
4552  DB  196,66,53,168,218                   ; vfmadd213ps   %ymm10,%ymm9,%ymm11
4553  DB  196,66,53,168,216                   ; vfmadd213ps   %ymm8,%ymm9,%ymm11
4554  DB  196,98,125,24,5,127,5,0,0           ; vbroadcastss  0x57f(%rip),%ymm8        # 5154 <_sk_callback_hsw+0x52c>
4555  DB  196,66,53,184,195                   ; vfmadd231ps   %ymm11,%ymm9,%ymm8
4556  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
4557  DB  72,173                              ; lods          %ds:(%rsi),%rax
4558  DB  255,224                             ; jmpq          *%rax
4559
4560PUBLIC _sk_bicubic_p3y_hsw
4561_sk_bicubic_p3y_hsw LABEL PROC
4562  DB  72,173                              ; lods          %ds:(%rsi),%rax
4563  DB  196,226,125,24,13,103,5,0,0         ; vbroadcastss  0x567(%rip),%ymm1        # 5158 <_sk_callback_hsw+0x530>
4564  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
4565  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
4566  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
4567  DB  196,98,125,24,21,83,5,0,0           ; vbroadcastss  0x553(%rip),%ymm10        # 515c <_sk_callback_hsw+0x534>
4568  DB  196,98,125,24,29,78,5,0,0           ; vbroadcastss  0x54e(%rip),%ymm11        # 5160 <_sk_callback_hsw+0x538>
4569  DB  196,66,61,168,218                   ; vfmadd213ps   %ymm10,%ymm8,%ymm11
4570  DB  196,65,52,89,195                    ; vmulps        %ymm11,%ymm9,%ymm8
4571  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
4572  DB  72,173                              ; lods          %ds:(%rsi),%rax
4573  DB  255,224                             ; jmpq          *%rax
4574
4575PUBLIC _sk_callback_hsw
4576_sk_callback_hsw LABEL PROC
4577  DB  85                                  ; push          %rbp
4578  DB  72,137,229                          ; mov           %rsp,%rbp
4579  DB  65,87                               ; push          %r15
4580  DB  65,86                               ; push          %r14
4581  DB  65,84                               ; push          %r12
4582  DB  83                                  ; push          %rbx
4583  DB  72,131,228,224                      ; and           $0xffffffffffffffe0,%rsp
4584  DB  72,129,236,192,0,0,0                ; sub           $0xc0,%rsp
4585  DB  197,252,41,188,36,128,0,0,0         ; vmovaps       %ymm7,0x80(%rsp)
4586  DB  197,252,41,116,36,96                ; vmovaps       %ymm6,0x60(%rsp)
4587  DB  197,252,41,108,36,64                ; vmovaps       %ymm5,0x40(%rsp)
4588  DB  197,252,41,100,36,32                ; vmovaps       %ymm4,0x20(%rsp)
4589  DB  77,137,196                          ; mov           %r8,%r12
4590  DB  73,137,206                          ; mov           %rcx,%r14
4591  DB  73,137,215                          ; mov           %rdx,%r15
4592  DB  72,173                              ; lods          %ds:(%rsi),%rax
4593  DB  72,137,195                          ; mov           %rax,%rbx
4594  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
4595  DB  197,252,21,193                      ; vunpckhps     %ymm1,%ymm0,%ymm0
4596  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
4597  DB  197,236,21,211                      ; vunpckhps     %ymm3,%ymm2,%ymm2
4598  DB  197,221,20,217                      ; vunpcklpd     %ymm1,%ymm4,%ymm3
4599  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
4600  DB  197,253,20,226                      ; vunpcklpd     %ymm2,%ymm0,%ymm4
4601  DB  197,253,21,194                      ; vunpckhpd     %ymm2,%ymm0,%ymm0
4602  DB  196,227,101,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm2
4603  DB  196,227,93,24,232,1                 ; vinsertf128   $0x1,%xmm0,%ymm4,%ymm5
4604  DB  196,227,101,6,201,49                ; vperm2f128    $0x31,%ymm1,%ymm3,%ymm1
4605  DB  196,227,93,6,192,49                 ; vperm2f128    $0x31,%ymm0,%ymm4,%ymm0
4606  DB  197,253,17,83,8                     ; vmovupd       %ymm2,0x8(%rbx)
4607  DB  197,253,17,107,40                   ; vmovupd       %ymm5,0x28(%rbx)
4608  DB  197,253,17,75,72                    ; vmovupd       %ymm1,0x48(%rbx)
4609  DB  197,253,17,67,104                   ; vmovupd       %ymm0,0x68(%rbx)
4610  DB  77,133,228                          ; test          %r12,%r12
4611  DB  186,8,0,0,0                         ; mov           $0x8,%edx
4612  DB  65,15,69,212                        ; cmovne        %r12d,%edx
4613  DB  72,137,217                          ; mov           %rbx,%rcx
4614  DB  197,248,119                         ; vzeroupper
4615  DB  255,19                              ; callq         *(%rbx)
4616  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
4617  DB  197,248,16,0                        ; vmovups       (%rax),%xmm0
4618  DB  197,248,16,72,16                    ; vmovups       0x10(%rax),%xmm1
4619  DB  197,248,16,80,32                    ; vmovups       0x20(%rax),%xmm2
4620  DB  197,248,16,88,48                    ; vmovups       0x30(%rax),%xmm3
4621  DB  196,227,101,24,88,112,1             ; vinsertf128   $0x1,0x70(%rax),%ymm3,%ymm3
4622  DB  196,227,109,24,80,96,1              ; vinsertf128   $0x1,0x60(%rax),%ymm2,%ymm2
4623  DB  196,227,117,24,72,80,1              ; vinsertf128   $0x1,0x50(%rax),%ymm1,%ymm1
4624  DB  196,227,125,24,64,64,1              ; vinsertf128   $0x1,0x40(%rax),%ymm0,%ymm0
4625  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
4626  DB  197,252,21,233                      ; vunpckhps     %ymm1,%ymm0,%ymm5
4627  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
4628  DB  197,236,21,219                      ; vunpckhps     %ymm3,%ymm2,%ymm3
4629  DB  197,221,20,193                      ; vunpcklpd     %ymm1,%ymm4,%ymm0
4630  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
4631  DB  197,213,20,211                      ; vunpcklpd     %ymm3,%ymm5,%ymm2
4632  DB  197,213,21,219                      ; vunpckhpd     %ymm3,%ymm5,%ymm3
4633  DB  72,173                              ; lods          %ds:(%rsi),%rax
4634  DB  76,137,250                          ; mov           %r15,%rdx
4635  DB  76,137,241                          ; mov           %r14,%rcx
4636  DB  77,137,224                          ; mov           %r12,%r8
4637  DB  197,252,40,100,36,32                ; vmovaps       0x20(%rsp),%ymm4
4638  DB  197,252,40,108,36,64                ; vmovaps       0x40(%rsp),%ymm5
4639  DB  197,252,40,116,36,96                ; vmovaps       0x60(%rsp),%ymm6
4640  DB  197,252,40,188,36,128,0,0,0         ; vmovaps       0x80(%rsp),%ymm7
4641  DB  72,141,101,224                      ; lea           -0x20(%rbp),%rsp
4642  DB  91                                  ; pop           %rbx
4643  DB  65,92                               ; pop           %r12
4644  DB  65,94                               ; pop           %r14
4645  DB  65,95                               ; pop           %r15
4646  DB  93                                  ; pop           %rbp
4647  DB  255,224                             ; jmpq          *%rax
4648
4649ALIGN 4
4650  DB  0,0                                 ; add           %al,(%rax)
4651  DB  0,63                                ; add           %bh,(%rdi)
4652  DB  0,0                                 ; add           %al,(%rax)
4653  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
4654  DB  0,0                                 ; add           %al,(%rax)
4655  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
4656  DB  0,0                                 ; add           %al,(%rax)
4657  DB  2,0                                 ; add           (%rax),%al
4658  DB  0,0                                 ; add           %al,(%rax)
4659  DB  0,0                                 ; add           %al,(%rax)
4660  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
4661  DB  252                                 ; cld
4662  DB  190,0,0,128,63                      ; mov           $0x3f800000,%esi
4663  DB  0,0                                 ; add           %al,(%rax)
4664  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4665  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4666  DB  63                                  ; (bad)
4667  DB  0,0                                 ; add           %al,(%rax)
4668  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4669  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4670  DB  63                                  ; (bad)
4671  DB  0,0                                 ; add           %al,(%rax)
4672  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4673  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4674  DB  63                                  ; (bad)
4675  DB  0,0                                 ; add           %al,(%rax)
4676  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4677  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4678  DB  63                                  ; (bad)
4679  DB  0,0                                 ; add           %al,(%rax)
4680  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4681  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4682  DB  63                                  ; (bad)
4683  DB  0,0                                 ; add           %al,(%rax)
4684  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4685  DB  0,128,191,0,0,224                   ; add           %al,-0x1fffff41(%rax)
4686  DB  64,154                              ; rex           (bad)
4687  DB  153                                 ; cltd
4688  DB  153                                 ; cltd
4689  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
4690  DB  71,225,61                           ; rex.RXB       loope 4e05 <.literal4+0xb1>
4691  DB  0,0                                 ; add           %al,(%rax)
4692  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
4693  DB  153                                 ; cltd
4694  DB  153                                 ; cltd
4695  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
4696  DB  71,225,61                           ; rex.RXB       loope 4e15 <.literal4+0xc1>
4697  DB  0,0                                 ; add           %al,(%rax)
4698  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
4699  DB  153                                 ; cltd
4700  DB  153                                 ; cltd
4701  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
4702  DB  71,225,61                           ; rex.RXB       loope 4e25 <.literal4+0xd1>
4703  DB  0,0                                 ; add           %al,(%rax)
4704  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
4705  DB  153                                 ; cltd
4706  DB  153                                 ; cltd
4707  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
4708  DB  71,225,61                           ; rex.RXB       loope 4e35 <.literal4+0xe1>
4709  DB  0,0                                 ; add           %al,(%rax)
4710  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4711  DB  0,128,63,0,0,127                    ; add           %al,0x7f00003f(%rax)
4712  DB  67,0,0                              ; rex.XB        add %al,(%r8)
4713  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4714  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
4715  DB  63                                  ; (bad)
4716  DB  145                                 ; xchg          %eax,%ecx
4717  DB  131,158,61,92,143,50,63             ; sbbl          $0x3f,0x328f5c3d(%rsi)
4718  DB  154                                 ; (bad)
4719  DB  153                                 ; cltd
4720  DB  153                                 ; cltd
4721  DB  62,10,215                           ; ds            or  %bh,%dl
4722  DB  35,59                               ; and           (%rbx),%edi
4723  DB  174                                 ; scas          %es:(%rdi),%al
4724  DB  71,97                               ; rex.RXB       (bad)
4725  DB  61,82,184,78,65                     ; cmp           $0x414eb852,%eax
4726  DB  186,159,98,60,57                    ; mov           $0x393c629f,%edx
4727  DB  215                                 ; xlat          %ds:(%rbx)
4728  DB  32,187,109,165,144,63               ; and           %bh,0x3f90a56d(%rbx)
4729  DB  252                                 ; cld
4730  DB  191,16,62,168,177                   ; mov           $0xb1a83e10,%edi
4731  DB  152                                 ; cwtl
4732  DB  59,0                                ; cmp           (%rax),%eax
4733  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
4734  DB  64,0,0                              ; add           %al,(%rax)
4735  DB  0,64,0                              ; add           %al,0x0(%rax)
4736  DB  0,128,64,171,170,42                 ; add           %al,0x2aaaab40(%rax)
4737  DB  62,0,0                              ; add           %al,%ds:(%rax)
4738  DB  0,63                                ; add           %bh,(%rdi)
4739  DB  0,0                                 ; add           %al,(%rax)
4740  DB  0,63                                ; add           %bh,(%rdi)
4741  DB  0,0                                 ; add           %al,(%rax)
4742  DB  0,64,171                            ; add           %al,-0x55(%rax)
4743  DB  170                                 ; stos          %al,%es:(%rdi)
4744  DB  170                                 ; stos          %al,%es:(%rdi)
4745  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
4746  DB  170                                 ; stos          %al,%es:(%rdi)
4747  DB  42,63                               ; sub           (%rdi),%bh
4748  DB  0,0                                 ; add           %al,(%rax)
4749  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
4750  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
4751  DB  42,62                               ; sub           (%rsi),%bh
4752  DB  171                                 ; stos          %eax,%es:(%rdi)
4753  DB  170                                 ; stos          %al,%es:(%rdi)
4754  DB  170                                 ; stos          %al,%es:(%rdi)
4755  DB  190,129,128,128,59                  ; mov           $0x3b808081,%esi
4756  DB  129,128,128,59,0,248,0,0,8,33       ; addl          $0x21080000,-0x7ffc480(%rax)
4757  DB  132,55                              ; test          %dh,(%rdi)
4758  DB  224,7                               ; loopne        4e8d <.literal4+0x139>
4759  DB  0,0                                 ; add           %al,(%rax)
4760  DB  33,8                                ; and           %ecx,(%rax)
4761  DB  2,58                                ; add           (%rdx),%bh
4762  DB  31                                  ; (bad)
4763  DB  0,0                                 ; add           %al,(%rax)
4764  DB  0,8                                 ; add           %cl,(%rax)
4765  DB  33,4,61,129,128,128,59              ; and           %eax,0x3b808081(,%rdi,1)
4766  DB  128,0,128                           ; addb          $0x80,(%rax)
4767  DB  55                                  ; (bad)
4768  DB  0,0                                 ; add           %al,(%rax)
4769  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4770  DB  0,127,67                            ; add           %bh,0x43(%rdi)
4771  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
4772  DB  0,52,255                            ; add           %dh,(%rdi,%rdi,8)
4773  DB  255                                 ; (bad)
4774  DB  127,0                               ; jg            4eb4 <.literal4+0x160>
4775  DB  0,0                                 ; add           %al,(%rax)
4776  DB  0,63                                ; add           %bh,(%rdi)
4777  DB  119,115                             ; ja            4f2d <.literal4+0x1d9>
4778  DB  248                                 ; clc
4779  DB  194,117,191                         ; retq          $0xbf75
4780  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
4781  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
4782  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
4783  DB  154                                 ; (bad)
4784  DB  64,254                              ; rex           (bad)
4785  DB  210,221                             ; rcr           %cl,%ch
4786  DB  65,0,0                              ; add           %al,(%r8)
4787  DB  0,75,0                              ; add           %cl,0x0(%rbx)
4788  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
4789  DB  52,255                              ; xor           $0xff,%al
4790  DB  255                                 ; (bad)
4791  DB  127,0                               ; jg            4ee8 <.literal4+0x194>
4792  DB  0,0                                 ; add           %al,(%rax)
4793  DB  0,63                                ; add           %bh,(%rdi)
4794  DB  119,115                             ; ja            4f61 <.literal4+0x20d>
4795  DB  248                                 ; clc
4796  DB  194,117,191                         ; retq          $0xbf75
4797  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
4798  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
4799  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
4800  DB  154                                 ; (bad)
4801  DB  64,254                              ; rex           (bad)
4802  DB  210,221                             ; rcr           %cl,%ch
4803  DB  65,0,0                              ; add           %al,(%r8)
4804  DB  0,75,0                              ; add           %cl,0x0(%rbx)
4805  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
4806  DB  52,255                              ; xor           $0xff,%al
4807  DB  255                                 ; (bad)
4808  DB  127,0                               ; jg            4f1c <.literal4+0x1c8>
4809  DB  0,0                                 ; add           %al,(%rax)
4810  DB  0,63                                ; add           %bh,(%rdi)
4811  DB  119,115                             ; ja            4f95 <.literal4+0x241>
4812  DB  248                                 ; clc
4813  DB  194,117,191                         ; retq          $0xbf75
4814  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
4815  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
4816  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
4817  DB  154                                 ; (bad)
4818  DB  64,254                              ; rex           (bad)
4819  DB  210,221                             ; rcr           %cl,%ch
4820  DB  65,0,0                              ; add           %al,(%r8)
4821  DB  0,75,0                              ; add           %cl,0x0(%rbx)
4822  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
4823  DB  52,255                              ; xor           $0xff,%al
4824  DB  255                                 ; (bad)
4825  DB  127,0                               ; jg            4f50 <.literal4+0x1fc>
4826  DB  0,0                                 ; add           %al,(%rax)
4827  DB  0,63                                ; add           %bh,(%rdi)
4828  DB  119,115                             ; ja            4fc9 <.literal4+0x275>
4829  DB  248                                 ; clc
4830  DB  194,117,191                         ; retq          $0xbf75
4831  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
4832  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
4833  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
4834  DB  154                                 ; (bad)
4835  DB  64,254                              ; rex           (bad)
4836  DB  210,221                             ; rcr           %cl,%ch
4837  DB  65,0,0                              ; add           %al,(%r8)
4838  DB  0,75,0                              ; add           %cl,0x0(%rbx)
4839  DB  0,128,63,0,0,200                    ; add           %al,-0x37ffffc1(%rax)
4840  DB  66,0,0                              ; rex.X         add %al,(%rax)
4841  DB  127,67                              ; jg            4fc7 <.literal4+0x273>
4842  DB  0,0                                 ; add           %al,(%rax)
4843  DB  0,195                               ; add           %al,%bl
4844  DB  0,0                                 ; add           %al,(%rax)
4845  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
4846  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
4847  DB  59,10                               ; cmp           (%rdx),%ecx
4848  DB  215                                 ; xlat          %ds:(%rbx)
4849  DB  163,59,194,24,17,60,203,61,13       ; movabs        %eax,0xd3dcb3c1118c23b
4850  DB  190,80,128,3,62                     ; mov           $0x3e038050,%esi
4851  DB  31                                  ; (bad)
4852  DB  215                                 ; xlat          %ds:(%rbx)
4853  DB  118,63                              ; jbe           4fe7 <.literal4+0x293>
4854  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
4855  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
4856  DB  127,67                              ; jg            4ffb <.literal4+0x2a7>
4857  DB  129,128,128,59,0,0,128,63,129,128   ; addl          $0x80813f80,0x3b80(%rax)
4858  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
4859  DB  0,128,63,129,128,128                ; add           %al,-0x7f7f7ec1(%rax)
4860  DB  59,0                                ; cmp           (%rax),%eax
4861  DB  248                                 ; clc
4862  DB  0,0                                 ; add           %al,(%rax)
4863  DB  8,33                                ; or            %ah,(%rcx)
4864  DB  132,55                              ; test          %dh,(%rdi)
4865  DB  224,7                               ; loopne        4fdd <.literal4+0x289>
4866  DB  0,0                                 ; add           %al,(%rax)
4867  DB  33,8                                ; and           %ecx,(%rax)
4868  DB  2,58                                ; add           (%rdx),%bh
4869  DB  31                                  ; (bad)
4870  DB  0,0                                 ; add           %al,(%rax)
4871  DB  0,8                                 ; add           %cl,(%rax)
4872  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
4873  DB  0,248                               ; add           %bh,%al
4874  DB  0,0                                 ; add           %al,(%rax)
4875  DB  8,33                                ; or            %ah,(%rcx)
4876  DB  132,55                              ; test          %dh,(%rdi)
4877  DB  224,7                               ; loopne        4ff9 <.literal4+0x2a5>
4878  DB  0,0                                 ; add           %al,(%rax)
4879  DB  33,8                                ; and           %ecx,(%rax)
4880  DB  2,58                                ; add           (%rdx),%bh
4881  DB  31                                  ; (bad)
4882  DB  0,0                                 ; add           %al,(%rax)
4883  DB  0,8                                 ; add           %cl,(%rax)
4884  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
4885  DB  0,0                                 ; add           %al,(%rax)
4886  DB  248                                 ; clc
4887  DB  65,0,0                              ; add           %al,(%r8)
4888  DB  124,66                              ; jl            504e <.literal4+0x2fa>
4889  DB  0,240                               ; add           %dh,%al
4890  DB  0,0                                 ; add           %al,(%rax)
4891  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
4892  DB  0,0                                 ; add           %al,(%rax)
4893  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
4894  DB  0,0                                 ; add           %al,(%rax)
4895  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
4896  DB  0,0                                 ; add           %al,(%rax)
4897  DB  137,136,136,61,0,240                ; mov           %ecx,-0xfffc278(%rax)
4898  DB  0,0                                 ; add           %al,(%rax)
4899  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
4900  DB  0,0                                 ; add           %al,(%rax)
4901  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
4902  DB  0,0                                 ; add           %al,(%rax)
4903  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
4904  DB  0,0                                 ; add           %al,(%rax)
4905  DB  137,136,136,61,0,0                  ; mov           %ecx,0x3d88(%rax)
4906  DB  112,65                              ; jo            5091 <.literal4+0x33d>
4907  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
4908  DB  127,67                              ; jg            509f <.literal4+0x34b>
4909  DB  128,0,128                           ; addb          $0x80,(%rax)
4910  DB  55                                  ; (bad)
4911  DB  128,0,128                           ; addb          $0x80,(%rax)
4912  DB  55                                  ; (bad)
4913  DB  0,0                                 ; add           %al,(%rax)
4914  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4915  DB  255                                 ; (bad)
4916  DB  127,71                              ; jg            50b3 <.literal4+0x35f>
4917  DB  0,0                                 ; add           %al,(%rax)
4918  DB  0,63                                ; add           %bh,(%rdi)
4919  DB  0,0                                 ; add           %al,(%rax)
4920  DB  0,63                                ; add           %bh,(%rdi)
4921  DB  0,0                                 ; add           %al,(%rax)
4922  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4923  DB  0,128,191,0,0,0                     ; add           %al,0xbf(%rax)
4924  DB  63                                  ; (bad)
4925  DB  208                                 ; (bad)
4926  DB  179,89                              ; mov           $0x59,%bl
4927  DB  62,89                               ; ds            pop %rcx
4928  DB  23                                  ; (bad)
4929  DB  55                                  ; (bad)
4930  DB  63                                  ; (bad)
4931  DB  152                                 ; cwtl
4932  DB  221,147,61,18,120,57                ; fstl          0x3978123d(%rbx)
4933  DB  64,45,16,17,192,32                  ; rex           sub $0x20c01110,%eax
4934  DB  148                                 ; xchg          %eax,%esp
4935  DB  90                                  ; pop           %rdx
4936  DB  62,4,157                            ; ds            add $0x9d,%al
4937  DB  30                                  ; (bad)
4938  DB  62,0,24                             ; add           %bl,%ds:(%rax)
4939  DB  161,57,1,0,0,0,111,43,231           ; movabs        0xe72b6f0000000139,%eax
4940  DB  187,159,215,202,60                  ; mov           $0x3ccad79f,%ebx
4941  DB  212                                 ; (bad)
4942  DB  100,84                              ; fs            push %rsp
4943  DB  189,169,240,34,62                   ; mov           $0x3e22f0a9,%ebp
4944  DB  0,0                                 ; add           %al,(%rax)
4945  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
4946  DB  0,0                                 ; add           %al,(%rax)
4947  DB  63                                  ; (bad)
4948  DB  0,0                                 ; add           %al,(%rax)
4949  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
4950  DB  0,0                                 ; add           %al,(%rax)
4951  DB  63                                  ; (bad)
4952  DB  0,0                                 ; add           %al,(%rax)
4953  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4954  DB  0,0                                 ; add           %al,(%rax)
4955  DB  0,63                                ; add           %bh,(%rdi)
4956  DB  0,0                                 ; add           %al,(%rax)
4957  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4958  DB  0,0                                 ; add           %al,(%rax)
4959  DB  0,63                                ; add           %bh,(%rdi)
4960  DB  0,0                                 ; add           %al,(%rax)
4961  DB  192,191,0,0,128,63,171              ; sarb          $0xab,0x3f800000(%rdi)
4962  DB  170                                 ; stos          %al,%es:(%rdi)
4963  DB  170                                 ; stos          %al,%es:(%rdi)
4964  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4965  DB  0,0                                 ; add           %al,(%rax)
4966  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4967  DB  0,0                                 ; add           %al,(%rax)
4968  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4969  DB  85                                  ; push          %rbp
4970  DB  149                                 ; xchg          %eax,%ebp
4971  DB  191,0,0,0,63                        ; mov           $0x3f000000,%edi
4972  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
4973  DB  0,63                                ; add           %bh,(%rdi)
4974  DB  0,0                                 ; add           %al,(%rax)
4975  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4976  DB  85                                  ; push          %rbp
4977  DB  149                                 ; xchg          %eax,%ebp
4978  DB  191,57,142,99,61                    ; mov           $0x3d638e39,%edi
4979  DB  0,0                                 ; add           %al,(%rax)
4980  DB  192,63,171                          ; sarb          $0xab,(%rdi)
4981  DB  170                                 ; stos          %al,%es:(%rdi)
4982  DB  170                                 ; stos          %al,%es:(%rdi)
4983  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4984  DB  0,0                                 ; add           %al,(%rax)
4985  DB  192,191,0,0,128,63,171              ; sarb          $0xab,0x3f800000(%rdi)
4986  DB  170                                 ; stos          %al,%es:(%rdi)
4987  DB  170                                 ; stos          %al,%es:(%rdi)
4988  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
4989  DB  0,0                                 ; add           %al,(%rax)
4990  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
4991  DB  0,0                                 ; add           %al,(%rax)
4992  DB  192,63,85                           ; sarb          $0x55,(%rdi)
4993  DB  85                                  ; push          %rbp
4994  DB  149                                 ; xchg          %eax,%ebp
4995  DB  191,0,0,0,63                        ; mov           $0x3f000000,%edi
4996  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
4997  DB  0,63                                ; add           %bh,(%rdi)
4998  DB  0,0                                 ; add           %al,(%rax)
4999  DB  192,63,85                           ; sarb          $0x55,(%rdi)
5000  DB  85                                  ; push          %rbp
5001  DB  149                                 ; xchg          %eax,%ebp
5002  DB  191,57,142,99,61                    ; mov           $0x3d638e39,%edi
5003  DB  0,0                                 ; add           %al,(%rax)
5004  DB  192,63,171                          ; sarb          $0xab,(%rdi)
5005  DB  170                                 ; stos          %al,%es:(%rdi)
5006  DB  170                                 ; stos          %al,%es:(%rdi)
5007  DB  190,114,28,199,62                   ; mov           $0x3ec71c72,%esi
5008
5009ALIGN 32
5010  DB  255,0                               ; incl          (%rax)
5011  DB  0,0                                 ; add           %al,(%rax)
5012  DB  255,0                               ; incl          (%rax)
5013  DB  0,0                                 ; add           %al,(%rax)
5014  DB  255,0                               ; incl          (%rax)
5015  DB  0,0                                 ; add           %al,(%rax)
5016  DB  255,0                               ; incl          (%rax)
5017  DB  0,0                                 ; add           %al,(%rax)
5018  DB  255,0                               ; incl          (%rax)
5019  DB  0,0                                 ; add           %al,(%rax)
5020  DB  255,0                               ; incl          (%rax)
5021  DB  0,0                                 ; add           %al,(%rax)
5022  DB  255,0                               ; incl          (%rax)
5023  DB  0,0                                 ; add           %al,(%rax)
5024  DB  255,0                               ; incl          (%rax)
5025  DB  0,0                                 ; add           %al,(%rax)
5026  DB  1,255                               ; add           %edi,%edi
5027  DB  255                                 ; (bad)
5028  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a0051a8 <_sk_callback_hsw+0xa000580>
5029  DB  255                                 ; (bad)
5030  DB  255                                 ; (bad)
5031  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 120051b0 <_sk_callback_hsw+0x12000588>
5032  DB  255                                 ; (bad)
5033  DB  255                                 ; (bad)
5034  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a0051b8 <_sk_callback_hsw+0x1a000590>
5035  DB  255                                 ; (bad)
5036  DB  255                                 ; (bad)
5037  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 30051c0 <_sk_callback_hsw+0x3000598>
5038  DB  255                                 ; (bad)
5039  DB  255                                 ; (bad)
5040  DB  255,6                               ; incl          (%rsi)
5041  DB  255                                 ; (bad)
5042  DB  255                                 ; (bad)
5043  DB  255,10                              ; decl          (%rdx)
5044  DB  255                                 ; (bad)
5045  DB  255                                 ; (bad)
5046  DB  255,14                              ; decl          (%rsi)
5047  DB  255                                 ; (bad)
5048  DB  255                                 ; (bad)
5049  DB  255,18                              ; callq         *(%rdx)
5050  DB  255                                 ; (bad)
5051  DB  255                                 ; (bad)
5052  DB  255,22                              ; callq         *(%rsi)
5053  DB  255                                 ; (bad)
5054  DB  255                                 ; (bad)
5055  DB  255,26                              ; lcall         *(%rdx)
5056  DB  255                                 ; (bad)
5057  DB  255                                 ; (bad)
5058  DB  255,30                              ; lcall         *(%rsi)
5059  DB  255                                 ; (bad)
5060  DB  255                                 ; (bad)
5061  DB  255                                 ; (bad)
5062  DB  255,0                               ; incl          (%rax)
5063  DB  0,0                                 ; add           %al,(%rax)
5064  DB  255,0                               ; incl          (%rax)
5065  DB  0,0                                 ; add           %al,(%rax)
5066  DB  255,0                               ; incl          (%rax)
5067  DB  0,0                                 ; add           %al,(%rax)
5068  DB  255,0                               ; incl          (%rax)
5069  DB  0,0                                 ; add           %al,(%rax)
5070  DB  255,0                               ; incl          (%rax)
5071  DB  0,0                                 ; add           %al,(%rax)
5072  DB  255,0                               ; incl          (%rax)
5073  DB  0,0                                 ; add           %al,(%rax)
5074  DB  255,0                               ; incl          (%rax)
5075  DB  0,0                                 ; add           %al,(%rax)
5076  DB  255,0                               ; incl          (%rax)
5077  DB  0,0                                 ; add           %al,(%rax)
5078  DB  1,255                               ; add           %edi,%edi
5079  DB  255                                 ; (bad)
5080  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a005208 <_sk_callback_hsw+0xa0005e0>
5081  DB  255                                 ; (bad)
5082  DB  255                                 ; (bad)
5083  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12005210 <_sk_callback_hsw+0x120005e8>
5084  DB  255                                 ; (bad)
5085  DB  255                                 ; (bad)
5086  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a005218 <_sk_callback_hsw+0x1a0005f0>
5087  DB  255                                 ; (bad)
5088  DB  255                                 ; (bad)
5089  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3005220 <_sk_callback_hsw+0x30005f8>
5090  DB  255                                 ; (bad)
5091  DB  255                                 ; (bad)
5092  DB  255,6                               ; incl          (%rsi)
5093  DB  255                                 ; (bad)
5094  DB  255                                 ; (bad)
5095  DB  255,10                              ; decl          (%rdx)
5096  DB  255                                 ; (bad)
5097  DB  255                                 ; (bad)
5098  DB  255,14                              ; decl          (%rsi)
5099  DB  255                                 ; (bad)
5100  DB  255                                 ; (bad)
5101  DB  255,18                              ; callq         *(%rdx)
5102  DB  255                                 ; (bad)
5103  DB  255                                 ; (bad)
5104  DB  255,22                              ; callq         *(%rsi)
5105  DB  255                                 ; (bad)
5106  DB  255                                 ; (bad)
5107  DB  255,26                              ; lcall         *(%rdx)
5108  DB  255                                 ; (bad)
5109  DB  255                                 ; (bad)
5110  DB  255,30                              ; lcall         *(%rsi)
5111  DB  255                                 ; (bad)
5112  DB  255                                 ; (bad)
5113  DB  255                                 ; (bad)
5114  DB  255,0                               ; incl          (%rax)
5115  DB  0,0                                 ; add           %al,(%rax)
5116  DB  255,0                               ; incl          (%rax)
5117  DB  0,0                                 ; add           %al,(%rax)
5118  DB  255,0                               ; incl          (%rax)
5119  DB  0,0                                 ; add           %al,(%rax)
5120  DB  255,0                               ; incl          (%rax)
5121  DB  0,0                                 ; add           %al,(%rax)
5122  DB  255,0                               ; incl          (%rax)
5123  DB  0,0                                 ; add           %al,(%rax)
5124  DB  255,0                               ; incl          (%rax)
5125  DB  0,0                                 ; add           %al,(%rax)
5126  DB  255,0                               ; incl          (%rax)
5127  DB  0,0                                 ; add           %al,(%rax)
5128  DB  255,0                               ; incl          (%rax)
5129  DB  0,0                                 ; add           %al,(%rax)
5130  DB  1,255                               ; add           %edi,%edi
5131  DB  255                                 ; (bad)
5132  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a005268 <_sk_callback_hsw+0xa000640>
5133  DB  255                                 ; (bad)
5134  DB  255                                 ; (bad)
5135  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12005270 <_sk_callback_hsw+0x12000648>
5136  DB  255                                 ; (bad)
5137  DB  255                                 ; (bad)
5138  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a005278 <_sk_callback_hsw+0x1a000650>
5139  DB  255                                 ; (bad)
5140  DB  255                                 ; (bad)
5141  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3005280 <_sk_callback_hsw+0x3000658>
5142  DB  255                                 ; (bad)
5143  DB  255                                 ; (bad)
5144  DB  255,6                               ; incl          (%rsi)
5145  DB  255                                 ; (bad)
5146  DB  255                                 ; (bad)
5147  DB  255,10                              ; decl          (%rdx)
5148  DB  255                                 ; (bad)
5149  DB  255                                 ; (bad)
5150  DB  255,14                              ; decl          (%rsi)
5151  DB  255                                 ; (bad)
5152  DB  255                                 ; (bad)
5153  DB  255,18                              ; callq         *(%rdx)
5154  DB  255                                 ; (bad)
5155  DB  255                                 ; (bad)
5156  DB  255,22                              ; callq         *(%rsi)
5157  DB  255                                 ; (bad)
5158  DB  255                                 ; (bad)
5159  DB  255,26                              ; lcall         *(%rdx)
5160  DB  255                                 ; (bad)
5161  DB  255                                 ; (bad)
5162  DB  255,30                              ; lcall         *(%rsi)
5163  DB  255                                 ; (bad)
5164  DB  255                                 ; (bad)
5165  DB  255                                 ; (bad)
5166  DB  255,0                               ; incl          (%rax)
5167  DB  0,0                                 ; add           %al,(%rax)
5168  DB  255,0                               ; incl          (%rax)
5169  DB  0,0                                 ; add           %al,(%rax)
5170  DB  255,0                               ; incl          (%rax)
5171  DB  0,0                                 ; add           %al,(%rax)
5172  DB  255,0                               ; incl          (%rax)
5173  DB  0,0                                 ; add           %al,(%rax)
5174  DB  255,0                               ; incl          (%rax)
5175  DB  0,0                                 ; add           %al,(%rax)
5176  DB  255,0                               ; incl          (%rax)
5177  DB  0,0                                 ; add           %al,(%rax)
5178  DB  255,0                               ; incl          (%rax)
5179  DB  0,0                                 ; add           %al,(%rax)
5180  DB  255,0                               ; incl          (%rax)
5181  DB  0,0                                 ; add           %al,(%rax)
5182  DB  1,255                               ; add           %edi,%edi
5183  DB  255                                 ; (bad)
5184  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a0052c8 <_sk_callback_hsw+0xa0006a0>
5185  DB  255                                 ; (bad)
5186  DB  255                                 ; (bad)
5187  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 120052d0 <_sk_callback_hsw+0x120006a8>
5188  DB  255                                 ; (bad)
5189  DB  255                                 ; (bad)
5190  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a0052d8 <_sk_callback_hsw+0x1a0006b0>
5191  DB  255                                 ; (bad)
5192  DB  255                                 ; (bad)
5193  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 30052e0 <_sk_callback_hsw+0x30006b8>
5194  DB  255                                 ; (bad)
5195  DB  255                                 ; (bad)
5196  DB  255,6                               ; incl          (%rsi)
5197  DB  255                                 ; (bad)
5198  DB  255                                 ; (bad)
5199  DB  255,10                              ; decl          (%rdx)
5200  DB  255                                 ; (bad)
5201  DB  255                                 ; (bad)
5202  DB  255,14                              ; decl          (%rsi)
5203  DB  255                                 ; (bad)
5204  DB  255                                 ; (bad)
5205  DB  255,18                              ; callq         *(%rdx)
5206  DB  255                                 ; (bad)
5207  DB  255                                 ; (bad)
5208  DB  255,22                              ; callq         *(%rsi)
5209  DB  255                                 ; (bad)
5210  DB  255                                 ; (bad)
5211  DB  255,26                              ; lcall         *(%rdx)
5212  DB  255                                 ; (bad)
5213  DB  255                                 ; (bad)
5214  DB  255,30                              ; lcall         *(%rsi)
5215  DB  255                                 ; (bad)
5216  DB  255                                 ; (bad)
5217  DB  255                                 ; (bad)
5218  DB  255,0                               ; incl          (%rax)
5219  DB  0,0                                 ; add           %al,(%rax)
5220  DB  255,0                               ; incl          (%rax)
5221  DB  0,0                                 ; add           %al,(%rax)
5222  DB  255,0                               ; incl          (%rax)
5223  DB  0,0                                 ; add           %al,(%rax)
5224  DB  255,0                               ; incl          (%rax)
5225  DB  0,0                                 ; add           %al,(%rax)
5226  DB  255,0                               ; incl          (%rax)
5227  DB  0,0                                 ; add           %al,(%rax)
5228  DB  255,0                               ; incl          (%rax)
5229  DB  0,0                                 ; add           %al,(%rax)
5230  DB  255,0                               ; incl          (%rax)
5231  DB  0,0                                 ; add           %al,(%rax)
5232  DB  255,0                               ; incl          (%rax)
5233  DB  0,0                                 ; add           %al,(%rax)
5234  DB  1,255                               ; add           %edi,%edi
5235  DB  255                                 ; (bad)
5236  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a005328 <_sk_callback_hsw+0xa000700>
5237  DB  255                                 ; (bad)
5238  DB  255                                 ; (bad)
5239  DB  255,13,255,255,255,17               ; decl          0x11ffffff(%rip)        # 12005330 <_sk_callback_hsw+0x12000708>
5240  DB  255                                 ; (bad)
5241  DB  255                                 ; (bad)
5242  DB  255,21,255,255,255,25               ; callq         *0x19ffffff(%rip)        # 1a005338 <_sk_callback_hsw+0x1a000710>
5243  DB  255                                 ; (bad)
5244  DB  255                                 ; (bad)
5245  DB  255,29,255,255,255,2                ; lcall         *0x2ffffff(%rip)        # 3005340 <_sk_callback_hsw+0x3000718>
5246  DB  255                                 ; (bad)
5247  DB  255                                 ; (bad)
5248  DB  255,6                               ; incl          (%rsi)
5249  DB  255                                 ; (bad)
5250  DB  255                                 ; (bad)
5251  DB  255,10                              ; decl          (%rdx)
5252  DB  255                                 ; (bad)
5253  DB  255                                 ; (bad)
5254  DB  255,14                              ; decl          (%rsi)
5255  DB  255                                 ; (bad)
5256  DB  255                                 ; (bad)
5257  DB  255,18                              ; callq         *(%rdx)
5258  DB  255                                 ; (bad)
5259  DB  255                                 ; (bad)
5260  DB  255,22                              ; callq         *(%rsi)
5261  DB  255                                 ; (bad)
5262  DB  255                                 ; (bad)
5263  DB  255,26                              ; lcall         *(%rdx)
5264  DB  255                                 ; (bad)
5265  DB  255                                 ; (bad)
5266  DB  255,30                              ; lcall         *(%rsi)
5267  DB  255                                 ; (bad)
5268  DB  255                                 ; (bad)
5269  DB  255                                 ; .byte         0xff
5270
5271ALIGN 16
5272  DB  255,0                               ; incl          (%rax)
5273  DB  255,0                               ; incl          (%rax)
5274  DB  255,0                               ; incl          (%rax)
5275  DB  255,0                               ; incl          (%rax)
5276  DB  255,0                               ; incl          (%rax)
5277  DB  255,0                               ; incl          (%rax)
5278  DB  255,0                               ; incl          (%rax)
5279  DB  255,0                               ; incl          (%rax)
5280  DB  255,0                               ; incl          (%rax)
5281  DB  255,0                               ; incl          (%rax)
5282  DB  255,0                               ; incl          (%rax)
5283  DB  255,0                               ; incl          (%rax)
5284  DB  255,0                               ; incl          (%rax)
5285  DB  255,0                               ; incl          (%rax)
5286  DB  255,0                               ; incl          (%rax)
5287  DB  255,0                               ; incl          (%rax)
5288  DB  255,0                               ; incl          (%rax)
5289  DB  255,0                               ; incl          (%rax)
5290  DB  255,0                               ; incl          (%rax)
5291  DB  255,0                               ; incl          (%rax)
5292  DB  255,0                               ; incl          (%rax)
5293  DB  255,0                               ; incl          (%rax)
5294  DB  255,0                               ; incl          (%rax)
5295  DB  255,0                               ; incl          (%rax)
5296  DB  255,0                               ; incl          (%rax)
5297  DB  255,0                               ; incl          (%rax)
5298  DB  255,0                               ; incl          (%rax)
5299  DB  255,0                               ; incl          (%rax)
5300  DB  255,0                               ; incl          (%rax)
5301  DB  255,0                               ; incl          (%rax)
5302  DB  255,0                               ; incl          (%rax)
5303  DB  255,0                               ; incl          (%rax)
5304  DB  255,0                               ; incl          (%rax)
5305  DB  255,0                               ; incl          (%rax)
5306  DB  255,0                               ; incl          (%rax)
5307  DB  255,0                               ; incl          (%rax)
5308  DB  255,0                               ; incl          (%rax)
5309  DB  255,0                               ; incl          (%rax)
5310  DB  255,0                               ; incl          (%rax)
5311  DB  255,0                               ; incl          (%rax)
5312  DB  0,2                                 ; add           %al,(%rdx)
5313  DB  0,0                                 ; add           %al,(%rax)
5314  DB  0,0                                 ; add           %al,(%rax)
5315  DB  0,0                                 ; add           %al,(%rax)
5316  DB  0,0                                 ; add           %al,(%rax)
5317  DB  0,0                                 ; add           %al,(%rax)
5318  DB  0,0                                 ; add           %al,(%rax)
5319  DB  0,0                                 ; add           %al,(%rax)
5320  DB  0,2                                 ; add           %al,(%rdx)
5321  DB  4,6                                 ; add           $0x6,%al
5322  DB  0,0                                 ; add           %al,(%rax)
5323  DB  0,0                                 ; add           %al,(%rax)
5324  DB  0,0                                 ; add           %al,(%rax)
5325  DB  0,0                                 ; add           %al,(%rax)
5326  DB  0,0                                 ; add           %al,(%rax)
5327  DB  0,0                                 ; add           %al,(%rax)
5328  DB  255,0                               ; incl          (%rax)
5329  DB  255,0                               ; incl          (%rax)
5330  DB  255,0                               ; incl          (%rax)
5331  DB  255,0                               ; incl          (%rax)
5332  DB  255,0                               ; incl          (%rax)
5333  DB  255,0                               ; incl          (%rax)
5334  DB  255,0                               ; incl          (%rax)
5335  DB  255,0                               ; incl          (%rax)
5336ALIGN 32
5337
5338PUBLIC _sk_start_pipeline_avx
5339_sk_start_pipeline_avx LABEL PROC
5340  DB  85                                  ; push          %rbp
5341  DB  72,137,229                          ; mov           %rsp,%rbp
5342  DB  65,87                               ; push          %r15
5343  DB  65,86                               ; push          %r14
5344  DB  65,85                               ; push          %r13
5345  DB  65,84                               ; push          %r12
5346  DB  86                                  ; push          %rsi
5347  DB  87                                  ; push          %rdi
5348  DB  83                                  ; push          %rbx
5349  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
5350  DB  197,120,41,125,176                  ; vmovaps       %xmm15,-0x50(%rbp)
5351  DB  197,120,41,117,160                  ; vmovaps       %xmm14,-0x60(%rbp)
5352  DB  197,120,41,109,144                  ; vmovaps       %xmm13,-0x70(%rbp)
5353  DB  197,120,41,101,128                  ; vmovaps       %xmm12,-0x80(%rbp)
5354  DB  197,120,41,157,112,255,255,255      ; vmovaps       %xmm11,-0x90(%rbp)
5355  DB  197,120,41,149,96,255,255,255       ; vmovaps       %xmm10,-0xa0(%rbp)
5356  DB  197,120,41,141,80,255,255,255       ; vmovaps       %xmm9,-0xb0(%rbp)
5357  DB  197,120,41,133,64,255,255,255       ; vmovaps       %xmm8,-0xc0(%rbp)
5358  DB  197,248,41,189,48,255,255,255       ; vmovaps       %xmm7,-0xd0(%rbp)
5359  DB  197,248,41,181,32,255,255,255       ; vmovaps       %xmm6,-0xe0(%rbp)
5360  DB  72,137,211                          ; mov           %rdx,%rbx
5361  DB  73,137,207                          ; mov           %rcx,%r15
5362  DB  76,139,117,48                       ; mov           0x30(%rbp),%r14
5363  DB  76,137,206                          ; mov           %r9,%rsi
5364  DB  72,173                              ; lods          %ds:(%rsi),%rax
5365  DB  73,137,197                          ; mov           %rax,%r13
5366  DB  73,137,244                          ; mov           %rsi,%r12
5367  DB  73,141,79,8                         ; lea           0x8(%r15),%rcx
5368  DB  76,57,193                           ; cmp           %r8,%rcx
5369  DB  118,5                               ; jbe           7d <_sk_start_pipeline_avx+0x7d>
5370  DB  76,137,250                          ; mov           %r15,%rdx
5371  DB  235,83                              ; jmp           d0 <_sk_start_pipeline_avx+0xd0>
5372  DB  76,137,133,24,255,255,255           ; mov           %r8,-0xe8(%rbp)
5373  DB  65,184,0,0,0,0                      ; mov           $0x0,%r8d
5374  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
5375  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
5376  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
5377  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
5378  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
5379  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
5380  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
5381  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
5382  DB  76,137,247                          ; mov           %r14,%rdi
5383  DB  76,137,230                          ; mov           %r12,%rsi
5384  DB  76,137,250                          ; mov           %r15,%rdx
5385  DB  72,137,217                          ; mov           %rbx,%rcx
5386  DB  65,255,213                          ; callq         *%r13
5387  DB  76,139,133,24,255,255,255           ; mov           -0xe8(%rbp),%r8
5388  DB  73,141,87,8                         ; lea           0x8(%r15),%rdx
5389  DB  73,131,199,16                       ; add           $0x10,%r15
5390  DB  77,57,199                           ; cmp           %r8,%r15
5391  DB  73,137,215                          ; mov           %rdx,%r15
5392  DB  118,180                             ; jbe           84 <_sk_start_pipeline_avx+0x84>
5393  DB  73,41,208                           ; sub           %rdx,%r8
5394  DB  116,44                              ; je            101 <_sk_start_pipeline_avx+0x101>
5395  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
5396  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
5397  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
5398  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
5399  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
5400  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
5401  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
5402  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
5403  DB  76,137,247                          ; mov           %r14,%rdi
5404  DB  76,137,230                          ; mov           %r12,%rsi
5405  DB  72,137,217                          ; mov           %rbx,%rcx
5406  DB  65,255,213                          ; callq         *%r13
5407  DB  197,248,40,181,32,255,255,255       ; vmovaps       -0xe0(%rbp),%xmm6
5408  DB  197,248,40,189,48,255,255,255       ; vmovaps       -0xd0(%rbp),%xmm7
5409  DB  197,120,40,133,64,255,255,255       ; vmovaps       -0xc0(%rbp),%xmm8
5410  DB  197,120,40,141,80,255,255,255       ; vmovaps       -0xb0(%rbp),%xmm9
5411  DB  197,120,40,149,96,255,255,255       ; vmovaps       -0xa0(%rbp),%xmm10
5412  DB  197,120,40,157,112,255,255,255      ; vmovaps       -0x90(%rbp),%xmm11
5413  DB  197,120,40,101,128                  ; vmovaps       -0x80(%rbp),%xmm12
5414  DB  197,120,40,109,144                  ; vmovaps       -0x70(%rbp),%xmm13
5415  DB  197,120,40,117,160                  ; vmovaps       -0x60(%rbp),%xmm14
5416  DB  197,120,40,125,176                  ; vmovaps       -0x50(%rbp),%xmm15
5417  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
5418  DB  91                                  ; pop           %rbx
5419  DB  95                                  ; pop           %rdi
5420  DB  94                                  ; pop           %rsi
5421  DB  65,92                               ; pop           %r12
5422  DB  65,93                               ; pop           %r13
5423  DB  65,94                               ; pop           %r14
5424  DB  65,95                               ; pop           %r15
5425  DB  93                                  ; pop           %rbp
5426  DB  197,248,119                         ; vzeroupper
5427  DB  195                                 ; retq
5428
5429PUBLIC _sk_just_return_avx
5430_sk_just_return_avx LABEL PROC
5431  DB  195                                 ; retq
5432
5433PUBLIC _sk_seed_shader_avx
5434_sk_seed_shader_avx LABEL PROC
5435  DB  197,249,110,194                     ; vmovd         %edx,%xmm0
5436  DB  197,249,112,192,0                   ; vpshufd       $0x0,%xmm0,%xmm0
5437  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
5438  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
5439  DB  196,226,125,24,13,55,104,0,0        ; vbroadcastss  0x6837(%rip),%ymm1        # 69b0 <_sk_callback_avx+0x12a>
5440  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
5441  DB  197,252,88,7                        ; vaddps        (%rdi),%ymm0,%ymm0
5442  DB  197,249,110,209                     ; vmovd         %ecx,%xmm2
5443  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
5444  DB  196,227,109,24,210,1                ; vinsertf128   $0x1,%xmm2,%ymm2,%ymm2
5445  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
5446  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
5447  DB  72,173                              ; lods          %ds:(%rsi),%rax
5448  DB  196,226,125,24,21,17,104,0,0        ; vbroadcastss  0x6811(%rip),%ymm2        # 69b4 <_sk_callback_avx+0x12e>
5449  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
5450  DB  197,220,87,228                      ; vxorps        %ymm4,%ymm4,%ymm4
5451  DB  197,212,87,237                      ; vxorps        %ymm5,%ymm5,%ymm5
5452  DB  197,204,87,246                      ; vxorps        %ymm6,%ymm6,%ymm6
5453  DB  197,196,87,255                      ; vxorps        %ymm7,%ymm7,%ymm7
5454  DB  255,224                             ; jmpq          *%rax
5455
5456PUBLIC _sk_dither_avx
5457_sk_dither_avx LABEL PROC
5458  DB  72,173                              ; lods          %ds:(%rsi),%rax
5459  DB  197,124,16,71,32                    ; vmovups       0x20(%rdi),%ymm8
5460  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
5461  DB  197,121,110,210                     ; vmovd         %edx,%xmm10
5462  DB  196,65,121,112,210,0                ; vpshufd       $0x0,%xmm10,%xmm10
5463  DB  196,65,49,254,202                   ; vpaddd        %xmm10,%xmm9,%xmm9
5464  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
5465  DB  196,67,61,24,193,1                  ; vinsertf128   $0x1,%xmm9,%ymm8,%ymm8
5466  DB  197,121,110,201                     ; vmovd         %ecx,%xmm9
5467  DB  196,65,121,112,201,0                ; vpshufd       $0x0,%xmm9,%xmm9
5468  DB  196,67,53,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm9,%ymm9
5469  DB  196,65,52,87,208                    ; vxorps        %ymm8,%ymm9,%ymm10
5470  DB  196,98,125,24,29,186,103,0,0        ; vbroadcastss  0x67ba(%rip),%ymm11        # 69b8 <_sk_callback_avx+0x132>
5471  DB  196,65,44,84,203                    ; vandps        %ymm11,%ymm10,%ymm9
5472  DB  196,193,25,114,241,5                ; vpslld        $0x5,%xmm9,%xmm12
5473  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
5474  DB  196,193,49,114,241,5                ; vpslld        $0x5,%xmm9,%xmm9
5475  DB  196,67,29,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm12,%ymm9
5476  DB  196,65,60,84,219                    ; vandps        %ymm11,%ymm8,%ymm11
5477  DB  196,193,25,114,243,4                ; vpslld        $0x4,%xmm11,%xmm12
5478  DB  196,67,125,25,219,1                 ; vextractf128  $0x1,%ymm11,%xmm11
5479  DB  196,193,33,114,243,4                ; vpslld        $0x4,%xmm11,%xmm11
5480  DB  196,67,29,24,219,1                  ; vinsertf128   $0x1,%xmm11,%ymm12,%ymm11
5481  DB  196,98,125,24,37,123,103,0,0        ; vbroadcastss  0x677b(%rip),%ymm12        # 69bc <_sk_callback_avx+0x136>
5482  DB  196,98,125,24,45,118,103,0,0        ; vbroadcastss  0x6776(%rip),%ymm13        # 69c0 <_sk_callback_avx+0x13a>
5483  DB  196,65,44,84,245                    ; vandps        %ymm13,%ymm10,%ymm14
5484  DB  196,193,1,114,246,2                 ; vpslld        $0x2,%xmm14,%xmm15
5485  DB  196,67,125,25,246,1                 ; vextractf128  $0x1,%ymm14,%xmm14
5486  DB  196,193,9,114,246,2                 ; vpslld        $0x2,%xmm14,%xmm14
5487  DB  196,67,5,24,246,1                   ; vinsertf128   $0x1,%xmm14,%ymm15,%ymm14
5488  DB  196,65,60,84,237                    ; vandps        %ymm13,%ymm8,%ymm13
5489  DB  196,65,17,254,253                   ; vpaddd        %xmm13,%xmm13,%xmm15
5490  DB  196,67,125,25,237,1                 ; vextractf128  $0x1,%ymm13,%xmm13
5491  DB  196,65,17,254,237                   ; vpaddd        %xmm13,%xmm13,%xmm13
5492  DB  196,67,5,24,237,1                   ; vinsertf128   $0x1,%xmm13,%ymm15,%ymm13
5493  DB  196,65,44,84,212                    ; vandps        %ymm12,%ymm10,%ymm10
5494  DB  196,193,1,114,210,1                 ; vpsrld        $0x1,%xmm10,%xmm15
5495  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
5496  DB  196,193,41,114,210,1                ; vpsrld        $0x1,%xmm10,%xmm10
5497  DB  196,67,5,24,210,1                   ; vinsertf128   $0x1,%xmm10,%ymm15,%ymm10
5498  DB  196,65,60,84,196                    ; vandps        %ymm12,%ymm8,%ymm8
5499  DB  196,193,25,114,208,2                ; vpsrld        $0x2,%xmm8,%xmm12
5500  DB  196,67,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm8
5501  DB  196,193,57,114,208,2                ; vpsrld        $0x2,%xmm8,%xmm8
5502  DB  196,67,29,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm12,%ymm8
5503  DB  196,65,20,86,219                    ; vorps         %ymm11,%ymm13,%ymm11
5504  DB  196,65,36,86,192                    ; vorps         %ymm8,%ymm11,%ymm8
5505  DB  196,65,52,86,206                    ; vorps         %ymm14,%ymm9,%ymm9
5506  DB  196,65,60,86,193                    ; vorps         %ymm9,%ymm8,%ymm8
5507  DB  196,65,60,86,194                    ; vorps         %ymm10,%ymm8,%ymm8
5508  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
5509  DB  196,98,125,24,13,225,102,0,0        ; vbroadcastss  0x66e1(%rip),%ymm9        # 69c4 <_sk_callback_avx+0x13e>
5510  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
5511  DB  196,98,125,24,13,215,102,0,0        ; vbroadcastss  0x66d7(%rip),%ymm9        # 69c8 <_sk_callback_avx+0x142>
5512  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
5513  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
5514  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
5515  DB  197,188,88,192                      ; vaddps        %ymm0,%ymm8,%ymm0
5516  DB  197,188,88,201                      ; vaddps        %ymm1,%ymm8,%ymm1
5517  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
5518  DB  197,252,93,195                      ; vminps        %ymm3,%ymm0,%ymm0
5519  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
5520  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
5521  DB  197,244,93,203                      ; vminps        %ymm3,%ymm1,%ymm1
5522  DB  197,188,95,201                      ; vmaxps        %ymm1,%ymm8,%ymm1
5523  DB  197,236,93,211                      ; vminps        %ymm3,%ymm2,%ymm2
5524  DB  197,188,95,210                      ; vmaxps        %ymm2,%ymm8,%ymm2
5525  DB  72,173                              ; lods          %ds:(%rsi),%rax
5526  DB  255,224                             ; jmpq          *%rax
5527
5528PUBLIC _sk_constant_color_avx
5529_sk_constant_color_avx LABEL PROC
5530  DB  72,173                              ; lods          %ds:(%rsi),%rax
5531  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
5532  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
5533  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
5534  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
5535  DB  72,173                              ; lods          %ds:(%rsi),%rax
5536  DB  255,224                             ; jmpq          *%rax
5537
5538PUBLIC _sk_load_rgba_avx
5539_sk_load_rgba_avx LABEL PROC
5540  DB  72,173                              ; lods          %ds:(%rsi),%rax
5541  DB  197,252,16,0                        ; vmovups       (%rax),%ymm0
5542  DB  197,252,16,72,32                    ; vmovups       0x20(%rax),%ymm1
5543  DB  197,252,16,80,64                    ; vmovups       0x40(%rax),%ymm2
5544  DB  197,252,16,88,96                    ; vmovups       0x60(%rax),%ymm3
5545  DB  72,173                              ; lods          %ds:(%rsi),%rax
5546  DB  255,224                             ; jmpq          *%rax
5547
5548PUBLIC _sk_store_rgba_avx
5549_sk_store_rgba_avx LABEL PROC
5550  DB  72,173                              ; lods          %ds:(%rsi),%rax
5551  DB  197,252,17,0                        ; vmovups       %ymm0,(%rax)
5552  DB  197,252,17,72,32                    ; vmovups       %ymm1,0x20(%rax)
5553  DB  197,252,17,80,64                    ; vmovups       %ymm2,0x40(%rax)
5554  DB  197,252,17,88,96                    ; vmovups       %ymm3,0x60(%rax)
5555  DB  72,173                              ; lods          %ds:(%rsi),%rax
5556  DB  255,224                             ; jmpq          *%rax
5557
5558PUBLIC _sk_clear_avx
5559_sk_clear_avx LABEL PROC
5560  DB  72,173                              ; lods          %ds:(%rsi),%rax
5561  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
5562  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
5563  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
5564  DB  197,228,87,219                      ; vxorps        %ymm3,%ymm3,%ymm3
5565  DB  255,224                             ; jmpq          *%rax
5566
5567PUBLIC _sk_srcatop_avx
5568_sk_srcatop_avx LABEL PROC
5569  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5570  DB  196,98,125,24,5,47,102,0,0          ; vbroadcastss  0x662f(%rip),%ymm8        # 69cc <_sk_callback_avx+0x146>
5571  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5572  DB  197,60,89,204                       ; vmulps        %ymm4,%ymm8,%ymm9
5573  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
5574  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
5575  DB  197,60,89,205                       ; vmulps        %ymm5,%ymm8,%ymm9
5576  DB  197,180,88,201                      ; vaddps        %ymm1,%ymm9,%ymm1
5577  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
5578  DB  197,60,89,206                       ; vmulps        %ymm6,%ymm8,%ymm9
5579  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
5580  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5581  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5582  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
5583  DB  72,173                              ; lods          %ds:(%rsi),%rax
5584  DB  255,224                             ; jmpq          *%rax
5585
5586PUBLIC _sk_dstatop_avx
5587_sk_dstatop_avx LABEL PROC
5588  DB  197,100,89,196                      ; vmulps        %ymm4,%ymm3,%ymm8
5589  DB  196,98,125,24,13,241,101,0,0        ; vbroadcastss  0x65f1(%rip),%ymm9        # 69d0 <_sk_callback_avx+0x14a>
5590  DB  197,52,92,207                       ; vsubps        %ymm7,%ymm9,%ymm9
5591  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
5592  DB  197,188,88,192                      ; vaddps        %ymm0,%ymm8,%ymm0
5593  DB  197,100,89,197                      ; vmulps        %ymm5,%ymm3,%ymm8
5594  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
5595  DB  197,188,88,201                      ; vaddps        %ymm1,%ymm8,%ymm1
5596  DB  197,100,89,198                      ; vmulps        %ymm6,%ymm3,%ymm8
5597  DB  197,180,89,210                      ; vmulps        %ymm2,%ymm9,%ymm2
5598  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
5599  DB  197,100,89,199                      ; vmulps        %ymm7,%ymm3,%ymm8
5600  DB  197,180,89,219                      ; vmulps        %ymm3,%ymm9,%ymm3
5601  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5602  DB  72,173                              ; lods          %ds:(%rsi),%rax
5603  DB  255,224                             ; jmpq          *%rax
5604
5605PUBLIC _sk_srcin_avx
5606_sk_srcin_avx LABEL PROC
5607  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5608  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
5609  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
5610  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5611  DB  72,173                              ; lods          %ds:(%rsi),%rax
5612  DB  255,224                             ; jmpq          *%rax
5613
5614PUBLIC _sk_dstin_avx
5615_sk_dstin_avx LABEL PROC
5616  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
5617  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
5618  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
5619  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5620  DB  72,173                              ; lods          %ds:(%rsi),%rax
5621  DB  255,224                             ; jmpq          *%rax
5622
5623PUBLIC _sk_srcout_avx
5624_sk_srcout_avx LABEL PROC
5625  DB  196,98,125,24,5,144,101,0,0         ; vbroadcastss  0x6590(%rip),%ymm8        # 69d4 <_sk_callback_avx+0x14e>
5626  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
5627  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
5628  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
5629  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
5630  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
5631  DB  72,173                              ; lods          %ds:(%rsi),%rax
5632  DB  255,224                             ; jmpq          *%rax
5633
5634PUBLIC _sk_dstout_avx
5635_sk_dstout_avx LABEL PROC
5636  DB  196,226,125,24,5,115,101,0,0        ; vbroadcastss  0x6573(%rip),%ymm0        # 69d8 <_sk_callback_avx+0x152>
5637  DB  197,252,92,219                      ; vsubps        %ymm3,%ymm0,%ymm3
5638  DB  197,228,89,196                      ; vmulps        %ymm4,%ymm3,%ymm0
5639  DB  197,228,89,205                      ; vmulps        %ymm5,%ymm3,%ymm1
5640  DB  197,228,89,214                      ; vmulps        %ymm6,%ymm3,%ymm2
5641  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5642  DB  72,173                              ; lods          %ds:(%rsi),%rax
5643  DB  255,224                             ; jmpq          *%rax
5644
5645PUBLIC _sk_srcover_avx
5646_sk_srcover_avx LABEL PROC
5647  DB  196,98,125,24,5,86,101,0,0          ; vbroadcastss  0x6556(%rip),%ymm8        # 69dc <_sk_callback_avx+0x156>
5648  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5649  DB  197,60,89,204                       ; vmulps        %ymm4,%ymm8,%ymm9
5650  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
5651  DB  197,60,89,205                       ; vmulps        %ymm5,%ymm8,%ymm9
5652  DB  197,180,88,201                      ; vaddps        %ymm1,%ymm9,%ymm1
5653  DB  197,60,89,206                       ; vmulps        %ymm6,%ymm8,%ymm9
5654  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
5655  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5656  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5657  DB  72,173                              ; lods          %ds:(%rsi),%rax
5658  DB  255,224                             ; jmpq          *%rax
5659
5660PUBLIC _sk_dstover_avx
5661_sk_dstover_avx LABEL PROC
5662  DB  196,98,125,24,5,41,101,0,0          ; vbroadcastss  0x6529(%rip),%ymm8        # 69e0 <_sk_callback_avx+0x15a>
5663  DB  197,60,92,199                       ; vsubps        %ymm7,%ymm8,%ymm8
5664  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
5665  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
5666  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
5667  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
5668  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
5669  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
5670  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
5671  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
5672  DB  72,173                              ; lods          %ds:(%rsi),%rax
5673  DB  255,224                             ; jmpq          *%rax
5674
5675PUBLIC _sk_modulate_avx
5676_sk_modulate_avx LABEL PROC
5677  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
5678  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
5679  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
5680  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5681  DB  72,173                              ; lods          %ds:(%rsi),%rax
5682  DB  255,224                             ; jmpq          *%rax
5683
5684PUBLIC _sk_multiply_avx
5685_sk_multiply_avx LABEL PROC
5686  DB  196,98,125,24,5,232,100,0,0         ; vbroadcastss  0x64e8(%rip),%ymm8        # 69e4 <_sk_callback_avx+0x15e>
5687  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
5688  DB  197,52,89,208                       ; vmulps        %ymm0,%ymm9,%ymm10
5689  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5690  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
5691  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
5692  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
5693  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
5694  DB  197,52,89,209                       ; vmulps        %ymm1,%ymm9,%ymm10
5695  DB  197,60,89,221                       ; vmulps        %ymm5,%ymm8,%ymm11
5696  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
5697  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
5698  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
5699  DB  197,52,89,210                       ; vmulps        %ymm2,%ymm9,%ymm10
5700  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
5701  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
5702  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
5703  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
5704  DB  197,52,89,203                       ; vmulps        %ymm3,%ymm9,%ymm9
5705  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5706  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
5707  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5708  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
5709  DB  72,173                              ; lods          %ds:(%rsi),%rax
5710  DB  255,224                             ; jmpq          *%rax
5711
5712PUBLIC _sk_plus__avx
5713_sk_plus__avx LABEL PROC
5714  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
5715  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
5716  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
5717  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
5718  DB  72,173                              ; lods          %ds:(%rsi),%rax
5719  DB  255,224                             ; jmpq          *%rax
5720
5721PUBLIC _sk_screen_avx
5722_sk_screen_avx LABEL PROC
5723  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
5724  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
5725  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5726  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
5727  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
5728  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
5729  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
5730  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
5731  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
5732  DB  197,100,88,199                      ; vaddps        %ymm7,%ymm3,%ymm8
5733  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
5734  DB  197,188,92,219                      ; vsubps        %ymm3,%ymm8,%ymm3
5735  DB  72,173                              ; lods          %ds:(%rsi),%rax
5736  DB  255,224                             ; jmpq          *%rax
5737
5738PUBLIC _sk_xor__avx
5739_sk_xor__avx LABEL PROC
5740  DB  196,98,125,24,5,55,100,0,0          ; vbroadcastss  0x6437(%rip),%ymm8        # 69e8 <_sk_callback_avx+0x162>
5741  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
5742  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
5743  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5744  DB  197,60,89,212                       ; vmulps        %ymm4,%ymm8,%ymm10
5745  DB  197,172,88,192                      ; vaddps        %ymm0,%ymm10,%ymm0
5746  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
5747  DB  197,60,89,213                       ; vmulps        %ymm5,%ymm8,%ymm10
5748  DB  197,172,88,201                      ; vaddps        %ymm1,%ymm10,%ymm1
5749  DB  197,180,89,210                      ; vmulps        %ymm2,%ymm9,%ymm2
5750  DB  197,60,89,214                       ; vmulps        %ymm6,%ymm8,%ymm10
5751  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
5752  DB  197,180,89,219                      ; vmulps        %ymm3,%ymm9,%ymm3
5753  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5754  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5755  DB  72,173                              ; lods          %ds:(%rsi),%rax
5756  DB  255,224                             ; jmpq          *%rax
5757
5758PUBLIC _sk_darken_avx
5759_sk_darken_avx LABEL PROC
5760  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
5761  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5762  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
5763  DB  196,193,124,95,193                  ; vmaxps        %ymm9,%ymm0,%ymm0
5764  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5765  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
5766  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
5767  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
5768  DB  196,193,116,95,201                  ; vmaxps        %ymm9,%ymm1,%ymm1
5769  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
5770  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
5771  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
5772  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
5773  DB  196,193,108,95,209                  ; vmaxps        %ymm9,%ymm2,%ymm2
5774  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
5775  DB  196,98,125,24,5,183,99,0,0          ; vbroadcastss  0x63b7(%rip),%ymm8        # 69ec <_sk_callback_avx+0x166>
5776  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5777  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5778  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5779  DB  72,173                              ; lods          %ds:(%rsi),%rax
5780  DB  255,224                             ; jmpq          *%rax
5781
5782PUBLIC _sk_lighten_avx
5783_sk_lighten_avx LABEL PROC
5784  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
5785  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5786  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
5787  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
5788  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5789  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
5790  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
5791  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
5792  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
5793  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
5794  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
5795  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
5796  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
5797  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
5798  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
5799  DB  196,98,125,24,5,99,99,0,0           ; vbroadcastss  0x6363(%rip),%ymm8        # 69f0 <_sk_callback_avx+0x16a>
5800  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5801  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5802  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5803  DB  72,173                              ; lods          %ds:(%rsi),%rax
5804  DB  255,224                             ; jmpq          *%rax
5805
5806PUBLIC _sk_difference_avx
5807_sk_difference_avx LABEL PROC
5808  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
5809  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
5810  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
5811  DB  196,193,124,93,193                  ; vminps        %ymm9,%ymm0,%ymm0
5812  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
5813  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5814  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
5815  DB  197,244,89,207                      ; vmulps        %ymm7,%ymm1,%ymm1
5816  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
5817  DB  196,193,116,93,201                  ; vminps        %ymm9,%ymm1,%ymm1
5818  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
5819  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
5820  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
5821  DB  197,236,89,215                      ; vmulps        %ymm7,%ymm2,%ymm2
5822  DB  197,100,89,206                      ; vmulps        %ymm6,%ymm3,%ymm9
5823  DB  196,193,108,93,209                  ; vminps        %ymm9,%ymm2,%ymm2
5824  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
5825  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
5826  DB  196,98,125,24,5,3,99,0,0            ; vbroadcastss  0x6303(%rip),%ymm8        # 69f4 <_sk_callback_avx+0x16e>
5827  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5828  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5829  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5830  DB  72,173                              ; lods          %ds:(%rsi),%rax
5831  DB  255,224                             ; jmpq          *%rax
5832
5833PUBLIC _sk_exclusion_avx
5834_sk_exclusion_avx LABEL PROC
5835  DB  197,124,88,196                      ; vaddps        %ymm4,%ymm0,%ymm8
5836  DB  197,252,89,196                      ; vmulps        %ymm4,%ymm0,%ymm0
5837  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
5838  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
5839  DB  197,116,88,197                      ; vaddps        %ymm5,%ymm1,%ymm8
5840  DB  197,244,89,205                      ; vmulps        %ymm5,%ymm1,%ymm1
5841  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
5842  DB  197,188,92,201                      ; vsubps        %ymm1,%ymm8,%ymm1
5843  DB  197,108,88,198                      ; vaddps        %ymm6,%ymm2,%ymm8
5844  DB  197,236,89,214                      ; vmulps        %ymm6,%ymm2,%ymm2
5845  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
5846  DB  197,188,92,210                      ; vsubps        %ymm2,%ymm8,%ymm2
5847  DB  196,98,125,24,5,190,98,0,0          ; vbroadcastss  0x62be(%rip),%ymm8        # 69f8 <_sk_callback_avx+0x172>
5848  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5849  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5850  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5851  DB  72,173                              ; lods          %ds:(%rsi),%rax
5852  DB  255,224                             ; jmpq          *%rax
5853
5854PUBLIC _sk_colorburn_avx
5855_sk_colorburn_avx LABEL PROC
5856  DB  196,98,125,24,5,169,98,0,0          ; vbroadcastss  0x62a9(%rip),%ymm8        # 69fc <_sk_callback_avx+0x176>
5857  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
5858  DB  197,52,89,216                       ; vmulps        %ymm0,%ymm9,%ymm11
5859  DB  196,65,44,87,210                    ; vxorps        %ymm10,%ymm10,%ymm10
5860  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5861  DB  197,60,89,228                       ; vmulps        %ymm4,%ymm8,%ymm12
5862  DB  197,68,92,236                       ; vsubps        %ymm4,%ymm7,%ymm13
5863  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
5864  DB  197,20,94,232                       ; vdivps        %ymm0,%ymm13,%ymm13
5865  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
5866  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
5867  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
5868  DB  196,65,36,88,237                    ; vaddps        %ymm13,%ymm11,%ymm13
5869  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
5870  DB  197,28,88,224                       ; vaddps        %ymm0,%ymm12,%ymm12
5871  DB  196,193,124,194,194,0               ; vcmpeqps      %ymm10,%ymm0,%ymm0
5872  DB  196,195,21,74,196,0                 ; vblendvps     %ymm0,%ymm12,%ymm13,%ymm0
5873  DB  197,92,194,231,0                    ; vcmpeqps      %ymm7,%ymm4,%ymm12
5874  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
5875  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
5876  DB  197,52,89,217                       ; vmulps        %ymm1,%ymm9,%ymm11
5877  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
5878  DB  197,68,92,237                       ; vsubps        %ymm5,%ymm7,%ymm13
5879  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
5880  DB  197,20,94,233                       ; vdivps        %ymm1,%ymm13,%ymm13
5881  DB  196,65,68,93,237                    ; vminps        %ymm13,%ymm7,%ymm13
5882  DB  196,65,68,92,237                    ; vsubps        %ymm13,%ymm7,%ymm13
5883  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
5884  DB  196,65,36,88,237                    ; vaddps        %ymm13,%ymm11,%ymm13
5885  DB  196,65,28,88,237                    ; vaddps        %ymm13,%ymm12,%ymm13
5886  DB  197,28,88,225                       ; vaddps        %ymm1,%ymm12,%ymm12
5887  DB  196,193,116,194,202,0               ; vcmpeqps      %ymm10,%ymm1,%ymm1
5888  DB  196,195,21,74,204,16                ; vblendvps     %ymm1,%ymm12,%ymm13,%ymm1
5889  DB  197,84,194,231,0                    ; vcmpeqps      %ymm7,%ymm5,%ymm12
5890  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
5891  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
5892  DB  197,52,89,202                       ; vmulps        %ymm2,%ymm9,%ymm9
5893  DB  196,65,108,194,210,0                ; vcmpeqps      %ymm10,%ymm2,%ymm10
5894  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
5895  DB  197,68,92,230                       ; vsubps        %ymm6,%ymm7,%ymm12
5896  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
5897  DB  197,28,94,226                       ; vdivps        %ymm2,%ymm12,%ymm12
5898  DB  197,164,88,210                      ; vaddps        %ymm2,%ymm11,%ymm2
5899  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
5900  DB  196,65,68,92,228                    ; vsubps        %ymm12,%ymm7,%ymm12
5901  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
5902  DB  196,65,52,88,228                    ; vaddps        %ymm12,%ymm9,%ymm12
5903  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
5904  DB  196,227,37,74,210,160               ; vblendvps     %ymm10,%ymm2,%ymm11,%ymm2
5905  DB  197,76,194,215,0                    ; vcmpeqps      %ymm7,%ymm6,%ymm10
5906  DB  197,52,88,206                       ; vaddps        %ymm6,%ymm9,%ymm9
5907  DB  196,195,109,74,209,160              ; vblendvps     %ymm10,%ymm9,%ymm2,%ymm2
5908  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
5909  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5910  DB  72,173                              ; lods          %ds:(%rsi),%rax
5911  DB  255,224                             ; jmpq          *%rax
5912
5913PUBLIC _sk_colordodge_avx
5914_sk_colordodge_avx LABEL PROC
5915  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
5916  DB  196,98,125,24,13,165,97,0,0         ; vbroadcastss  0x61a5(%rip),%ymm9        # 6a00 <_sk_callback_avx+0x17a>
5917  DB  197,52,92,215                       ; vsubps        %ymm7,%ymm9,%ymm10
5918  DB  197,44,89,216                       ; vmulps        %ymm0,%ymm10,%ymm11
5919  DB  197,52,92,203                       ; vsubps        %ymm3,%ymm9,%ymm9
5920  DB  197,100,89,228                      ; vmulps        %ymm4,%ymm3,%ymm12
5921  DB  197,100,92,232                      ; vsubps        %ymm0,%ymm3,%ymm13
5922  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
5923  DB  197,52,89,236                       ; vmulps        %ymm4,%ymm9,%ymm13
5924  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
5925  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
5926  DB  196,65,36,88,228                    ; vaddps        %ymm12,%ymm11,%ymm12
5927  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
5928  DB  197,20,88,232                       ; vaddps        %ymm0,%ymm13,%ymm13
5929  DB  197,252,194,195,0                   ; vcmpeqps      %ymm3,%ymm0,%ymm0
5930  DB  196,195,29,74,197,0                 ; vblendvps     %ymm0,%ymm13,%ymm12,%ymm0
5931  DB  196,65,92,194,224,0                 ; vcmpeqps      %ymm8,%ymm4,%ymm12
5932  DB  197,36,88,220                       ; vaddps        %ymm4,%ymm11,%ymm11
5933  DB  196,195,125,74,195,192              ; vblendvps     %ymm12,%ymm11,%ymm0,%ymm0
5934  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
5935  DB  197,100,89,229                      ; vmulps        %ymm5,%ymm3,%ymm12
5936  DB  197,100,92,233                      ; vsubps        %ymm1,%ymm3,%ymm13
5937  DB  196,65,28,94,229                    ; vdivps        %ymm13,%ymm12,%ymm12
5938  DB  197,52,89,237                       ; vmulps        %ymm5,%ymm9,%ymm13
5939  DB  196,65,68,93,228                    ; vminps        %ymm12,%ymm7,%ymm12
5940  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
5941  DB  196,65,36,88,228                    ; vaddps        %ymm12,%ymm11,%ymm12
5942  DB  196,65,20,88,228                    ; vaddps        %ymm12,%ymm13,%ymm12
5943  DB  197,20,88,233                       ; vaddps        %ymm1,%ymm13,%ymm13
5944  DB  197,244,194,203,0                   ; vcmpeqps      %ymm3,%ymm1,%ymm1
5945  DB  196,195,29,74,205,16                ; vblendvps     %ymm1,%ymm13,%ymm12,%ymm1
5946  DB  196,65,84,194,224,0                 ; vcmpeqps      %ymm8,%ymm5,%ymm12
5947  DB  197,36,88,221                       ; vaddps        %ymm5,%ymm11,%ymm11
5948  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
5949  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
5950  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
5951  DB  197,100,92,226                      ; vsubps        %ymm2,%ymm3,%ymm12
5952  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
5953  DB  197,52,89,230                       ; vmulps        %ymm6,%ymm9,%ymm12
5954  DB  196,65,68,93,219                    ; vminps        %ymm11,%ymm7,%ymm11
5955  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
5956  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
5957  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
5958  DB  197,28,88,226                       ; vaddps        %ymm2,%ymm12,%ymm12
5959  DB  197,236,194,211,0                   ; vcmpeqps      %ymm3,%ymm2,%ymm2
5960  DB  196,195,37,74,212,32                ; vblendvps     %ymm2,%ymm12,%ymm11,%ymm2
5961  DB  196,65,76,194,192,0                 ; vcmpeqps      %ymm8,%ymm6,%ymm8
5962  DB  197,44,88,214                       ; vaddps        %ymm6,%ymm10,%ymm10
5963  DB  196,195,109,74,210,128              ; vblendvps     %ymm8,%ymm10,%ymm2,%ymm2
5964  DB  197,52,89,199                       ; vmulps        %ymm7,%ymm9,%ymm8
5965  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
5966  DB  72,173                              ; lods          %ds:(%rsi),%rax
5967  DB  255,224                             ; jmpq          *%rax
5968
5969PUBLIC _sk_hardlight_avx
5970_sk_hardlight_avx LABEL PROC
5971  DB  196,98,125,24,5,183,96,0,0          ; vbroadcastss  0x60b7(%rip),%ymm8        # 6a04 <_sk_callback_avx+0x17e>
5972  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
5973  DB  197,44,89,200                       ; vmulps        %ymm0,%ymm10,%ymm9
5974  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
5975  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
5976  DB  196,65,36,88,217                    ; vaddps        %ymm9,%ymm11,%ymm11
5977  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
5978  DB  197,52,194,227,2                    ; vcmpleps      %ymm3,%ymm9,%ymm12
5979  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
5980  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
5981  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
5982  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
5983  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
5984  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
5985  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
5986  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
5987  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
5988  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
5989  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
5990  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
5991  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
5992  DB  197,116,88,225                      ; vaddps        %ymm1,%ymm1,%ymm12
5993  DB  197,28,194,227,2                    ; vcmpleps      %ymm3,%ymm12,%ymm12
5994  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
5995  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
5996  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
5997  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
5998  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
5999  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
6000  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
6001  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
6002  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
6003  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
6004  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
6005  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
6006  DB  197,108,88,218                      ; vaddps        %ymm2,%ymm2,%ymm11
6007  DB  197,36,194,219,2                    ; vcmpleps      %ymm3,%ymm11,%ymm11
6008  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
6009  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
6010  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
6011  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
6012  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
6013  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
6014  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
6015  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
6016  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
6017  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
6018  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
6019  DB  72,173                              ; lods          %ds:(%rsi),%rax
6020  DB  255,224                             ; jmpq          *%rax
6021
6022PUBLIC _sk_overlay_avx
6023_sk_overlay_avx LABEL PROC
6024  DB  196,98,125,24,5,224,95,0,0          ; vbroadcastss  0x5fe0(%rip),%ymm8        # 6a08 <_sk_callback_avx+0x182>
6025  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
6026  DB  197,44,89,200                       ; vmulps        %ymm0,%ymm10,%ymm9
6027  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
6028  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
6029  DB  196,65,36,88,217                    ; vaddps        %ymm9,%ymm11,%ymm11
6030  DB  197,92,88,204                       ; vaddps        %ymm4,%ymm4,%ymm9
6031  DB  197,52,194,231,2                    ; vcmpleps      %ymm7,%ymm9,%ymm12
6032  DB  197,124,89,204                      ; vmulps        %ymm4,%ymm0,%ymm9
6033  DB  196,65,52,88,233                    ; vaddps        %ymm9,%ymm9,%ymm13
6034  DB  197,100,89,207                      ; vmulps        %ymm7,%ymm3,%ymm9
6035  DB  197,68,92,244                       ; vsubps        %ymm4,%ymm7,%ymm14
6036  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
6037  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
6038  DB  197,252,88,192                      ; vaddps        %ymm0,%ymm0,%ymm0
6039  DB  197,180,92,192                      ; vsubps        %ymm0,%ymm9,%ymm0
6040  DB  196,195,125,74,197,192              ; vblendvps     %ymm12,%ymm13,%ymm0,%ymm0
6041  DB  197,164,88,192                      ; vaddps        %ymm0,%ymm11,%ymm0
6042  DB  197,44,89,217                       ; vmulps        %ymm1,%ymm10,%ymm11
6043  DB  197,60,89,229                       ; vmulps        %ymm5,%ymm8,%ymm12
6044  DB  196,65,28,88,219                    ; vaddps        %ymm11,%ymm12,%ymm11
6045  DB  197,84,88,229                       ; vaddps        %ymm5,%ymm5,%ymm12
6046  DB  197,28,194,231,2                    ; vcmpleps      %ymm7,%ymm12,%ymm12
6047  DB  197,116,89,237                      ; vmulps        %ymm5,%ymm1,%ymm13
6048  DB  196,65,20,88,237                    ; vaddps        %ymm13,%ymm13,%ymm13
6049  DB  197,68,92,245                       ; vsubps        %ymm5,%ymm7,%ymm14
6050  DB  197,228,92,201                      ; vsubps        %ymm1,%ymm3,%ymm1
6051  DB  196,193,116,89,206                  ; vmulps        %ymm14,%ymm1,%ymm1
6052  DB  197,244,88,201                      ; vaddps        %ymm1,%ymm1,%ymm1
6053  DB  197,180,92,201                      ; vsubps        %ymm1,%ymm9,%ymm1
6054  DB  196,195,117,74,205,192              ; vblendvps     %ymm12,%ymm13,%ymm1,%ymm1
6055  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
6056  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
6057  DB  197,60,89,222                       ; vmulps        %ymm6,%ymm8,%ymm11
6058  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
6059  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
6060  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
6061  DB  197,108,89,230                      ; vmulps        %ymm6,%ymm2,%ymm12
6062  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
6063  DB  197,68,92,238                       ; vsubps        %ymm6,%ymm7,%ymm13
6064  DB  197,228,92,210                      ; vsubps        %ymm2,%ymm3,%ymm2
6065  DB  196,193,108,89,213                  ; vmulps        %ymm13,%ymm2,%ymm2
6066  DB  197,236,88,210                      ; vaddps        %ymm2,%ymm2,%ymm2
6067  DB  197,180,92,210                      ; vsubps        %ymm2,%ymm9,%ymm2
6068  DB  196,195,109,74,212,176              ; vblendvps     %ymm11,%ymm12,%ymm2,%ymm2
6069  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
6070  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
6071  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
6072  DB  72,173                              ; lods          %ds:(%rsi),%rax
6073  DB  255,224                             ; jmpq          *%rax
6074
6075PUBLIC _sk_softlight_avx
6076_sk_softlight_avx LABEL PROC
6077  DB  72,131,236,88                       ; sub           $0x58,%rsp
6078  DB  197,252,17,84,36,32                 ; vmovups       %ymm2,0x20(%rsp)
6079  DB  197,252,40,209                      ; vmovaps       %ymm1,%ymm2
6080  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
6081  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
6082  DB  197,52,194,215,1                    ; vcmpltps      %ymm7,%ymm9,%ymm10
6083  DB  197,92,94,199                       ; vdivps        %ymm7,%ymm4,%ymm8
6084  DB  196,67,53,74,224,160                ; vblendvps     %ymm10,%ymm8,%ymm9,%ymm12
6085  DB  196,65,28,88,196                    ; vaddps        %ymm12,%ymm12,%ymm8
6086  DB  196,65,60,88,192                    ; vaddps        %ymm8,%ymm8,%ymm8
6087  DB  196,65,60,89,216                    ; vmulps        %ymm8,%ymm8,%ymm11
6088  DB  196,65,60,88,195                    ; vaddps        %ymm11,%ymm8,%ymm8
6089  DB  196,98,125,24,29,211,94,0,0         ; vbroadcastss  0x5ed3(%rip),%ymm11        # 6a10 <_sk_callback_avx+0x18a>
6090  DB  196,65,28,88,235                    ; vaddps        %ymm11,%ymm12,%ymm13
6091  DB  196,65,20,89,192                    ; vmulps        %ymm8,%ymm13,%ymm8
6092  DB  196,98,125,24,45,196,94,0,0         ; vbroadcastss  0x5ec4(%rip),%ymm13        # 6a14 <_sk_callback_avx+0x18e>
6093  DB  196,65,28,89,245                    ; vmulps        %ymm13,%ymm12,%ymm14
6094  DB  196,65,12,88,192                    ; vaddps        %ymm8,%ymm14,%ymm8
6095  DB  196,65,124,82,244                   ; vrsqrtps      %ymm12,%ymm14
6096  DB  196,65,124,83,246                   ; vrcpps        %ymm14,%ymm14
6097  DB  196,65,12,92,244                    ; vsubps        %ymm12,%ymm14,%ymm14
6098  DB  197,92,88,252                       ; vaddps        %ymm4,%ymm4,%ymm15
6099  DB  196,65,4,88,255                     ; vaddps        %ymm15,%ymm15,%ymm15
6100  DB  197,4,194,255,2                     ; vcmpleps      %ymm7,%ymm15,%ymm15
6101  DB  196,67,13,74,240,240                ; vblendvps     %ymm15,%ymm8,%ymm14,%ymm14
6102  DB  197,116,88,249                      ; vaddps        %ymm1,%ymm1,%ymm15
6103  DB  196,98,125,24,5,130,94,0,0          ; vbroadcastss  0x5e82(%rip),%ymm8        # 6a0c <_sk_callback_avx+0x186>
6104  DB  196,65,60,92,228                    ; vsubps        %ymm12,%ymm8,%ymm12
6105  DB  197,132,92,195                      ; vsubps        %ymm3,%ymm15,%ymm0
6106  DB  196,65,124,89,228                   ; vmulps        %ymm12,%ymm0,%ymm12
6107  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
6108  DB  196,193,124,89,198                  ; vmulps        %ymm14,%ymm0,%ymm0
6109  DB  197,100,89,244                      ; vmulps        %ymm4,%ymm3,%ymm14
6110  DB  197,140,88,192                      ; vaddps        %ymm0,%ymm14,%ymm0
6111  DB  197,28,88,227                       ; vaddps        %ymm3,%ymm12,%ymm12
6112  DB  197,28,89,228                       ; vmulps        %ymm4,%ymm12,%ymm12
6113  DB  197,4,194,243,2                     ; vcmpleps      %ymm3,%ymm15,%ymm14
6114  DB  196,195,125,74,196,224              ; vblendvps     %ymm14,%ymm12,%ymm0,%ymm0
6115  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
6116  DB  197,212,94,199                      ; vdivps        %ymm7,%ymm5,%ymm0
6117  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
6118  DB  197,124,88,240                      ; vaddps        %ymm0,%ymm0,%ymm14
6119  DB  196,65,12,88,246                    ; vaddps        %ymm14,%ymm14,%ymm14
6120  DB  196,65,12,89,254                    ; vmulps        %ymm14,%ymm14,%ymm15
6121  DB  196,65,12,88,247                    ; vaddps        %ymm15,%ymm14,%ymm14
6122  DB  196,65,124,88,251                   ; vaddps        %ymm11,%ymm0,%ymm15
6123  DB  196,65,4,89,246                     ; vmulps        %ymm14,%ymm15,%ymm14
6124  DB  196,65,124,89,253                   ; vmulps        %ymm13,%ymm0,%ymm15
6125  DB  196,65,4,88,246                     ; vaddps        %ymm14,%ymm15,%ymm14
6126  DB  197,124,82,248                      ; vrsqrtps      %ymm0,%ymm15
6127  DB  196,65,124,83,255                   ; vrcpps        %ymm15,%ymm15
6128  DB  197,4,92,248                        ; vsubps        %ymm0,%ymm15,%ymm15
6129  DB  197,84,88,229                       ; vaddps        %ymm5,%ymm5,%ymm12
6130  DB  196,65,28,88,228                    ; vaddps        %ymm12,%ymm12,%ymm12
6131  DB  197,28,194,231,2                    ; vcmpleps      %ymm7,%ymm12,%ymm12
6132  DB  196,67,5,74,230,192                 ; vblendvps     %ymm12,%ymm14,%ymm15,%ymm12
6133  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
6134  DB  197,108,88,242                      ; vaddps        %ymm2,%ymm2,%ymm14
6135  DB  197,12,92,251                       ; vsubps        %ymm3,%ymm14,%ymm15
6136  DB  197,132,89,192                      ; vmulps        %ymm0,%ymm15,%ymm0
6137  DB  197,4,89,255                        ; vmulps        %ymm7,%ymm15,%ymm15
6138  DB  196,65,4,89,228                     ; vmulps        %ymm12,%ymm15,%ymm12
6139  DB  197,100,89,253                      ; vmulps        %ymm5,%ymm3,%ymm15
6140  DB  196,65,4,88,228                     ; vaddps        %ymm12,%ymm15,%ymm12
6141  DB  197,252,88,195                      ; vaddps        %ymm3,%ymm0,%ymm0
6142  DB  197,252,89,197                      ; vmulps        %ymm5,%ymm0,%ymm0
6143  DB  197,12,194,243,2                    ; vcmpleps      %ymm3,%ymm14,%ymm14
6144  DB  196,99,29,74,240,224                ; vblendvps     %ymm14,%ymm0,%ymm12,%ymm14
6145  DB  197,204,94,199                      ; vdivps        %ymm7,%ymm6,%ymm0
6146  DB  196,227,53,74,192,160               ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm0
6147  DB  197,124,88,200                      ; vaddps        %ymm0,%ymm0,%ymm9
6148  DB  196,65,52,88,201                    ; vaddps        %ymm9,%ymm9,%ymm9
6149  DB  196,65,52,89,209                    ; vmulps        %ymm9,%ymm9,%ymm10
6150  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
6151  DB  196,65,124,88,211                   ; vaddps        %ymm11,%ymm0,%ymm10
6152  DB  196,65,44,89,201                    ; vmulps        %ymm9,%ymm10,%ymm9
6153  DB  196,65,124,89,213                   ; vmulps        %ymm13,%ymm0,%ymm10
6154  DB  196,65,44,88,201                    ; vaddps        %ymm9,%ymm10,%ymm9
6155  DB  197,124,82,208                      ; vrsqrtps      %ymm0,%ymm10
6156  DB  196,65,124,83,210                   ; vrcpps        %ymm10,%ymm10
6157  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
6158  DB  197,76,88,222                       ; vaddps        %ymm6,%ymm6,%ymm11
6159  DB  196,65,36,88,219                    ; vaddps        %ymm11,%ymm11,%ymm11
6160  DB  197,36,194,223,2                    ; vcmpleps      %ymm7,%ymm11,%ymm11
6161  DB  196,67,45,74,201,176                ; vblendvps     %ymm11,%ymm9,%ymm10,%ymm9
6162  DB  197,124,16,100,36,32                ; vmovups       0x20(%rsp),%ymm12
6163  DB  196,65,28,88,212                    ; vaddps        %ymm12,%ymm12,%ymm10
6164  DB  197,44,92,219                       ; vsubps        %ymm3,%ymm10,%ymm11
6165  DB  197,188,92,192                      ; vsubps        %ymm0,%ymm8,%ymm0
6166  DB  197,164,89,192                      ; vmulps        %ymm0,%ymm11,%ymm0
6167  DB  197,36,89,223                       ; vmulps        %ymm7,%ymm11,%ymm11
6168  DB  196,65,36,89,201                    ; vmulps        %ymm9,%ymm11,%ymm9
6169  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
6170  DB  196,65,36,88,201                    ; vaddps        %ymm9,%ymm11,%ymm9
6171  DB  197,252,88,195                      ; vaddps        %ymm3,%ymm0,%ymm0
6172  DB  197,252,89,198                      ; vmulps        %ymm6,%ymm0,%ymm0
6173  DB  197,44,194,211,2                    ; vcmpleps      %ymm3,%ymm10,%ymm10
6174  DB  196,99,53,74,200,160                ; vblendvps     %ymm10,%ymm0,%ymm9,%ymm9
6175  DB  197,60,92,215                       ; vsubps        %ymm7,%ymm8,%ymm10
6176  DB  197,172,89,193                      ; vmulps        %ymm1,%ymm10,%ymm0
6177  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
6178  DB  197,188,89,204                      ; vmulps        %ymm4,%ymm8,%ymm1
6179  DB  197,244,88,192                      ; vaddps        %ymm0,%ymm1,%ymm0
6180  DB  197,252,88,4,36                     ; vaddps        (%rsp),%ymm0,%ymm0
6181  DB  197,172,89,202                      ; vmulps        %ymm2,%ymm10,%ymm1
6182  DB  197,188,89,213                      ; vmulps        %ymm5,%ymm8,%ymm2
6183  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
6184  DB  196,193,116,88,206                  ; vaddps        %ymm14,%ymm1,%ymm1
6185  DB  196,193,44,89,212                   ; vmulps        %ymm12,%ymm10,%ymm2
6186  DB  197,60,89,214                       ; vmulps        %ymm6,%ymm8,%ymm10
6187  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
6188  DB  196,193,108,88,209                  ; vaddps        %ymm9,%ymm2,%ymm2
6189  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
6190  DB  197,188,88,219                      ; vaddps        %ymm3,%ymm8,%ymm3
6191  DB  72,173                              ; lods          %ds:(%rsi),%rax
6192  DB  72,131,196,88                       ; add           $0x58,%rsp
6193  DB  255,224                             ; jmpq          *%rax
6194
6195PUBLIC _sk_hue_avx
6196_sk_hue_avx LABEL PROC
6197  DB  72,131,236,88                       ; sub           $0x58,%rsp
6198  DB  197,252,17,84,36,32                 ; vmovups       %ymm2,0x20(%rsp)
6199  DB  197,124,40,193                      ; vmovaps       %ymm1,%ymm8
6200  DB  197,124,17,4,36                     ; vmovups       %ymm8,(%rsp)
6201  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
6202  DB  197,116,89,203                      ; vmulps        %ymm3,%ymm1,%ymm9
6203  DB  197,60,89,211                       ; vmulps        %ymm3,%ymm8,%ymm10
6204  DB  197,108,89,219                      ; vmulps        %ymm3,%ymm2,%ymm11
6205  DB  197,84,95,198                       ; vmaxps        %ymm6,%ymm5,%ymm8
6206  DB  196,65,92,95,192                    ; vmaxps        %ymm8,%ymm4,%ymm8
6207  DB  197,84,93,230                       ; vminps        %ymm6,%ymm5,%ymm12
6208  DB  196,65,92,93,228                    ; vminps        %ymm12,%ymm4,%ymm12
6209  DB  196,65,60,92,196                    ; vsubps        %ymm12,%ymm8,%ymm8
6210  DB  197,60,89,227                       ; vmulps        %ymm3,%ymm8,%ymm12
6211  DB  196,65,44,93,195                    ; vminps        %ymm11,%ymm10,%ymm8
6212  DB  196,65,52,93,232                    ; vminps        %ymm8,%ymm9,%ymm13
6213  DB  196,65,44,95,195                    ; vmaxps        %ymm11,%ymm10,%ymm8
6214  DB  196,65,52,95,192                    ; vmaxps        %ymm8,%ymm9,%ymm8
6215  DB  196,65,60,92,245                    ; vsubps        %ymm13,%ymm8,%ymm14
6216  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6217  DB  196,65,12,194,248,0                 ; vcmpeqps      %ymm8,%ymm14,%ymm15
6218  DB  196,65,52,92,205                    ; vsubps        %ymm13,%ymm9,%ymm9
6219  DB  196,65,28,89,201                    ; vmulps        %ymm9,%ymm12,%ymm9
6220  DB  196,65,52,94,206                    ; vdivps        %ymm14,%ymm9,%ymm9
6221  DB  196,67,53,74,200,240                ; vblendvps     %ymm15,%ymm8,%ymm9,%ymm9
6222  DB  196,65,44,92,213                    ; vsubps        %ymm13,%ymm10,%ymm10
6223  DB  196,65,28,89,210                    ; vmulps        %ymm10,%ymm12,%ymm10
6224  DB  196,65,44,94,214                    ; vdivps        %ymm14,%ymm10,%ymm10
6225  DB  196,67,45,74,208,240                ; vblendvps     %ymm15,%ymm8,%ymm10,%ymm10
6226  DB  196,65,36,92,221                    ; vsubps        %ymm13,%ymm11,%ymm11
6227  DB  196,65,28,89,219                    ; vmulps        %ymm11,%ymm12,%ymm11
6228  DB  196,65,36,94,222                    ; vdivps        %ymm14,%ymm11,%ymm11
6229  DB  196,67,37,74,224,240                ; vblendvps     %ymm15,%ymm8,%ymm11,%ymm12
6230  DB  196,98,125,24,53,76,92,0,0          ; vbroadcastss  0x5c4c(%rip),%ymm14        # 6a18 <_sk_callback_avx+0x192>
6231  DB  196,65,92,89,222                    ; vmulps        %ymm14,%ymm4,%ymm11
6232  DB  196,98,125,24,61,66,92,0,0          ; vbroadcastss  0x5c42(%rip),%ymm15        # 6a1c <_sk_callback_avx+0x196>
6233  DB  196,65,84,89,239                    ; vmulps        %ymm15,%ymm5,%ymm13
6234  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
6235  DB  196,226,125,24,5,51,92,0,0          ; vbroadcastss  0x5c33(%rip),%ymm0        # 6a20 <_sk_callback_avx+0x19a>
6236  DB  197,76,89,232                       ; vmulps        %ymm0,%ymm6,%ymm13
6237  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
6238  DB  196,65,52,89,238                    ; vmulps        %ymm14,%ymm9,%ymm13
6239  DB  196,193,44,89,215                   ; vmulps        %ymm15,%ymm10,%ymm2
6240  DB  197,148,88,210                      ; vaddps        %ymm2,%ymm13,%ymm2
6241  DB  197,28,89,232                       ; vmulps        %ymm0,%ymm12,%ymm13
6242  DB  196,193,108,88,213                  ; vaddps        %ymm13,%ymm2,%ymm2
6243  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
6244  DB  197,164,92,210                      ; vsubps        %ymm2,%ymm11,%ymm2
6245  DB  197,52,88,202                       ; vaddps        %ymm2,%ymm9,%ymm9
6246  DB  197,44,88,218                       ; vaddps        %ymm2,%ymm10,%ymm11
6247  DB  197,28,88,226                       ; vaddps        %ymm2,%ymm12,%ymm12
6248  DB  196,193,36,93,212                   ; vminps        %ymm12,%ymm11,%ymm2
6249  DB  197,52,93,234                       ; vminps        %ymm2,%ymm9,%ymm13
6250  DB  196,193,52,89,214                   ; vmulps        %ymm14,%ymm9,%ymm2
6251  DB  196,65,36,89,215                    ; vmulps        %ymm15,%ymm11,%ymm10
6252  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
6253  DB  197,156,89,192                      ; vmulps        %ymm0,%ymm12,%ymm0
6254  DB  197,124,88,210                      ; vaddps        %ymm2,%ymm0,%ymm10
6255  DB  196,193,52,92,194                   ; vsubps        %ymm10,%ymm9,%ymm0
6256  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
6257  DB  196,193,44,92,213                   ; vsubps        %ymm13,%ymm10,%ymm2
6258  DB  197,252,94,194                      ; vdivps        %ymm2,%ymm0,%ymm0
6259  DB  196,65,36,92,242                    ; vsubps        %ymm10,%ymm11,%ymm14
6260  DB  196,65,44,89,246                    ; vmulps        %ymm14,%ymm10,%ymm14
6261  DB  197,12,94,242                       ; vdivps        %ymm2,%ymm14,%ymm14
6262  DB  196,65,28,92,250                    ; vsubps        %ymm10,%ymm12,%ymm15
6263  DB  196,65,44,89,255                    ; vmulps        %ymm15,%ymm10,%ymm15
6264  DB  197,132,94,210                      ; vdivps        %ymm2,%ymm15,%ymm2
6265  DB  196,65,60,194,237,2                 ; vcmpleps      %ymm13,%ymm8,%ymm13
6266  DB  196,65,44,88,246                    ; vaddps        %ymm14,%ymm10,%ymm14
6267  DB  196,67,13,74,243,208                ; vblendvps     %ymm13,%ymm11,%ymm14,%ymm14
6268  DB  196,65,36,95,220                    ; vmaxps        %ymm12,%ymm11,%ymm11
6269  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
6270  DB  196,195,109,74,212,208              ; vblendvps     %ymm13,%ymm12,%ymm2,%ymm2
6271  DB  197,172,88,192                      ; vaddps        %ymm0,%ymm10,%ymm0
6272  DB  196,195,125,74,193,208              ; vblendvps     %ymm13,%ymm9,%ymm0,%ymm0
6273  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
6274  DB  196,65,52,95,203                    ; vmaxps        %ymm11,%ymm9,%ymm9
6275  DB  196,65,124,92,218                   ; vsubps        %ymm10,%ymm0,%ymm11
6276  DB  196,65,28,92,234                    ; vsubps        %ymm10,%ymm12,%ymm13
6277  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
6278  DB  196,65,28,194,249,1                 ; vcmpltps      %ymm9,%ymm12,%ymm15
6279  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
6280  DB  196,65,36,94,217                    ; vdivps        %ymm9,%ymm11,%ymm11
6281  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
6282  DB  196,195,125,74,195,240              ; vblendvps     %ymm15,%ymm11,%ymm0,%ymm0
6283  DB  196,65,12,92,218                    ; vsubps        %ymm10,%ymm14,%ymm11
6284  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
6285  DB  196,65,36,94,217                    ; vdivps        %ymm9,%ymm11,%ymm11
6286  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
6287  DB  196,67,13,74,219,240                ; vblendvps     %ymm15,%ymm11,%ymm14,%ymm11
6288  DB  196,65,108,92,242                   ; vsubps        %ymm10,%ymm2,%ymm14
6289  DB  196,65,20,89,238                    ; vmulps        %ymm14,%ymm13,%ymm13
6290  DB  196,65,20,94,201                    ; vdivps        %ymm9,%ymm13,%ymm9
6291  DB  196,65,44,88,201                    ; vaddps        %ymm9,%ymm10,%ymm9
6292  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
6293  DB  196,65,36,95,208                    ; vmaxps        %ymm8,%ymm11,%ymm10
6294  DB  196,195,109,74,209,240              ; vblendvps     %ymm15,%ymm9,%ymm2,%ymm2
6295  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
6296  DB  196,98,125,24,5,12,91,0,0           ; vbroadcastss  0x5b0c(%rip),%ymm8        # 6a24 <_sk_callback_avx+0x19e>
6297  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
6298  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
6299  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
6300  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
6301  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
6302  DB  197,244,88,192                      ; vaddps        %ymm0,%ymm1,%ymm0
6303  DB  197,180,89,12,36                    ; vmulps        (%rsp),%ymm9,%ymm1
6304  DB  197,60,89,221                       ; vmulps        %ymm5,%ymm8,%ymm11
6305  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
6306  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
6307  DB  197,52,89,76,36,32                  ; vmulps        0x20(%rsp),%ymm9,%ymm9
6308  DB  197,60,89,198                       ; vmulps        %ymm6,%ymm8,%ymm8
6309  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
6310  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
6311  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
6312  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
6313  DB  72,173                              ; lods          %ds:(%rsi),%rax
6314  DB  72,131,196,88                       ; add           $0x58,%rsp
6315  DB  255,224                             ; jmpq          *%rax
6316
6317PUBLIC _sk_saturation_avx
6318_sk_saturation_avx LABEL PROC
6319  DB  72,131,236,88                       ; sub           $0x58,%rsp
6320  DB  197,124,40,193                      ; vmovaps       %ymm1,%ymm8
6321  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
6322  DB  197,100,89,204                      ; vmulps        %ymm4,%ymm3,%ymm9
6323  DB  197,100,89,213                      ; vmulps        %ymm5,%ymm3,%ymm10
6324  DB  197,100,89,222                      ; vmulps        %ymm6,%ymm3,%ymm11
6325  DB  197,252,17,84,36,32                 ; vmovups       %ymm2,0x20(%rsp)
6326  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
6327  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
6328  DB  197,124,95,194                      ; vmaxps        %ymm2,%ymm0,%ymm8
6329  DB  196,65,116,95,192                   ; vmaxps        %ymm8,%ymm1,%ymm8
6330  DB  197,124,93,226                      ; vminps        %ymm2,%ymm0,%ymm12
6331  DB  196,65,116,93,228                   ; vminps        %ymm12,%ymm1,%ymm12
6332  DB  196,65,60,92,196                    ; vsubps        %ymm12,%ymm8,%ymm8
6333  DB  197,60,89,231                       ; vmulps        %ymm7,%ymm8,%ymm12
6334  DB  196,65,44,93,195                    ; vminps        %ymm11,%ymm10,%ymm8
6335  DB  196,65,52,93,232                    ; vminps        %ymm8,%ymm9,%ymm13
6336  DB  196,65,44,95,195                    ; vmaxps        %ymm11,%ymm10,%ymm8
6337  DB  196,65,52,95,192                    ; vmaxps        %ymm8,%ymm9,%ymm8
6338  DB  196,65,60,92,245                    ; vsubps        %ymm13,%ymm8,%ymm14
6339  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6340  DB  196,65,12,194,248,0                 ; vcmpeqps      %ymm8,%ymm14,%ymm15
6341  DB  196,65,52,92,205                    ; vsubps        %ymm13,%ymm9,%ymm9
6342  DB  196,65,28,89,201                    ; vmulps        %ymm9,%ymm12,%ymm9
6343  DB  196,65,52,94,206                    ; vdivps        %ymm14,%ymm9,%ymm9
6344  DB  196,67,53,74,200,240                ; vblendvps     %ymm15,%ymm8,%ymm9,%ymm9
6345  DB  196,65,44,92,213                    ; vsubps        %ymm13,%ymm10,%ymm10
6346  DB  196,65,28,89,210                    ; vmulps        %ymm10,%ymm12,%ymm10
6347  DB  196,65,44,94,214                    ; vdivps        %ymm14,%ymm10,%ymm10
6348  DB  196,67,45,74,208,240                ; vblendvps     %ymm15,%ymm8,%ymm10,%ymm10
6349  DB  196,65,36,92,221                    ; vsubps        %ymm13,%ymm11,%ymm11
6350  DB  196,65,28,89,219                    ; vmulps        %ymm11,%ymm12,%ymm11
6351  DB  196,65,36,94,222                    ; vdivps        %ymm14,%ymm11,%ymm11
6352  DB  196,67,37,74,224,240                ; vblendvps     %ymm15,%ymm8,%ymm11,%ymm12
6353  DB  196,98,125,24,53,20,90,0,0          ; vbroadcastss  0x5a14(%rip),%ymm14        # 6a28 <_sk_callback_avx+0x1a2>
6354  DB  196,65,92,89,222                    ; vmulps        %ymm14,%ymm4,%ymm11
6355  DB  196,98,125,24,61,10,90,0,0          ; vbroadcastss  0x5a0a(%rip),%ymm15        # 6a2c <_sk_callback_avx+0x1a6>
6356  DB  196,65,84,89,239                    ; vmulps        %ymm15,%ymm5,%ymm13
6357  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
6358  DB  196,226,125,24,5,251,89,0,0         ; vbroadcastss  0x59fb(%rip),%ymm0        # 6a30 <_sk_callback_avx+0x1aa>
6359  DB  197,76,89,232                       ; vmulps        %ymm0,%ymm6,%ymm13
6360  DB  196,65,36,88,221                    ; vaddps        %ymm13,%ymm11,%ymm11
6361  DB  196,65,52,89,238                    ; vmulps        %ymm14,%ymm9,%ymm13
6362  DB  196,193,44,89,215                   ; vmulps        %ymm15,%ymm10,%ymm2
6363  DB  197,148,88,210                      ; vaddps        %ymm2,%ymm13,%ymm2
6364  DB  197,28,89,232                       ; vmulps        %ymm0,%ymm12,%ymm13
6365  DB  196,193,108,88,213                  ; vaddps        %ymm13,%ymm2,%ymm2
6366  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
6367  DB  197,164,92,210                      ; vsubps        %ymm2,%ymm11,%ymm2
6368  DB  197,52,88,202                       ; vaddps        %ymm2,%ymm9,%ymm9
6369  DB  197,44,88,218                       ; vaddps        %ymm2,%ymm10,%ymm11
6370  DB  197,28,88,226                       ; vaddps        %ymm2,%ymm12,%ymm12
6371  DB  196,193,36,93,212                   ; vminps        %ymm12,%ymm11,%ymm2
6372  DB  197,52,93,234                       ; vminps        %ymm2,%ymm9,%ymm13
6373  DB  196,193,52,89,214                   ; vmulps        %ymm14,%ymm9,%ymm2
6374  DB  196,65,36,89,215                    ; vmulps        %ymm15,%ymm11,%ymm10
6375  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
6376  DB  197,156,89,192                      ; vmulps        %ymm0,%ymm12,%ymm0
6377  DB  197,124,88,210                      ; vaddps        %ymm2,%ymm0,%ymm10
6378  DB  196,193,52,92,194                   ; vsubps        %ymm10,%ymm9,%ymm0
6379  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
6380  DB  196,193,44,92,213                   ; vsubps        %ymm13,%ymm10,%ymm2
6381  DB  197,252,94,194                      ; vdivps        %ymm2,%ymm0,%ymm0
6382  DB  196,65,36,92,242                    ; vsubps        %ymm10,%ymm11,%ymm14
6383  DB  196,65,44,89,246                    ; vmulps        %ymm14,%ymm10,%ymm14
6384  DB  197,12,94,242                       ; vdivps        %ymm2,%ymm14,%ymm14
6385  DB  196,65,28,92,250                    ; vsubps        %ymm10,%ymm12,%ymm15
6386  DB  196,65,44,89,255                    ; vmulps        %ymm15,%ymm10,%ymm15
6387  DB  197,132,94,210                      ; vdivps        %ymm2,%ymm15,%ymm2
6388  DB  196,65,60,194,237,2                 ; vcmpleps      %ymm13,%ymm8,%ymm13
6389  DB  196,65,44,88,246                    ; vaddps        %ymm14,%ymm10,%ymm14
6390  DB  196,67,13,74,243,208                ; vblendvps     %ymm13,%ymm11,%ymm14,%ymm14
6391  DB  196,65,36,95,220                    ; vmaxps        %ymm12,%ymm11,%ymm11
6392  DB  197,172,88,210                      ; vaddps        %ymm2,%ymm10,%ymm2
6393  DB  196,195,109,74,212,208              ; vblendvps     %ymm13,%ymm12,%ymm2,%ymm2
6394  DB  197,172,88,192                      ; vaddps        %ymm0,%ymm10,%ymm0
6395  DB  196,195,125,74,193,208              ; vblendvps     %ymm13,%ymm9,%ymm0,%ymm0
6396  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
6397  DB  196,65,52,95,203                    ; vmaxps        %ymm11,%ymm9,%ymm9
6398  DB  196,65,124,92,218                   ; vsubps        %ymm10,%ymm0,%ymm11
6399  DB  196,65,28,92,234                    ; vsubps        %ymm10,%ymm12,%ymm13
6400  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
6401  DB  196,65,28,194,249,1                 ; vcmpltps      %ymm9,%ymm12,%ymm15
6402  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
6403  DB  196,65,36,94,217                    ; vdivps        %ymm9,%ymm11,%ymm11
6404  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
6405  DB  196,195,125,74,195,240              ; vblendvps     %ymm15,%ymm11,%ymm0,%ymm0
6406  DB  196,65,12,92,218                    ; vsubps        %ymm10,%ymm14,%ymm11
6407  DB  196,65,20,89,219                    ; vmulps        %ymm11,%ymm13,%ymm11
6408  DB  196,65,36,94,217                    ; vdivps        %ymm9,%ymm11,%ymm11
6409  DB  196,65,44,88,219                    ; vaddps        %ymm11,%ymm10,%ymm11
6410  DB  196,67,13,74,219,240                ; vblendvps     %ymm15,%ymm11,%ymm14,%ymm11
6411  DB  196,65,108,92,242                   ; vsubps        %ymm10,%ymm2,%ymm14
6412  DB  196,65,20,89,238                    ; vmulps        %ymm14,%ymm13,%ymm13
6413  DB  196,65,20,94,201                    ; vdivps        %ymm9,%ymm13,%ymm9
6414  DB  196,65,44,88,201                    ; vaddps        %ymm9,%ymm10,%ymm9
6415  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
6416  DB  196,65,36,95,208                    ; vmaxps        %ymm8,%ymm11,%ymm10
6417  DB  196,195,109,74,209,240              ; vblendvps     %ymm15,%ymm9,%ymm2,%ymm2
6418  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
6419  DB  196,98,125,24,5,212,88,0,0          ; vbroadcastss  0x58d4(%rip),%ymm8        # 6a34 <_sk_callback_avx+0x1ae>
6420  DB  197,60,92,207                       ; vsubps        %ymm7,%ymm8,%ymm9
6421  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
6422  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
6423  DB  197,60,89,220                       ; vmulps        %ymm4,%ymm8,%ymm11
6424  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
6425  DB  197,244,88,192                      ; vaddps        %ymm0,%ymm1,%ymm0
6426  DB  197,180,89,12,36                    ; vmulps        (%rsp),%ymm9,%ymm1
6427  DB  197,60,89,221                       ; vmulps        %ymm5,%ymm8,%ymm11
6428  DB  197,164,88,201                      ; vaddps        %ymm1,%ymm11,%ymm1
6429  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
6430  DB  197,52,89,76,36,32                  ; vmulps        0x20(%rsp),%ymm9,%ymm9
6431  DB  197,60,89,198                       ; vmulps        %ymm6,%ymm8,%ymm8
6432  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
6433  DB  197,188,88,210                      ; vaddps        %ymm2,%ymm8,%ymm2
6434  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
6435  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
6436  DB  72,173                              ; lods          %ds:(%rsi),%rax
6437  DB  72,131,196,88                       ; add           $0x58,%rsp
6438  DB  255,224                             ; jmpq          *%rax
6439
6440PUBLIC _sk_color_avx
6441_sk_color_avx LABEL PROC
6442  DB  72,131,236,120                      ; sub           $0x78,%rsp
6443  DB  197,252,17,20,36                    ; vmovups       %ymm2,(%rsp)
6444  DB  197,252,17,76,36,64                 ; vmovups       %ymm1,0x40(%rsp)
6445  DB  197,252,17,68,36,32                 ; vmovups       %ymm0,0x20(%rsp)
6446  DB  197,124,89,199                      ; vmulps        %ymm7,%ymm0,%ymm8
6447  DB  197,116,89,207                      ; vmulps        %ymm7,%ymm1,%ymm9
6448  DB  196,98,125,24,45,100,88,0,0         ; vbroadcastss  0x5864(%rip),%ymm13        # 6a38 <_sk_callback_avx+0x1b2>
6449  DB  196,65,92,89,213                    ; vmulps        %ymm13,%ymm4,%ymm10
6450  DB  196,98,125,24,53,90,88,0,0          ; vbroadcastss  0x585a(%rip),%ymm14        # 6a3c <_sk_callback_avx+0x1b6>
6451  DB  196,65,84,89,222                    ; vmulps        %ymm14,%ymm5,%ymm11
6452  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
6453  DB  196,98,125,24,61,75,88,0,0          ; vbroadcastss  0x584b(%rip),%ymm15        # 6a40 <_sk_callback_avx+0x1ba>
6454  DB  196,65,76,89,223                    ; vmulps        %ymm15,%ymm6,%ymm11
6455  DB  196,193,44,88,195                   ; vaddps        %ymm11,%ymm10,%ymm0
6456  DB  196,65,60,89,221                    ; vmulps        %ymm13,%ymm8,%ymm11
6457  DB  196,65,52,89,230                    ; vmulps        %ymm14,%ymm9,%ymm12
6458  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6459  DB  197,108,89,231                      ; vmulps        %ymm7,%ymm2,%ymm12
6460  DB  196,65,28,89,215                    ; vmulps        %ymm15,%ymm12,%ymm10
6461  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
6462  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
6463  DB  196,193,124,92,194                  ; vsubps        %ymm10,%ymm0,%ymm0
6464  DB  197,60,88,192                       ; vaddps        %ymm0,%ymm8,%ymm8
6465  DB  197,52,88,208                       ; vaddps        %ymm0,%ymm9,%ymm10
6466  DB  197,28,88,216                       ; vaddps        %ymm0,%ymm12,%ymm11
6467  DB  196,193,44,93,195                   ; vminps        %ymm11,%ymm10,%ymm0
6468  DB  197,60,93,224                       ; vminps        %ymm0,%ymm8,%ymm12
6469  DB  196,193,60,89,197                   ; vmulps        %ymm13,%ymm8,%ymm0
6470  DB  196,65,44,89,206                    ; vmulps        %ymm14,%ymm10,%ymm9
6471  DB  196,193,124,88,193                  ; vaddps        %ymm9,%ymm0,%ymm0
6472  DB  196,65,36,89,207                    ; vmulps        %ymm15,%ymm11,%ymm9
6473  DB  197,52,88,200                       ; vaddps        %ymm0,%ymm9,%ymm9
6474  DB  196,193,60,92,193                   ; vsubps        %ymm9,%ymm8,%ymm0
6475  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
6476  DB  196,65,52,92,236                    ; vsubps        %ymm12,%ymm9,%ymm13
6477  DB  196,193,124,94,197                  ; vdivps        %ymm13,%ymm0,%ymm0
6478  DB  196,65,44,92,241                    ; vsubps        %ymm9,%ymm10,%ymm14
6479  DB  196,65,52,89,246                    ; vmulps        %ymm14,%ymm9,%ymm14
6480  DB  196,65,12,94,245                    ; vdivps        %ymm13,%ymm14,%ymm14
6481  DB  196,65,36,92,249                    ; vsubps        %ymm9,%ymm11,%ymm15
6482  DB  196,65,52,89,255                    ; vmulps        %ymm15,%ymm9,%ymm15
6483  DB  196,65,4,94,237                     ; vdivps        %ymm13,%ymm15,%ymm13
6484  DB  196,65,4,87,255                     ; vxorps        %ymm15,%ymm15,%ymm15
6485  DB  196,65,4,194,228,2                  ; vcmpleps      %ymm12,%ymm15,%ymm12
6486  DB  196,65,52,88,246                    ; vaddps        %ymm14,%ymm9,%ymm14
6487  DB  196,67,13,74,242,192                ; vblendvps     %ymm12,%ymm10,%ymm14,%ymm14
6488  DB  196,65,44,95,211                    ; vmaxps        %ymm11,%ymm10,%ymm10
6489  DB  196,65,52,88,237                    ; vaddps        %ymm13,%ymm9,%ymm13
6490  DB  196,67,21,74,219,192                ; vblendvps     %ymm12,%ymm11,%ymm13,%ymm11
6491  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
6492  DB  196,195,125,74,200,192              ; vblendvps     %ymm12,%ymm8,%ymm0,%ymm1
6493  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
6494  DB  196,65,60,95,194                    ; vmaxps        %ymm10,%ymm8,%ymm8
6495  DB  196,65,116,92,209                   ; vsubps        %ymm9,%ymm1,%ymm10
6496  DB  196,65,28,92,233                    ; vsubps        %ymm9,%ymm12,%ymm13
6497  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
6498  DB  196,193,28,194,192,1                ; vcmpltps      %ymm8,%ymm12,%ymm0
6499  DB  196,65,60,92,193                    ; vsubps        %ymm9,%ymm8,%ymm8
6500  DB  196,65,44,94,208                    ; vdivps        %ymm8,%ymm10,%ymm10
6501  DB  196,65,52,88,210                    ; vaddps        %ymm10,%ymm9,%ymm10
6502  DB  196,195,117,74,202,0                ; vblendvps     %ymm0,%ymm10,%ymm1,%ymm1
6503  DB  196,65,12,92,209                    ; vsubps        %ymm9,%ymm14,%ymm10
6504  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
6505  DB  196,65,44,94,208                    ; vdivps        %ymm8,%ymm10,%ymm10
6506  DB  196,65,52,88,210                    ; vaddps        %ymm10,%ymm9,%ymm10
6507  DB  196,67,13,74,210,0                  ; vblendvps     %ymm0,%ymm10,%ymm14,%ymm10
6508  DB  196,65,36,92,241                    ; vsubps        %ymm9,%ymm11,%ymm14
6509  DB  196,65,20,89,238                    ; vmulps        %ymm14,%ymm13,%ymm13
6510  DB  196,65,20,94,192                    ; vdivps        %ymm8,%ymm13,%ymm8
6511  DB  196,65,52,88,192                    ; vaddps        %ymm8,%ymm9,%ymm8
6512  DB  196,193,116,95,207                  ; vmaxps        %ymm15,%ymm1,%ymm1
6513  DB  196,65,44,95,207                    ; vmaxps        %ymm15,%ymm10,%ymm9
6514  DB  196,195,37,74,192,0                 ; vblendvps     %ymm0,%ymm8,%ymm11,%ymm0
6515  DB  196,65,124,95,199                   ; vmaxps        %ymm15,%ymm0,%ymm8
6516  DB  196,226,125,24,5,18,87,0,0          ; vbroadcastss  0x5712(%rip),%ymm0        # 6a44 <_sk_callback_avx+0x1be>
6517  DB  197,124,92,215                      ; vsubps        %ymm7,%ymm0,%ymm10
6518  DB  197,172,89,84,36,32                 ; vmulps        0x20(%rsp),%ymm10,%ymm2
6519  DB  197,124,92,219                      ; vsubps        %ymm3,%ymm0,%ymm11
6520  DB  197,164,89,196                      ; vmulps        %ymm4,%ymm11,%ymm0
6521  DB  197,252,88,194                      ; vaddps        %ymm2,%ymm0,%ymm0
6522  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
6523  DB  197,172,89,76,36,64                 ; vmulps        0x40(%rsp),%ymm10,%ymm1
6524  DB  197,164,89,213                      ; vmulps        %ymm5,%ymm11,%ymm2
6525  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
6526  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
6527  DB  197,172,89,20,36                    ; vmulps        (%rsp),%ymm10,%ymm2
6528  DB  197,36,89,206                       ; vmulps        %ymm6,%ymm11,%ymm9
6529  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
6530  DB  196,193,108,88,208                  ; vaddps        %ymm8,%ymm2,%ymm2
6531  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
6532  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
6533  DB  72,173                              ; lods          %ds:(%rsi),%rax
6534  DB  72,131,196,120                      ; add           $0x78,%rsp
6535  DB  255,224                             ; jmpq          *%rax
6536
6537PUBLIC _sk_luminosity_avx
6538_sk_luminosity_avx LABEL PROC
6539  DB  72,131,236,88                       ; sub           $0x58,%rsp
6540  DB  197,124,40,226                      ; vmovaps       %ymm2,%ymm12
6541  DB  197,124,17,36,36                    ; vmovups       %ymm12,(%rsp)
6542  DB  197,252,17,76,36,32                 ; vmovups       %ymm1,0x20(%rsp)
6543  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
6544  DB  197,100,89,196                      ; vmulps        %ymm4,%ymm3,%ymm8
6545  DB  197,100,89,205                      ; vmulps        %ymm5,%ymm3,%ymm9
6546  DB  196,98,125,24,45,158,86,0,0         ; vbroadcastss  0x569e(%rip),%ymm13        # 6a48 <_sk_callback_avx+0x1c2>
6547  DB  196,65,108,89,213                   ; vmulps        %ymm13,%ymm2,%ymm10
6548  DB  196,98,125,24,53,148,86,0,0         ; vbroadcastss  0x5694(%rip),%ymm14        # 6a4c <_sk_callback_avx+0x1c6>
6549  DB  196,65,116,89,222                   ; vmulps        %ymm14,%ymm1,%ymm11
6550  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
6551  DB  196,98,125,24,61,133,86,0,0         ; vbroadcastss  0x5685(%rip),%ymm15        # 6a50 <_sk_callback_avx+0x1ca>
6552  DB  196,65,28,89,223                    ; vmulps        %ymm15,%ymm12,%ymm11
6553  DB  196,193,44,88,195                   ; vaddps        %ymm11,%ymm10,%ymm0
6554  DB  196,65,60,89,221                    ; vmulps        %ymm13,%ymm8,%ymm11
6555  DB  196,65,52,89,230                    ; vmulps        %ymm14,%ymm9,%ymm12
6556  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
6557  DB  197,100,89,230                      ; vmulps        %ymm6,%ymm3,%ymm12
6558  DB  196,65,28,89,215                    ; vmulps        %ymm15,%ymm12,%ymm10
6559  DB  196,65,36,88,210                    ; vaddps        %ymm10,%ymm11,%ymm10
6560  DB  197,252,89,199                      ; vmulps        %ymm7,%ymm0,%ymm0
6561  DB  196,193,124,92,194                  ; vsubps        %ymm10,%ymm0,%ymm0
6562  DB  197,60,88,192                       ; vaddps        %ymm0,%ymm8,%ymm8
6563  DB  197,52,88,208                       ; vaddps        %ymm0,%ymm9,%ymm10
6564  DB  197,28,88,216                       ; vaddps        %ymm0,%ymm12,%ymm11
6565  DB  196,193,44,93,195                   ; vminps        %ymm11,%ymm10,%ymm0
6566  DB  197,60,93,224                       ; vminps        %ymm0,%ymm8,%ymm12
6567  DB  196,193,60,89,197                   ; vmulps        %ymm13,%ymm8,%ymm0
6568  DB  196,65,44,89,206                    ; vmulps        %ymm14,%ymm10,%ymm9
6569  DB  196,193,124,88,193                  ; vaddps        %ymm9,%ymm0,%ymm0
6570  DB  196,65,36,89,207                    ; vmulps        %ymm15,%ymm11,%ymm9
6571  DB  197,52,88,200                       ; vaddps        %ymm0,%ymm9,%ymm9
6572  DB  196,193,60,92,193                   ; vsubps        %ymm9,%ymm8,%ymm0
6573  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
6574  DB  196,65,52,92,236                    ; vsubps        %ymm12,%ymm9,%ymm13
6575  DB  196,193,124,94,197                  ; vdivps        %ymm13,%ymm0,%ymm0
6576  DB  196,65,44,92,241                    ; vsubps        %ymm9,%ymm10,%ymm14
6577  DB  196,65,52,89,246                    ; vmulps        %ymm14,%ymm9,%ymm14
6578  DB  196,65,12,94,245                    ; vdivps        %ymm13,%ymm14,%ymm14
6579  DB  196,65,36,92,249                    ; vsubps        %ymm9,%ymm11,%ymm15
6580  DB  196,65,52,89,255                    ; vmulps        %ymm15,%ymm9,%ymm15
6581  DB  196,65,4,94,237                     ; vdivps        %ymm13,%ymm15,%ymm13
6582  DB  196,65,4,87,255                     ; vxorps        %ymm15,%ymm15,%ymm15
6583  DB  196,65,4,194,228,2                  ; vcmpleps      %ymm12,%ymm15,%ymm12
6584  DB  196,65,52,88,246                    ; vaddps        %ymm14,%ymm9,%ymm14
6585  DB  196,67,13,74,242,192                ; vblendvps     %ymm12,%ymm10,%ymm14,%ymm14
6586  DB  196,65,44,95,211                    ; vmaxps        %ymm11,%ymm10,%ymm10
6587  DB  196,65,52,88,237                    ; vaddps        %ymm13,%ymm9,%ymm13
6588  DB  196,67,21,74,219,192                ; vblendvps     %ymm12,%ymm11,%ymm13,%ymm11
6589  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
6590  DB  196,195,125,74,200,192              ; vblendvps     %ymm12,%ymm8,%ymm0,%ymm1
6591  DB  197,100,89,231                      ; vmulps        %ymm7,%ymm3,%ymm12
6592  DB  196,65,60,95,194                    ; vmaxps        %ymm10,%ymm8,%ymm8
6593  DB  196,65,116,92,209                   ; vsubps        %ymm9,%ymm1,%ymm10
6594  DB  196,65,28,92,233                    ; vsubps        %ymm9,%ymm12,%ymm13
6595  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
6596  DB  196,193,28,194,192,1                ; vcmpltps      %ymm8,%ymm12,%ymm0
6597  DB  196,65,60,92,193                    ; vsubps        %ymm9,%ymm8,%ymm8
6598  DB  196,65,44,94,208                    ; vdivps        %ymm8,%ymm10,%ymm10
6599  DB  196,65,52,88,210                    ; vaddps        %ymm10,%ymm9,%ymm10
6600  DB  196,195,117,74,202,0                ; vblendvps     %ymm0,%ymm10,%ymm1,%ymm1
6601  DB  196,65,12,92,209                    ; vsubps        %ymm9,%ymm14,%ymm10
6602  DB  196,65,20,89,210                    ; vmulps        %ymm10,%ymm13,%ymm10
6603  DB  196,65,44,94,208                    ; vdivps        %ymm8,%ymm10,%ymm10
6604  DB  196,65,52,88,210                    ; vaddps        %ymm10,%ymm9,%ymm10
6605  DB  196,67,13,74,210,0                  ; vblendvps     %ymm0,%ymm10,%ymm14,%ymm10
6606  DB  196,65,36,92,241                    ; vsubps        %ymm9,%ymm11,%ymm14
6607  DB  196,65,20,89,238                    ; vmulps        %ymm14,%ymm13,%ymm13
6608  DB  196,65,20,94,192                    ; vdivps        %ymm8,%ymm13,%ymm8
6609  DB  196,65,52,88,192                    ; vaddps        %ymm8,%ymm9,%ymm8
6610  DB  196,193,116,95,207                  ; vmaxps        %ymm15,%ymm1,%ymm1
6611  DB  196,65,44,95,207                    ; vmaxps        %ymm15,%ymm10,%ymm9
6612  DB  196,195,37,74,192,0                 ; vblendvps     %ymm0,%ymm8,%ymm11,%ymm0
6613  DB  196,65,124,95,199                   ; vmaxps        %ymm15,%ymm0,%ymm8
6614  DB  196,226,125,24,5,76,85,0,0          ; vbroadcastss  0x554c(%rip),%ymm0        # 6a54 <_sk_callback_avx+0x1ce>
6615  DB  197,124,92,215                      ; vsubps        %ymm7,%ymm0,%ymm10
6616  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
6617  DB  197,124,92,219                      ; vsubps        %ymm3,%ymm0,%ymm11
6618  DB  197,164,89,196                      ; vmulps        %ymm4,%ymm11,%ymm0
6619  DB  197,252,88,194                      ; vaddps        %ymm2,%ymm0,%ymm0
6620  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
6621  DB  197,172,89,76,36,32                 ; vmulps        0x20(%rsp),%ymm10,%ymm1
6622  DB  197,164,89,213                      ; vmulps        %ymm5,%ymm11,%ymm2
6623  DB  197,236,88,201                      ; vaddps        %ymm1,%ymm2,%ymm1
6624  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
6625  DB  197,172,89,20,36                    ; vmulps        (%rsp),%ymm10,%ymm2
6626  DB  197,36,89,206                       ; vmulps        %ymm6,%ymm11,%ymm9
6627  DB  197,180,88,210                      ; vaddps        %ymm2,%ymm9,%ymm2
6628  DB  196,193,108,88,208                  ; vaddps        %ymm8,%ymm2,%ymm2
6629  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
6630  DB  196,193,100,92,220                  ; vsubps        %ymm12,%ymm3,%ymm3
6631  DB  72,173                              ; lods          %ds:(%rsi),%rax
6632  DB  72,131,196,88                       ; add           $0x58,%rsp
6633  DB  255,224                             ; jmpq          *%rax
6634
6635PUBLIC _sk_srcover_rgba_8888_avx
6636_sk_srcover_rgba_8888_avx LABEL PROC
6637  DB  72,131,236,16                       ; sub           $0x10,%rsp
6638  DB  73,137,201                          ; mov           %rcx,%r9
6639  DB  72,173                              ; lods          %ds:(%rsi),%rax
6640  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
6641  DB  76,3,16                             ; add           (%rax),%r10
6642  DB  77,133,192                          ; test          %r8,%r8
6643  DB  15,133,47,1,0,0                     ; jne           16a2 <_sk_srcover_rgba_8888_avx+0x14c>
6644  DB  196,193,124,16,58                   ; vmovups       (%r10),%ymm7
6645  DB  197,124,40,13,128,89,0,0            ; vmovaps       0x5980(%rip),%ymm9        # 6f00 <_sk_callback_avx+0x67a>
6646  DB  196,193,68,84,225                   ; vandps        %ymm9,%ymm7,%ymm4
6647  DB  197,252,91,228                      ; vcvtdq2ps     %ymm4,%ymm4
6648  DB  197,209,114,215,8                   ; vpsrld        $0x8,%xmm7,%xmm5
6649  DB  196,195,125,25,248,1                ; vextractf128  $0x1,%ymm7,%xmm8
6650  DB  196,193,73,114,208,8                ; vpsrld        $0x8,%xmm8,%xmm6
6651  DB  196,227,85,24,238,1                 ; vinsertf128   $0x1,%xmm6,%ymm5,%ymm5
6652  DB  196,193,84,84,233                   ; vandps        %ymm9,%ymm5,%ymm5
6653  DB  197,252,91,237                      ; vcvtdq2ps     %ymm5,%ymm5
6654  DB  197,169,114,215,16                  ; vpsrld        $0x10,%xmm7,%xmm10
6655  DB  196,193,73,114,208,16               ; vpsrld        $0x10,%xmm8,%xmm6
6656  DB  196,227,45,24,246,1                 ; vinsertf128   $0x1,%xmm6,%ymm10,%ymm6
6657  DB  196,193,76,84,241                   ; vandps        %ymm9,%ymm6,%ymm6
6658  DB  197,252,91,246                      ; vcvtdq2ps     %ymm6,%ymm6
6659  DB  197,177,114,215,24                  ; vpsrld        $0x18,%xmm7,%xmm9
6660  DB  196,193,65,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm7
6661  DB  196,227,53,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm9,%ymm7
6662  DB  197,252,91,255                      ; vcvtdq2ps     %ymm7,%ymm7
6663  DB  196,98,125,24,5,119,84,0,0          ; vbroadcastss  0x5477(%rip),%ymm8        # 6a58 <_sk_callback_avx+0x1d2>
6664  DB  197,60,92,195                       ; vsubps        %ymm3,%ymm8,%ymm8
6665  DB  196,98,125,24,13,110,84,0,0         ; vbroadcastss  0x546e(%rip),%ymm9        # 6a5c <_sk_callback_avx+0x1d6>
6666  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
6667  DB  197,60,89,212                       ; vmulps        %ymm4,%ymm8,%ymm10
6668  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
6669  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
6670  DB  197,60,89,213                       ; vmulps        %ymm5,%ymm8,%ymm10
6671  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
6672  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
6673  DB  197,60,89,214                       ; vmulps        %ymm6,%ymm8,%ymm10
6674  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
6675  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
6676  DB  197,60,89,199                       ; vmulps        %ymm7,%ymm8,%ymm8
6677  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
6678  DB  197,125,91,192                      ; vcvtps2dq     %ymm0,%ymm8
6679  DB  197,125,91,201                      ; vcvtps2dq     %ymm1,%ymm9
6680  DB  196,193,41,114,241,8                ; vpslld        $0x8,%xmm9,%xmm10
6681  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
6682  DB  196,193,49,114,241,8                ; vpslld        $0x8,%xmm9,%xmm9
6683  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
6684  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
6685  DB  197,125,91,202                      ; vcvtps2dq     %ymm2,%ymm9
6686  DB  196,193,41,114,241,16               ; vpslld        $0x10,%xmm9,%xmm10
6687  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
6688  DB  196,193,49,114,241,16               ; vpslld        $0x10,%xmm9,%xmm9
6689  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
6690  DB  197,125,91,211                      ; vcvtps2dq     %ymm3,%ymm10
6691  DB  196,193,33,114,242,24               ; vpslld        $0x18,%xmm10,%xmm11
6692  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
6693  DB  196,193,41,114,242,24               ; vpslld        $0x18,%xmm10,%xmm10
6694  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
6695  DB  196,65,53,86,202                    ; vorpd         %ymm10,%ymm9,%ymm9
6696  DB  196,65,61,86,193                    ; vorpd         %ymm9,%ymm8,%ymm8
6697  DB  77,133,192                          ; test          %r8,%r8
6698  DB  117,91                              ; jne           16ed <_sk_srcover_rgba_8888_avx+0x197>
6699  DB  196,65,124,17,2                     ; vmovups       %ymm8,(%r10)
6700  DB  72,173                              ; lods          %ds:(%rsi),%rax
6701  DB  76,137,201                          ; mov           %r9,%rcx
6702  DB  72,131,196,16                       ; add           $0x10,%rsp
6703  DB  255,224                             ; jmpq          *%rax
6704  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
6705  DB  68,41,193                           ; sub           %r8d,%ecx
6706  DB  192,225,3                           ; shl           $0x3,%cl
6707  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
6708  DB  72,211,232                          ; shr           %cl,%rax
6709  DB  196,225,249,110,224                 ; vmovq         %rax,%xmm4
6710  DB  196,226,121,48,228                  ; vpmovzxbw     %xmm4,%xmm4
6711  DB  196,226,89,0,45,38,87,0,0           ; vpshufb       0x5726(%rip),%xmm4,%xmm5        # 6df0 <_sk_callback_avx+0x56a>
6712  DB  196,226,121,33,237                  ; vpmovsxbd     %xmm5,%xmm5
6713  DB  196,226,89,0,37,40,87,0,0           ; vpshufb       0x5728(%rip),%xmm4,%xmm4        # 6e00 <_sk_callback_avx+0x57a>
6714  DB  196,226,121,33,228                  ; vpmovsxbd     %xmm4,%xmm4
6715  DB  196,227,85,24,228,1                 ; vinsertf128   $0x1,%xmm4,%ymm5,%ymm4
6716  DB  196,194,93,44,58                    ; vmaskmovps    (%r10),%ymm4,%ymm7
6717  DB  233,139,254,255,255                 ; jmpq          1578 <_sk_srcover_rgba_8888_avx+0x22>
6718  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
6719  DB  68,41,193                           ; sub           %r8d,%ecx
6720  DB  192,225,3                           ; shl           $0x3,%cl
6721  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
6722  DB  72,211,232                          ; shr           %cl,%rax
6723  DB  196,97,249,110,200                  ; vmovq         %rax,%xmm9
6724  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
6725  DB  196,98,49,0,21,219,86,0,0           ; vpshufb       0x56db(%rip),%xmm9,%xmm10        # 6df0 <_sk_callback_avx+0x56a>
6726  DB  196,66,121,33,210                   ; vpmovsxbd     %xmm10,%xmm10
6727  DB  196,98,49,0,13,221,86,0,0           ; vpshufb       0x56dd(%rip),%xmm9,%xmm9        # 6e00 <_sk_callback_avx+0x57a>
6728  DB  196,66,121,33,201                   ; vpmovsxbd     %xmm9,%xmm9
6729  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
6730  DB  196,66,53,46,2                      ; vmaskmovps    %ymm8,%ymm9,(%r10)
6731  DB  233,95,255,255,255                  ; jmpq          1697 <_sk_srcover_rgba_8888_avx+0x141>
6732
6733PUBLIC _sk_clamp_0_avx
6734_sk_clamp_0_avx LABEL PROC
6735  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6736  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
6737  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
6738  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
6739  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
6740  DB  72,173                              ; lods          %ds:(%rsi),%rax
6741  DB  255,224                             ; jmpq          *%rax
6742
6743PUBLIC _sk_clamp_1_avx
6744_sk_clamp_1_avx LABEL PROC
6745  DB  196,98,125,24,5,2,83,0,0            ; vbroadcastss  0x5302(%rip),%ymm8        # 6a60 <_sk_callback_avx+0x1da>
6746  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
6747  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
6748  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
6749  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
6750  DB  72,173                              ; lods          %ds:(%rsi),%rax
6751  DB  255,224                             ; jmpq          *%rax
6752
6753PUBLIC _sk_clamp_a_avx
6754_sk_clamp_a_avx LABEL PROC
6755  DB  196,98,125,24,5,229,82,0,0          ; vbroadcastss  0x52e5(%rip),%ymm8        # 6a64 <_sk_callback_avx+0x1de>
6756  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
6757  DB  197,252,93,195                      ; vminps        %ymm3,%ymm0,%ymm0
6758  DB  197,244,93,203                      ; vminps        %ymm3,%ymm1,%ymm1
6759  DB  197,236,93,211                      ; vminps        %ymm3,%ymm2,%ymm2
6760  DB  72,173                              ; lods          %ds:(%rsi),%rax
6761  DB  255,224                             ; jmpq          *%rax
6762
6763PUBLIC _sk_set_rgb_avx
6764_sk_set_rgb_avx LABEL PROC
6765  DB  72,173                              ; lods          %ds:(%rsi),%rax
6766  DB  196,226,125,24,0                    ; vbroadcastss  (%rax),%ymm0
6767  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
6768  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
6769  DB  72,173                              ; lods          %ds:(%rsi),%rax
6770  DB  255,224                             ; jmpq          *%rax
6771
6772PUBLIC _sk_swap_rb_avx
6773_sk_swap_rb_avx LABEL PROC
6774  DB  197,124,40,192                      ; vmovaps       %ymm0,%ymm8
6775  DB  72,173                              ; lods          %ds:(%rsi),%rax
6776  DB  197,252,40,194                      ; vmovaps       %ymm2,%ymm0
6777  DB  197,124,41,194                      ; vmovaps       %ymm8,%ymm2
6778  DB  255,224                             ; jmpq          *%rax
6779
6780PUBLIC _sk_swap_avx
6781_sk_swap_avx LABEL PROC
6782  DB  197,124,40,195                      ; vmovaps       %ymm3,%ymm8
6783  DB  197,124,40,202                      ; vmovaps       %ymm2,%ymm9
6784  DB  197,124,40,209                      ; vmovaps       %ymm1,%ymm10
6785  DB  197,124,40,216                      ; vmovaps       %ymm0,%ymm11
6786  DB  72,173                              ; lods          %ds:(%rsi),%rax
6787  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
6788  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
6789  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
6790  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
6791  DB  197,124,41,220                      ; vmovaps       %ymm11,%ymm4
6792  DB  197,124,41,213                      ; vmovaps       %ymm10,%ymm5
6793  DB  197,124,41,206                      ; vmovaps       %ymm9,%ymm6
6794  DB  197,124,41,199                      ; vmovaps       %ymm8,%ymm7
6795  DB  255,224                             ; jmpq          *%rax
6796
6797PUBLIC _sk_move_src_dst_avx
6798_sk_move_src_dst_avx LABEL PROC
6799  DB  72,173                              ; lods          %ds:(%rsi),%rax
6800  DB  197,252,40,224                      ; vmovaps       %ymm0,%ymm4
6801  DB  197,252,40,233                      ; vmovaps       %ymm1,%ymm5
6802  DB  197,252,40,242                      ; vmovaps       %ymm2,%ymm6
6803  DB  197,252,40,251                      ; vmovaps       %ymm3,%ymm7
6804  DB  255,224                             ; jmpq          *%rax
6805
6806PUBLIC _sk_move_dst_src_avx
6807_sk_move_dst_src_avx LABEL PROC
6808  DB  72,173                              ; lods          %ds:(%rsi),%rax
6809  DB  197,252,40,196                      ; vmovaps       %ymm4,%ymm0
6810  DB  197,252,40,205                      ; vmovaps       %ymm5,%ymm1
6811  DB  197,252,40,214                      ; vmovaps       %ymm6,%ymm2
6812  DB  197,252,40,223                      ; vmovaps       %ymm7,%ymm3
6813  DB  255,224                             ; jmpq          *%rax
6814
6815PUBLIC _sk_premul_avx
6816_sk_premul_avx LABEL PROC
6817  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
6818  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
6819  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
6820  DB  72,173                              ; lods          %ds:(%rsi),%rax
6821  DB  255,224                             ; jmpq          *%rax
6822
6823PUBLIC _sk_unpremul_avx
6824_sk_unpremul_avx LABEL PROC
6825  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
6826  DB  196,65,100,194,200,0                ; vcmpeqps      %ymm8,%ymm3,%ymm9
6827  DB  196,98,125,24,21,45,82,0,0          ; vbroadcastss  0x522d(%rip),%ymm10        # 6a68 <_sk_callback_avx+0x1e2>
6828  DB  197,44,94,211                       ; vdivps        %ymm3,%ymm10,%ymm10
6829  DB  196,67,45,74,192,144                ; vblendvps     %ymm9,%ymm8,%ymm10,%ymm8
6830  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
6831  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
6832  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
6833  DB  72,173                              ; lods          %ds:(%rsi),%rax
6834  DB  255,224                             ; jmpq          *%rax
6835
6836PUBLIC _sk_from_srgb_avx
6837_sk_from_srgb_avx LABEL PROC
6838  DB  196,98,125,24,5,14,82,0,0           ; vbroadcastss  0x520e(%rip),%ymm8        # 6a6c <_sk_callback_avx+0x1e6>
6839  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
6840  DB  197,124,89,208                      ; vmulps        %ymm0,%ymm0,%ymm10
6841  DB  196,98,125,24,29,0,82,0,0           ; vbroadcastss  0x5200(%rip),%ymm11        # 6a70 <_sk_callback_avx+0x1ea>
6842  DB  196,65,124,89,227                   ; vmulps        %ymm11,%ymm0,%ymm12
6843  DB  196,98,125,24,45,246,81,0,0         ; vbroadcastss  0x51f6(%rip),%ymm13        # 6a74 <_sk_callback_avx+0x1ee>
6844  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
6845  DB  196,65,44,89,212                    ; vmulps        %ymm12,%ymm10,%ymm10
6846  DB  196,98,125,24,37,231,81,0,0         ; vbroadcastss  0x51e7(%rip),%ymm12        # 6a78 <_sk_callback_avx+0x1f2>
6847  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
6848  DB  196,98,125,24,53,221,81,0,0         ; vbroadcastss  0x51dd(%rip),%ymm14        # 6a7c <_sk_callback_avx+0x1f6>
6849  DB  196,193,124,194,198,1               ; vcmpltps      %ymm14,%ymm0,%ymm0
6850  DB  196,195,45,74,193,0                 ; vblendvps     %ymm0,%ymm9,%ymm10,%ymm0
6851  DB  196,65,116,89,200                   ; vmulps        %ymm8,%ymm1,%ymm9
6852  DB  197,116,89,209                      ; vmulps        %ymm1,%ymm1,%ymm10
6853  DB  196,65,116,89,251                   ; vmulps        %ymm11,%ymm1,%ymm15
6854  DB  196,65,4,88,253                     ; vaddps        %ymm13,%ymm15,%ymm15
6855  DB  196,65,44,89,215                    ; vmulps        %ymm15,%ymm10,%ymm10
6856  DB  196,65,44,88,212                    ; vaddps        %ymm12,%ymm10,%ymm10
6857  DB  196,193,116,194,206,1               ; vcmpltps      %ymm14,%ymm1,%ymm1
6858  DB  196,195,45,74,201,16                ; vblendvps     %ymm1,%ymm9,%ymm10,%ymm1
6859  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
6860  DB  197,108,89,202                      ; vmulps        %ymm2,%ymm2,%ymm9
6861  DB  196,65,108,89,211                   ; vmulps        %ymm11,%ymm2,%ymm10
6862  DB  196,65,44,88,213                    ; vaddps        %ymm13,%ymm10,%ymm10
6863  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
6864  DB  196,65,52,88,204                    ; vaddps        %ymm12,%ymm9,%ymm9
6865  DB  196,193,108,194,214,1               ; vcmpltps      %ymm14,%ymm2,%ymm2
6866  DB  196,195,53,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm9,%ymm2
6867  DB  72,173                              ; lods          %ds:(%rsi),%rax
6868  DB  255,224                             ; jmpq          *%rax
6869
6870PUBLIC _sk_to_srgb_avx
6871_sk_to_srgb_avx LABEL PROC
6872  DB  197,124,82,200                      ; vrsqrtps      %ymm0,%ymm9
6873  DB  196,98,125,24,5,114,81,0,0          ; vbroadcastss  0x5172(%rip),%ymm8        # 6a80 <_sk_callback_avx+0x1fa>
6874  DB  196,65,124,89,208                   ; vmulps        %ymm8,%ymm0,%ymm10
6875  DB  196,98,125,24,29,104,81,0,0         ; vbroadcastss  0x5168(%rip),%ymm11        # 6a84 <_sk_callback_avx+0x1fe>
6876  DB  196,65,52,89,227                    ; vmulps        %ymm11,%ymm9,%ymm12
6877  DB  196,98,125,24,45,94,81,0,0          ; vbroadcastss  0x515e(%rip),%ymm13        # 6a88 <_sk_callback_avx+0x202>
6878  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
6879  DB  196,65,52,89,228                    ; vmulps        %ymm12,%ymm9,%ymm12
6880  DB  196,98,125,24,53,79,81,0,0          ; vbroadcastss  0x514f(%rip),%ymm14        # 6a8c <_sk_callback_avx+0x206>
6881  DB  196,65,28,88,230                    ; vaddps        %ymm14,%ymm12,%ymm12
6882  DB  196,98,125,24,61,69,81,0,0          ; vbroadcastss  0x5145(%rip),%ymm15        # 6a90 <_sk_callback_avx+0x20a>
6883  DB  196,65,52,88,207                    ; vaddps        %ymm15,%ymm9,%ymm9
6884  DB  196,65,124,83,201                   ; vrcpps        %ymm9,%ymm9
6885  DB  196,65,52,89,204                    ; vmulps        %ymm12,%ymm9,%ymm9
6886  DB  196,98,125,24,37,49,81,0,0          ; vbroadcastss  0x5131(%rip),%ymm12        # 6a94 <_sk_callback_avx+0x20e>
6887  DB  196,193,124,194,196,1               ; vcmpltps      %ymm12,%ymm0,%ymm0
6888  DB  196,195,53,74,194,0                 ; vblendvps     %ymm0,%ymm10,%ymm9,%ymm0
6889  DB  197,124,82,201                      ; vrsqrtps      %ymm1,%ymm9
6890  DB  196,65,52,89,211                    ; vmulps        %ymm11,%ymm9,%ymm10
6891  DB  196,65,44,88,213                    ; vaddps        %ymm13,%ymm10,%ymm10
6892  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
6893  DB  196,65,44,88,214                    ; vaddps        %ymm14,%ymm10,%ymm10
6894  DB  196,65,52,88,207                    ; vaddps        %ymm15,%ymm9,%ymm9
6895  DB  196,65,124,83,201                   ; vrcpps        %ymm9,%ymm9
6896  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
6897  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
6898  DB  196,193,116,194,204,1               ; vcmpltps      %ymm12,%ymm1,%ymm1
6899  DB  196,195,53,74,202,16                ; vblendvps     %ymm1,%ymm10,%ymm9,%ymm1
6900  DB  197,124,82,202                      ; vrsqrtps      %ymm2,%ymm9
6901  DB  196,65,52,89,211                    ; vmulps        %ymm11,%ymm9,%ymm10
6902  DB  196,65,44,88,213                    ; vaddps        %ymm13,%ymm10,%ymm10
6903  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
6904  DB  196,65,44,88,214                    ; vaddps        %ymm14,%ymm10,%ymm10
6905  DB  196,65,52,88,207                    ; vaddps        %ymm15,%ymm9,%ymm9
6906  DB  196,65,124,83,201                   ; vrcpps        %ymm9,%ymm9
6907  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
6908  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
6909  DB  196,193,108,194,212,1               ; vcmpltps      %ymm12,%ymm2,%ymm2
6910  DB  196,195,53,74,208,32                ; vblendvps     %ymm2,%ymm8,%ymm9,%ymm2
6911  DB  72,173                              ; lods          %ds:(%rsi),%rax
6912  DB  255,224                             ; jmpq          *%rax
6913
6914PUBLIC _sk_rgb_to_hsl_avx
6915_sk_rgb_to_hsl_avx LABEL PROC
6916  DB  197,124,95,193                      ; vmaxps        %ymm1,%ymm0,%ymm8
6917  DB  197,60,95,194                       ; vmaxps        %ymm2,%ymm8,%ymm8
6918  DB  197,124,93,201                      ; vminps        %ymm1,%ymm0,%ymm9
6919  DB  197,52,93,202                       ; vminps        %ymm2,%ymm9,%ymm9
6920  DB  196,65,60,92,209                    ; vsubps        %ymm9,%ymm8,%ymm10
6921  DB  196,98,125,24,29,151,80,0,0         ; vbroadcastss  0x5097(%rip),%ymm11        # 6a98 <_sk_callback_avx+0x212>
6922  DB  196,65,36,94,218                    ; vdivps        %ymm10,%ymm11,%ymm11
6923  DB  197,116,92,226                      ; vsubps        %ymm2,%ymm1,%ymm12
6924  DB  196,65,28,89,227                    ; vmulps        %ymm11,%ymm12,%ymm12
6925  DB  197,116,194,234,1                   ; vcmpltps      %ymm2,%ymm1,%ymm13
6926  DB  197,60,194,241,0                    ; vcmpeqps      %ymm1,%ymm8,%ymm14
6927  DB  197,236,92,208                      ; vsubps        %ymm0,%ymm2,%ymm2
6928  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
6929  DB  197,252,92,201                      ; vsubps        %ymm1,%ymm0,%ymm1
6930  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
6931  DB  196,98,125,24,29,112,80,0,0         ; vbroadcastss  0x5070(%rip),%ymm11        # 6aa4 <_sk_callback_avx+0x21e>
6932  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
6933  DB  196,98,125,24,29,94,80,0,0          ; vbroadcastss  0x505e(%rip),%ymm11        # 6aa0 <_sk_callback_avx+0x21a>
6934  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
6935  DB  196,227,117,74,202,224              ; vblendvps     %ymm14,%ymm2,%ymm1,%ymm1
6936  DB  196,226,125,24,21,70,80,0,0         ; vbroadcastss  0x5046(%rip),%ymm2        # 6a9c <_sk_callback_avx+0x216>
6937  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
6938  DB  196,227,13,74,210,208               ; vblendvps     %ymm13,%ymm2,%ymm14,%ymm2
6939  DB  197,188,194,192,0                   ; vcmpeqps      %ymm0,%ymm8,%ymm0
6940  DB  196,193,108,88,212                  ; vaddps        %ymm12,%ymm2,%ymm2
6941  DB  196,227,117,74,194,0                ; vblendvps     %ymm0,%ymm2,%ymm1,%ymm0
6942  DB  196,193,60,88,201                   ; vaddps        %ymm9,%ymm8,%ymm1
6943  DB  196,98,125,24,37,45,80,0,0          ; vbroadcastss  0x502d(%rip),%ymm12        # 6aac <_sk_callback_avx+0x226>
6944  DB  196,193,116,89,212                  ; vmulps        %ymm12,%ymm1,%ymm2
6945  DB  197,28,194,226,1                    ; vcmpltps      %ymm2,%ymm12,%ymm12
6946  DB  196,65,36,92,216                    ; vsubps        %ymm8,%ymm11,%ymm11
6947  DB  196,65,36,92,217                    ; vsubps        %ymm9,%ymm11,%ymm11
6948  DB  196,195,117,74,203,192              ; vblendvps     %ymm12,%ymm11,%ymm1,%ymm1
6949  DB  196,65,60,194,193,0                 ; vcmpeqps      %ymm9,%ymm8,%ymm8
6950  DB  197,172,94,201                      ; vdivps        %ymm1,%ymm10,%ymm1
6951  DB  196,195,125,74,198,128              ; vblendvps     %ymm8,%ymm14,%ymm0,%ymm0
6952  DB  196,195,117,74,206,128              ; vblendvps     %ymm8,%ymm14,%ymm1,%ymm1
6953  DB  196,98,125,24,5,240,79,0,0          ; vbroadcastss  0x4ff0(%rip),%ymm8        # 6aa8 <_sk_callback_avx+0x222>
6954  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
6955  DB  72,173                              ; lods          %ds:(%rsi),%rax
6956  DB  255,224                             ; jmpq          *%rax
6957
6958PUBLIC _sk_hsl_to_rgb_avx
6959_sk_hsl_to_rgb_avx LABEL PROC
6960  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
6961  DB  197,252,17,188,36,128,0,0,0         ; vmovups       %ymm7,0x80(%rsp)
6962  DB  197,252,17,116,36,96                ; vmovups       %ymm6,0x60(%rsp)
6963  DB  197,252,17,108,36,64                ; vmovups       %ymm5,0x40(%rsp)
6964  DB  197,252,17,100,36,32                ; vmovups       %ymm4,0x20(%rsp)
6965  DB  197,252,17,28,36                    ; vmovups       %ymm3,(%rsp)
6966  DB  197,252,40,225                      ; vmovaps       %ymm1,%ymm4
6967  DB  197,252,40,216                      ; vmovaps       %ymm0,%ymm3
6968  DB  196,98,125,24,5,183,79,0,0          ; vbroadcastss  0x4fb7(%rip),%ymm8        # 6ab0 <_sk_callback_avx+0x22a>
6969  DB  197,60,194,202,2                    ; vcmpleps      %ymm2,%ymm8,%ymm9
6970  DB  197,92,89,210                       ; vmulps        %ymm2,%ymm4,%ymm10
6971  DB  196,65,92,92,218                    ; vsubps        %ymm10,%ymm4,%ymm11
6972  DB  196,67,45,74,203,144                ; vblendvps     %ymm9,%ymm11,%ymm10,%ymm9
6973  DB  197,52,88,210                       ; vaddps        %ymm2,%ymm9,%ymm10
6974  DB  197,108,88,202                      ; vaddps        %ymm2,%ymm2,%ymm9
6975  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
6976  DB  196,98,125,24,29,145,79,0,0         ; vbroadcastss  0x4f91(%rip),%ymm11        # 6ab4 <_sk_callback_avx+0x22e>
6977  DB  196,65,100,88,219                   ; vaddps        %ymm11,%ymm3,%ymm11
6978  DB  196,67,125,8,227,1                  ; vroundps      $0x1,%ymm11,%ymm12
6979  DB  196,65,36,92,252                    ; vsubps        %ymm12,%ymm11,%ymm15
6980  DB  196,65,44,92,217                    ; vsubps        %ymm9,%ymm10,%ymm11
6981  DB  196,98,125,24,37,123,79,0,0         ; vbroadcastss  0x4f7b(%rip),%ymm12        # 6abc <_sk_callback_avx+0x236>
6982  DB  196,193,4,89,196                    ; vmulps        %ymm12,%ymm15,%ymm0
6983  DB  196,98,125,24,45,113,79,0,0         ; vbroadcastss  0x4f71(%rip),%ymm13        # 6ac0 <_sk_callback_avx+0x23a>
6984  DB  197,20,92,240                       ; vsubps        %ymm0,%ymm13,%ymm14
6985  DB  196,65,36,89,246                    ; vmulps        %ymm14,%ymm11,%ymm14
6986  DB  196,65,52,88,246                    ; vaddps        %ymm14,%ymm9,%ymm14
6987  DB  196,226,125,24,13,82,79,0,0         ; vbroadcastss  0x4f52(%rip),%ymm1        # 6ab8 <_sk_callback_avx+0x232>
6988  DB  196,193,116,194,255,2               ; vcmpleps      %ymm15,%ymm1,%ymm7
6989  DB  196,195,13,74,249,112               ; vblendvps     %ymm7,%ymm9,%ymm14,%ymm7
6990  DB  196,65,60,194,247,2                 ; vcmpleps      %ymm15,%ymm8,%ymm14
6991  DB  196,227,45,74,255,224               ; vblendvps     %ymm14,%ymm7,%ymm10,%ymm7
6992  DB  196,98,125,24,53,61,79,0,0          ; vbroadcastss  0x4f3d(%rip),%ymm14        # 6ac4 <_sk_callback_avx+0x23e>
6993  DB  196,65,12,194,255,2                 ; vcmpleps      %ymm15,%ymm14,%ymm15
6994  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
6995  DB  197,180,88,192                      ; vaddps        %ymm0,%ymm9,%ymm0
6996  DB  196,99,125,74,255,240               ; vblendvps     %ymm15,%ymm7,%ymm0,%ymm15
6997  DB  196,227,125,8,195,1                 ; vroundps      $0x1,%ymm3,%ymm0
6998  DB  197,228,92,192                      ; vsubps        %ymm0,%ymm3,%ymm0
6999  DB  196,193,124,89,252                  ; vmulps        %ymm12,%ymm0,%ymm7
7000  DB  197,148,92,247                      ; vsubps        %ymm7,%ymm13,%ymm6
7001  DB  197,164,89,246                      ; vmulps        %ymm6,%ymm11,%ymm6
7002  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
7003  DB  197,244,194,232,2                   ; vcmpleps      %ymm0,%ymm1,%ymm5
7004  DB  196,195,77,74,233,80                ; vblendvps     %ymm5,%ymm9,%ymm6,%ymm5
7005  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
7006  DB  196,227,45,74,237,96                ; vblendvps     %ymm6,%ymm5,%ymm10,%ymm5
7007  DB  197,140,194,192,2                   ; vcmpleps      %ymm0,%ymm14,%ymm0
7008  DB  197,164,89,247                      ; vmulps        %ymm7,%ymm11,%ymm6
7009  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
7010  DB  196,227,77,74,237,0                 ; vblendvps     %ymm0,%ymm5,%ymm6,%ymm5
7011  DB  196,226,125,24,5,223,78,0,0         ; vbroadcastss  0x4edf(%rip),%ymm0        # 6ac8 <_sk_callback_avx+0x242>
7012  DB  197,228,88,192                      ; vaddps        %ymm0,%ymm3,%ymm0
7013  DB  196,227,125,8,216,1                 ; vroundps      $0x1,%ymm0,%ymm3
7014  DB  197,252,92,195                      ; vsubps        %ymm3,%ymm0,%ymm0
7015  DB  197,244,194,200,2                   ; vcmpleps      %ymm0,%ymm1,%ymm1
7016  DB  196,193,124,89,220                  ; vmulps        %ymm12,%ymm0,%ymm3
7017  DB  197,148,92,243                      ; vsubps        %ymm3,%ymm13,%ymm6
7018  DB  197,164,89,246                      ; vmulps        %ymm6,%ymm11,%ymm6
7019  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
7020  DB  196,195,77,74,201,16                ; vblendvps     %ymm1,%ymm9,%ymm6,%ymm1
7021  DB  197,188,194,240,2                   ; vcmpleps      %ymm0,%ymm8,%ymm6
7022  DB  196,227,45,74,201,96                ; vblendvps     %ymm6,%ymm1,%ymm10,%ymm1
7023  DB  197,140,194,192,2                   ; vcmpleps      %ymm0,%ymm14,%ymm0
7024  DB  197,164,89,219                      ; vmulps        %ymm3,%ymm11,%ymm3
7025  DB  197,180,88,219                      ; vaddps        %ymm3,%ymm9,%ymm3
7026  DB  196,227,101,74,217,0                ; vblendvps     %ymm0,%ymm1,%ymm3,%ymm3
7027  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
7028  DB  197,220,194,224,0                   ; vcmpeqps      %ymm0,%ymm4,%ymm4
7029  DB  196,227,5,74,194,64                 ; vblendvps     %ymm4,%ymm2,%ymm15,%ymm0
7030  DB  196,227,85,74,202,64                ; vblendvps     %ymm4,%ymm2,%ymm5,%ymm1
7031  DB  196,227,101,74,210,64               ; vblendvps     %ymm4,%ymm2,%ymm3,%ymm2
7032  DB  72,173                              ; lods          %ds:(%rsi),%rax
7033  DB  197,252,16,28,36                    ; vmovups       (%rsp),%ymm3
7034  DB  197,252,16,100,36,32                ; vmovups       0x20(%rsp),%ymm4
7035  DB  197,252,16,108,36,64                ; vmovups       0x40(%rsp),%ymm5
7036  DB  197,252,16,116,36,96                ; vmovups       0x60(%rsp),%ymm6
7037  DB  197,252,16,188,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm7
7038  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
7039  DB  255,224                             ; jmpq          *%rax
7040
7041PUBLIC _sk_scale_1_float_avx
7042_sk_scale_1_float_avx LABEL PROC
7043  DB  72,173                              ; lods          %ds:(%rsi),%rax
7044  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
7045  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
7046  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
7047  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
7048  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
7049  DB  72,173                              ; lods          %ds:(%rsi),%rax
7050  DB  255,224                             ; jmpq          *%rax
7051
7052PUBLIC _sk_scale_u8_avx
7053_sk_scale_u8_avx LABEL PROC
7054  DB  72,173                              ; lods          %ds:(%rsi),%rax
7055  DB  76,139,24                           ; mov           (%rax),%r11
7056  DB  77,133,192                          ; test          %r8,%r8
7057  DB  117,74                              ; jne           1ce6 <_sk_scale_u8_avx+0x54>
7058  DB  196,66,121,48,4,19                  ; vpmovzxbw     (%r11,%rdx,1),%xmm8
7059  DB  197,57,219,5,102,81,0,0             ; vpand         0x5166(%rip),%xmm8,%xmm8        # 6e10 <_sk_callback_avx+0x58a>
7060  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
7061  DB  196,65,57,105,201                   ; vpunpckhwd    %xmm9,%xmm8,%xmm9
7062  DB  196,66,121,51,192                   ; vpmovzxwd     %xmm8,%xmm8
7063  DB  196,67,61,24,193,1                  ; vinsertf128   $0x1,%xmm9,%ymm8,%ymm8
7064  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
7065  DB  196,98,125,24,13,255,77,0,0         ; vbroadcastss  0x4dff(%rip),%ymm9        # 6acc <_sk_callback_avx+0x246>
7066  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
7067  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
7068  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
7069  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
7070  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
7071  DB  72,173                              ; lods          %ds:(%rsi),%rax
7072  DB  255,224                             ; jmpq          *%rax
7073  DB  69,137,193                          ; mov           %r8d,%r9d
7074  DB  65,128,225,7                        ; and           $0x7,%r9b
7075  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
7076  DB  65,254,201                          ; dec           %r9b
7077  DB  65,128,249,6                        ; cmp           $0x6,%r9b
7078  DB  119,167                             ; ja            1ca2 <_sk_scale_u8_avx+0x10>
7079  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
7080  DB  76,141,21,122,0,0,0                 ; lea           0x7a(%rip),%r10        # 1d80 <_sk_scale_u8_avx+0xee>
7081  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
7082  DB  76,1,208                            ; add           %r10,%rax
7083  DB  255,224                             ; jmpq          *%rax
7084  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
7085  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
7086  DB  235,136                             ; jmp           1ca2 <_sk_scale_u8_avx+0x10>
7087  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
7088  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
7089  DB  197,57,196,192,2                    ; vpinsrw       $0x2,%eax,%xmm8,%xmm8
7090  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
7091  DB  197,121,110,200                     ; vmovd         %eax,%xmm9
7092  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
7093  DB  196,67,57,14,193,3                  ; vpblendw      $0x3,%xmm9,%xmm8,%xmm8
7094  DB  233,95,255,255,255                  ; jmpq          1ca2 <_sk_scale_u8_avx+0x10>
7095  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
7096  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
7097  DB  197,57,196,192,6                    ; vpinsrw       $0x6,%eax,%xmm8,%xmm8
7098  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
7099  DB  197,57,196,192,5                    ; vpinsrw       $0x5,%eax,%xmm8,%xmm8
7100  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
7101  DB  197,57,196,192,4                    ; vpinsrw       $0x4,%eax,%xmm8,%xmm8
7102  DB  196,65,121,110,12,19                ; vmovd         (%r11,%rdx,1),%xmm9
7103  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
7104  DB  196,67,49,14,192,240                ; vpblendw      $0xf0,%xmm8,%xmm9,%xmm8
7105  DB  233,35,255,255,255                  ; jmpq          1ca2 <_sk_scale_u8_avx+0x10>
7106  DB  144                                 ; nop
7107  DB  143                                 ; (bad)
7108  DB  255                                 ; (bad)
7109  DB  255                                 ; (bad)
7110  DB  255,170,255,255,255,154             ; ljmp          *-0x65000001(%rdx)
7111  DB  255                                 ; (bad)
7112  DB  255                                 ; (bad)
7113  DB  255                                 ; (bad)
7114  DB  233,255,255,255,222                 ; jmpq          ffffffffdf001d90 <_sk_callback_avx+0xffffffffdeffb50a>
7115  DB  255                                 ; (bad)
7116  DB  255                                 ; (bad)
7117  DB  255,211                             ; callq         *%rbx
7118  DB  255                                 ; (bad)
7119  DB  255                                 ; (bad)
7120  DB  255,195                             ; inc           %ebx
7121  DB  255                                 ; (bad)
7122  DB  255                                 ; (bad)
7123  DB  255                                 ; .byte         0xff
7124
7125PUBLIC _sk_lerp_1_float_avx
7126_sk_lerp_1_float_avx LABEL PROC
7127  DB  72,173                              ; lods          %ds:(%rsi),%rax
7128  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
7129  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
7130  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
7131  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
7132  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
7133  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
7134  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
7135  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
7136  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
7137  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
7138  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
7139  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
7140  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
7141  DB  72,173                              ; lods          %ds:(%rsi),%rax
7142  DB  255,224                             ; jmpq          *%rax
7143
7144PUBLIC _sk_lerp_u8_avx
7145_sk_lerp_u8_avx LABEL PROC
7146  DB  72,173                              ; lods          %ds:(%rsi),%rax
7147  DB  76,139,24                           ; mov           (%rax),%r11
7148  DB  77,133,192                          ; test          %r8,%r8
7149  DB  117,110                             ; jne           1e53 <_sk_lerp_u8_avx+0x78>
7150  DB  196,66,121,48,4,19                  ; vpmovzxbw     (%r11,%rdx,1),%xmm8
7151  DB  197,57,219,5,45,80,0,0              ; vpand         0x502d(%rip),%xmm8,%xmm8        # 6e20 <_sk_callback_avx+0x59a>
7152  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
7153  DB  196,65,57,105,201                   ; vpunpckhwd    %xmm9,%xmm8,%xmm9
7154  DB  196,66,121,51,192                   ; vpmovzxwd     %xmm8,%xmm8
7155  DB  196,67,61,24,193,1                  ; vinsertf128   $0x1,%xmm9,%ymm8,%ymm8
7156  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
7157  DB  196,98,125,24,13,186,76,0,0         ; vbroadcastss  0x4cba(%rip),%ymm9        # 6ad0 <_sk_callback_avx+0x24a>
7158  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
7159  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
7160  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
7161  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
7162  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
7163  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
7164  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
7165  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
7166  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
7167  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
7168  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
7169  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
7170  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
7171  DB  72,173                              ; lods          %ds:(%rsi),%rax
7172  DB  255,224                             ; jmpq          *%rax
7173  DB  69,137,193                          ; mov           %r8d,%r9d
7174  DB  65,128,225,7                        ; and           $0x7,%r9b
7175  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
7176  DB  65,254,201                          ; dec           %r9b
7177  DB  65,128,249,6                        ; cmp           $0x6,%r9b
7178  DB  119,131                             ; ja            1deb <_sk_lerp_u8_avx+0x10>
7179  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
7180  DB  76,141,21,125,0,0,0                 ; lea           0x7d(%rip),%r10        # 1ef0 <_sk_lerp_u8_avx+0x115>
7181  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
7182  DB  76,1,208                            ; add           %r10,%rax
7183  DB  255,224                             ; jmpq          *%rax
7184  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
7185  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
7186  DB  233,97,255,255,255                  ; jmpq          1deb <_sk_lerp_u8_avx+0x10>
7187  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
7188  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
7189  DB  197,57,196,192,2                    ; vpinsrw       $0x2,%eax,%xmm8,%xmm8
7190  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
7191  DB  197,121,110,200                     ; vmovd         %eax,%xmm9
7192  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
7193  DB  196,67,57,14,193,3                  ; vpblendw      $0x3,%xmm9,%xmm8,%xmm8
7194  DB  233,56,255,255,255                  ; jmpq          1deb <_sk_lerp_u8_avx+0x10>
7195  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
7196  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
7197  DB  197,57,196,192,6                    ; vpinsrw       $0x6,%eax,%xmm8,%xmm8
7198  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
7199  DB  197,57,196,192,5                    ; vpinsrw       $0x5,%eax,%xmm8,%xmm8
7200  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
7201  DB  197,57,196,192,4                    ; vpinsrw       $0x4,%eax,%xmm8,%xmm8
7202  DB  196,65,121,110,12,19                ; vmovd         (%r11,%rdx,1),%xmm9
7203  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
7204  DB  196,67,49,14,192,240                ; vpblendw      $0xf0,%xmm8,%xmm9,%xmm8
7205  DB  233,252,254,255,255                 ; jmpq          1deb <_sk_lerp_u8_avx+0x10>
7206  DB  144                                 ; nop
7207  DB  140,255                             ; mov           %?,%edi
7208  DB  255                                 ; (bad)
7209  DB  255,170,255,255,255,154             ; ljmp          *-0x65000001(%rdx)
7210  DB  255                                 ; (bad)
7211  DB  255                                 ; (bad)
7212  DB  255                                 ; (bad)
7213  DB  233,255,255,255,222                 ; jmpq          ffffffffdf001f00 <_sk_callback_avx+0xffffffffdeffb67a>
7214  DB  255                                 ; (bad)
7215  DB  255                                 ; (bad)
7216  DB  255,211                             ; callq         *%rbx
7217  DB  255                                 ; (bad)
7218  DB  255                                 ; (bad)
7219  DB  255,195                             ; inc           %ebx
7220  DB  255                                 ; (bad)
7221  DB  255                                 ; (bad)
7222  DB  255                                 ; .byte         0xff
7223
7224PUBLIC _sk_lerp_565_avx
7225_sk_lerp_565_avx LABEL PROC
7226  DB  72,173                              ; lods          %ds:(%rsi),%rax
7227  DB  76,139,24                           ; mov           (%rax),%r11
7228  DB  77,133,192                          ; test          %r8,%r8
7229  DB  15,133,208,0,0,0                    ; jne           1fea <_sk_lerp_565_avx+0xde>
7230  DB  196,65,122,111,4,83                 ; vmovdqu       (%r11,%rdx,2),%xmm8
7231  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
7232  DB  196,65,57,105,201                   ; vpunpckhwd    %xmm9,%xmm8,%xmm9
7233  DB  196,66,121,51,192                   ; vpmovzxwd     %xmm8,%xmm8
7234  DB  196,67,61,24,193,1                  ; vinsertf128   $0x1,%xmm9,%ymm8,%ymm8
7235  DB  196,98,125,24,13,150,75,0,0         ; vbroadcastss  0x4b96(%rip),%ymm9        # 6ad4 <_sk_callback_avx+0x24e>
7236  DB  196,65,60,84,201                    ; vandps        %ymm9,%ymm8,%ymm9
7237  DB  196,65,124,91,201                   ; vcvtdq2ps     %ymm9,%ymm9
7238  DB  196,98,125,24,21,135,75,0,0         ; vbroadcastss  0x4b87(%rip),%ymm10        # 6ad8 <_sk_callback_avx+0x252>
7239  DB  196,65,52,89,202                    ; vmulps        %ymm10,%ymm9,%ymm9
7240  DB  196,98,125,24,21,125,75,0,0         ; vbroadcastss  0x4b7d(%rip),%ymm10        # 6adc <_sk_callback_avx+0x256>
7241  DB  196,65,60,84,210                    ; vandps        %ymm10,%ymm8,%ymm10
7242  DB  196,65,124,91,210                   ; vcvtdq2ps     %ymm10,%ymm10
7243  DB  196,98,125,24,29,110,75,0,0         ; vbroadcastss  0x4b6e(%rip),%ymm11        # 6ae0 <_sk_callback_avx+0x25a>
7244  DB  196,65,44,89,211                    ; vmulps        %ymm11,%ymm10,%ymm10
7245  DB  196,98,125,24,29,100,75,0,0         ; vbroadcastss  0x4b64(%rip),%ymm11        # 6ae4 <_sk_callback_avx+0x25e>
7246  DB  196,65,60,84,195                    ; vandps        %ymm11,%ymm8,%ymm8
7247  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
7248  DB  196,98,125,24,29,85,75,0,0          ; vbroadcastss  0x4b55(%rip),%ymm11        # 6ae8 <_sk_callback_avx+0x262>
7249  DB  196,65,60,89,195                    ; vmulps        %ymm11,%ymm8,%ymm8
7250  DB  197,252,92,196                      ; vsubps        %ymm4,%ymm0,%ymm0
7251  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
7252  DB  197,252,88,196                      ; vaddps        %ymm4,%ymm0,%ymm0
7253  DB  197,244,92,205                      ; vsubps        %ymm5,%ymm1,%ymm1
7254  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
7255  DB  197,244,88,205                      ; vaddps        %ymm5,%ymm1,%ymm1
7256  DB  197,236,92,214                      ; vsubps        %ymm6,%ymm2,%ymm2
7257  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
7258  DB  197,236,88,214                      ; vaddps        %ymm6,%ymm2,%ymm2
7259  DB  197,228,92,223                      ; vsubps        %ymm7,%ymm3,%ymm3
7260  DB  196,65,100,89,201                   ; vmulps        %ymm9,%ymm3,%ymm9
7261  DB  197,52,88,207                       ; vaddps        %ymm7,%ymm9,%ymm9
7262  DB  196,65,100,89,210                   ; vmulps        %ymm10,%ymm3,%ymm10
7263  DB  197,44,88,215                       ; vaddps        %ymm7,%ymm10,%ymm10
7264  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
7265  DB  197,228,88,223                      ; vaddps        %ymm7,%ymm3,%ymm3
7266  DB  197,172,95,219                      ; vmaxps        %ymm3,%ymm10,%ymm3
7267  DB  197,180,95,219                      ; vmaxps        %ymm3,%ymm9,%ymm3
7268  DB  72,173                              ; lods          %ds:(%rsi),%rax
7269  DB  255,224                             ; jmpq          *%rax
7270  DB  69,137,193                          ; mov           %r8d,%r9d
7271  DB  65,128,225,7                        ; and           $0x7,%r9b
7272  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
7273  DB  65,254,201                          ; dec           %r9b
7274  DB  65,128,249,6                        ; cmp           $0x6,%r9b
7275  DB  15,135,29,255,255,255               ; ja            1f20 <_sk_lerp_565_avx+0x14>
7276  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
7277  DB  76,141,21,102,0,0,0                 ; lea           0x66(%rip),%r10        # 2074 <_sk_lerp_565_avx+0x168>
7278  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
7279  DB  76,1,208                            ; add           %r10,%rax
7280  DB  255,224                             ; jmpq          *%rax
7281  DB  65,15,183,4,83                      ; movzwl        (%r11,%rdx,2),%eax
7282  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
7283  DB  233,251,254,255,255                 ; jmpq          1f20 <_sk_lerp_565_avx+0x14>
7284  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
7285  DB  196,65,57,196,68,83,4,2             ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm8,%xmm8
7286  DB  196,65,121,110,12,83                ; vmovd         (%r11,%rdx,2),%xmm9
7287  DB  196,67,57,14,193,3                  ; vpblendw      $0x3,%xmm9,%xmm8,%xmm8
7288  DB  233,221,254,255,255                 ; jmpq          1f20 <_sk_lerp_565_avx+0x14>
7289  DB  196,65,57,239,192                   ; vpxor         %xmm8,%xmm8,%xmm8
7290  DB  196,65,57,196,68,83,12,6            ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm8,%xmm8
7291  DB  196,65,57,196,68,83,10,5            ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm8,%xmm8
7292  DB  196,65,57,196,68,83,8,4             ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm8,%xmm8
7293  DB  196,65,122,126,12,83                ; vmovq         (%r11,%rdx,2),%xmm9
7294  DB  196,67,49,14,192,240                ; vpblendw      $0xf0,%xmm8,%xmm9,%xmm8
7295  DB  233,175,254,255,255                 ; jmpq          1f20 <_sk_lerp_565_avx+0x14>
7296  DB  15,31,0                             ; nopl          (%rax)
7297  DB  163,255,255,255,190,255,255,255,177 ; movabs        %eax,0xb1ffffffbeffffff
7298  DB  255                                 ; (bad)
7299  DB  255                                 ; (bad)
7300  DB  255                                 ; (bad)
7301  DB  236                                 ; in            (%dx),%al
7302  DB  255                                 ; (bad)
7303  DB  255                                 ; (bad)
7304  DB  255,228                             ; jmpq          *%rsp
7305  DB  255                                 ; (bad)
7306  DB  255                                 ; (bad)
7307  DB  255                                 ; (bad)
7308  DB  220,255                             ; fdivr         %st,%st(7)
7309  DB  255                                 ; (bad)
7310  DB  255,207                             ; dec           %edi
7311  DB  255                                 ; (bad)
7312  DB  255                                 ; (bad)
7313  DB  255                                 ; .byte         0xff
7314
7315PUBLIC _sk_load_tables_avx
7316_sk_load_tables_avx LABEL PROC
7317  DB  83                                  ; push          %rbx
7318  DB  72,131,236,48                       ; sub           $0x30,%rsp
7319  DB  197,252,17,60,36                    ; vmovups       %ymm7,(%rsp)
7320  DB  73,137,201                          ; mov           %rcx,%r9
7321  DB  72,173                              ; lods          %ds:(%rsi),%rax
7322  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
7323  DB  76,3,16                             ; add           (%rax),%r10
7324  DB  77,133,192                          ; test          %r8,%r8
7325  DB  15,133,251,1,0,0                    ; jne           22ae <_sk_load_tables_avx+0x21e>
7326  DB  196,65,124,16,18                    ; vmovups       (%r10),%ymm10
7327  DB  197,124,40,13,96,78,0,0             ; vmovaps       0x4e60(%rip),%ymm9        # 6f20 <_sk_callback_avx+0x69a>
7328  DB  196,193,44,84,201                   ; vandps        %ymm9,%ymm10,%ymm1
7329  DB  196,227,125,25,200,1                ; vextractf128  $0x1,%ymm1,%xmm0
7330  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
7331  DB  69,137,218                          ; mov           %r11d,%r10d
7332  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
7333  DB  196,161,122,16,20,147               ; vmovss        (%rbx,%r10,4),%xmm2
7334  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
7335  DB  73,193,235,32                       ; shr           $0x20,%r11
7336  DB  196,163,105,33,4,155,16             ; vinsertps     $0x10,(%rbx,%r11,4),%xmm2,%xmm0
7337  DB  68,137,209                          ; mov           %r10d,%ecx
7338  DB  196,227,121,33,4,139,32             ; vinsertps     $0x20,(%rbx,%rcx,4),%xmm0,%xmm0
7339  DB  196,193,249,126,203                 ; vmovq         %xmm1,%r11
7340  DB  73,193,234,32                       ; shr           $0x20,%r10
7341  DB  196,35,121,33,44,147,48             ; vinsertps     $0x30,(%rbx,%r10,4),%xmm0,%xmm13
7342  DB  68,137,217                          ; mov           %r11d,%ecx
7343  DB  197,250,16,20,139                   ; vmovss        (%rbx,%rcx,4),%xmm2
7344  DB  196,227,249,22,201,1                ; vpextrq       $0x1,%xmm1,%rcx
7345  DB  73,193,235,32                       ; shr           $0x20,%r11
7346  DB  196,163,105,33,12,155,16            ; vinsertps     $0x10,(%rbx,%r11,4),%xmm2,%xmm1
7347  DB  65,137,202                          ; mov           %ecx,%r10d
7348  DB  72,193,233,32                       ; shr           $0x20,%rcx
7349  DB  196,163,113,33,12,147,32            ; vinsertps     $0x20,(%rbx,%r10,4),%xmm1,%xmm1
7350  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
7351  DB  196,99,113,33,36,139,48             ; vinsertps     $0x30,(%rbx,%rcx,4),%xmm1,%xmm12
7352  DB  196,193,105,114,210,8               ; vpsrld        $0x8,%xmm10,%xmm2
7353  DB  196,67,125,25,208,1                 ; vextractf128  $0x1,%ymm10,%xmm8
7354  DB  196,193,121,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm0
7355  DB  196,227,109,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm2,%ymm0
7356  DB  196,193,124,84,209                  ; vandps        %ymm9,%ymm0,%ymm2
7357  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
7358  DB  196,225,249,126,193                 ; vmovq         %xmm0,%rcx
7359  DB  137,203                             ; mov           %ecx,%ebx
7360  DB  196,193,122,16,12,154               ; vmovss        (%r10,%rbx,4),%xmm1
7361  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
7362  DB  72,193,233,32                       ; shr           $0x20,%rcx
7363  DB  196,67,113,33,52,138,16             ; vinsertps     $0x10,(%r10,%rcx,4),%xmm1,%xmm14
7364  DB  137,217                             ; mov           %ebx,%ecx
7365  DB  196,193,122,16,28,138               ; vmovss        (%r10,%rcx,4),%xmm3
7366  DB  196,225,249,126,209                 ; vmovq         %xmm2,%rcx
7367  DB  72,193,235,32                       ; shr           $0x20,%rbx
7368  DB  196,193,122,16,12,154               ; vmovss        (%r10,%rbx,4),%xmm1
7369  DB  137,203                             ; mov           %ecx,%ebx
7370  DB  196,193,122,16,4,154                ; vmovss        (%r10,%rbx,4),%xmm0
7371  DB  196,227,249,22,211,1                ; vpextrq       $0x1,%xmm2,%rbx
7372  DB  72,193,233,32                       ; shr           $0x20,%rcx
7373  DB  196,67,121,33,28,138,16             ; vinsertps     $0x10,(%r10,%rcx,4),%xmm0,%xmm11
7374  DB  137,217                             ; mov           %ebx,%ecx
7375  DB  196,65,122,16,60,138                ; vmovss        (%r10,%rcx,4),%xmm15
7376  DB  196,195,29,24,197,1                 ; vinsertf128   $0x1,%xmm13,%ymm12,%ymm0
7377  DB  72,193,235,32                       ; shr           $0x20,%rbx
7378  DB  196,227,9,33,219,32                 ; vinsertps     $0x20,%xmm3,%xmm14,%xmm3
7379  DB  196,227,97,33,249,48                ; vinsertps     $0x30,%xmm1,%xmm3,%xmm7
7380  DB  196,65,122,16,52,154                ; vmovss        (%r10,%rbx,4),%xmm14
7381  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
7382  DB  196,193,97,114,210,16               ; vpsrld        $0x10,%xmm10,%xmm3
7383  DB  196,193,105,114,208,16              ; vpsrld        $0x10,%xmm8,%xmm2
7384  DB  196,227,101,24,210,1                ; vinsertf128   $0x1,%xmm2,%ymm3,%ymm2
7385  DB  196,65,108,84,201                   ; vandps        %ymm9,%ymm2,%ymm9
7386  DB  196,99,125,25,202,1                 ; vextractf128  $0x1,%ymm9,%xmm2
7387  DB  196,225,249,126,209                 ; vmovq         %xmm2,%rcx
7388  DB  137,203                             ; mov           %ecx,%ebx
7389  DB  197,250,16,28,152                   ; vmovss        (%rax,%rbx,4),%xmm3
7390  DB  196,227,249,22,211,1                ; vpextrq       $0x1,%xmm2,%rbx
7391  DB  72,193,233,32                       ; shr           $0x20,%rcx
7392  DB  196,99,97,33,36,136,16              ; vinsertps     $0x10,(%rax,%rcx,4),%xmm3,%xmm12
7393  DB  137,217                             ; mov           %ebx,%ecx
7394  DB  197,250,16,28,136                   ; vmovss        (%rax,%rcx,4),%xmm3
7395  DB  196,97,249,126,201                  ; vmovq         %xmm9,%rcx
7396  DB  72,193,235,32                       ; shr           $0x20,%rbx
7397  DB  197,250,16,20,152                   ; vmovss        (%rax,%rbx,4),%xmm2
7398  DB  137,203                             ; mov           %ecx,%ebx
7399  DB  197,250,16,12,152                   ; vmovss        (%rax,%rbx,4),%xmm1
7400  DB  196,99,249,22,203,1                 ; vpextrq       $0x1,%xmm9,%rbx
7401  DB  72,193,233,32                       ; shr           $0x20,%rcx
7402  DB  196,99,113,33,12,136,16             ; vinsertps     $0x10,(%rax,%rcx,4),%xmm1,%xmm9
7403  DB  137,217                             ; mov           %ebx,%ecx
7404  DB  197,122,16,44,136                   ; vmovss        (%rax,%rcx,4),%xmm13
7405  DB  196,195,33,33,207,32                ; vinsertps     $0x20,%xmm15,%xmm11,%xmm1
7406  DB  72,193,235,32                       ; shr           $0x20,%rbx
7407  DB  197,122,16,28,152                   ; vmovss        (%rax,%rbx,4),%xmm11
7408  DB  196,195,113,33,206,48               ; vinsertps     $0x30,%xmm14,%xmm1,%xmm1
7409  DB  196,227,117,24,207,1                ; vinsertf128   $0x1,%xmm7,%ymm1,%ymm1
7410  DB  196,227,25,33,219,32                ; vinsertps     $0x20,%xmm3,%xmm12,%xmm3
7411  DB  196,227,97,33,210,48                ; vinsertps     $0x30,%xmm2,%xmm3,%xmm2
7412  DB  196,195,49,33,221,32                ; vinsertps     $0x20,%xmm13,%xmm9,%xmm3
7413  DB  196,195,97,33,219,48                ; vinsertps     $0x30,%xmm11,%xmm3,%xmm3
7414  DB  196,227,101,24,210,1                ; vinsertf128   $0x1,%xmm2,%ymm3,%ymm2
7415  DB  196,193,97,114,210,24               ; vpsrld        $0x18,%xmm10,%xmm3
7416  DB  196,193,65,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm7
7417  DB  196,227,101,24,223,1                ; vinsertf128   $0x1,%xmm7,%ymm3,%ymm3
7418  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7419  DB  196,226,125,24,61,83,72,0,0         ; vbroadcastss  0x4853(%rip),%ymm7        # 6aec <_sk_callback_avx+0x266>
7420  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
7421  DB  72,173                              ; lods          %ds:(%rsi),%rax
7422  DB  76,137,201                          ; mov           %r9,%rcx
7423  DB  197,252,16,60,36                    ; vmovups       (%rsp),%ymm7
7424  DB  72,131,196,48                       ; add           $0x30,%rsp
7425  DB  91                                  ; pop           %rbx
7426  DB  255,224                             ; jmpq          *%rax
7427  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
7428  DB  68,41,193                           ; sub           %r8d,%ecx
7429  DB  192,225,3                           ; shl           $0x3,%cl
7430  DB  73,199,195,255,255,255,255          ; mov           $0xffffffffffffffff,%r11
7431  DB  73,211,235                          ; shr           %cl,%r11
7432  DB  196,193,249,110,195                 ; vmovq         %r11,%xmm0
7433  DB  196,226,121,48,192                  ; vpmovzxbw     %xmm0,%xmm0
7434  DB  196,226,121,0,13,90,75,0,0          ; vpshufb       0x4b5a(%rip),%xmm0,%xmm1        # 6e30 <_sk_callback_avx+0x5aa>
7435  DB  196,226,121,33,201                  ; vpmovsxbd     %xmm1,%xmm1
7436  DB  196,226,121,0,5,92,75,0,0           ; vpshufb       0x4b5c(%rip),%xmm0,%xmm0        # 6e40 <_sk_callback_avx+0x5ba>
7437  DB  196,226,121,33,192                  ; vpmovsxbd     %xmm0,%xmm0
7438  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
7439  DB  196,66,125,44,18                    ; vmaskmovps    (%r10),%ymm0,%ymm10
7440  DB  233,191,253,255,255                 ; jmpq          20b8 <_sk_load_tables_avx+0x28>
7441
7442PUBLIC _sk_load_tables_u16_be_avx
7443_sk_load_tables_u16_be_avx LABEL PROC
7444  DB  72,131,236,56                       ; sub           $0x38,%rsp
7445  DB  72,173                              ; lods          %ds:(%rsi),%rax
7446  DB  76,139,8                            ; mov           (%rax),%r9
7447  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
7448  DB  77,133,192                          ; test          %r8,%r8
7449  DB  197,252,17,60,36                    ; vmovups       %ymm7,(%rsp)
7450  DB  15,133,87,2,0,0                     ; jne           256f <_sk_load_tables_u16_be_avx+0x276>
7451  DB  196,1,121,16,4,81                   ; vmovupd       (%r9,%r10,2),%xmm8
7452  DB  196,129,121,16,84,81,16             ; vmovupd       0x10(%r9,%r10,2),%xmm2
7453  DB  196,129,121,16,92,81,32             ; vmovupd       0x20(%r9,%r10,2),%xmm3
7454  DB  196,1,122,111,76,81,48              ; vmovdqu       0x30(%r9,%r10,2),%xmm9
7455  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
7456  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
7457  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
7458  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
7459  DB  197,121,97,202                      ; vpunpcklwd    %xmm2,%xmm0,%xmm9
7460  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
7461  DB  197,241,97,195                      ; vpunpcklwd    %xmm3,%xmm1,%xmm0
7462  DB  197,113,105,219                     ; vpunpckhwd    %xmm3,%xmm1,%xmm11
7463  DB  197,177,108,200                     ; vpunpcklqdq   %xmm0,%xmm9,%xmm1
7464  DB  197,49,109,224                      ; vpunpckhqdq   %xmm0,%xmm9,%xmm12
7465  DB  197,121,111,21,235,74,0,0           ; vmovdqa       0x4aeb(%rip),%xmm10        # 6e50 <_sk_callback_avx+0x5ca>
7466  DB  196,193,113,219,202                 ; vpand         %xmm10,%xmm1,%xmm1
7467  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
7468  DB  196,193,113,105,209                 ; vpunpckhwd    %xmm9,%xmm1,%xmm2
7469  DB  196,193,249,126,209                 ; vmovq         %xmm2,%r9
7470  DB  69,137,202                          ; mov           %r9d,%r10d
7471  DB  76,139,88,8                         ; mov           0x8(%rax),%r11
7472  DB  196,129,122,16,28,147               ; vmovss        (%r11,%r10,4),%xmm3
7473  DB  196,195,249,22,210,1                ; vpextrq       $0x1,%xmm2,%r10
7474  DB  73,193,233,32                       ; shr           $0x20,%r9
7475  DB  196,3,97,33,44,139,16               ; vinsertps     $0x10,(%r11,%r9,4),%xmm3,%xmm13
7476  DB  69,137,209                          ; mov           %r10d,%r9d
7477  DB  73,193,234,32                       ; shr           $0x20,%r10
7478  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
7479  DB  196,129,122,16,28,139               ; vmovss        (%r11,%r9,4),%xmm3
7480  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7481  DB  196,129,122,16,4,147                ; vmovss        (%r11,%r10,4),%xmm0
7482  DB  69,137,202                          ; mov           %r9d,%r10d
7483  DB  73,193,233,30                       ; shr           $0x1e,%r9
7484  DB  196,129,122,16,20,147               ; vmovss        (%r11,%r10,4),%xmm2
7485  DB  196,195,249,22,202,1                ; vpextrq       $0x1,%xmm1,%r10
7486  DB  196,131,105,33,12,11,16             ; vinsertps     $0x10,(%r11,%r9,1),%xmm2,%xmm1
7487  DB  69,137,209                          ; mov           %r10d,%r9d
7488  DB  73,193,234,30                       ; shr           $0x1e,%r10
7489  DB  196,129,122,16,20,139               ; vmovss        (%r11,%r9,4),%xmm2
7490  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
7491  DB  196,227,17,33,219,32                ; vinsertps     $0x20,%xmm3,%xmm13,%xmm3
7492  DB  196,99,97,33,232,48                 ; vinsertps     $0x30,%xmm0,%xmm3,%xmm13
7493  DB  196,99,113,33,242,32                ; vinsertps     $0x20,%xmm2,%xmm1,%xmm14
7494  DB  196,1,122,16,60,19                  ; vmovss        (%r11,%r10,1),%xmm15
7495  DB  196,193,25,219,210                  ; vpand         %xmm10,%xmm12,%xmm2
7496  DB  196,193,105,105,193                 ; vpunpckhwd    %xmm9,%xmm2,%xmm0
7497  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
7498  DB  69,137,211                          ; mov           %r10d,%r11d
7499  DB  196,129,122,16,12,153               ; vmovss        (%r9,%r11,4),%xmm1
7500  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
7501  DB  73,193,234,32                       ; shr           $0x20,%r10
7502  DB  196,3,113,33,36,145,16              ; vinsertps     $0x10,(%r9,%r10,4),%xmm1,%xmm12
7503  DB  69,137,218                          ; mov           %r11d,%r10d
7504  DB  73,193,235,32                       ; shr           $0x20,%r11
7505  DB  196,226,121,51,194                  ; vpmovzxwd     %xmm2,%xmm0
7506  DB  196,129,122,16,20,145               ; vmovss        (%r9,%r10,4),%xmm2
7507  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
7508  DB  196,129,122,16,28,153               ; vmovss        (%r9,%r11,4),%xmm3
7509  DB  69,137,211                          ; mov           %r10d,%r11d
7510  DB  73,193,234,30                       ; shr           $0x1e,%r10
7511  DB  196,129,122,16,12,153               ; vmovss        (%r9,%r11,4),%xmm1
7512  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
7513  DB  196,131,113,33,12,17,16             ; vinsertps     $0x10,(%r9,%r10,1),%xmm1,%xmm1
7514  DB  69,137,218                          ; mov           %r11d,%r10d
7515  DB  196,129,122,16,60,145               ; vmovss        (%r9,%r10,4),%xmm7
7516  DB  196,195,9,33,199,48                 ; vinsertps     $0x30,%xmm15,%xmm14,%xmm0
7517  DB  196,65,57,108,243                   ; vpunpcklqdq   %xmm11,%xmm8,%xmm14
7518  DB  196,195,125,24,197,1                ; vinsertf128   $0x1,%xmm13,%ymm0,%ymm0
7519  DB  73,193,235,30                       ; shr           $0x1e,%r11
7520  DB  196,227,25,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm12,%xmm2
7521  DB  196,227,105,33,219,48               ; vinsertps     $0x30,%xmm3,%xmm2,%xmm3
7522  DB  196,99,113,33,239,32                ; vinsertps     $0x20,%xmm7,%xmm1,%xmm13
7523  DB  196,1,122,16,60,25                  ; vmovss        (%r9,%r11,1),%xmm15
7524  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
7525  DB  196,193,9,219,250                   ; vpand         %xmm10,%xmm14,%xmm7
7526  DB  196,193,65,105,209                  ; vpunpckhwd    %xmm9,%xmm7,%xmm2
7527  DB  196,193,249,126,209                 ; vmovq         %xmm2,%r9
7528  DB  68,137,200                          ; mov           %r9d,%eax
7529  DB  196,193,122,16,12,130               ; vmovss        (%r10,%rax,4),%xmm1
7530  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7531  DB  73,193,233,32                       ; shr           $0x20,%r9
7532  DB  196,3,113,33,20,138,16              ; vinsertps     $0x10,(%r10,%r9,4),%xmm1,%xmm10
7533  DB  65,137,193                          ; mov           %eax,%r9d
7534  DB  72,193,232,32                       ; shr           $0x20,%rax
7535  DB  196,226,121,51,207                  ; vpmovzxwd     %xmm7,%xmm1
7536  DB  196,1,122,16,52,138                 ; vmovss        (%r10,%r9,4),%xmm14
7537  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7538  DB  196,65,122,16,36,130                ; vmovss        (%r10,%rax,4),%xmm12
7539  DB  68,137,200                          ; mov           %r9d,%eax
7540  DB  73,193,233,30                       ; shr           $0x1e,%r9
7541  DB  196,193,122,16,20,130               ; vmovss        (%r10,%rax,4),%xmm2
7542  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7543  DB  196,131,105,33,20,10,16             ; vinsertps     $0x10,(%r10,%r9,1),%xmm2,%xmm2
7544  DB  68,137,216                          ; mov           %r11d,%eax
7545  DB  196,193,122,16,60,130               ; vmovss        (%r10,%rax,4),%xmm7
7546  DB  196,195,17,33,207,48                ; vinsertps     $0x30,%xmm15,%xmm13,%xmm1
7547  DB  73,193,235,30                       ; shr           $0x1e,%r11
7548  DB  196,1,122,16,44,26                  ; vmovss        (%r10,%r11,1),%xmm13
7549  DB  196,227,117,24,203,1                ; vinsertf128   $0x1,%xmm3,%ymm1,%ymm1
7550  DB  196,195,41,33,222,32                ; vinsertps     $0x20,%xmm14,%xmm10,%xmm3
7551  DB  196,195,97,33,220,48                ; vinsertps     $0x30,%xmm12,%xmm3,%xmm3
7552  DB  196,227,105,33,215,32               ; vinsertps     $0x20,%xmm7,%xmm2,%xmm2
7553  DB  196,195,105,33,213,48               ; vinsertps     $0x30,%xmm13,%xmm2,%xmm2
7554  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
7555  DB  196,193,57,109,219                  ; vpunpckhqdq   %xmm11,%xmm8,%xmm3
7556  DB  197,193,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm7
7557  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
7558  DB  197,193,235,219                     ; vpor          %xmm3,%xmm7,%xmm3
7559  DB  196,193,97,105,249                  ; vpunpckhwd    %xmm9,%xmm3,%xmm7
7560  DB  196,226,121,51,219                  ; vpmovzxwd     %xmm3,%xmm3
7561  DB  196,227,101,24,223,1                ; vinsertf128   $0x1,%xmm7,%ymm3,%ymm3
7562  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7563  DB  196,226,125,24,61,146,69,0,0        ; vbroadcastss  0x4592(%rip),%ymm7        # 6af0 <_sk_callback_avx+0x26a>
7564  DB  197,228,89,223                      ; vmulps        %ymm7,%ymm3,%ymm3
7565  DB  72,173                              ; lods          %ds:(%rsi),%rax
7566  DB  197,252,16,60,36                    ; vmovups       (%rsp),%ymm7
7567  DB  72,131,196,56                       ; add           $0x38,%rsp
7568  DB  255,224                             ; jmpq          *%rax
7569  DB  196,1,123,16,4,81                   ; vmovsd        (%r9,%r10,2),%xmm8
7570  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
7571  DB  73,131,248,1                        ; cmp           $0x1,%r8
7572  DB  116,85                              ; je            25d5 <_sk_load_tables_u16_be_avx+0x2dc>
7573  DB  196,1,57,22,68,81,8                 ; vmovhpd       0x8(%r9,%r10,2),%xmm8,%xmm8
7574  DB  73,131,248,3                        ; cmp           $0x3,%r8
7575  DB  114,72                              ; jb            25d5 <_sk_load_tables_u16_be_avx+0x2dc>
7576  DB  196,129,123,16,84,81,16             ; vmovsd        0x10(%r9,%r10,2),%xmm2
7577  DB  73,131,248,3                        ; cmp           $0x3,%r8
7578  DB  116,72                              ; je            25e2 <_sk_load_tables_u16_be_avx+0x2e9>
7579  DB  196,129,105,22,84,81,24             ; vmovhpd       0x18(%r9,%r10,2),%xmm2,%xmm2
7580  DB  73,131,248,5                        ; cmp           $0x5,%r8
7581  DB  114,59                              ; jb            25e2 <_sk_load_tables_u16_be_avx+0x2e9>
7582  DB  196,129,123,16,92,81,32             ; vmovsd        0x20(%r9,%r10,2),%xmm3
7583  DB  73,131,248,5                        ; cmp           $0x5,%r8
7584  DB  15,132,123,253,255,255              ; je            2333 <_sk_load_tables_u16_be_avx+0x3a>
7585  DB  196,129,97,22,92,81,40              ; vmovhpd       0x28(%r9,%r10,2),%xmm3,%xmm3
7586  DB  73,131,248,7                        ; cmp           $0x7,%r8
7587  DB  15,130,106,253,255,255              ; jb            2333 <_sk_load_tables_u16_be_avx+0x3a>
7588  DB  196,1,122,126,76,81,48              ; vmovq         0x30(%r9,%r10,2),%xmm9
7589  DB  233,94,253,255,255                  ; jmpq          2333 <_sk_load_tables_u16_be_avx+0x3a>
7590  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
7591  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
7592  DB  233,81,253,255,255                  ; jmpq          2333 <_sk_load_tables_u16_be_avx+0x3a>
7593  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
7594  DB  233,72,253,255,255                  ; jmpq          2333 <_sk_load_tables_u16_be_avx+0x3a>
7595
7596PUBLIC _sk_load_tables_rgb_u16_be_avx
7597_sk_load_tables_rgb_u16_be_avx LABEL PROC
7598  DB  72,131,236,88                       ; sub           $0x58,%rsp
7599  DB  72,173                              ; lods          %ds:(%rsi),%rax
7600  DB  76,139,8                            ; mov           (%rax),%r9
7601  DB  76,141,20,82                        ; lea           (%rdx,%rdx,2),%r10
7602  DB  77,133,192                          ; test          %r8,%r8
7603  DB  197,252,17,124,36,32                ; vmovups       %ymm7,0x20(%rsp)
7604  DB  197,252,17,52,36                    ; vmovups       %ymm6,(%rsp)
7605  DB  15,133,74,2,0,0                     ; jne           2856 <_sk_load_tables_rgb_u16_be_avx+0x26b>
7606  DB  196,129,122,111,4,81                ; vmovdqu       (%r9,%r10,2),%xmm0
7607  DB  196,129,122,111,84,81,12            ; vmovdqu       0xc(%r9,%r10,2),%xmm2
7608  DB  196,129,122,111,76,81,24            ; vmovdqu       0x18(%r9,%r10,2),%xmm1
7609  DB  196,129,122,111,92,81,32            ; vmovdqu       0x20(%r9,%r10,2),%xmm3
7610  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
7611  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
7612  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
7613  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
7614  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
7615  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
7616  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
7617  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
7618  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
7619  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
7620  DB  197,249,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm0
7621  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
7622  DB  197,241,105,203                     ; vpunpckhwd    %xmm3,%xmm1,%xmm1
7623  DB  197,185,108,218                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm3
7624  DB  197,57,109,218                      ; vpunpckhqdq   %xmm2,%xmm8,%xmm11
7625  DB  197,121,108,193                     ; vpunpcklqdq   %xmm1,%xmm0,%xmm8
7626  DB  197,121,111,13,234,71,0,0           ; vmovdqa       0x47ea(%rip),%xmm9        # 6e60 <_sk_callback_avx+0x5da>
7627  DB  196,193,97,219,193                  ; vpand         %xmm9,%xmm3,%xmm0
7628  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
7629  DB  196,193,121,105,202                 ; vpunpckhwd    %xmm10,%xmm0,%xmm1
7630  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7631  DB  69,137,202                          ; mov           %r9d,%r10d
7632  DB  76,139,88,8                         ; mov           0x8(%rax),%r11
7633  DB  196,129,122,16,20,147               ; vmovss        (%r11,%r10,4),%xmm2
7634  DB  196,195,249,22,202,1                ; vpextrq       $0x1,%xmm1,%r10
7635  DB  73,193,233,32                       ; shr           $0x20,%r9
7636  DB  196,3,105,33,36,139,16              ; vinsertps     $0x10,(%r11,%r9,4),%xmm2,%xmm12
7637  DB  69,137,209                          ; mov           %r10d,%r9d
7638  DB  73,193,234,32                       ; shr           $0x20,%r10
7639  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
7640  DB  196,129,122,16,20,139               ; vmovss        (%r11,%r9,4),%xmm2
7641  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7642  DB  196,129,122,16,12,147               ; vmovss        (%r11,%r10,4),%xmm1
7643  DB  69,137,202                          ; mov           %r9d,%r10d
7644  DB  73,193,233,30                       ; shr           $0x1e,%r9
7645  DB  196,129,122,16,28,147               ; vmovss        (%r11,%r10,4),%xmm3
7646  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
7647  DB  196,131,97,33,28,11,16              ; vinsertps     $0x10,(%r11,%r9,1),%xmm3,%xmm3
7648  DB  69,137,209                          ; mov           %r10d,%r9d
7649  DB  73,193,234,30                       ; shr           $0x1e,%r10
7650  DB  196,129,122,16,4,139                ; vmovss        (%r11,%r9,4),%xmm0
7651  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
7652  DB  196,227,25,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm12,%xmm2
7653  DB  196,227,105,33,201,48               ; vinsertps     $0x30,%xmm1,%xmm2,%xmm1
7654  DB  196,129,122,16,20,19                ; vmovss        (%r11,%r10,1),%xmm2
7655  DB  196,65,33,219,225                   ; vpand         %xmm9,%xmm11,%xmm12
7656  DB  196,65,25,105,218                   ; vpunpckhwd    %xmm10,%xmm12,%xmm11
7657  DB  196,65,249,126,218                  ; vmovq         %xmm11,%r10
7658  DB  69,137,211                          ; mov           %r10d,%r11d
7659  DB  196,1,122,16,44,153                 ; vmovss        (%r9,%r11,4),%xmm13
7660  DB  196,67,249,22,219,1                 ; vpextrq       $0x1,%xmm11,%r11
7661  DB  73,193,234,32                       ; shr           $0x20,%r10
7662  DB  196,3,17,33,28,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm13,%xmm11
7663  DB  69,137,218                          ; mov           %r11d,%r10d
7664  DB  73,193,235,32                       ; shr           $0x20,%r11
7665  DB  196,66,121,51,244                   ; vpmovzxwd     %xmm12,%xmm14
7666  DB  196,1,122,16,44,145                 ; vmovss        (%r9,%r10,4),%xmm13
7667  DB  196,65,249,126,242                  ; vmovq         %xmm14,%r10
7668  DB  196,1,122,16,36,153                 ; vmovss        (%r9,%r11,4),%xmm12
7669  DB  69,137,211                          ; mov           %r10d,%r11d
7670  DB  73,193,234,30                       ; shr           $0x1e,%r10
7671  DB  196,1,122,16,60,153                 ; vmovss        (%r9,%r11,4),%xmm15
7672  DB  196,67,249,22,243,1                 ; vpextrq       $0x1,%xmm14,%r11
7673  DB  196,3,1,33,52,17,16                 ; vinsertps     $0x10,(%r9,%r10,1),%xmm15,%xmm14
7674  DB  69,137,218                          ; mov           %r11d,%r10d
7675  DB  196,1,122,16,60,145                 ; vmovss        (%r9,%r10,4),%xmm15
7676  DB  196,227,97,33,192,32                ; vinsertps     $0x20,%xmm0,%xmm3,%xmm0
7677  DB  196,227,121,33,194,48               ; vinsertps     $0x30,%xmm2,%xmm0,%xmm0
7678  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
7679  DB  73,193,235,30                       ; shr           $0x1e,%r11
7680  DB  196,129,122,16,52,25                ; vmovss        (%r9,%r11,1),%xmm6
7681  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
7682  DB  196,65,57,219,193                   ; vpand         %xmm9,%xmm8,%xmm8
7683  DB  196,193,57,105,210                  ; vpunpckhwd    %xmm10,%xmm8,%xmm2
7684  DB  196,193,249,126,209                 ; vmovq         %xmm2,%r9
7685  DB  68,137,200                          ; mov           %r9d,%eax
7686  DB  196,193,122,16,12,130               ; vmovss        (%r10,%rax,4),%xmm1
7687  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
7688  DB  73,193,233,32                       ; shr           $0x20,%r9
7689  DB  196,3,113,33,12,138,16              ; vinsertps     $0x10,(%r10,%r9,4),%xmm1,%xmm9
7690  DB  65,137,193                          ; mov           %eax,%r9d
7691  DB  72,193,232,32                       ; shr           $0x20,%rax
7692  DB  196,194,121,51,200                  ; vpmovzxwd     %xmm8,%xmm1
7693  DB  196,1,122,16,4,138                  ; vmovss        (%r10,%r9,4),%xmm8
7694  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7695  DB  196,65,122,16,20,130                ; vmovss        (%r10,%rax,4),%xmm10
7696  DB  68,137,200                          ; mov           %r9d,%eax
7697  DB  73,193,233,30                       ; shr           $0x1e,%r9
7698  DB  196,193,122,16,20,130               ; vmovss        (%r10,%rax,4),%xmm2
7699  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7700  DB  196,131,105,33,20,10,16             ; vinsertps     $0x10,(%r10,%r9,1),%xmm2,%xmm2
7701  DB  68,137,216                          ; mov           %r11d,%eax
7702  DB  196,193,122,16,60,130               ; vmovss        (%r10,%rax,4),%xmm7
7703  DB  196,195,33,33,205,32                ; vinsertps     $0x20,%xmm13,%xmm11,%xmm1
7704  DB  73,193,235,30                       ; shr           $0x1e,%r11
7705  DB  196,1,122,16,28,26                  ; vmovss        (%r10,%r11,1),%xmm11
7706  DB  196,195,113,33,204,48               ; vinsertps     $0x30,%xmm12,%xmm1,%xmm1
7707  DB  196,195,9,33,223,32                 ; vinsertps     $0x20,%xmm15,%xmm14,%xmm3
7708  DB  196,227,97,33,222,48                ; vinsertps     $0x30,%xmm6,%xmm3,%xmm3
7709  DB  196,227,101,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm1
7710  DB  196,195,49,33,216,32                ; vinsertps     $0x20,%xmm8,%xmm9,%xmm3
7711  DB  196,195,97,33,218,48                ; vinsertps     $0x30,%xmm10,%xmm3,%xmm3
7712  DB  196,227,105,33,215,32               ; vinsertps     $0x20,%xmm7,%xmm2,%xmm2
7713  DB  196,195,105,33,211,48               ; vinsertps     $0x30,%xmm11,%xmm2,%xmm2
7714  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
7715  DB  72,173                              ; lods          %ds:(%rsi),%rax
7716  DB  196,226,125,24,29,175,66,0,0        ; vbroadcastss  0x42af(%rip),%ymm3        # 6af4 <_sk_callback_avx+0x26e>
7717  DB  197,252,16,52,36                    ; vmovups       (%rsp),%ymm6
7718  DB  197,252,16,124,36,32                ; vmovups       0x20(%rsp),%ymm7
7719  DB  72,131,196,88                       ; add           $0x58,%rsp
7720  DB  255,224                             ; jmpq          *%rax
7721  DB  196,129,121,110,4,81                ; vmovd         (%r9,%r10,2),%xmm0
7722  DB  196,129,121,196,68,81,4,2           ; vpinsrw       $0x2,0x4(%r9,%r10,2),%xmm0,%xmm0
7723  DB  73,131,248,1                        ; cmp           $0x1,%r8
7724  DB  117,5                               ; jne           286f <_sk_load_tables_rgb_u16_be_avx+0x284>
7725  DB  233,209,253,255,255                 ; jmpq          2640 <_sk_load_tables_rgb_u16_be_avx+0x55>
7726  DB  196,129,121,110,76,81,6             ; vmovd         0x6(%r9,%r10,2),%xmm1
7727  DB  196,1,113,196,68,81,10,2            ; vpinsrw       $0x2,0xa(%r9,%r10,2),%xmm1,%xmm8
7728  DB  73,131,248,3                        ; cmp           $0x3,%r8
7729  DB  114,26                              ; jb            289e <_sk_load_tables_rgb_u16_be_avx+0x2b3>
7730  DB  196,129,121,110,76,81,12            ; vmovd         0xc(%r9,%r10,2),%xmm1
7731  DB  196,129,113,196,84,81,16,2          ; vpinsrw       $0x2,0x10(%r9,%r10,2),%xmm1,%xmm2
7732  DB  73,131,248,3                        ; cmp           $0x3,%r8
7733  DB  117,10                              ; jne           28a3 <_sk_load_tables_rgb_u16_be_avx+0x2b8>
7734  DB  233,162,253,255,255                 ; jmpq          2640 <_sk_load_tables_rgb_u16_be_avx+0x55>
7735  DB  233,157,253,255,255                 ; jmpq          2640 <_sk_load_tables_rgb_u16_be_avx+0x55>
7736  DB  196,129,121,110,76,81,18            ; vmovd         0x12(%r9,%r10,2),%xmm1
7737  DB  196,1,113,196,76,81,22,2            ; vpinsrw       $0x2,0x16(%r9,%r10,2),%xmm1,%xmm9
7738  DB  73,131,248,5                        ; cmp           $0x5,%r8
7739  DB  114,26                              ; jb            28d2 <_sk_load_tables_rgb_u16_be_avx+0x2e7>
7740  DB  196,129,121,110,76,81,24            ; vmovd         0x18(%r9,%r10,2),%xmm1
7741  DB  196,129,113,196,76,81,28,2          ; vpinsrw       $0x2,0x1c(%r9,%r10,2),%xmm1,%xmm1
7742  DB  73,131,248,5                        ; cmp           $0x5,%r8
7743  DB  117,10                              ; jne           28d7 <_sk_load_tables_rgb_u16_be_avx+0x2ec>
7744  DB  233,110,253,255,255                 ; jmpq          2640 <_sk_load_tables_rgb_u16_be_avx+0x55>
7745  DB  233,105,253,255,255                 ; jmpq          2640 <_sk_load_tables_rgb_u16_be_avx+0x55>
7746  DB  196,129,121,110,92,81,30            ; vmovd         0x1e(%r9,%r10,2),%xmm3
7747  DB  196,1,97,196,92,81,34,2             ; vpinsrw       $0x2,0x22(%r9,%r10,2),%xmm3,%xmm11
7748  DB  73,131,248,7                        ; cmp           $0x7,%r8
7749  DB  114,20                              ; jb            2900 <_sk_load_tables_rgb_u16_be_avx+0x315>
7750  DB  196,129,121,110,92,81,36            ; vmovd         0x24(%r9,%r10,2),%xmm3
7751  DB  196,129,97,196,92,81,40,2           ; vpinsrw       $0x2,0x28(%r9,%r10,2),%xmm3,%xmm3
7752  DB  233,64,253,255,255                  ; jmpq          2640 <_sk_load_tables_rgb_u16_be_avx+0x55>
7753  DB  233,59,253,255,255                  ; jmpq          2640 <_sk_load_tables_rgb_u16_be_avx+0x55>
7754
7755PUBLIC _sk_byte_tables_avx
7756_sk_byte_tables_avx LABEL PROC
7757  DB  72,173                              ; lods          %ds:(%rsi),%rax
7758  DB  196,98,125,24,5,232,65,0,0          ; vbroadcastss  0x41e8(%rip),%ymm8        # 6af8 <_sk_callback_avx+0x272>
7759  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
7760  DB  197,125,91,200                      ; vcvtps2dq     %ymm0,%ymm9
7761  DB  196,65,249,126,201                  ; vmovq         %xmm9,%r9
7762  DB  69,137,202                          ; mov           %r9d,%r10d
7763  DB  76,139,24                           ; mov           (%rax),%r11
7764  DB  196,131,121,32,4,19,0               ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm0
7765  DB  196,67,249,22,202,1                 ; vpextrq       $0x1,%xmm9,%r10
7766  DB  73,193,233,32                       ; shr           $0x20,%r9
7767  DB  196,3,121,32,20,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm0,%xmm10
7768  DB  69,137,209                          ; mov           %r10d,%r9d
7769  DB  73,193,234,32                       ; shr           $0x20,%r10
7770  DB  196,99,125,25,200,1                 ; vextractf128  $0x1,%ymm9,%xmm0
7771  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
7772  DB  196,67,41,32,201,2                  ; vpinsrb       $0x2,%r9d,%xmm10,%xmm9
7773  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7774  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
7775  DB  196,67,49,32,202,3                  ; vpinsrb       $0x3,%r10d,%xmm9,%xmm9
7776  DB  69,137,202                          ; mov           %r9d,%r10d
7777  DB  196,3,121,32,20,19,0                ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm10
7778  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
7779  DB  73,193,233,32                       ; shr           $0x20,%r9
7780  DB  196,131,41,32,4,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm10,%xmm0
7781  DB  69,137,209                          ; mov           %r10d,%r9d
7782  DB  73,193,234,32                       ; shr           $0x20,%r10
7783  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
7784  DB  196,195,121,32,193,2                ; vpinsrb       $0x2,%r9d,%xmm0,%xmm0
7785  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
7786  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
7787  DB  196,67,121,32,210,3                 ; vpinsrb       $0x3,%r10d,%xmm0,%xmm10
7788  DB  196,193,116,89,192                  ; vmulps        %ymm8,%ymm1,%ymm0
7789  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
7790  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
7791  DB  69,137,211                          ; mov           %r10d,%r11d
7792  DB  196,131,121,32,12,25,0              ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm1
7793  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
7794  DB  73,193,234,32                       ; shr           $0x20,%r10
7795  DB  196,131,113,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm1,%xmm1
7796  DB  69,137,218                          ; mov           %r11d,%r10d
7797  DB  73,193,235,32                       ; shr           $0x20,%r11
7798  DB  196,227,125,25,192,1                ; vextractf128  $0x1,%ymm0,%xmm0
7799  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7800  DB  196,195,113,32,202,2                ; vpinsrb       $0x2,%r10d,%xmm1,%xmm1
7801  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
7802  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
7803  DB  196,67,113,32,227,3                 ; vpinsrb       $0x3,%r11d,%xmm1,%xmm12
7804  DB  69,137,211                          ; mov           %r10d,%r11d
7805  DB  196,131,121,32,12,25,0              ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm1
7806  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
7807  DB  73,193,234,32                       ; shr           $0x20,%r10
7808  DB  196,131,113,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm1,%xmm0
7809  DB  69,137,218                          ; mov           %r11d,%r10d
7810  DB  73,193,235,32                       ; shr           $0x20,%r11
7811  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7812  DB  196,195,121,32,194,2                ; vpinsrb       $0x2,%r10d,%xmm0,%xmm0
7813  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
7814  DB  196,67,121,32,233,3                 ; vpinsrb       $0x3,%r9d,%xmm0,%xmm13
7815  DB  76,139,72,16                        ; mov           0x10(%rax),%r9
7816  DB  196,193,108,89,200                  ; vmulps        %ymm8,%ymm2,%ymm1
7817  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
7818  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
7819  DB  69,137,211                          ; mov           %r10d,%r11d
7820  DB  196,131,121,32,20,25,0              ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm2
7821  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7822  DB  73,193,234,32                       ; shr           $0x20,%r10
7823  DB  196,131,105,32,20,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm2
7824  DB  69,137,218                          ; mov           %r11d,%r10d
7825  DB  73,193,235,32                       ; shr           $0x20,%r11
7826  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
7827  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7828  DB  196,195,105,32,210,2                ; vpinsrb       $0x2,%r10d,%xmm2,%xmm2
7829  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
7830  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
7831  DB  196,67,105,32,219,3                 ; vpinsrb       $0x3,%r11d,%xmm2,%xmm11
7832  DB  69,137,211                          ; mov           %r10d,%r11d
7833  DB  196,131,121,32,20,25,0              ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm2
7834  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7835  DB  73,193,234,32                       ; shr           $0x20,%r10
7836  DB  196,131,105,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm1
7837  DB  69,137,218                          ; mov           %r11d,%r10d
7838  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7839  DB  196,195,113,32,202,2                ; vpinsrb       $0x2,%r10d,%xmm1,%xmm1
7840  DB  73,193,235,32                       ; shr           $0x20,%r11
7841  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
7842  DB  196,67,113,32,241,3                 ; vpinsrb       $0x3,%r9d,%xmm1,%xmm14
7843  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
7844  DB  196,193,100,89,200                  ; vmulps        %ymm8,%ymm3,%ymm1
7845  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
7846  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7847  DB  68,137,200                          ; mov           %r9d,%eax
7848  DB  196,195,121,32,28,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm3
7849  DB  196,227,249,22,200,1                ; vpextrq       $0x1,%xmm1,%rax
7850  DB  73,193,233,32                       ; shr           $0x20,%r9
7851  DB  196,131,97,32,28,10,1               ; vpinsrb       $0x1,(%r10,%r9,1),%xmm3,%xmm3
7852  DB  65,137,193                          ; mov           %eax,%r9d
7853  DB  72,193,232,32                       ; shr           $0x20,%rax
7854  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
7855  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
7856  DB  196,195,97,32,217,2                 ; vpinsrb       $0x2,%r9d,%xmm3,%xmm3
7857  DB  196,193,249,126,201                 ; vmovq         %xmm1,%r9
7858  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
7859  DB  196,99,97,32,192,3                  ; vpinsrb       $0x3,%eax,%xmm3,%xmm8
7860  DB  68,137,200                          ; mov           %r9d,%eax
7861  DB  196,195,121,32,4,2,0                ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm0
7862  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7863  DB  73,193,233,32                       ; shr           $0x20,%r9
7864  DB  196,131,121,32,4,10,1               ; vpinsrb       $0x1,(%r10,%r9,1),%xmm0,%xmm0
7865  DB  68,137,216                          ; mov           %r11d,%eax
7866  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
7867  DB  196,99,121,32,248,2                 ; vpinsrb       $0x2,%eax,%xmm0,%xmm15
7868  DB  73,193,235,32                       ; shr           $0x20,%r11
7869  DB  67,15,182,4,26                      ; movzbl        (%r10,%r11,1),%eax
7870  DB  196,194,121,49,193                  ; vpmovzxbd     %xmm9,%xmm0
7871  DB  196,194,121,49,202                  ; vpmovzxbd     %xmm10,%xmm1
7872  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
7873  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7874  DB  196,194,121,49,204                  ; vpmovzxbd     %xmm12,%xmm1
7875  DB  196,194,121,49,213                  ; vpmovzxbd     %xmm13,%xmm2
7876  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7877  DB  196,98,125,24,13,146,63,0,0         ; vbroadcastss  0x3f92(%rip),%ymm9        # 6afc <_sk_callback_avx+0x276>
7878  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
7879  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7880  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
7881  DB  196,194,121,49,211                  ; vpmovzxbd     %xmm11,%xmm2
7882  DB  196,194,121,49,222                  ; vpmovzxbd     %xmm14,%xmm3
7883  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
7884  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
7885  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
7886  DB  196,66,121,49,192                   ; vpmovzxbd     %xmm8,%xmm8
7887  DB  196,227,1,32,216,3                  ; vpinsrb       $0x3,%eax,%xmm15,%xmm3
7888  DB  196,226,121,49,219                  ; vpmovzxbd     %xmm3,%xmm3
7889  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
7890  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
7891  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
7892  DB  72,173                              ; lods          %ds:(%rsi),%rax
7893  DB  255,224                             ; jmpq          *%rax
7894
7895PUBLIC _sk_byte_tables_rgb_avx
7896_sk_byte_tables_rgb_avx LABEL PROC
7897  DB  72,173                              ; lods          %ds:(%rsi),%rax
7898  DB  68,139,72,24                        ; mov           0x18(%rax),%r9d
7899  DB  65,255,201                          ; dec           %r9d
7900  DB  196,65,121,110,193                  ; vmovd         %r9d,%xmm8
7901  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
7902  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
7903  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
7904  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
7905  DB  197,125,91,200                      ; vcvtps2dq     %ymm0,%ymm9
7906  DB  196,65,249,126,201                  ; vmovq         %xmm9,%r9
7907  DB  69,137,202                          ; mov           %r9d,%r10d
7908  DB  76,139,24                           ; mov           (%rax),%r11
7909  DB  196,131,121,32,4,19,0               ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm0
7910  DB  196,67,249,22,202,1                 ; vpextrq       $0x1,%xmm9,%r10
7911  DB  73,193,233,32                       ; shr           $0x20,%r9
7912  DB  196,3,121,32,20,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm0,%xmm10
7913  DB  69,137,209                          ; mov           %r10d,%r9d
7914  DB  73,193,234,32                       ; shr           $0x20,%r10
7915  DB  196,99,125,25,200,1                 ; vextractf128  $0x1,%ymm9,%xmm0
7916  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
7917  DB  196,67,41,32,201,2                  ; vpinsrb       $0x2,%r9d,%xmm10,%xmm9
7918  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7919  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
7920  DB  196,67,49,32,202,3                  ; vpinsrb       $0x3,%r10d,%xmm9,%xmm9
7921  DB  69,137,202                          ; mov           %r9d,%r10d
7922  DB  196,3,121,32,20,19,0                ; vpinsrb       $0x0,(%r11,%r10,1),%xmm0,%xmm10
7923  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
7924  DB  73,193,233,32                       ; shr           $0x20,%r9
7925  DB  196,131,41,32,4,11,1                ; vpinsrb       $0x1,(%r11,%r9,1),%xmm10,%xmm0
7926  DB  69,137,209                          ; mov           %r10d,%r9d
7927  DB  73,193,234,32                       ; shr           $0x20,%r10
7928  DB  71,15,182,12,11                     ; movzbl        (%r11,%r9,1),%r9d
7929  DB  196,195,121,32,193,2                ; vpinsrb       $0x2,%r9d,%xmm0,%xmm0
7930  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
7931  DB  71,15,182,20,19                     ; movzbl        (%r11,%r10,1),%r10d
7932  DB  196,67,121,32,218,3                 ; vpinsrb       $0x3,%r10d,%xmm0,%xmm11
7933  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
7934  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
7935  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
7936  DB  69,137,211                          ; mov           %r10d,%r11d
7937  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
7938  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7939  DB  73,193,234,32                       ; shr           $0x20,%r10
7940  DB  196,131,121,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm0,%xmm0
7941  DB  69,137,218                          ; mov           %r11d,%r10d
7942  DB  73,193,235,32                       ; shr           $0x20,%r11
7943  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
7944  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7945  DB  196,195,121,32,194,2                ; vpinsrb       $0x2,%r10d,%xmm0,%xmm0
7946  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
7947  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
7948  DB  196,67,121,32,211,3                 ; vpinsrb       $0x3,%r11d,%xmm0,%xmm10
7949  DB  69,137,211                          ; mov           %r10d,%r11d
7950  DB  196,131,121,32,4,25,0               ; vpinsrb       $0x0,(%r9,%r11,1),%xmm0,%xmm0
7951  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
7952  DB  73,193,234,32                       ; shr           $0x20,%r10
7953  DB  196,131,121,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm0,%xmm0
7954  DB  69,137,218                          ; mov           %r11d,%r10d
7955  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
7956  DB  196,195,121,32,194,2                ; vpinsrb       $0x2,%r10d,%xmm0,%xmm0
7957  DB  73,193,235,32                       ; shr           $0x20,%r11
7958  DB  71,15,182,12,25                     ; movzbl        (%r9,%r11,1),%r9d
7959  DB  196,67,121,32,225,3                 ; vpinsrb       $0x3,%r9d,%xmm0,%xmm12
7960  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
7961  DB  197,188,89,194                      ; vmulps        %ymm2,%ymm8,%ymm0
7962  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
7963  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7964  DB  68,137,200                          ; mov           %r9d,%eax
7965  DB  196,195,121,32,20,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm2
7966  DB  196,227,249,22,192,1                ; vpextrq       $0x1,%xmm0,%rax
7967  DB  73,193,233,32                       ; shr           $0x20,%r9
7968  DB  196,131,105,32,20,10,1              ; vpinsrb       $0x1,(%r10,%r9,1),%xmm2,%xmm2
7969  DB  65,137,193                          ; mov           %eax,%r9d
7970  DB  72,193,232,32                       ; shr           $0x20,%rax
7971  DB  196,227,125,25,192,1                ; vextractf128  $0x1,%ymm0,%xmm0
7972  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
7973  DB  196,195,105,32,209,2                ; vpinsrb       $0x2,%r9d,%xmm2,%xmm2
7974  DB  196,193,249,126,193                 ; vmovq         %xmm0,%r9
7975  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
7976  DB  196,99,105,32,192,3                 ; vpinsrb       $0x3,%eax,%xmm2,%xmm8
7977  DB  68,137,200                          ; mov           %r9d,%eax
7978  DB  196,195,121,32,12,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm1
7979  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
7980  DB  73,193,233,32                       ; shr           $0x20,%r9
7981  DB  196,131,113,32,4,10,1               ; vpinsrb       $0x1,(%r10,%r9,1),%xmm1,%xmm0
7982  DB  68,137,216                          ; mov           %r11d,%eax
7983  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
7984  DB  196,99,121,32,232,2                 ; vpinsrb       $0x2,%eax,%xmm0,%xmm13
7985  DB  73,193,235,32                       ; shr           $0x20,%r11
7986  DB  67,15,182,4,26                      ; movzbl        (%r10,%r11,1),%eax
7987  DB  196,194,121,49,193                  ; vpmovzxbd     %xmm9,%xmm0
7988  DB  196,194,121,49,203                  ; vpmovzxbd     %xmm11,%xmm1
7989  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
7990  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
7991  DB  196,98,125,24,13,115,61,0,0         ; vbroadcastss  0x3d73(%rip),%ymm9        # 6b00 <_sk_callback_avx+0x27a>
7992  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
7993  DB  196,194,121,49,202                  ; vpmovzxbd     %xmm10,%xmm1
7994  DB  196,194,121,49,212                  ; vpmovzxbd     %xmm12,%xmm2
7995  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
7996  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
7997  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
7998  DB  196,66,121,49,192                   ; vpmovzxbd     %xmm8,%xmm8
7999  DB  196,227,17,32,208,3                 ; vpinsrb       $0x3,%eax,%xmm13,%xmm2
8000  DB  196,226,121,49,210                  ; vpmovzxbd     %xmm2,%xmm2
8001  DB  196,227,61,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm8,%ymm2
8002  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8003  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
8004  DB  72,173                              ; lods          %ds:(%rsi),%rax
8005  DB  255,224                             ; jmpq          *%rax
8006
8007PUBLIC _sk_table_r_avx
8008_sk_table_r_avx LABEL PROC
8009  DB  72,173                              ; lods          %ds:(%rsi),%rax
8010  DB  76,139,8                            ; mov           (%rax),%r9
8011  DB  139,64,8                            ; mov           0x8(%rax),%eax
8012  DB  255,200                             ; dec           %eax
8013  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
8014  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
8015  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
8016  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
8017  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
8018  DB  197,125,91,192                      ; vcvtps2dq     %ymm0,%ymm8
8019  DB  196,99,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm0
8020  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
8021  DB  68,137,208                          ; mov           %r10d,%eax
8022  DB  196,65,122,16,12,129                ; vmovss        (%r9,%rax,4),%xmm9
8023  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
8024  DB  73,193,234,32                       ; shr           $0x20,%r10
8025  DB  196,3,49,33,12,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm9,%xmm9
8026  DB  68,137,216                          ; mov           %r11d,%eax
8027  DB  196,65,122,16,20,129                ; vmovss        (%r9,%rax,4),%xmm10
8028  DB  196,65,249,126,194                  ; vmovq         %xmm8,%r10
8029  DB  73,193,235,32                       ; shr           $0x20,%r11
8030  DB  196,1,122,16,28,153                 ; vmovss        (%r9,%r11,4),%xmm11
8031  DB  68,137,208                          ; mov           %r10d,%eax
8032  DB  196,193,122,16,4,129                ; vmovss        (%r9,%rax,4),%xmm0
8033  DB  196,67,249,22,195,1                 ; vpextrq       $0x1,%xmm8,%r11
8034  DB  73,193,234,32                       ; shr           $0x20,%r10
8035  DB  196,3,121,33,4,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm0,%xmm8
8036  DB  68,137,216                          ; mov           %r11d,%eax
8037  DB  196,65,122,16,36,129                ; vmovss        (%r9,%rax,4),%xmm12
8038  DB  73,193,235,32                       ; shr           $0x20,%r11
8039  DB  196,1,122,16,44,153                 ; vmovss        (%r9,%r11,4),%xmm13
8040  DB  196,195,49,33,194,32                ; vinsertps     $0x20,%xmm10,%xmm9,%xmm0
8041  DB  196,67,121,33,203,48                ; vinsertps     $0x30,%xmm11,%xmm0,%xmm9
8042  DB  196,195,57,33,196,32                ; vinsertps     $0x20,%xmm12,%xmm8,%xmm0
8043  DB  196,195,121,33,197,48               ; vinsertps     $0x30,%xmm13,%xmm0,%xmm0
8044  DB  196,195,125,24,193,1                ; vinsertf128   $0x1,%xmm9,%ymm0,%ymm0
8045  DB  72,173                              ; lods          %ds:(%rsi),%rax
8046  DB  255,224                             ; jmpq          *%rax
8047
8048PUBLIC _sk_table_g_avx
8049_sk_table_g_avx LABEL PROC
8050  DB  72,173                              ; lods          %ds:(%rsi),%rax
8051  DB  76,139,8                            ; mov           (%rax),%r9
8052  DB  139,64,8                            ; mov           0x8(%rax),%eax
8053  DB  255,200                             ; dec           %eax
8054  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
8055  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
8056  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
8057  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
8058  DB  197,188,89,201                      ; vmulps        %ymm1,%ymm8,%ymm1
8059  DB  197,125,91,193                      ; vcvtps2dq     %ymm1,%ymm8
8060  DB  196,99,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm1
8061  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
8062  DB  68,137,208                          ; mov           %r10d,%eax
8063  DB  196,65,122,16,12,129                ; vmovss        (%r9,%rax,4),%xmm9
8064  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
8065  DB  73,193,234,32                       ; shr           $0x20,%r10
8066  DB  196,3,49,33,12,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm9,%xmm9
8067  DB  68,137,216                          ; mov           %r11d,%eax
8068  DB  196,65,122,16,20,129                ; vmovss        (%r9,%rax,4),%xmm10
8069  DB  196,65,249,126,194                  ; vmovq         %xmm8,%r10
8070  DB  73,193,235,32                       ; shr           $0x20,%r11
8071  DB  196,1,122,16,28,153                 ; vmovss        (%r9,%r11,4),%xmm11
8072  DB  68,137,208                          ; mov           %r10d,%eax
8073  DB  196,193,122,16,12,129               ; vmovss        (%r9,%rax,4),%xmm1
8074  DB  196,67,249,22,195,1                 ; vpextrq       $0x1,%xmm8,%r11
8075  DB  73,193,234,32                       ; shr           $0x20,%r10
8076  DB  196,3,113,33,4,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm1,%xmm8
8077  DB  68,137,216                          ; mov           %r11d,%eax
8078  DB  196,65,122,16,36,129                ; vmovss        (%r9,%rax,4),%xmm12
8079  DB  73,193,235,32                       ; shr           $0x20,%r11
8080  DB  196,1,122,16,44,153                 ; vmovss        (%r9,%r11,4),%xmm13
8081  DB  196,195,49,33,202,32                ; vinsertps     $0x20,%xmm10,%xmm9,%xmm1
8082  DB  196,67,113,33,203,48                ; vinsertps     $0x30,%xmm11,%xmm1,%xmm9
8083  DB  196,195,57,33,204,32                ; vinsertps     $0x20,%xmm12,%xmm8,%xmm1
8084  DB  196,195,113,33,205,48               ; vinsertps     $0x30,%xmm13,%xmm1,%xmm1
8085  DB  196,195,117,24,201,1                ; vinsertf128   $0x1,%xmm9,%ymm1,%ymm1
8086  DB  72,173                              ; lods          %ds:(%rsi),%rax
8087  DB  255,224                             ; jmpq          *%rax
8088
8089PUBLIC _sk_table_b_avx
8090_sk_table_b_avx LABEL PROC
8091  DB  72,173                              ; lods          %ds:(%rsi),%rax
8092  DB  76,139,8                            ; mov           (%rax),%r9
8093  DB  139,64,8                            ; mov           0x8(%rax),%eax
8094  DB  255,200                             ; dec           %eax
8095  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
8096  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
8097  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
8098  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
8099  DB  197,188,89,210                      ; vmulps        %ymm2,%ymm8,%ymm2
8100  DB  197,125,91,194                      ; vcvtps2dq     %ymm2,%ymm8
8101  DB  196,99,125,25,194,1                 ; vextractf128  $0x1,%ymm8,%xmm2
8102  DB  196,193,249,126,210                 ; vmovq         %xmm2,%r10
8103  DB  68,137,208                          ; mov           %r10d,%eax
8104  DB  196,65,122,16,12,129                ; vmovss        (%r9,%rax,4),%xmm9
8105  DB  196,195,249,22,211,1                ; vpextrq       $0x1,%xmm2,%r11
8106  DB  73,193,234,32                       ; shr           $0x20,%r10
8107  DB  196,3,49,33,12,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm9,%xmm9
8108  DB  68,137,216                          ; mov           %r11d,%eax
8109  DB  196,65,122,16,20,129                ; vmovss        (%r9,%rax,4),%xmm10
8110  DB  196,65,249,126,194                  ; vmovq         %xmm8,%r10
8111  DB  73,193,235,32                       ; shr           $0x20,%r11
8112  DB  196,1,122,16,28,153                 ; vmovss        (%r9,%r11,4),%xmm11
8113  DB  68,137,208                          ; mov           %r10d,%eax
8114  DB  196,193,122,16,20,129               ; vmovss        (%r9,%rax,4),%xmm2
8115  DB  196,67,249,22,195,1                 ; vpextrq       $0x1,%xmm8,%r11
8116  DB  73,193,234,32                       ; shr           $0x20,%r10
8117  DB  196,3,105,33,4,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm2,%xmm8
8118  DB  68,137,216                          ; mov           %r11d,%eax
8119  DB  196,65,122,16,36,129                ; vmovss        (%r9,%rax,4),%xmm12
8120  DB  73,193,235,32                       ; shr           $0x20,%r11
8121  DB  196,1,122,16,44,153                 ; vmovss        (%r9,%r11,4),%xmm13
8122  DB  196,195,49,33,210,32                ; vinsertps     $0x20,%xmm10,%xmm9,%xmm2
8123  DB  196,67,105,33,203,48                ; vinsertps     $0x30,%xmm11,%xmm2,%xmm9
8124  DB  196,195,57,33,212,32                ; vinsertps     $0x20,%xmm12,%xmm8,%xmm2
8125  DB  196,195,105,33,213,48               ; vinsertps     $0x30,%xmm13,%xmm2,%xmm2
8126  DB  196,195,109,24,209,1                ; vinsertf128   $0x1,%xmm9,%ymm2,%ymm2
8127  DB  72,173                              ; lods          %ds:(%rsi),%rax
8128  DB  255,224                             ; jmpq          *%rax
8129
8130PUBLIC _sk_table_a_avx
8131_sk_table_a_avx LABEL PROC
8132  DB  72,173                              ; lods          %ds:(%rsi),%rax
8133  DB  76,139,8                            ; mov           (%rax),%r9
8134  DB  139,64,8                            ; mov           0x8(%rax),%eax
8135  DB  255,200                             ; dec           %eax
8136  DB  197,121,110,192                     ; vmovd         %eax,%xmm8
8137  DB  196,65,121,112,192,0                ; vpshufd       $0x0,%xmm8,%xmm8
8138  DB  196,67,61,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm8,%ymm8
8139  DB  196,65,124,91,192                   ; vcvtdq2ps     %ymm8,%ymm8
8140  DB  197,188,89,219                      ; vmulps        %ymm3,%ymm8,%ymm3
8141  DB  197,125,91,195                      ; vcvtps2dq     %ymm3,%ymm8
8142  DB  196,99,125,25,195,1                 ; vextractf128  $0x1,%ymm8,%xmm3
8143  DB  196,193,249,126,218                 ; vmovq         %xmm3,%r10
8144  DB  68,137,208                          ; mov           %r10d,%eax
8145  DB  196,65,122,16,12,129                ; vmovss        (%r9,%rax,4),%xmm9
8146  DB  196,195,249,22,219,1                ; vpextrq       $0x1,%xmm3,%r11
8147  DB  73,193,234,32                       ; shr           $0x20,%r10
8148  DB  196,3,49,33,12,145,16               ; vinsertps     $0x10,(%r9,%r10,4),%xmm9,%xmm9
8149  DB  68,137,216                          ; mov           %r11d,%eax
8150  DB  196,65,122,16,20,129                ; vmovss        (%r9,%rax,4),%xmm10
8151  DB  196,65,249,126,194                  ; vmovq         %xmm8,%r10
8152  DB  73,193,235,32                       ; shr           $0x20,%r11
8153  DB  196,1,122,16,28,153                 ; vmovss        (%r9,%r11,4),%xmm11
8154  DB  68,137,208                          ; mov           %r10d,%eax
8155  DB  196,193,122,16,28,129               ; vmovss        (%r9,%rax,4),%xmm3
8156  DB  196,67,249,22,195,1                 ; vpextrq       $0x1,%xmm8,%r11
8157  DB  73,193,234,32                       ; shr           $0x20,%r10
8158  DB  196,3,97,33,4,145,16                ; vinsertps     $0x10,(%r9,%r10,4),%xmm3,%xmm8
8159  DB  68,137,216                          ; mov           %r11d,%eax
8160  DB  196,65,122,16,36,129                ; vmovss        (%r9,%rax,4),%xmm12
8161  DB  73,193,235,32                       ; shr           $0x20,%r11
8162  DB  196,1,122,16,44,153                 ; vmovss        (%r9,%r11,4),%xmm13
8163  DB  196,195,49,33,218,32                ; vinsertps     $0x20,%xmm10,%xmm9,%xmm3
8164  DB  196,67,97,33,203,48                 ; vinsertps     $0x30,%xmm11,%xmm3,%xmm9
8165  DB  196,195,57,33,220,32                ; vinsertps     $0x20,%xmm12,%xmm8,%xmm3
8166  DB  196,195,97,33,221,48                ; vinsertps     $0x30,%xmm13,%xmm3,%xmm3
8167  DB  196,195,101,24,217,1                ; vinsertf128   $0x1,%xmm9,%ymm3,%ymm3
8168  DB  72,173                              ; lods          %ds:(%rsi),%rax
8169  DB  255,224                             ; jmpq          *%rax
8170
8171PUBLIC _sk_parametric_r_avx
8172_sk_parametric_r_avx LABEL PROC
8173  DB  72,173                              ; lods          %ds:(%rsi),%rax
8174  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
8175  DB  196,65,124,194,192,2                ; vcmpleps      %ymm8,%ymm0,%ymm8
8176  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
8177  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
8178  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
8179  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8180  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
8181  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
8182  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
8183  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
8184  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
8185  DB  197,124,91,216                      ; vcvtdq2ps     %ymm0,%ymm11
8186  DB  196,98,125,24,37,32,58,0,0          ; vbroadcastss  0x3a20(%rip),%ymm12        # 6b04 <_sk_callback_avx+0x27e>
8187  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
8188  DB  196,98,125,24,37,22,58,0,0          ; vbroadcastss  0x3a16(%rip),%ymm12        # 6b08 <_sk_callback_avx+0x282>
8189  DB  196,193,124,84,196                  ; vandps        %ymm12,%ymm0,%ymm0
8190  DB  196,98,125,24,37,12,58,0,0          ; vbroadcastss  0x3a0c(%rip),%ymm12        # 6b0c <_sk_callback_avx+0x286>
8191  DB  196,193,124,86,196                  ; vorps         %ymm12,%ymm0,%ymm0
8192  DB  196,98,125,24,37,2,58,0,0           ; vbroadcastss  0x3a02(%rip),%ymm12        # 6b10 <_sk_callback_avx+0x28a>
8193  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
8194  DB  196,98,125,24,37,248,57,0,0         ; vbroadcastss  0x39f8(%rip),%ymm12        # 6b14 <_sk_callback_avx+0x28e>
8195  DB  196,65,124,89,228                   ; vmulps        %ymm12,%ymm0,%ymm12
8196  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
8197  DB  196,98,125,24,37,233,57,0,0         ; vbroadcastss  0x39e9(%rip),%ymm12        # 6b18 <_sk_callback_avx+0x292>
8198  DB  196,193,124,88,196                  ; vaddps        %ymm12,%ymm0,%ymm0
8199  DB  196,98,125,24,37,223,57,0,0         ; vbroadcastss  0x39df(%rip),%ymm12        # 6b1c <_sk_callback_avx+0x296>
8200  DB  197,156,94,192                      ; vdivps        %ymm0,%ymm12,%ymm0
8201  DB  197,164,92,192                      ; vsubps        %ymm0,%ymm11,%ymm0
8202  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
8203  DB  196,99,125,8,208,1                  ; vroundps      $0x1,%ymm0,%ymm10
8204  DB  196,65,124,92,210                   ; vsubps        %ymm10,%ymm0,%ymm10
8205  DB  196,98,125,24,29,195,57,0,0         ; vbroadcastss  0x39c3(%rip),%ymm11        # 6b20 <_sk_callback_avx+0x29a>
8206  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
8207  DB  196,98,125,24,29,185,57,0,0         ; vbroadcastss  0x39b9(%rip),%ymm11        # 6b24 <_sk_callback_avx+0x29e>
8208  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
8209  DB  196,193,124,92,195                  ; vsubps        %ymm11,%ymm0,%ymm0
8210  DB  196,98,125,24,29,170,57,0,0         ; vbroadcastss  0x39aa(%rip),%ymm11        # 6b28 <_sk_callback_avx+0x2a2>
8211  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
8212  DB  196,98,125,24,29,160,57,0,0         ; vbroadcastss  0x39a0(%rip),%ymm11        # 6b2c <_sk_callback_avx+0x2a6>
8213  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
8214  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
8215  DB  196,98,125,24,21,145,57,0,0         ; vbroadcastss  0x3991(%rip),%ymm10        # 6b30 <_sk_callback_avx+0x2aa>
8216  DB  196,193,124,89,194                  ; vmulps        %ymm10,%ymm0,%ymm0
8217  DB  197,253,91,192                      ; vcvtps2dq     %ymm0,%ymm0
8218  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
8219  DB  196,193,124,88,194                  ; vaddps        %ymm10,%ymm0,%ymm0
8220  DB  196,195,125,74,193,128              ; vblendvps     %ymm8,%ymm9,%ymm0,%ymm0
8221  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8222  DB  196,193,124,95,192                  ; vmaxps        %ymm8,%ymm0,%ymm0
8223  DB  196,98,125,24,5,104,57,0,0          ; vbroadcastss  0x3968(%rip),%ymm8        # 6b34 <_sk_callback_avx+0x2ae>
8224  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
8225  DB  72,173                              ; lods          %ds:(%rsi),%rax
8226  DB  255,224                             ; jmpq          *%rax
8227
8228PUBLIC _sk_parametric_g_avx
8229_sk_parametric_g_avx LABEL PROC
8230  DB  72,173                              ; lods          %ds:(%rsi),%rax
8231  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
8232  DB  196,65,116,194,192,2                ; vcmpleps      %ymm8,%ymm1,%ymm8
8233  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
8234  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
8235  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
8236  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8237  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
8238  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
8239  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
8240  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
8241  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
8242  DB  197,124,91,217                      ; vcvtdq2ps     %ymm1,%ymm11
8243  DB  196,98,125,24,37,25,57,0,0          ; vbroadcastss  0x3919(%rip),%ymm12        # 6b38 <_sk_callback_avx+0x2b2>
8244  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
8245  DB  196,98,125,24,37,15,57,0,0          ; vbroadcastss  0x390f(%rip),%ymm12        # 6b3c <_sk_callback_avx+0x2b6>
8246  DB  196,193,116,84,204                  ; vandps        %ymm12,%ymm1,%ymm1
8247  DB  196,98,125,24,37,5,57,0,0           ; vbroadcastss  0x3905(%rip),%ymm12        # 6b40 <_sk_callback_avx+0x2ba>
8248  DB  196,193,116,86,204                  ; vorps         %ymm12,%ymm1,%ymm1
8249  DB  196,98,125,24,37,251,56,0,0         ; vbroadcastss  0x38fb(%rip),%ymm12        # 6b44 <_sk_callback_avx+0x2be>
8250  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
8251  DB  196,98,125,24,37,241,56,0,0         ; vbroadcastss  0x38f1(%rip),%ymm12        # 6b48 <_sk_callback_avx+0x2c2>
8252  DB  196,65,116,89,228                   ; vmulps        %ymm12,%ymm1,%ymm12
8253  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
8254  DB  196,98,125,24,37,226,56,0,0         ; vbroadcastss  0x38e2(%rip),%ymm12        # 6b4c <_sk_callback_avx+0x2c6>
8255  DB  196,193,116,88,204                  ; vaddps        %ymm12,%ymm1,%ymm1
8256  DB  196,98,125,24,37,216,56,0,0         ; vbroadcastss  0x38d8(%rip),%ymm12        # 6b50 <_sk_callback_avx+0x2ca>
8257  DB  197,156,94,201                      ; vdivps        %ymm1,%ymm12,%ymm1
8258  DB  197,164,92,201                      ; vsubps        %ymm1,%ymm11,%ymm1
8259  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
8260  DB  196,99,125,8,209,1                  ; vroundps      $0x1,%ymm1,%ymm10
8261  DB  196,65,116,92,210                   ; vsubps        %ymm10,%ymm1,%ymm10
8262  DB  196,98,125,24,29,188,56,0,0         ; vbroadcastss  0x38bc(%rip),%ymm11        # 6b54 <_sk_callback_avx+0x2ce>
8263  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
8264  DB  196,98,125,24,29,178,56,0,0         ; vbroadcastss  0x38b2(%rip),%ymm11        # 6b58 <_sk_callback_avx+0x2d2>
8265  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
8266  DB  196,193,116,92,203                  ; vsubps        %ymm11,%ymm1,%ymm1
8267  DB  196,98,125,24,29,163,56,0,0         ; vbroadcastss  0x38a3(%rip),%ymm11        # 6b5c <_sk_callback_avx+0x2d6>
8268  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
8269  DB  196,98,125,24,29,153,56,0,0         ; vbroadcastss  0x3899(%rip),%ymm11        # 6b60 <_sk_callback_avx+0x2da>
8270  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
8271  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
8272  DB  196,98,125,24,21,138,56,0,0         ; vbroadcastss  0x388a(%rip),%ymm10        # 6b64 <_sk_callback_avx+0x2de>
8273  DB  196,193,116,89,202                  ; vmulps        %ymm10,%ymm1,%ymm1
8274  DB  197,253,91,201                      ; vcvtps2dq     %ymm1,%ymm1
8275  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
8276  DB  196,193,116,88,202                  ; vaddps        %ymm10,%ymm1,%ymm1
8277  DB  196,195,117,74,201,128              ; vblendvps     %ymm8,%ymm9,%ymm1,%ymm1
8278  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8279  DB  196,193,116,95,200                  ; vmaxps        %ymm8,%ymm1,%ymm1
8280  DB  196,98,125,24,5,97,56,0,0           ; vbroadcastss  0x3861(%rip),%ymm8        # 6b68 <_sk_callback_avx+0x2e2>
8281  DB  196,193,116,93,200                  ; vminps        %ymm8,%ymm1,%ymm1
8282  DB  72,173                              ; lods          %ds:(%rsi),%rax
8283  DB  255,224                             ; jmpq          *%rax
8284
8285PUBLIC _sk_parametric_b_avx
8286_sk_parametric_b_avx LABEL PROC
8287  DB  72,173                              ; lods          %ds:(%rsi),%rax
8288  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
8289  DB  196,65,108,194,192,2                ; vcmpleps      %ymm8,%ymm2,%ymm8
8290  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
8291  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
8292  DB  197,52,89,202                       ; vmulps        %ymm2,%ymm9,%ymm9
8293  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8294  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
8295  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
8296  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
8297  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
8298  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
8299  DB  197,124,91,218                      ; vcvtdq2ps     %ymm2,%ymm11
8300  DB  196,98,125,24,37,18,56,0,0          ; vbroadcastss  0x3812(%rip),%ymm12        # 6b6c <_sk_callback_avx+0x2e6>
8301  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
8302  DB  196,98,125,24,37,8,56,0,0           ; vbroadcastss  0x3808(%rip),%ymm12        # 6b70 <_sk_callback_avx+0x2ea>
8303  DB  196,193,108,84,212                  ; vandps        %ymm12,%ymm2,%ymm2
8304  DB  196,98,125,24,37,254,55,0,0         ; vbroadcastss  0x37fe(%rip),%ymm12        # 6b74 <_sk_callback_avx+0x2ee>
8305  DB  196,193,108,86,212                  ; vorps         %ymm12,%ymm2,%ymm2
8306  DB  196,98,125,24,37,244,55,0,0         ; vbroadcastss  0x37f4(%rip),%ymm12        # 6b78 <_sk_callback_avx+0x2f2>
8307  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
8308  DB  196,98,125,24,37,234,55,0,0         ; vbroadcastss  0x37ea(%rip),%ymm12        # 6b7c <_sk_callback_avx+0x2f6>
8309  DB  196,65,108,89,228                   ; vmulps        %ymm12,%ymm2,%ymm12
8310  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
8311  DB  196,98,125,24,37,219,55,0,0         ; vbroadcastss  0x37db(%rip),%ymm12        # 6b80 <_sk_callback_avx+0x2fa>
8312  DB  196,193,108,88,212                  ; vaddps        %ymm12,%ymm2,%ymm2
8313  DB  196,98,125,24,37,209,55,0,0         ; vbroadcastss  0x37d1(%rip),%ymm12        # 6b84 <_sk_callback_avx+0x2fe>
8314  DB  197,156,94,210                      ; vdivps        %ymm2,%ymm12,%ymm2
8315  DB  197,164,92,210                      ; vsubps        %ymm2,%ymm11,%ymm2
8316  DB  197,172,89,210                      ; vmulps        %ymm2,%ymm10,%ymm2
8317  DB  196,99,125,8,210,1                  ; vroundps      $0x1,%ymm2,%ymm10
8318  DB  196,65,108,92,210                   ; vsubps        %ymm10,%ymm2,%ymm10
8319  DB  196,98,125,24,29,181,55,0,0         ; vbroadcastss  0x37b5(%rip),%ymm11        # 6b88 <_sk_callback_avx+0x302>
8320  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
8321  DB  196,98,125,24,29,171,55,0,0         ; vbroadcastss  0x37ab(%rip),%ymm11        # 6b8c <_sk_callback_avx+0x306>
8322  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
8323  DB  196,193,108,92,211                  ; vsubps        %ymm11,%ymm2,%ymm2
8324  DB  196,98,125,24,29,156,55,0,0         ; vbroadcastss  0x379c(%rip),%ymm11        # 6b90 <_sk_callback_avx+0x30a>
8325  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
8326  DB  196,98,125,24,29,146,55,0,0         ; vbroadcastss  0x3792(%rip),%ymm11        # 6b94 <_sk_callback_avx+0x30e>
8327  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
8328  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
8329  DB  196,98,125,24,21,131,55,0,0         ; vbroadcastss  0x3783(%rip),%ymm10        # 6b98 <_sk_callback_avx+0x312>
8330  DB  196,193,108,89,210                  ; vmulps        %ymm10,%ymm2,%ymm2
8331  DB  197,253,91,210                      ; vcvtps2dq     %ymm2,%ymm2
8332  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
8333  DB  196,193,108,88,210                  ; vaddps        %ymm10,%ymm2,%ymm2
8334  DB  196,195,109,74,209,128              ; vblendvps     %ymm8,%ymm9,%ymm2,%ymm2
8335  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8336  DB  196,193,108,95,208                  ; vmaxps        %ymm8,%ymm2,%ymm2
8337  DB  196,98,125,24,5,90,55,0,0           ; vbroadcastss  0x375a(%rip),%ymm8        # 6b9c <_sk_callback_avx+0x316>
8338  DB  196,193,108,93,208                  ; vminps        %ymm8,%ymm2,%ymm2
8339  DB  72,173                              ; lods          %ds:(%rsi),%rax
8340  DB  255,224                             ; jmpq          *%rax
8341
8342PUBLIC _sk_parametric_a_avx
8343_sk_parametric_a_avx LABEL PROC
8344  DB  72,173                              ; lods          %ds:(%rsi),%rax
8345  DB  196,98,125,24,64,16                 ; vbroadcastss  0x10(%rax),%ymm8
8346  DB  196,65,100,194,192,2                ; vcmpleps      %ymm8,%ymm3,%ymm8
8347  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
8348  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
8349  DB  197,52,89,203                       ; vmulps        %ymm3,%ymm9,%ymm9
8350  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
8351  DB  196,98,125,24,80,4                  ; vbroadcastss  0x4(%rax),%ymm10
8352  DB  196,98,125,24,88,8                  ; vbroadcastss  0x8(%rax),%ymm11
8353  DB  197,172,89,219                      ; vmulps        %ymm3,%ymm10,%ymm3
8354  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
8355  DB  196,98,125,24,16                    ; vbroadcastss  (%rax),%ymm10
8356  DB  197,124,91,219                      ; vcvtdq2ps     %ymm3,%ymm11
8357  DB  196,98,125,24,37,11,55,0,0          ; vbroadcastss  0x370b(%rip),%ymm12        # 6ba0 <_sk_callback_avx+0x31a>
8358  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
8359  DB  196,98,125,24,37,1,55,0,0           ; vbroadcastss  0x3701(%rip),%ymm12        # 6ba4 <_sk_callback_avx+0x31e>
8360  DB  196,193,100,84,220                  ; vandps        %ymm12,%ymm3,%ymm3
8361  DB  196,98,125,24,37,247,54,0,0         ; vbroadcastss  0x36f7(%rip),%ymm12        # 6ba8 <_sk_callback_avx+0x322>
8362  DB  196,193,100,86,220                  ; vorps         %ymm12,%ymm3,%ymm3
8363  DB  196,98,125,24,37,237,54,0,0         ; vbroadcastss  0x36ed(%rip),%ymm12        # 6bac <_sk_callback_avx+0x326>
8364  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
8365  DB  196,98,125,24,37,227,54,0,0         ; vbroadcastss  0x36e3(%rip),%ymm12        # 6bb0 <_sk_callback_avx+0x32a>
8366  DB  196,65,100,89,228                   ; vmulps        %ymm12,%ymm3,%ymm12
8367  DB  196,65,36,92,220                    ; vsubps        %ymm12,%ymm11,%ymm11
8368  DB  196,98,125,24,37,212,54,0,0         ; vbroadcastss  0x36d4(%rip),%ymm12        # 6bb4 <_sk_callback_avx+0x32e>
8369  DB  196,193,100,88,220                  ; vaddps        %ymm12,%ymm3,%ymm3
8370  DB  196,98,125,24,37,202,54,0,0         ; vbroadcastss  0x36ca(%rip),%ymm12        # 6bb8 <_sk_callback_avx+0x332>
8371  DB  197,156,94,219                      ; vdivps        %ymm3,%ymm12,%ymm3
8372  DB  197,164,92,219                      ; vsubps        %ymm3,%ymm11,%ymm3
8373  DB  197,172,89,219                      ; vmulps        %ymm3,%ymm10,%ymm3
8374  DB  196,99,125,8,211,1                  ; vroundps      $0x1,%ymm3,%ymm10
8375  DB  196,65,100,92,210                   ; vsubps        %ymm10,%ymm3,%ymm10
8376  DB  196,98,125,24,29,174,54,0,0         ; vbroadcastss  0x36ae(%rip),%ymm11        # 6bbc <_sk_callback_avx+0x336>
8377  DB  196,193,100,88,219                  ; vaddps        %ymm11,%ymm3,%ymm3
8378  DB  196,98,125,24,29,164,54,0,0         ; vbroadcastss  0x36a4(%rip),%ymm11        # 6bc0 <_sk_callback_avx+0x33a>
8379  DB  196,65,44,89,219                    ; vmulps        %ymm11,%ymm10,%ymm11
8380  DB  196,193,100,92,219                  ; vsubps        %ymm11,%ymm3,%ymm3
8381  DB  196,98,125,24,29,149,54,0,0         ; vbroadcastss  0x3695(%rip),%ymm11        # 6bc4 <_sk_callback_avx+0x33e>
8382  DB  196,65,36,92,210                    ; vsubps        %ymm10,%ymm11,%ymm10
8383  DB  196,98,125,24,29,139,54,0,0         ; vbroadcastss  0x368b(%rip),%ymm11        # 6bc8 <_sk_callback_avx+0x342>
8384  DB  196,65,36,94,210                    ; vdivps        %ymm10,%ymm11,%ymm10
8385  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
8386  DB  196,98,125,24,21,124,54,0,0         ; vbroadcastss  0x367c(%rip),%ymm10        # 6bcc <_sk_callback_avx+0x346>
8387  DB  196,193,100,89,218                  ; vmulps        %ymm10,%ymm3,%ymm3
8388  DB  197,253,91,219                      ; vcvtps2dq     %ymm3,%ymm3
8389  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
8390  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
8391  DB  196,195,101,74,217,128              ; vblendvps     %ymm8,%ymm9,%ymm3,%ymm3
8392  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
8393  DB  196,193,100,95,216                  ; vmaxps        %ymm8,%ymm3,%ymm3
8394  DB  196,98,125,24,5,83,54,0,0           ; vbroadcastss  0x3653(%rip),%ymm8        # 6bd0 <_sk_callback_avx+0x34a>
8395  DB  196,193,100,93,216                  ; vminps        %ymm8,%ymm3,%ymm3
8396  DB  72,173                              ; lods          %ds:(%rsi),%rax
8397  DB  255,224                             ; jmpq          *%rax
8398
8399PUBLIC _sk_lab_to_xyz_avx
8400_sk_lab_to_xyz_avx LABEL PROC
8401  DB  196,98,125,24,5,69,54,0,0           ; vbroadcastss  0x3645(%rip),%ymm8        # 6bd4 <_sk_callback_avx+0x34e>
8402  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
8403  DB  196,98,125,24,5,59,54,0,0           ; vbroadcastss  0x363b(%rip),%ymm8        # 6bd8 <_sk_callback_avx+0x352>
8404  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
8405  DB  196,98,125,24,13,49,54,0,0          ; vbroadcastss  0x3631(%rip),%ymm9        # 6bdc <_sk_callback_avx+0x356>
8406  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
8407  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
8408  DB  196,193,108,88,209                  ; vaddps        %ymm9,%ymm2,%ymm2
8409  DB  196,98,125,24,5,29,54,0,0           ; vbroadcastss  0x361d(%rip),%ymm8        # 6be0 <_sk_callback_avx+0x35a>
8410  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
8411  DB  196,98,125,24,5,19,54,0,0           ; vbroadcastss  0x3613(%rip),%ymm8        # 6be4 <_sk_callback_avx+0x35e>
8412  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
8413  DB  196,98,125,24,5,9,54,0,0            ; vbroadcastss  0x3609(%rip),%ymm8        # 6be8 <_sk_callback_avx+0x362>
8414  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
8415  DB  197,252,88,201                      ; vaddps        %ymm1,%ymm0,%ymm1
8416  DB  196,98,125,24,5,251,53,0,0          ; vbroadcastss  0x35fb(%rip),%ymm8        # 6bec <_sk_callback_avx+0x366>
8417  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
8418  DB  197,252,92,210                      ; vsubps        %ymm2,%ymm0,%ymm2
8419  DB  197,116,89,193                      ; vmulps        %ymm1,%ymm1,%ymm8
8420  DB  196,65,116,89,192                   ; vmulps        %ymm8,%ymm1,%ymm8
8421  DB  196,98,125,24,13,228,53,0,0         ; vbroadcastss  0x35e4(%rip),%ymm9        # 6bf0 <_sk_callback_avx+0x36a>
8422  DB  196,65,52,194,208,1                 ; vcmpltps      %ymm8,%ymm9,%ymm10
8423  DB  196,98,125,24,29,217,53,0,0         ; vbroadcastss  0x35d9(%rip),%ymm11        # 6bf4 <_sk_callback_avx+0x36e>
8424  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
8425  DB  196,98,125,24,37,207,53,0,0         ; vbroadcastss  0x35cf(%rip),%ymm12        # 6bf8 <_sk_callback_avx+0x372>
8426  DB  196,193,116,89,204                  ; vmulps        %ymm12,%ymm1,%ymm1
8427  DB  196,67,117,74,192,160               ; vblendvps     %ymm10,%ymm8,%ymm1,%ymm8
8428  DB  197,252,89,200                      ; vmulps        %ymm0,%ymm0,%ymm1
8429  DB  197,252,89,201                      ; vmulps        %ymm1,%ymm0,%ymm1
8430  DB  197,52,194,209,1                    ; vcmpltps      %ymm1,%ymm9,%ymm10
8431  DB  196,193,124,88,195                  ; vaddps        %ymm11,%ymm0,%ymm0
8432  DB  196,193,124,89,196                  ; vmulps        %ymm12,%ymm0,%ymm0
8433  DB  196,227,125,74,201,160              ; vblendvps     %ymm10,%ymm1,%ymm0,%ymm1
8434  DB  197,236,89,194                      ; vmulps        %ymm2,%ymm2,%ymm0
8435  DB  197,236,89,192                      ; vmulps        %ymm0,%ymm2,%ymm0
8436  DB  197,52,194,200,1                    ; vcmpltps      %ymm0,%ymm9,%ymm9
8437  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
8438  DB  196,193,108,89,212                  ; vmulps        %ymm12,%ymm2,%ymm2
8439  DB  196,227,109,74,208,144              ; vblendvps     %ymm9,%ymm0,%ymm2,%ymm2
8440  DB  196,226,125,24,5,133,53,0,0         ; vbroadcastss  0x3585(%rip),%ymm0        # 6bfc <_sk_callback_avx+0x376>
8441  DB  197,188,89,192                      ; vmulps        %ymm0,%ymm8,%ymm0
8442  DB  196,98,125,24,5,124,53,0,0          ; vbroadcastss  0x357c(%rip),%ymm8        # 6c00 <_sk_callback_avx+0x37a>
8443  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
8444  DB  72,173                              ; lods          %ds:(%rsi),%rax
8445  DB  255,224                             ; jmpq          *%rax
8446
8447PUBLIC _sk_load_a8_avx
8448_sk_load_a8_avx LABEL PROC
8449  DB  72,173                              ; lods          %ds:(%rsi),%rax
8450  DB  76,139,24                           ; mov           (%rax),%r11
8451  DB  77,133,192                          ; test          %r8,%r8
8452  DB  117,66                              ; jne           36d9 <_sk_load_a8_avx+0x4c>
8453  DB  196,194,121,48,4,19                 ; vpmovzxbw     (%r11,%rdx,1),%xmm0
8454  DB  197,249,219,5,203,55,0,0            ; vpand         0x37cb(%rip),%xmm0,%xmm0        # 6e70 <_sk_callback_avx+0x5ea>
8455  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
8456  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
8457  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8458  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
8459  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8460  DB  196,226,125,24,13,63,53,0,0         ; vbroadcastss  0x353f(%rip),%ymm1        # 6c04 <_sk_callback_avx+0x37e>
8461  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
8462  DB  72,173                              ; lods          %ds:(%rsi),%rax
8463  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
8464  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
8465  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
8466  DB  255,224                             ; jmpq          *%rax
8467  DB  69,137,193                          ; mov           %r8d,%r9d
8468  DB  65,128,225,7                        ; and           $0x7,%r9b
8469  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8470  DB  65,254,201                          ; dec           %r9b
8471  DB  65,128,249,6                        ; cmp           $0x6,%r9b
8472  DB  119,176                             ; ja            369d <_sk_load_a8_avx+0x10>
8473  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
8474  DB  76,141,21,120,0,0,0                 ; lea           0x78(%rip),%r10        # 3770 <_sk_load_a8_avx+0xe3>
8475  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
8476  DB  76,1,208                            ; add           %r10,%rax
8477  DB  255,224                             ; jmpq          *%rax
8478  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
8479  DB  197,249,110,192                     ; vmovd         %eax,%xmm0
8480  DB  235,145                             ; jmp           369d <_sk_load_a8_avx+0x10>
8481  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
8482  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8483  DB  197,249,196,192,2                   ; vpinsrw       $0x2,%eax,%xmm0,%xmm0
8484  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
8485  DB  197,249,110,200                     ; vmovd         %eax,%xmm1
8486  DB  196,226,121,48,201                  ; vpmovzxbw     %xmm1,%xmm1
8487  DB  196,227,121,14,193,3                ; vpblendw      $0x3,%xmm1,%xmm0,%xmm0
8488  DB  233,105,255,255,255                 ; jmpq          369d <_sk_load_a8_avx+0x10>
8489  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
8490  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8491  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
8492  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
8493  DB  197,249,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm0,%xmm0
8494  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
8495  DB  197,249,196,192,4                   ; vpinsrw       $0x4,%eax,%xmm0,%xmm0
8496  DB  196,193,121,110,12,19               ; vmovd         (%r11,%rdx,1),%xmm1
8497  DB  196,226,121,48,201                  ; vpmovzxbw     %xmm1,%xmm1
8498  DB  196,227,113,14,192,240              ; vpblendw      $0xf0,%xmm0,%xmm1,%xmm0
8499  DB  233,46,255,255,255                  ; jmpq          369d <_sk_load_a8_avx+0x10>
8500  DB  144                                 ; nop
8501  DB  145                                 ; xchg          %eax,%ecx
8502  DB  255                                 ; (bad)
8503  DB  255                                 ; (bad)
8504  DB  255,171,255,255,255,156             ; ljmp          *-0x63000001(%rbx)
8505  DB  255                                 ; (bad)
8506  DB  255                                 ; (bad)
8507  DB  255                                 ; (bad)
8508  DB  233,255,255,255,222                 ; jmpq          ffffffffdf003780 <_sk_callback_avx+0xffffffffdeffcefa>
8509  DB  255                                 ; (bad)
8510  DB  255                                 ; (bad)
8511  DB  255,211                             ; callq         *%rbx
8512  DB  255                                 ; (bad)
8513  DB  255                                 ; (bad)
8514  DB  255,196                             ; inc           %esp
8515  DB  255                                 ; (bad)
8516  DB  255                                 ; (bad)
8517  DB  255                                 ; .byte         0xff
8518
8519PUBLIC _sk_gather_a8_avx
8520_sk_gather_a8_avx LABEL PROC
8521  DB  72,173                              ; lods          %ds:(%rsi),%rax
8522  DB  76,139,8                            ; mov           (%rax),%r9
8523  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
8524  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
8525  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
8526  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
8527  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
8528  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
8529  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
8530  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
8531  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8532  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
8533  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
8534  DB  68,137,208                          ; mov           %r10d,%eax
8535  DB  196,195,121,32,20,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm2
8536  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
8537  DB  73,193,234,32                       ; shr           $0x20,%r10
8538  DB  196,131,105,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm1
8539  DB  68,137,216                          ; mov           %r11d,%eax
8540  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
8541  DB  196,227,113,32,200,2                ; vpinsrb       $0x2,%eax,%xmm1,%xmm1
8542  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
8543  DB  73,193,235,32                       ; shr           $0x20,%r11
8544  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
8545  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
8546  DB  68,137,208                          ; mov           %r10d,%eax
8547  DB  196,195,121,32,20,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm2
8548  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
8549  DB  73,193,234,32                       ; shr           $0x20,%r10
8550  DB  196,131,105,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm0
8551  DB  68,137,216                          ; mov           %r11d,%eax
8552  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
8553  DB  196,227,121,32,192,2                ; vpinsrb       $0x2,%eax,%xmm0,%xmm0
8554  DB  73,193,235,32                       ; shr           $0x20,%r11
8555  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
8556  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
8557  DB  196,227,121,32,192,3                ; vpinsrb       $0x3,%eax,%xmm0,%xmm0
8558  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
8559  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
8560  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8561  DB  196,226,125,24,13,176,51,0,0        ; vbroadcastss  0x33b0(%rip),%ymm1        # 6c08 <_sk_callback_avx+0x382>
8562  DB  197,252,89,217                      ; vmulps        %ymm1,%ymm0,%ymm3
8563  DB  72,173                              ; lods          %ds:(%rsi),%rax
8564  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
8565  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
8566  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
8567  DB  255,224                             ; jmpq          *%rax
8568
8569PUBLIC _sk_store_a8_avx
8570_sk_store_a8_avx LABEL PROC
8571  DB  72,173                              ; lods          %ds:(%rsi),%rax
8572  DB  76,139,24                           ; mov           (%rax),%r11
8573  DB  196,98,125,24,5,146,51,0,0          ; vbroadcastss  0x3392(%rip),%ymm8        # 6c0c <_sk_callback_avx+0x386>
8574  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
8575  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
8576  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
8577  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
8578  DB  196,65,57,103,192                   ; vpackuswb     %xmm8,%xmm8,%xmm8
8579  DB  77,133,192                          ; test          %r8,%r8
8580  DB  117,10                              ; jne           38a3 <_sk_store_a8_avx+0x37>
8581  DB  196,65,123,17,4,19                  ; vmovsd        %xmm8,(%r11,%rdx,1)
8582  DB  72,173                              ; lods          %ds:(%rsi),%rax
8583  DB  255,224                             ; jmpq          *%rax
8584  DB  69,137,193                          ; mov           %r8d,%r9d
8585  DB  65,128,225,7                        ; and           $0x7,%r9b
8586  DB  65,254,201                          ; dec           %r9b
8587  DB  65,128,249,6                        ; cmp           $0x6,%r9b
8588  DB  119,236                             ; ja            389f <_sk_store_a8_avx+0x33>
8589  DB  196,66,121,48,192                   ; vpmovzxbw     %xmm8,%xmm8
8590  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
8591  DB  76,141,21,85,0,0,0                  ; lea           0x55(%rip),%r10        # 3918 <_sk_store_a8_avx+0xac>
8592  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
8593  DB  76,1,208                            ; add           %r10,%rax
8594  DB  255,224                             ; jmpq          *%rax
8595  DB  196,67,121,20,4,19,0                ; vpextrb       $0x0,%xmm8,(%r11,%rdx,1)
8596  DB  235,202                             ; jmp           389f <_sk_store_a8_avx+0x33>
8597  DB  196,67,121,20,68,19,2,4             ; vpextrb       $0x4,%xmm8,0x2(%r11,%rdx,1)
8598  DB  196,98,57,0,5,154,53,0,0            ; vpshufb       0x359a(%rip),%xmm8,%xmm8        # 6e80 <_sk_callback_avx+0x5fa>
8599  DB  196,67,121,21,4,19,0                ; vpextrw       $0x0,%xmm8,(%r11,%rdx,1)
8600  DB  235,176                             ; jmp           389f <_sk_store_a8_avx+0x33>
8601  DB  196,67,121,20,68,19,6,12            ; vpextrb       $0xc,%xmm8,0x6(%r11,%rdx,1)
8602  DB  196,67,121,20,68,19,5,10            ; vpextrb       $0xa,%xmm8,0x5(%r11,%rdx,1)
8603  DB  196,67,121,20,68,19,4,8             ; vpextrb       $0x8,%xmm8,0x4(%r11,%rdx,1)
8604  DB  196,98,57,0,5,128,53,0,0            ; vpshufb       0x3580(%rip),%xmm8,%xmm8        # 6e90 <_sk_callback_avx+0x60a>
8605  DB  196,65,121,126,4,19                 ; vmovd         %xmm8,(%r11,%rdx,1)
8606  DB  235,135                             ; jmp           389f <_sk_store_a8_avx+0x33>
8607  DB  180,255                             ; mov           $0xff,%ah
8608  DB  255                                 ; (bad)
8609  DB  255,197                             ; inc           %ebp
8610  DB  255                                 ; (bad)
8611  DB  255                                 ; (bad)
8612  DB  255                                 ; (bad)
8613  DB  189,255,255,255,239                 ; mov           $0xefffffff,%ebp
8614  DB  255                                 ; (bad)
8615  DB  255                                 ; (bad)
8616  DB  255,231                             ; jmpq          *%rdi
8617  DB  255                                 ; (bad)
8618  DB  255                                 ; (bad)
8619  DB  255                                 ; (bad)
8620  DB  223,255                             ; (bad)
8621  DB  255                                 ; (bad)
8622  DB  255,215                             ; callq         *%rdi
8623  DB  255                                 ; (bad)
8624  DB  255                                 ; (bad)
8625  DB  255                                 ; .byte         0xff
8626
8627PUBLIC _sk_load_g8_avx
8628_sk_load_g8_avx LABEL PROC
8629  DB  72,173                              ; lods          %ds:(%rsi),%rax
8630  DB  76,139,24                           ; mov           (%rax),%r11
8631  DB  77,133,192                          ; test          %r8,%r8
8632  DB  117,71                              ; jne           3985 <_sk_load_g8_avx+0x51>
8633  DB  196,194,121,48,4,19                 ; vpmovzxbw     (%r11,%rdx,1),%xmm0
8634  DB  197,249,219,5,84,53,0,0             ; vpand         0x3554(%rip),%xmm0,%xmm0        # 6ea0 <_sk_callback_avx+0x61a>
8635  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
8636  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
8637  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8638  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
8639  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8640  DB  196,226,125,24,13,164,50,0,0        ; vbroadcastss  0x32a4(%rip),%ymm1        # 6c10 <_sk_callback_avx+0x38a>
8641  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
8642  DB  72,173                              ; lods          %ds:(%rsi),%rax
8643  DB  196,226,125,24,29,153,50,0,0        ; vbroadcastss  0x3299(%rip),%ymm3        # 6c14 <_sk_callback_avx+0x38e>
8644  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
8645  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
8646  DB  255,224                             ; jmpq          *%rax
8647  DB  69,137,193                          ; mov           %r8d,%r9d
8648  DB  65,128,225,7                        ; and           $0x7,%r9b
8649  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8650  DB  65,254,201                          ; dec           %r9b
8651  DB  65,128,249,6                        ; cmp           $0x6,%r9b
8652  DB  119,171                             ; ja            3944 <_sk_load_g8_avx+0x10>
8653  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
8654  DB  76,141,21,120,0,0,0                 ; lea           0x78(%rip),%r10        # 3a1c <_sk_load_g8_avx+0xe8>
8655  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
8656  DB  76,1,208                            ; add           %r10,%rax
8657  DB  255,224                             ; jmpq          *%rax
8658  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
8659  DB  197,249,110,192                     ; vmovd         %eax,%xmm0
8660  DB  235,140                             ; jmp           3944 <_sk_load_g8_avx+0x10>
8661  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
8662  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8663  DB  197,249,196,192,2                   ; vpinsrw       $0x2,%eax,%xmm0,%xmm0
8664  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
8665  DB  197,249,110,200                     ; vmovd         %eax,%xmm1
8666  DB  196,226,121,48,201                  ; vpmovzxbw     %xmm1,%xmm1
8667  DB  196,227,121,14,193,3                ; vpblendw      $0x3,%xmm1,%xmm0,%xmm0
8668  DB  233,100,255,255,255                 ; jmpq          3944 <_sk_load_g8_avx+0x10>
8669  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
8670  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8671  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
8672  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
8673  DB  197,249,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm0,%xmm0
8674  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
8675  DB  197,249,196,192,4                   ; vpinsrw       $0x4,%eax,%xmm0,%xmm0
8676  DB  196,193,121,110,12,19               ; vmovd         (%r11,%rdx,1),%xmm1
8677  DB  196,226,121,48,201                  ; vpmovzxbw     %xmm1,%xmm1
8678  DB  196,227,113,14,192,240              ; vpblendw      $0xf0,%xmm0,%xmm1,%xmm0
8679  DB  233,41,255,255,255                  ; jmpq          3944 <_sk_load_g8_avx+0x10>
8680  DB  144                                 ; nop
8681  DB  145                                 ; xchg          %eax,%ecx
8682  DB  255                                 ; (bad)
8683  DB  255                                 ; (bad)
8684  DB  255,171,255,255,255,156             ; ljmp          *-0x63000001(%rbx)
8685  DB  255                                 ; (bad)
8686  DB  255                                 ; (bad)
8687  DB  255                                 ; (bad)
8688  DB  233,255,255,255,222                 ; jmpq          ffffffffdf003a2c <_sk_callback_avx+0xffffffffdeffd1a6>
8689  DB  255                                 ; (bad)
8690  DB  255                                 ; (bad)
8691  DB  255,211                             ; callq         *%rbx
8692  DB  255                                 ; (bad)
8693  DB  255                                 ; (bad)
8694  DB  255,196                             ; inc           %esp
8695  DB  255                                 ; (bad)
8696  DB  255                                 ; (bad)
8697  DB  255                                 ; .byte         0xff
8698
8699PUBLIC _sk_gather_g8_avx
8700_sk_gather_g8_avx LABEL PROC
8701  DB  72,173                              ; lods          %ds:(%rsi),%rax
8702  DB  76,139,8                            ; mov           (%rax),%r9
8703  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
8704  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
8705  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
8706  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
8707  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
8708  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
8709  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
8710  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
8711  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8712  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
8713  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
8714  DB  68,137,208                          ; mov           %r10d,%eax
8715  DB  196,195,121,32,20,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm2
8716  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
8717  DB  73,193,234,32                       ; shr           $0x20,%r10
8718  DB  196,131,105,32,12,17,1              ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm1
8719  DB  68,137,216                          ; mov           %r11d,%eax
8720  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
8721  DB  196,227,113,32,200,2                ; vpinsrb       $0x2,%eax,%xmm1,%xmm1
8722  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
8723  DB  73,193,235,32                       ; shr           $0x20,%r11
8724  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
8725  DB  196,227,113,32,200,3                ; vpinsrb       $0x3,%eax,%xmm1,%xmm1
8726  DB  68,137,208                          ; mov           %r10d,%eax
8727  DB  196,195,121,32,20,1,0               ; vpinsrb       $0x0,(%r9,%rax,1),%xmm0,%xmm2
8728  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
8729  DB  73,193,234,32                       ; shr           $0x20,%r10
8730  DB  196,131,105,32,4,17,1               ; vpinsrb       $0x1,(%r9,%r10,1),%xmm2,%xmm0
8731  DB  68,137,216                          ; mov           %r11d,%eax
8732  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
8733  DB  196,227,121,32,192,2                ; vpinsrb       $0x2,%eax,%xmm0,%xmm0
8734  DB  73,193,235,32                       ; shr           $0x20,%r11
8735  DB  67,15,182,4,25                      ; movzbl        (%r9,%r11,1),%eax
8736  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
8737  DB  196,227,121,32,192,3                ; vpinsrb       $0x3,%eax,%xmm0,%xmm0
8738  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
8739  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
8740  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8741  DB  196,226,125,24,13,20,49,0,0         ; vbroadcastss  0x3114(%rip),%ymm1        # 6c18 <_sk_callback_avx+0x392>
8742  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
8743  DB  72,173                              ; lods          %ds:(%rsi),%rax
8744  DB  196,226,125,24,29,9,49,0,0          ; vbroadcastss  0x3109(%rip),%ymm3        # 6c1c <_sk_callback_avx+0x396>
8745  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
8746  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
8747  DB  255,224                             ; jmpq          *%rax
8748
8749PUBLIC _sk_gather_i8_avx
8750_sk_gather_i8_avx LABEL PROC
8751  DB  72,173                              ; lods          %ds:(%rsi),%rax
8752  DB  73,137,193                          ; mov           %rax,%r9
8753  DB  77,133,201                          ; test          %r9,%r9
8754  DB  116,5                               ; je            3b2c <_sk_gather_i8_avx+0xf>
8755  DB  76,137,200                          ; mov           %r9,%rax
8756  DB  235,2                               ; jmp           3b2e <_sk_gather_i8_avx+0x11>
8757  DB  72,173                              ; lods          %ds:(%rsi),%rax
8758  DB  83                                  ; push          %rbx
8759  DB  76,139,16                           ; mov           (%rax),%r10
8760  DB  197,254,91,209                      ; vcvttps2dq    %ymm1,%ymm2
8761  DB  197,249,110,72,16                   ; vmovd         0x10(%rax),%xmm1
8762  DB  197,249,112,217,0                   ; vpshufd       $0x0,%xmm1,%xmm3
8763  DB  196,226,97,64,202                   ; vpmulld       %xmm2,%xmm3,%xmm1
8764  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
8765  DB  196,226,97,64,210                   ; vpmulld       %xmm2,%xmm3,%xmm2
8766  DB  197,254,91,192                      ; vcvttps2dq    %ymm0,%ymm0
8767  DB  196,227,125,25,195,1                ; vextractf128  $0x1,%ymm0,%xmm3
8768  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
8769  DB  196,193,249,126,211                 ; vmovq         %xmm2,%r11
8770  DB  68,137,216                          ; mov           %r11d,%eax
8771  DB  196,195,121,32,28,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm3
8772  DB  196,227,249,22,208,1                ; vpextrq       $0x1,%xmm2,%rax
8773  DB  73,193,235,32                       ; shr           $0x20,%r11
8774  DB  196,131,97,32,20,26,1               ; vpinsrb       $0x1,(%r10,%r11,1),%xmm3,%xmm2
8775  DB  65,137,195                          ; mov           %eax,%r11d
8776  DB  72,193,232,32                       ; shr           $0x20,%rax
8777  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8778  DB  196,131,105,32,12,26,2              ; vpinsrb       $0x2,(%r10,%r11,1),%xmm2,%xmm1
8779  DB  196,193,249,126,195                 ; vmovq         %xmm0,%r11
8780  DB  196,195,113,32,12,2,3               ; vpinsrb       $0x3,(%r10,%rax,1),%xmm1,%xmm1
8781  DB  68,137,216                          ; mov           %r11d,%eax
8782  DB  196,195,121,32,20,2,0               ; vpinsrb       $0x0,(%r10,%rax,1),%xmm0,%xmm2
8783  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
8784  DB  73,193,235,32                       ; shr           $0x20,%r11
8785  DB  196,131,105,32,4,26,1               ; vpinsrb       $0x1,(%r10,%r11,1),%xmm2,%xmm0
8786  DB  137,216                             ; mov           %ebx,%eax
8787  DB  196,195,121,32,4,2,2                ; vpinsrb       $0x2,(%r10,%rax,1),%xmm0,%xmm0
8788  DB  72,193,235,32                       ; shr           $0x20,%rbx
8789  DB  196,226,121,49,201                  ; vpmovzxbd     %xmm1,%xmm1
8790  DB  196,195,121,32,4,26,3               ; vpinsrb       $0x3,(%r10,%rbx,1),%xmm0,%xmm0
8791  DB  196,226,121,49,192                  ; vpmovzxbd     %xmm0,%xmm0
8792  DB  77,139,89,8                         ; mov           0x8(%r9),%r11
8793  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
8794  DB  69,137,209                          ; mov           %r10d,%r9d
8795  DB  73,193,234,30                       ; shr           $0x1e,%r10
8796  DB  196,129,121,110,20,139              ; vmovd         (%r11,%r9,4),%xmm2
8797  DB  196,227,249,22,195,1                ; vpextrq       $0x1,%xmm0,%rbx
8798  DB  196,131,105,34,4,19,1               ; vpinsrd       $0x1,(%r11,%r10,1),%xmm2,%xmm0
8799  DB  137,216                             ; mov           %ebx,%eax
8800  DB  196,195,121,34,4,131,2              ; vpinsrd       $0x2,(%r11,%rax,4),%xmm0,%xmm0
8801  DB  196,225,249,126,200                 ; vmovq         %xmm1,%rax
8802  DB  72,193,235,30                       ; shr           $0x1e,%rbx
8803  DB  196,67,121,34,4,27,3                ; vpinsrd       $0x3,(%r11,%rbx,1),%xmm0,%xmm8
8804  DB  137,195                             ; mov           %eax,%ebx
8805  DB  196,193,121,110,4,155               ; vmovd         (%r11,%rbx,4),%xmm0
8806  DB  196,227,249,22,203,1                ; vpextrq       $0x1,%xmm1,%rbx
8807  DB  72,193,232,30                       ; shr           $0x1e,%rax
8808  DB  196,195,121,34,4,3,1                ; vpinsrd       $0x1,(%r11,%rax,1),%xmm0,%xmm0
8809  DB  137,216                             ; mov           %ebx,%eax
8810  DB  196,195,121,34,4,131,2              ; vpinsrd       $0x2,(%r11,%rax,4),%xmm0,%xmm0
8811  DB  72,193,235,30                       ; shr           $0x1e,%rbx
8812  DB  196,195,121,34,28,27,3              ; vpinsrd       $0x3,(%r11,%rbx,1),%xmm0,%xmm3
8813  DB  196,227,61,24,195,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm0
8814  DB  197,124,40,21,244,50,0,0            ; vmovaps       0x32f4(%rip),%ymm10        # 6f40 <_sk_callback_avx+0x6ba>
8815  DB  196,193,124,84,194                  ; vandps        %ymm10,%ymm0,%ymm0
8816  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8817  DB  196,98,125,24,13,194,47,0,0         ; vbroadcastss  0x2fc2(%rip),%ymm9        # 6c20 <_sk_callback_avx+0x39a>
8818  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
8819  DB  196,193,113,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm1
8820  DB  197,233,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm2
8821  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
8822  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
8823  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8824  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
8825  DB  196,193,33,114,208,16               ; vpsrld        $0x10,%xmm8,%xmm11
8826  DB  197,233,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm2
8827  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
8828  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
8829  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8830  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
8831  DB  196,193,57,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm8
8832  DB  197,225,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm3
8833  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
8834  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
8835  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
8836  DB  72,173                              ; lods          %ds:(%rsi),%rax
8837  DB  91                                  ; pop           %rbx
8838  DB  255,224                             ; jmpq          *%rax
8839
8840PUBLIC _sk_load_565_avx
8841_sk_load_565_avx LABEL PROC
8842  DB  72,173                              ; lods          %ds:(%rsi),%rax
8843  DB  76,139,24                           ; mov           (%rax),%r11
8844  DB  77,133,192                          ; test          %r8,%r8
8845  DB  15,133,128,0,0,0                    ; jne           3d4e <_sk_load_565_avx+0x8e>
8846  DB  196,193,122,111,4,83                ; vmovdqu       (%r11,%rdx,2),%xmm0
8847  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
8848  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
8849  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8850  DB  196,227,125,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm2
8851  DB  196,226,125,24,5,52,47,0,0          ; vbroadcastss  0x2f34(%rip),%ymm0        # 6c24 <_sk_callback_avx+0x39e>
8852  DB  197,236,84,192                      ; vandps        %ymm0,%ymm2,%ymm0
8853  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8854  DB  196,226,125,24,13,39,47,0,0         ; vbroadcastss  0x2f27(%rip),%ymm1        # 6c28 <_sk_callback_avx+0x3a2>
8855  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
8856  DB  196,226,125,24,13,30,47,0,0         ; vbroadcastss  0x2f1e(%rip),%ymm1        # 6c2c <_sk_callback_avx+0x3a6>
8857  DB  197,236,84,201                      ; vandps        %ymm1,%ymm2,%ymm1
8858  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8859  DB  196,226,125,24,29,17,47,0,0         ; vbroadcastss  0x2f11(%rip),%ymm3        # 6c30 <_sk_callback_avx+0x3aa>
8860  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
8861  DB  196,226,125,24,29,8,47,0,0          ; vbroadcastss  0x2f08(%rip),%ymm3        # 6c34 <_sk_callback_avx+0x3ae>
8862  DB  197,236,84,211                      ; vandps        %ymm3,%ymm2,%ymm2
8863  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8864  DB  196,226,125,24,29,251,46,0,0        ; vbroadcastss  0x2efb(%rip),%ymm3        # 6c38 <_sk_callback_avx+0x3b2>
8865  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
8866  DB  72,173                              ; lods          %ds:(%rsi),%rax
8867  DB  196,226,125,24,29,240,46,0,0        ; vbroadcastss  0x2ef0(%rip),%ymm3        # 6c3c <_sk_callback_avx+0x3b6>
8868  DB  255,224                             ; jmpq          *%rax
8869  DB  69,137,193                          ; mov           %r8d,%r9d
8870  DB  65,128,225,7                        ; and           $0x7,%r9b
8871  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8872  DB  65,254,201                          ; dec           %r9b
8873  DB  65,128,249,6                        ; cmp           $0x6,%r9b
8874  DB  15,135,110,255,255,255              ; ja            3cd4 <_sk_load_565_avx+0x14>
8875  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
8876  DB  76,141,21,99,0,0,0                  ; lea           0x63(%rip),%r10        # 3dd4 <_sk_load_565_avx+0x114>
8877  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
8878  DB  76,1,208                            ; add           %r10,%rax
8879  DB  255,224                             ; jmpq          *%rax
8880  DB  65,15,183,4,83                      ; movzwl        (%r11,%rdx,2),%eax
8881  DB  197,249,110,192                     ; vmovd         %eax,%xmm0
8882  DB  233,76,255,255,255                  ; jmpq          3cd4 <_sk_load_565_avx+0x14>
8883  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8884  DB  196,193,121,196,68,83,4,2           ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm0,%xmm0
8885  DB  196,193,121,110,12,83               ; vmovd         (%r11,%rdx,2),%xmm1
8886  DB  196,227,121,14,193,3                ; vpblendw      $0x3,%xmm1,%xmm0,%xmm0
8887  DB  233,47,255,255,255                  ; jmpq          3cd4 <_sk_load_565_avx+0x14>
8888  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
8889  DB  196,193,121,196,68,83,12,6          ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm0,%xmm0
8890  DB  196,193,121,196,68,83,10,5          ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm0,%xmm0
8891  DB  196,193,121,196,68,83,8,4           ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm0,%xmm0
8892  DB  196,193,122,126,12,83               ; vmovq         (%r11,%rdx,2),%xmm1
8893  DB  196,227,113,14,192,240              ; vpblendw      $0xf0,%xmm0,%xmm1,%xmm0
8894  DB  233,2,255,255,255                   ; jmpq          3cd4 <_sk_load_565_avx+0x14>
8895  DB  102,144                             ; xchg          %ax,%ax
8896  DB  166                                 ; cmpsb         %es:(%rdi),%ds:(%rsi)
8897  DB  255                                 ; (bad)
8898  DB  255                                 ; (bad)
8899  DB  255,192                             ; inc           %eax
8900  DB  255                                 ; (bad)
8901  DB  255                                 ; (bad)
8902  DB  255,180,255,255,255,237,255         ; pushq         -0x120001(%rdi,%rdi,8)
8903  DB  255                                 ; (bad)
8904  DB  255,229                             ; jmpq          *%rbp
8905  DB  255                                 ; (bad)
8906  DB  255                                 ; (bad)
8907  DB  255                                 ; (bad)
8908  DB  221,255                             ; (bad)
8909  DB  255                                 ; (bad)
8910  DB  255,209                             ; callq         *%rcx
8911  DB  255                                 ; (bad)
8912  DB  255                                 ; (bad)
8913  DB  255                                 ; .byte         0xff
8914
8915PUBLIC _sk_gather_565_avx
8916_sk_gather_565_avx LABEL PROC
8917  DB  72,173                              ; lods          %ds:(%rsi),%rax
8918  DB  76,139,8                            ; mov           (%rax),%r9
8919  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
8920  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
8921  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
8922  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
8923  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
8924  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
8925  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
8926  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
8927  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
8928  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
8929  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
8930  DB  68,137,208                          ; mov           %r10d,%eax
8931  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8932  DB  197,249,110,208                     ; vmovd         %eax,%xmm2
8933  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
8934  DB  73,193,234,32                       ; shr           $0x20,%r10
8935  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
8936  DB  197,233,196,200,1                   ; vpinsrw       $0x1,%eax,%xmm2,%xmm1
8937  DB  68,137,216                          ; mov           %r11d,%eax
8938  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8939  DB  197,241,196,200,2                   ; vpinsrw       $0x2,%eax,%xmm1,%xmm1
8940  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
8941  DB  73,193,235,32                       ; shr           $0x20,%r11
8942  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
8943  DB  197,241,196,200,3                   ; vpinsrw       $0x3,%eax,%xmm1,%xmm1
8944  DB  68,137,208                          ; mov           %r10d,%eax
8945  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8946  DB  197,241,196,200,4                   ; vpinsrw       $0x4,%eax,%xmm1,%xmm1
8947  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
8948  DB  73,193,234,32                       ; shr           $0x20,%r10
8949  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
8950  DB  197,241,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm1,%xmm0
8951  DB  68,137,216                          ; mov           %r11d,%eax
8952  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
8953  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
8954  DB  73,193,235,32                       ; shr           $0x20,%r11
8955  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
8956  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
8957  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
8958  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
8959  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
8960  DB  196,227,125,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm2
8961  DB  196,226,125,24,5,126,45,0,0         ; vbroadcastss  0x2d7e(%rip),%ymm0        # 6c40 <_sk_callback_avx+0x3ba>
8962  DB  197,236,84,192                      ; vandps        %ymm0,%ymm2,%ymm0
8963  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
8964  DB  196,226,125,24,13,113,45,0,0        ; vbroadcastss  0x2d71(%rip),%ymm1        # 6c44 <_sk_callback_avx+0x3be>
8965  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
8966  DB  196,226,125,24,13,104,45,0,0        ; vbroadcastss  0x2d68(%rip),%ymm1        # 6c48 <_sk_callback_avx+0x3c2>
8967  DB  197,236,84,201                      ; vandps        %ymm1,%ymm2,%ymm1
8968  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
8969  DB  196,226,125,24,29,91,45,0,0         ; vbroadcastss  0x2d5b(%rip),%ymm3        # 6c4c <_sk_callback_avx+0x3c6>
8970  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
8971  DB  196,226,125,24,29,82,45,0,0         ; vbroadcastss  0x2d52(%rip),%ymm3        # 6c50 <_sk_callback_avx+0x3ca>
8972  DB  197,236,84,211                      ; vandps        %ymm3,%ymm2,%ymm2
8973  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
8974  DB  196,226,125,24,29,69,45,0,0         ; vbroadcastss  0x2d45(%rip),%ymm3        # 6c54 <_sk_callback_avx+0x3ce>
8975  DB  197,236,89,211                      ; vmulps        %ymm3,%ymm2,%ymm2
8976  DB  72,173                              ; lods          %ds:(%rsi),%rax
8977  DB  196,226,125,24,29,58,45,0,0         ; vbroadcastss  0x2d3a(%rip),%ymm3        # 6c58 <_sk_callback_avx+0x3d2>
8978  DB  255,224                             ; jmpq          *%rax
8979
8980PUBLIC _sk_store_565_avx
8981_sk_store_565_avx LABEL PROC
8982  DB  72,173                              ; lods          %ds:(%rsi),%rax
8983  DB  76,139,24                           ; mov           (%rax),%r11
8984  DB  196,98,125,24,5,46,45,0,0           ; vbroadcastss  0x2d2e(%rip),%ymm8        # 6c5c <_sk_callback_avx+0x3d6>
8985  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
8986  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
8987  DB  196,193,41,114,241,11               ; vpslld        $0xb,%xmm9,%xmm10
8988  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
8989  DB  196,193,49,114,241,11               ; vpslld        $0xb,%xmm9,%xmm9
8990  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
8991  DB  196,98,125,24,21,7,45,0,0           ; vbroadcastss  0x2d07(%rip),%ymm10        # 6c60 <_sk_callback_avx+0x3da>
8992  DB  196,65,116,89,210                   ; vmulps        %ymm10,%ymm1,%ymm10
8993  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
8994  DB  196,193,33,114,242,5                ; vpslld        $0x5,%xmm10,%xmm11
8995  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
8996  DB  196,193,41,114,242,5                ; vpslld        $0x5,%xmm10,%xmm10
8997  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
8998  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
8999  DB  196,65,108,89,192                   ; vmulps        %ymm8,%ymm2,%ymm8
9000  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
9001  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
9002  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
9003  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
9004  DB  77,133,192                          ; test          %r8,%r8
9005  DB  117,10                              ; jne           3fa9 <_sk_store_565_avx+0x89>
9006  DB  196,65,122,127,4,83                 ; vmovdqu       %xmm8,(%r11,%rdx,2)
9007  DB  72,173                              ; lods          %ds:(%rsi),%rax
9008  DB  255,224                             ; jmpq          *%rax
9009  DB  69,137,193                          ; mov           %r8d,%r9d
9010  DB  65,128,225,7                        ; and           $0x7,%r9b
9011  DB  65,254,201                          ; dec           %r9b
9012  DB  65,128,249,6                        ; cmp           $0x6,%r9b
9013  DB  119,236                             ; ja            3fa5 <_sk_store_565_avx+0x85>
9014  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
9015  DB  76,141,21,68,0,0,0                  ; lea           0x44(%rip),%r10        # 4008 <_sk_store_565_avx+0xe8>
9016  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
9017  DB  76,1,208                            ; add           %r10,%rax
9018  DB  255,224                             ; jmpq          *%rax
9019  DB  196,67,121,21,4,83,0                ; vpextrw       $0x0,%xmm8,(%r11,%rdx,2)
9020  DB  235,207                             ; jmp           3fa5 <_sk_store_565_avx+0x85>
9021  DB  196,67,121,21,68,83,4,2             ; vpextrw       $0x2,%xmm8,0x4(%r11,%rdx,2)
9022  DB  196,65,121,126,4,83                 ; vmovd         %xmm8,(%r11,%rdx,2)
9023  DB  235,191                             ; jmp           3fa5 <_sk_store_565_avx+0x85>
9024  DB  196,67,121,21,68,83,12,6            ; vpextrw       $0x6,%xmm8,0xc(%r11,%rdx,2)
9025  DB  196,67,121,21,68,83,10,5            ; vpextrw       $0x5,%xmm8,0xa(%r11,%rdx,2)
9026  DB  196,67,121,21,68,83,8,4             ; vpextrw       $0x4,%xmm8,0x8(%r11,%rdx,2)
9027  DB  196,65,121,214,4,83                 ; vmovq         %xmm8,(%r11,%rdx,2)
9028  DB  235,159                             ; jmp           3fa5 <_sk_store_565_avx+0x85>
9029  DB  102,144                             ; xchg          %ax,%ax
9030  DB  197,255,255                         ; (bad)
9031  DB  255,214                             ; callq         *%rsi
9032  DB  255                                 ; (bad)
9033  DB  255                                 ; (bad)
9034  DB  255,206                             ; dec           %esi
9035  DB  255                                 ; (bad)
9036  DB  255                                 ; (bad)
9037  DB  255,246                             ; push          %rsi
9038  DB  255                                 ; (bad)
9039  DB  255                                 ; (bad)
9040  DB  255                                 ; (bad)
9041  DB  238                                 ; out           %al,(%dx)
9042  DB  255                                 ; (bad)
9043  DB  255                                 ; (bad)
9044  DB  255,230                             ; jmpq          *%rsi
9045  DB  255                                 ; (bad)
9046  DB  255                                 ; (bad)
9047  DB  255                                 ; (bad)
9048  DB  222,255                             ; fdivrp        %st,%st(7)
9049  DB  255                                 ; (bad)
9050  DB  255                                 ; .byte         0xff
9051
9052PUBLIC _sk_load_4444_avx
9053_sk_load_4444_avx LABEL PROC
9054  DB  72,173                              ; lods          %ds:(%rsi),%rax
9055  DB  76,139,24                           ; mov           (%rax),%r11
9056  DB  77,133,192                          ; test          %r8,%r8
9057  DB  15,133,152,0,0,0                    ; jne           40ca <_sk_load_4444_avx+0xa6>
9058  DB  196,193,122,111,4,83                ; vmovdqu       (%r11,%rdx,2),%xmm0
9059  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
9060  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
9061  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
9062  DB  196,227,125,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm3
9063  DB  196,226,125,24,5,16,44,0,0          ; vbroadcastss  0x2c10(%rip),%ymm0        # 6c64 <_sk_callback_avx+0x3de>
9064  DB  197,228,84,192                      ; vandps        %ymm0,%ymm3,%ymm0
9065  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
9066  DB  196,226,125,24,13,3,44,0,0          ; vbroadcastss  0x2c03(%rip),%ymm1        # 6c68 <_sk_callback_avx+0x3e2>
9067  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
9068  DB  196,226,125,24,13,250,43,0,0        ; vbroadcastss  0x2bfa(%rip),%ymm1        # 6c6c <_sk_callback_avx+0x3e6>
9069  DB  197,228,84,201                      ; vandps        %ymm1,%ymm3,%ymm1
9070  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
9071  DB  196,226,125,24,21,237,43,0,0        ; vbroadcastss  0x2bed(%rip),%ymm2        # 6c70 <_sk_callback_avx+0x3ea>
9072  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
9073  DB  196,226,125,24,21,228,43,0,0        ; vbroadcastss  0x2be4(%rip),%ymm2        # 6c74 <_sk_callback_avx+0x3ee>
9074  DB  197,228,84,210                      ; vandps        %ymm2,%ymm3,%ymm2
9075  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
9076  DB  196,98,125,24,5,215,43,0,0          ; vbroadcastss  0x2bd7(%rip),%ymm8        # 6c78 <_sk_callback_avx+0x3f2>
9077  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
9078  DB  196,98,125,24,5,205,43,0,0          ; vbroadcastss  0x2bcd(%rip),%ymm8        # 6c7c <_sk_callback_avx+0x3f6>
9079  DB  196,193,100,84,216                  ; vandps        %ymm8,%ymm3,%ymm3
9080  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
9081  DB  196,98,125,24,5,191,43,0,0          ; vbroadcastss  0x2bbf(%rip),%ymm8        # 6c80 <_sk_callback_avx+0x3fa>
9082  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
9083  DB  72,173                              ; lods          %ds:(%rsi),%rax
9084  DB  255,224                             ; jmpq          *%rax
9085  DB  69,137,193                          ; mov           %r8d,%r9d
9086  DB  65,128,225,7                        ; and           $0x7,%r9b
9087  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
9088  DB  65,254,201                          ; dec           %r9b
9089  DB  65,128,249,6                        ; cmp           $0x6,%r9b
9090  DB  15,135,86,255,255,255               ; ja            4038 <_sk_load_4444_avx+0x14>
9091  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
9092  DB  76,141,21,99,0,0,0                  ; lea           0x63(%rip),%r10        # 4150 <_sk_load_4444_avx+0x12c>
9093  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
9094  DB  76,1,208                            ; add           %r10,%rax
9095  DB  255,224                             ; jmpq          *%rax
9096  DB  65,15,183,4,83                      ; movzwl        (%r11,%rdx,2),%eax
9097  DB  197,249,110,192                     ; vmovd         %eax,%xmm0
9098  DB  233,52,255,255,255                  ; jmpq          4038 <_sk_load_4444_avx+0x14>
9099  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
9100  DB  196,193,121,196,68,83,4,2           ; vpinsrw       $0x2,0x4(%r11,%rdx,2),%xmm0,%xmm0
9101  DB  196,193,121,110,12,83               ; vmovd         (%r11,%rdx,2),%xmm1
9102  DB  196,227,121,14,193,3                ; vpblendw      $0x3,%xmm1,%xmm0,%xmm0
9103  DB  233,23,255,255,255                  ; jmpq          4038 <_sk_load_4444_avx+0x14>
9104  DB  197,249,239,192                     ; vpxor         %xmm0,%xmm0,%xmm0
9105  DB  196,193,121,196,68,83,12,6          ; vpinsrw       $0x6,0xc(%r11,%rdx,2),%xmm0,%xmm0
9106  DB  196,193,121,196,68,83,10,5          ; vpinsrw       $0x5,0xa(%r11,%rdx,2),%xmm0,%xmm0
9107  DB  196,193,121,196,68,83,8,4           ; vpinsrw       $0x4,0x8(%r11,%rdx,2),%xmm0,%xmm0
9108  DB  196,193,122,126,12,83               ; vmovq         (%r11,%rdx,2),%xmm1
9109  DB  196,227,113,14,192,240              ; vpblendw      $0xf0,%xmm0,%xmm1,%xmm0
9110  DB  233,234,254,255,255                 ; jmpq          4038 <_sk_load_4444_avx+0x14>
9111  DB  102,144                             ; xchg          %ax,%ax
9112  DB  166                                 ; cmpsb         %es:(%rdi),%ds:(%rsi)
9113  DB  255                                 ; (bad)
9114  DB  255                                 ; (bad)
9115  DB  255,192                             ; inc           %eax
9116  DB  255                                 ; (bad)
9117  DB  255                                 ; (bad)
9118  DB  255,180,255,255,255,237,255         ; pushq         -0x120001(%rdi,%rdi,8)
9119  DB  255                                 ; (bad)
9120  DB  255,229                             ; jmpq          *%rbp
9121  DB  255                                 ; (bad)
9122  DB  255                                 ; (bad)
9123  DB  255                                 ; (bad)
9124  DB  221,255                             ; (bad)
9125  DB  255                                 ; (bad)
9126  DB  255,209                             ; callq         *%rcx
9127  DB  255                                 ; (bad)
9128  DB  255                                 ; (bad)
9129  DB  255                                 ; .byte         0xff
9130
9131PUBLIC _sk_gather_4444_avx
9132_sk_gather_4444_avx LABEL PROC
9133  DB  72,173                              ; lods          %ds:(%rsi),%rax
9134  DB  76,139,8                            ; mov           (%rax),%r9
9135  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
9136  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
9137  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
9138  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
9139  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
9140  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
9141  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
9142  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
9143  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
9144  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
9145  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
9146  DB  68,137,208                          ; mov           %r10d,%eax
9147  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
9148  DB  197,249,110,208                     ; vmovd         %eax,%xmm2
9149  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
9150  DB  73,193,234,32                       ; shr           $0x20,%r10
9151  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
9152  DB  197,233,196,200,1                   ; vpinsrw       $0x1,%eax,%xmm2,%xmm1
9153  DB  68,137,216                          ; mov           %r11d,%eax
9154  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
9155  DB  197,241,196,200,2                   ; vpinsrw       $0x2,%eax,%xmm1,%xmm1
9156  DB  196,193,249,126,194                 ; vmovq         %xmm0,%r10
9157  DB  73,193,235,32                       ; shr           $0x20,%r11
9158  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
9159  DB  197,241,196,200,3                   ; vpinsrw       $0x3,%eax,%xmm1,%xmm1
9160  DB  68,137,208                          ; mov           %r10d,%eax
9161  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
9162  DB  197,241,196,200,4                   ; vpinsrw       $0x4,%eax,%xmm1,%xmm1
9163  DB  196,195,249,22,195,1                ; vpextrq       $0x1,%xmm0,%r11
9164  DB  73,193,234,32                       ; shr           $0x20,%r10
9165  DB  67,15,183,4,81                      ; movzwl        (%r9,%r10,2),%eax
9166  DB  197,241,196,192,5                   ; vpinsrw       $0x5,%eax,%xmm1,%xmm0
9167  DB  68,137,216                          ; mov           %r11d,%eax
9168  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
9169  DB  197,249,196,192,6                   ; vpinsrw       $0x6,%eax,%xmm0,%xmm0
9170  DB  73,193,235,32                       ; shr           $0x20,%r11
9171  DB  67,15,183,4,89                      ; movzwl        (%r9,%r11,2),%eax
9172  DB  197,249,196,192,7                   ; vpinsrw       $0x7,%eax,%xmm0,%xmm0
9173  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
9174  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
9175  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
9176  DB  196,227,125,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm3
9177  DB  196,226,125,24,5,70,42,0,0          ; vbroadcastss  0x2a46(%rip),%ymm0        # 6c84 <_sk_callback_avx+0x3fe>
9178  DB  197,228,84,192                      ; vandps        %ymm0,%ymm3,%ymm0
9179  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
9180  DB  196,226,125,24,13,57,42,0,0         ; vbroadcastss  0x2a39(%rip),%ymm1        # 6c88 <_sk_callback_avx+0x402>
9181  DB  197,252,89,193                      ; vmulps        %ymm1,%ymm0,%ymm0
9182  DB  196,226,125,24,13,48,42,0,0         ; vbroadcastss  0x2a30(%rip),%ymm1        # 6c8c <_sk_callback_avx+0x406>
9183  DB  197,228,84,201                      ; vandps        %ymm1,%ymm3,%ymm1
9184  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
9185  DB  196,226,125,24,21,35,42,0,0         ; vbroadcastss  0x2a23(%rip),%ymm2        # 6c90 <_sk_callback_avx+0x40a>
9186  DB  197,244,89,202                      ; vmulps        %ymm2,%ymm1,%ymm1
9187  DB  196,226,125,24,21,26,42,0,0         ; vbroadcastss  0x2a1a(%rip),%ymm2        # 6c94 <_sk_callback_avx+0x40e>
9188  DB  197,228,84,210                      ; vandps        %ymm2,%ymm3,%ymm2
9189  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
9190  DB  196,98,125,24,5,13,42,0,0           ; vbroadcastss  0x2a0d(%rip),%ymm8        # 6c98 <_sk_callback_avx+0x412>
9191  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
9192  DB  196,98,125,24,5,3,42,0,0            ; vbroadcastss  0x2a03(%rip),%ymm8        # 6c9c <_sk_callback_avx+0x416>
9193  DB  196,193,100,84,216                  ; vandps        %ymm8,%ymm3,%ymm3
9194  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
9195  DB  196,98,125,24,5,245,41,0,0          ; vbroadcastss  0x29f5(%rip),%ymm8        # 6ca0 <_sk_callback_avx+0x41a>
9196  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
9197  DB  72,173                              ; lods          %ds:(%rsi),%rax
9198  DB  255,224                             ; jmpq          *%rax
9199
9200PUBLIC _sk_store_4444_avx
9201_sk_store_4444_avx LABEL PROC
9202  DB  72,173                              ; lods          %ds:(%rsi),%rax
9203  DB  76,139,24                           ; mov           (%rax),%r11
9204  DB  196,98,125,24,5,226,41,0,0          ; vbroadcastss  0x29e2(%rip),%ymm8        # 6ca4 <_sk_callback_avx+0x41e>
9205  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
9206  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
9207  DB  196,193,41,114,241,12               ; vpslld        $0xc,%xmm9,%xmm10
9208  DB  196,67,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm9
9209  DB  196,193,49,114,241,12               ; vpslld        $0xc,%xmm9,%xmm9
9210  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
9211  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
9212  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
9213  DB  196,193,33,114,242,8                ; vpslld        $0x8,%xmm10,%xmm11
9214  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
9215  DB  196,193,41,114,242,8                ; vpslld        $0x8,%xmm10,%xmm10
9216  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
9217  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
9218  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
9219  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
9220  DB  196,193,33,114,242,4                ; vpslld        $0x4,%xmm10,%xmm11
9221  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
9222  DB  196,193,41,114,242,4                ; vpslld        $0x4,%xmm10,%xmm10
9223  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
9224  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
9225  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
9226  DB  196,65,45,86,192                    ; vorpd         %ymm8,%ymm10,%ymm8
9227  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
9228  DB  196,67,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm9
9229  DB  196,66,57,43,193                    ; vpackusdw     %xmm9,%xmm8,%xmm8
9230  DB  77,133,192                          ; test          %r8,%r8
9231  DB  117,10                              ; jne           435b <_sk_store_4444_avx+0xa7>
9232  DB  196,65,122,127,4,83                 ; vmovdqu       %xmm8,(%r11,%rdx,2)
9233  DB  72,173                              ; lods          %ds:(%rsi),%rax
9234  DB  255,224                             ; jmpq          *%rax
9235  DB  69,137,193                          ; mov           %r8d,%r9d
9236  DB  65,128,225,7                        ; and           $0x7,%r9b
9237  DB  65,254,201                          ; dec           %r9b
9238  DB  65,128,249,6                        ; cmp           $0x6,%r9b
9239  DB  119,236                             ; ja            4357 <_sk_store_4444_avx+0xa3>
9240  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
9241  DB  76,141,21,66,0,0,0                  ; lea           0x42(%rip),%r10        # 43b8 <_sk_store_4444_avx+0x104>
9242  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
9243  DB  76,1,208                            ; add           %r10,%rax
9244  DB  255,224                             ; jmpq          *%rax
9245  DB  196,67,121,21,4,83,0                ; vpextrw       $0x0,%xmm8,(%r11,%rdx,2)
9246  DB  235,207                             ; jmp           4357 <_sk_store_4444_avx+0xa3>
9247  DB  196,67,121,21,68,83,4,2             ; vpextrw       $0x2,%xmm8,0x4(%r11,%rdx,2)
9248  DB  196,65,121,126,4,83                 ; vmovd         %xmm8,(%r11,%rdx,2)
9249  DB  235,191                             ; jmp           4357 <_sk_store_4444_avx+0xa3>
9250  DB  196,67,121,21,68,83,12,6            ; vpextrw       $0x6,%xmm8,0xc(%r11,%rdx,2)
9251  DB  196,67,121,21,68,83,10,5            ; vpextrw       $0x5,%xmm8,0xa(%r11,%rdx,2)
9252  DB  196,67,121,21,68,83,8,4             ; vpextrw       $0x4,%xmm8,0x8(%r11,%rdx,2)
9253  DB  196,65,121,214,4,83                 ; vmovq         %xmm8,(%r11,%rdx,2)
9254  DB  235,159                             ; jmp           4357 <_sk_store_4444_avx+0xa3>
9255  DB  199                                 ; (bad)
9256  DB  255                                 ; (bad)
9257  DB  255                                 ; (bad)
9258  DB  255                                 ; (bad)
9259  DB  216,255                             ; fdivr         %st(7),%st
9260  DB  255                                 ; (bad)
9261  DB  255,208                             ; callq         *%rax
9262  DB  255                                 ; (bad)
9263  DB  255                                 ; (bad)
9264  DB  255                                 ; (bad)
9265  DB  248                                 ; clc
9266  DB  255                                 ; (bad)
9267  DB  255                                 ; (bad)
9268  DB  255,240                             ; push          %rax
9269  DB  255                                 ; (bad)
9270  DB  255                                 ; (bad)
9271  DB  255                                 ; (bad)
9272  DB  232,255,255,255,224                 ; callq         ffffffffe10043d0 <_sk_callback_avx+0xffffffffe0ffdb4a>
9273  DB  255                                 ; (bad)
9274  DB  255                                 ; (bad)
9275  DB  255                                 ; .byte         0xff
9276
9277PUBLIC _sk_load_8888_avx
9278_sk_load_8888_avx LABEL PROC
9279  DB  80                                  ; push          %rax
9280  DB  73,137,201                          ; mov           %rcx,%r9
9281  DB  72,173                              ; lods          %ds:(%rsi),%rax
9282  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
9283  DB  76,3,16                             ; add           (%rax),%r10
9284  DB  77,133,192                          ; test          %r8,%r8
9285  DB  15,133,139,0,0,0                    ; jne           4479 <_sk_load_8888_avx+0xa5>
9286  DB  196,193,124,16,26                   ; vmovups       (%r10),%ymm3
9287  DB  197,124,40,21,101,43,0,0            ; vmovaps       0x2b65(%rip),%ymm10        # 6f60 <_sk_callback_avx+0x6da>
9288  DB  196,193,100,84,194                  ; vandps        %ymm10,%ymm3,%ymm0
9289  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
9290  DB  196,98,125,24,5,155,40,0,0          ; vbroadcastss  0x289b(%rip),%ymm8        # 6ca8 <_sk_callback_avx+0x422>
9291  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
9292  DB  197,241,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm1
9293  DB  196,195,125,25,217,1                ; vextractf128  $0x1,%ymm3,%xmm9
9294  DB  196,193,105,114,209,8               ; vpsrld        $0x8,%xmm9,%xmm2
9295  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9296  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
9297  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
9298  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
9299  DB  197,161,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm11
9300  DB  196,193,105,114,209,16              ; vpsrld        $0x10,%xmm9,%xmm2
9301  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
9302  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
9303  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
9304  DB  196,193,108,89,208                  ; vmulps        %ymm8,%ymm2,%ymm2
9305  DB  197,169,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm10
9306  DB  196,193,97,114,209,24               ; vpsrld        $0x18,%xmm9,%xmm3
9307  DB  196,227,45,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm10,%ymm3
9308  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
9309  DB  196,193,100,89,216                  ; vmulps        %ymm8,%ymm3,%ymm3
9310  DB  72,173                              ; lods          %ds:(%rsi),%rax
9311  DB  76,137,201                          ; mov           %r9,%rcx
9312  DB  65,89                               ; pop           %r9
9313  DB  255,224                             ; jmpq          *%rax
9314  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
9315  DB  68,41,193                           ; sub           %r8d,%ecx
9316  DB  192,225,3                           ; shl           $0x3,%cl
9317  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
9318  DB  72,211,232                          ; shr           %cl,%rax
9319  DB  196,225,249,110,192                 ; vmovq         %rax,%xmm0
9320  DB  196,226,121,48,192                  ; vpmovzxbw     %xmm0,%xmm0
9321  DB  196,226,121,0,13,15,42,0,0          ; vpshufb       0x2a0f(%rip),%xmm0,%xmm1        # 6eb0 <_sk_callback_avx+0x62a>
9322  DB  196,226,121,33,201                  ; vpmovsxbd     %xmm1,%xmm1
9323  DB  196,226,121,0,5,17,42,0,0           ; vpshufb       0x2a11(%rip),%xmm0,%xmm0        # 6ec0 <_sk_callback_avx+0x63a>
9324  DB  196,226,121,33,192                  ; vpmovsxbd     %xmm0,%xmm0
9325  DB  196,227,117,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm1,%ymm0
9326  DB  196,194,125,44,26                   ; vmaskmovps    (%r10),%ymm0,%ymm3
9327  DB  233,47,255,255,255                  ; jmpq          43f3 <_sk_load_8888_avx+0x1f>
9328
9329PUBLIC _sk_gather_8888_avx
9330_sk_gather_8888_avx LABEL PROC
9331  DB  72,173                              ; lods          %ds:(%rsi),%rax
9332  DB  76,139,8                            ; mov           (%rax),%r9
9333  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
9334  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
9335  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
9336  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
9337  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
9338  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
9339  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
9340  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
9341  DB  197,241,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm0
9342  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
9343  DB  196,193,249,126,202                 ; vmovq         %xmm1,%r10
9344  DB  68,137,208                          ; mov           %r10d,%eax
9345  DB  196,193,121,110,20,129              ; vmovd         (%r9,%rax,4),%xmm2
9346  DB  196,195,249,22,203,1                ; vpextrq       $0x1,%xmm1,%r11
9347  DB  73,193,234,32                       ; shr           $0x20,%r10
9348  DB  196,131,105,34,12,145,1             ; vpinsrd       $0x1,(%r9,%r10,4),%xmm2,%xmm1
9349  DB  68,137,216                          ; mov           %r11d,%eax
9350  DB  196,195,113,34,12,129,2             ; vpinsrd       $0x2,(%r9,%rax,4),%xmm1,%xmm1
9351  DB  196,225,249,126,192                 ; vmovq         %xmm0,%rax
9352  DB  73,193,235,32                       ; shr           $0x20,%r11
9353  DB  196,3,113,34,4,153,3                ; vpinsrd       $0x3,(%r9,%r11,4),%xmm1,%xmm8
9354  DB  65,137,194                          ; mov           %eax,%r10d
9355  DB  72,193,232,32                       ; shr           $0x20,%rax
9356  DB  196,129,121,110,12,145              ; vmovd         (%r9,%r10,4),%xmm1
9357  DB  196,195,249,22,194,1                ; vpextrq       $0x1,%xmm0,%r10
9358  DB  196,195,113,34,4,129,1              ; vpinsrd       $0x1,(%r9,%rax,4),%xmm1,%xmm0
9359  DB  68,137,208                          ; mov           %r10d,%eax
9360  DB  196,195,121,34,4,129,2              ; vpinsrd       $0x2,(%r9,%rax,4),%xmm0,%xmm0
9361  DB  73,193,234,32                       ; shr           $0x20,%r10
9362  DB  196,131,121,34,28,145,3             ; vpinsrd       $0x3,(%r9,%r10,4),%xmm0,%xmm3
9363  DB  196,227,61,24,195,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm0
9364  DB  197,124,40,21,17,42,0,0             ; vmovaps       0x2a11(%rip),%ymm10        # 6f80 <_sk_callback_avx+0x6fa>
9365  DB  196,193,124,84,194                  ; vandps        %ymm10,%ymm0,%ymm0
9366  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
9367  DB  196,98,125,24,13,43,39,0,0          ; vbroadcastss  0x272b(%rip),%ymm9        # 6cac <_sk_callback_avx+0x426>
9368  DB  196,193,124,89,193                  ; vmulps        %ymm9,%ymm0,%ymm0
9369  DB  196,193,113,114,208,8               ; vpsrld        $0x8,%xmm8,%xmm1
9370  DB  197,233,114,211,8                   ; vpsrld        $0x8,%xmm3,%xmm2
9371  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9372  DB  196,193,116,84,202                  ; vandps        %ymm10,%ymm1,%ymm1
9373  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
9374  DB  196,193,116,89,201                  ; vmulps        %ymm9,%ymm1,%ymm1
9375  DB  196,193,33,114,208,16               ; vpsrld        $0x10,%xmm8,%xmm11
9376  DB  197,233,114,211,16                  ; vpsrld        $0x10,%xmm3,%xmm2
9377  DB  196,227,37,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm11,%ymm2
9378  DB  196,193,108,84,210                  ; vandps        %ymm10,%ymm2,%ymm2
9379  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
9380  DB  196,193,108,89,209                  ; vmulps        %ymm9,%ymm2,%ymm2
9381  DB  196,193,57,114,208,24               ; vpsrld        $0x18,%xmm8,%xmm8
9382  DB  197,225,114,211,24                  ; vpsrld        $0x18,%xmm3,%xmm3
9383  DB  196,227,61,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm8,%ymm3
9384  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
9385  DB  196,193,100,89,217                  ; vmulps        %ymm9,%ymm3,%ymm3
9386  DB  72,173                              ; lods          %ds:(%rsi),%rax
9387  DB  255,224                             ; jmpq          *%rax
9388
9389PUBLIC _sk_store_8888_avx
9390_sk_store_8888_avx LABEL PROC
9391  DB  80                                  ; push          %rax
9392  DB  73,137,201                          ; mov           %rcx,%r9
9393  DB  72,173                              ; lods          %ds:(%rsi),%rax
9394  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
9395  DB  76,3,16                             ; add           (%rax),%r10
9396  DB  196,98,125,24,5,180,38,0,0          ; vbroadcastss  0x26b4(%rip),%ymm8        # 6cb0 <_sk_callback_avx+0x42a>
9397  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
9398  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
9399  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
9400  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
9401  DB  196,193,33,114,242,8                ; vpslld        $0x8,%xmm10,%xmm11
9402  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
9403  DB  196,193,41,114,242,8                ; vpslld        $0x8,%xmm10,%xmm10
9404  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
9405  DB  196,65,45,86,201                    ; vorpd         %ymm9,%ymm10,%ymm9
9406  DB  196,65,108,89,208                   ; vmulps        %ymm8,%ymm2,%ymm10
9407  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
9408  DB  196,193,33,114,242,16               ; vpslld        $0x10,%xmm10,%xmm11
9409  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
9410  DB  196,193,41,114,242,16               ; vpslld        $0x10,%xmm10,%xmm10
9411  DB  196,67,37,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm11,%ymm10
9412  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
9413  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
9414  DB  196,193,33,114,240,24               ; vpslld        $0x18,%xmm8,%xmm11
9415  DB  196,67,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm8
9416  DB  196,193,57,114,240,24               ; vpslld        $0x18,%xmm8,%xmm8
9417  DB  196,67,37,24,192,1                  ; vinsertf128   $0x1,%xmm8,%ymm11,%ymm8
9418  DB  196,65,45,86,192                    ; vorpd         %ymm8,%ymm10,%ymm8
9419  DB  196,65,53,86,192                    ; vorpd         %ymm8,%ymm9,%ymm8
9420  DB  77,133,192                          ; test          %r8,%r8
9421  DB  117,14                              ; jne           468e <_sk_store_8888_avx+0xac>
9422  DB  196,65,124,17,2                     ; vmovups       %ymm8,(%r10)
9423  DB  72,173                              ; lods          %ds:(%rsi),%rax
9424  DB  76,137,201                          ; mov           %r9,%rcx
9425  DB  65,89                               ; pop           %r9
9426  DB  255,224                             ; jmpq          *%rax
9427  DB  185,8,0,0,0                         ; mov           $0x8,%ecx
9428  DB  68,41,193                           ; sub           %r8d,%ecx
9429  DB  192,225,3                           ; shl           $0x3,%cl
9430  DB  72,199,192,255,255,255,255          ; mov           $0xffffffffffffffff,%rax
9431  DB  72,211,232                          ; shr           %cl,%rax
9432  DB  196,97,249,110,200                  ; vmovq         %rax,%xmm9
9433  DB  196,66,121,48,201                   ; vpmovzxbw     %xmm9,%xmm9
9434  DB  196,98,49,0,21,26,40,0,0            ; vpshufb       0x281a(%rip),%xmm9,%xmm10        # 6ed0 <_sk_callback_avx+0x64a>
9435  DB  196,66,121,33,210                   ; vpmovsxbd     %xmm10,%xmm10
9436  DB  196,98,49,0,13,28,40,0,0            ; vpshufb       0x281c(%rip),%xmm9,%xmm9        # 6ee0 <_sk_callback_avx+0x65a>
9437  DB  196,66,121,33,201                   ; vpmovsxbd     %xmm9,%xmm9
9438  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
9439  DB  196,66,53,46,2                      ; vmaskmovps    %ymm8,%ymm9,(%r10)
9440  DB  235,175                             ; jmp           4685 <_sk_store_8888_avx+0xa3>
9441
9442PUBLIC _sk_load_f16_avx
9443_sk_load_f16_avx LABEL PROC
9444  DB  72,129,236,152,0,0,0                ; sub           $0x98,%rsp
9445  DB  72,173                              ; lods          %ds:(%rsi),%rax
9446  DB  72,139,0                            ; mov           (%rax),%rax
9447  DB  77,133,192                          ; test          %r8,%r8
9448  DB  197,252,17,124,36,96                ; vmovups       %ymm7,0x60(%rsp)
9449  DB  197,252,17,116,36,64                ; vmovups       %ymm6,0x40(%rsp)
9450  DB  197,252,17,108,36,32                ; vmovups       %ymm5,0x20(%rsp)
9451  DB  197,254,127,36,36                   ; vmovdqu       %ymm4,(%rsp)
9452  DB  15,133,143,2,0,0                    ; jne           4991 <_sk_load_f16_avx+0x2bb>
9453  DB  197,121,16,4,208                    ; vmovupd       (%rax,%rdx,8),%xmm8
9454  DB  197,249,16,84,208,16                ; vmovupd       0x10(%rax,%rdx,8),%xmm2
9455  DB  197,249,16,76,208,32                ; vmovupd       0x20(%rax,%rdx,8),%xmm1
9456  DB  197,122,111,76,208,48               ; vmovdqu       0x30(%rax,%rdx,8),%xmm9
9457  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
9458  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
9459  DB  196,193,113,97,217                  ; vpunpcklwd    %xmm9,%xmm1,%xmm3
9460  DB  196,193,113,105,201                 ; vpunpckhwd    %xmm9,%xmm1,%xmm1
9461  DB  197,121,97,250                      ; vpunpcklwd    %xmm2,%xmm0,%xmm15
9462  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
9463  DB  197,225,97,209                      ; vpunpcklwd    %xmm1,%xmm3,%xmm2
9464  DB  197,97,105,201                      ; vpunpckhwd    %xmm1,%xmm3,%xmm9
9465  DB  197,129,108,194                     ; vpunpcklqdq   %xmm2,%xmm15,%xmm0
9466  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
9467  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
9468  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
9469  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
9470  DB  196,98,125,24,37,89,37,0,0          ; vbroadcastss  0x2559(%rip),%ymm12        # 6cb4 <_sk_callback_avx+0x42e>
9471  DB  196,193,124,84,204                  ; vandps        %ymm12,%ymm0,%ymm1
9472  DB  197,252,87,193                      ; vxorps        %ymm1,%ymm0,%ymm0
9473  DB  196,195,125,25,198,1                ; vextractf128  $0x1,%ymm0,%xmm14
9474  DB  196,98,121,24,29,69,37,0,0          ; vbroadcastss  0x2545(%rip),%xmm11        # 6cb8 <_sk_callback_avx+0x432>
9475  DB  196,193,8,87,219                    ; vxorps        %xmm11,%xmm14,%xmm3
9476  DB  196,98,121,24,45,59,37,0,0          ; vbroadcastss  0x253b(%rip),%xmm13        # 6cbc <_sk_callback_avx+0x436>
9477  DB  197,145,102,219                     ; vpcmpgtd      %xmm3,%xmm13,%xmm3
9478  DB  196,65,120,87,211                   ; vxorps        %xmm11,%xmm0,%xmm10
9479  DB  196,65,17,102,210                   ; vpcmpgtd      %xmm10,%xmm13,%xmm10
9480  DB  196,99,45,24,211,1                  ; vinsertf128   $0x1,%xmm3,%ymm10,%ymm10
9481  DB  197,225,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm3
9482  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
9483  DB  197,241,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm1
9484  DB  196,227,101,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm1
9485  DB  197,249,114,240,13                  ; vpslld        $0xd,%xmm0,%xmm0
9486  DB  196,193,97,114,246,13               ; vpslld        $0xd,%xmm14,%xmm3
9487  DB  196,227,125,24,195,1                ; vinsertf128   $0x1,%xmm3,%ymm0,%ymm0
9488  DB  197,252,86,193                      ; vorps         %ymm1,%ymm0,%ymm0
9489  DB  196,227,125,25,193,1                ; vextractf128  $0x1,%ymm0,%xmm1
9490  DB  196,226,121,24,29,241,36,0,0        ; vbroadcastss  0x24f1(%rip),%xmm3        # 6cc0 <_sk_callback_avx+0x43a>
9491  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
9492  DB  197,249,254,195                     ; vpaddd        %xmm3,%xmm0,%xmm0
9493  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
9494  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
9495  DB  196,195,125,74,198,160              ; vblendvps     %ymm10,%ymm14,%ymm0,%ymm0
9496  DB  197,129,109,202                     ; vpunpckhqdq   %xmm2,%xmm15,%xmm1
9497  DB  197,217,239,228                     ; vpxor         %xmm4,%xmm4,%xmm4
9498  DB  197,241,105,212                     ; vpunpckhwd    %xmm4,%xmm1,%xmm2
9499  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
9500  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9501  DB  196,193,116,84,212                  ; vandps        %ymm12,%ymm1,%ymm2
9502  DB  197,244,87,202                      ; vxorps        %ymm2,%ymm1,%ymm1
9503  DB  196,195,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm10
9504  DB  196,193,40,87,251                   ; vxorps        %xmm11,%xmm10,%xmm7
9505  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
9506  DB  196,193,112,87,243                  ; vxorps        %xmm11,%xmm1,%xmm6
9507  DB  197,145,102,246                     ; vpcmpgtd      %xmm6,%xmm13,%xmm6
9508  DB  196,227,77,24,247,1                 ; vinsertf128   $0x1,%xmm7,%ymm6,%ymm6
9509  DB  197,193,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm7
9510  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
9511  DB  197,233,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm2
9512  DB  196,227,69,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm7,%ymm2
9513  DB  197,241,114,241,13                  ; vpslld        $0xd,%xmm1,%xmm1
9514  DB  196,193,65,114,242,13               ; vpslld        $0xd,%xmm10,%xmm7
9515  DB  196,227,117,24,207,1                ; vinsertf128   $0x1,%xmm7,%ymm1,%ymm1
9516  DB  197,244,86,202                      ; vorps         %ymm2,%ymm1,%ymm1
9517  DB  196,227,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm2
9518  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
9519  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
9520  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9521  DB  196,195,117,74,206,96               ; vblendvps     %ymm6,%ymm14,%ymm1,%ymm1
9522  DB  196,193,57,108,209                  ; vpunpcklqdq   %xmm9,%xmm8,%xmm2
9523  DB  197,233,105,244                     ; vpunpckhwd    %xmm4,%xmm2,%xmm6
9524  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
9525  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
9526  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
9527  DB  196,193,108,84,244                  ; vandps        %ymm12,%ymm2,%ymm6
9528  DB  197,236,87,214                      ; vxorps        %ymm6,%ymm2,%ymm2
9529  DB  196,227,125,25,215,1                ; vextractf128  $0x1,%ymm2,%xmm7
9530  DB  196,193,64,87,235                   ; vxorps        %xmm11,%xmm7,%xmm5
9531  DB  197,145,102,237                     ; vpcmpgtd      %xmm5,%xmm13,%xmm5
9532  DB  196,193,104,87,227                  ; vxorps        %xmm11,%xmm2,%xmm4
9533  DB  197,145,102,228                     ; vpcmpgtd      %xmm4,%xmm13,%xmm4
9534  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
9535  DB  197,209,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm5
9536  DB  196,227,125,25,246,1                ; vextractf128  $0x1,%ymm6,%xmm6
9537  DB  197,201,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm6
9538  DB  196,227,85,24,238,1                 ; vinsertf128   $0x1,%xmm6,%ymm5,%ymm5
9539  DB  197,233,114,242,13                  ; vpslld        $0xd,%xmm2,%xmm2
9540  DB  197,201,114,247,13                  ; vpslld        $0xd,%xmm7,%xmm6
9541  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
9542  DB  197,236,86,213                      ; vorps         %ymm5,%ymm2,%ymm2
9543  DB  196,227,125,25,213,1                ; vextractf128  $0x1,%ymm2,%xmm5
9544  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
9545  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
9546  DB  196,227,109,24,213,1                ; vinsertf128   $0x1,%xmm5,%ymm2,%ymm2
9547  DB  196,195,109,74,214,64               ; vblendvps     %ymm4,%ymm14,%ymm2,%ymm2
9548  DB  196,193,57,109,225                  ; vpunpckhqdq   %xmm9,%xmm8,%xmm4
9549  DB  196,193,89,105,234                  ; vpunpckhwd    %xmm10,%xmm4,%xmm5
9550  DB  196,226,121,51,228                  ; vpmovzxwd     %xmm4,%xmm4
9551  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
9552  DB  196,193,92,84,236                   ; vandps        %ymm12,%ymm4,%ymm5
9553  DB  197,220,87,229                      ; vxorps        %ymm5,%ymm4,%ymm4
9554  DB  196,227,125,25,230,1                ; vextractf128  $0x1,%ymm4,%xmm6
9555  DB  196,193,72,87,251                   ; vxorps        %xmm11,%xmm6,%xmm7
9556  DB  197,17,102,199                      ; vpcmpgtd      %xmm7,%xmm13,%xmm8
9557  DB  196,193,88,87,251                   ; vxorps        %xmm11,%xmm4,%xmm7
9558  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
9559  DB  196,195,69,24,248,1                 ; vinsertf128   $0x1,%xmm8,%ymm7,%ymm7
9560  DB  197,185,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm8
9561  DB  196,227,125,25,237,1                ; vextractf128  $0x1,%ymm5,%xmm5
9562  DB  197,209,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm5
9563  DB  196,227,61,24,237,1                 ; vinsertf128   $0x1,%xmm5,%ymm8,%ymm5
9564  DB  197,217,114,244,13                  ; vpslld        $0xd,%xmm4,%xmm4
9565  DB  197,201,114,246,13                  ; vpslld        $0xd,%xmm6,%xmm6
9566  DB  196,227,93,24,230,1                 ; vinsertf128   $0x1,%xmm6,%ymm4,%ymm4
9567  DB  197,220,86,229                      ; vorps         %ymm5,%ymm4,%ymm4
9568  DB  196,227,125,25,229,1                ; vextractf128  $0x1,%ymm4,%xmm5
9569  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
9570  DB  197,217,254,219                     ; vpaddd        %xmm3,%xmm4,%xmm3
9571  DB  196,227,101,24,221,1                ; vinsertf128   $0x1,%xmm5,%ymm3,%ymm3
9572  DB  196,195,101,74,222,112              ; vblendvps     %ymm7,%ymm14,%ymm3,%ymm3
9573  DB  72,173                              ; lods          %ds:(%rsi),%rax
9574  DB  197,252,16,36,36                    ; vmovups       (%rsp),%ymm4
9575  DB  197,252,16,108,36,32                ; vmovups       0x20(%rsp),%ymm5
9576  DB  197,252,16,116,36,64                ; vmovups       0x40(%rsp),%ymm6
9577  DB  197,252,16,124,36,96                ; vmovups       0x60(%rsp),%ymm7
9578  DB  72,129,196,152,0,0,0                ; add           $0x98,%rsp
9579  DB  255,224                             ; jmpq          *%rax
9580  DB  197,123,16,4,208                    ; vmovsd        (%rax,%rdx,8),%xmm8
9581  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
9582  DB  73,131,248,1                        ; cmp           $0x1,%r8
9583  DB  116,79                              ; je            49f0 <_sk_load_f16_avx+0x31a>
9584  DB  197,57,22,68,208,8                  ; vmovhpd       0x8(%rax,%rdx,8),%xmm8,%xmm8
9585  DB  73,131,248,3                        ; cmp           $0x3,%r8
9586  DB  114,67                              ; jb            49f0 <_sk_load_f16_avx+0x31a>
9587  DB  197,251,16,84,208,16                ; vmovsd        0x10(%rax,%rdx,8),%xmm2
9588  DB  73,131,248,3                        ; cmp           $0x3,%r8
9589  DB  116,68                              ; je            49fd <_sk_load_f16_avx+0x327>
9590  DB  197,233,22,84,208,24                ; vmovhpd       0x18(%rax,%rdx,8),%xmm2,%xmm2
9591  DB  73,131,248,5                        ; cmp           $0x5,%r8
9592  DB  114,56                              ; jb            49fd <_sk_load_f16_avx+0x327>
9593  DB  197,251,16,76,208,32                ; vmovsd        0x20(%rax,%rdx,8),%xmm1
9594  DB  73,131,248,5                        ; cmp           $0x5,%r8
9595  DB  15,132,68,253,255,255               ; je            4719 <_sk_load_f16_avx+0x43>
9596  DB  197,241,22,76,208,40                ; vmovhpd       0x28(%rax,%rdx,8),%xmm1,%xmm1
9597  DB  73,131,248,7                        ; cmp           $0x7,%r8
9598  DB  15,130,52,253,255,255               ; jb            4719 <_sk_load_f16_avx+0x43>
9599  DB  197,122,126,76,208,48               ; vmovq         0x30(%rax,%rdx,8),%xmm9
9600  DB  233,41,253,255,255                  ; jmpq          4719 <_sk_load_f16_avx+0x43>
9601  DB  197,241,87,201                      ; vxorpd        %xmm1,%xmm1,%xmm1
9602  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
9603  DB  233,28,253,255,255                  ; jmpq          4719 <_sk_load_f16_avx+0x43>
9604  DB  197,241,87,201                      ; vxorpd        %xmm1,%xmm1,%xmm1
9605  DB  233,19,253,255,255                  ; jmpq          4719 <_sk_load_f16_avx+0x43>
9606
9607PUBLIC _sk_gather_f16_avx
9608_sk_gather_f16_avx LABEL PROC
9609  DB  72,129,236,152,0,0,0                ; sub           $0x98,%rsp
9610  DB  197,252,17,124,36,96                ; vmovups       %ymm7,0x60(%rsp)
9611  DB  197,252,17,116,36,64                ; vmovups       %ymm6,0x40(%rsp)
9612  DB  197,252,17,108,36,32                ; vmovups       %ymm5,0x20(%rsp)
9613  DB  197,254,127,36,36                   ; vmovdqu       %ymm4,(%rsp)
9614  DB  72,173                              ; lods          %ds:(%rsi),%rax
9615  DB  76,139,8                            ; mov           (%rax),%r9
9616  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
9617  DB  197,249,110,80,16                   ; vmovd         0x10(%rax),%xmm2
9618  DB  197,249,112,210,0                   ; vpshufd       $0x0,%xmm2,%xmm2
9619  DB  196,226,105,64,217                  ; vpmulld       %xmm1,%xmm2,%xmm3
9620  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
9621  DB  196,226,105,64,201                  ; vpmulld       %xmm1,%xmm2,%xmm1
9622  DB  197,254,91,208                      ; vcvttps2dq    %ymm0,%ymm2
9623  DB  196,227,125,25,208,1                ; vextractf128  $0x1,%ymm2,%xmm0
9624  DB  197,113,254,192                     ; vpaddd        %xmm0,%xmm1,%xmm8
9625  DB  197,225,254,202                     ; vpaddd        %xmm2,%xmm3,%xmm1
9626  DB  196,225,249,126,200                 ; vmovq         %xmm1,%rax
9627  DB  65,137,194                          ; mov           %eax,%r10d
9628  DB  72,193,232,32                       ; shr           $0x20,%rax
9629  DB  196,65,122,126,12,193               ; vmovq         (%r9,%rax,8),%xmm9
9630  DB  196,227,249,22,200,1                ; vpextrq       $0x1,%xmm1,%rax
9631  DB  196,1,122,126,20,209                ; vmovq         (%r9,%r10,8),%xmm10
9632  DB  65,137,194                          ; mov           %eax,%r10d
9633  DB  72,193,232,32                       ; shr           $0x20,%rax
9634  DB  196,65,122,126,28,193               ; vmovq         (%r9,%rax,8),%xmm11
9635  DB  196,97,249,126,192                  ; vmovq         %xmm8,%rax
9636  DB  196,1,122,126,36,209                ; vmovq         (%r9,%r10,8),%xmm12
9637  DB  65,137,194                          ; mov           %eax,%r10d
9638  DB  72,193,232,32                       ; shr           $0x20,%rax
9639  DB  196,65,122,126,44,193               ; vmovq         (%r9,%rax,8),%xmm13
9640  DB  196,67,249,22,195,1                 ; vpextrq       $0x1,%xmm8,%r11
9641  DB  196,1,122,126,4,209                 ; vmovq         (%r9,%r10,8),%xmm8
9642  DB  76,137,216                          ; mov           %r11,%rax
9643  DB  72,193,232,32                       ; shr           $0x20,%rax
9644  DB  196,65,122,126,52,193               ; vmovq         (%r9,%rax,8),%xmm14
9645  DB  68,137,216                          ; mov           %r11d,%eax
9646  DB  196,193,122,126,4,193               ; vmovq         (%r9,%rax,8),%xmm0
9647  DB  196,193,41,108,209                  ; vpunpcklqdq   %xmm9,%xmm10,%xmm2
9648  DB  196,193,25,108,203                  ; vpunpcklqdq   %xmm11,%xmm12,%xmm1
9649  DB  196,193,57,108,221                  ; vpunpcklqdq   %xmm13,%xmm8,%xmm3
9650  DB  196,193,121,108,198                 ; vpunpcklqdq   %xmm14,%xmm0,%xmm0
9651  DB  197,105,97,193                      ; vpunpcklwd    %xmm1,%xmm2,%xmm8
9652  DB  197,233,105,209                     ; vpunpckhwd    %xmm1,%xmm2,%xmm2
9653  DB  197,225,97,200                      ; vpunpcklwd    %xmm0,%xmm3,%xmm1
9654  DB  197,225,105,192                     ; vpunpckhwd    %xmm0,%xmm3,%xmm0
9655  DB  197,57,97,250                       ; vpunpcklwd    %xmm2,%xmm8,%xmm15
9656  DB  197,57,105,194                      ; vpunpckhwd    %xmm2,%xmm8,%xmm8
9657  DB  197,241,97,208                      ; vpunpcklwd    %xmm0,%xmm1,%xmm2
9658  DB  197,113,105,200                     ; vpunpckhwd    %xmm0,%xmm1,%xmm9
9659  DB  197,129,108,194                     ; vpunpcklqdq   %xmm2,%xmm15,%xmm0
9660  DB  197,241,239,201                     ; vpxor         %xmm1,%xmm1,%xmm1
9661  DB  197,249,105,201                     ; vpunpckhwd    %xmm1,%xmm0,%xmm1
9662  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
9663  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
9664  DB  196,98,125,24,37,178,33,0,0         ; vbroadcastss  0x21b2(%rip),%ymm12        # 6cc4 <_sk_callback_avx+0x43e>
9665  DB  196,193,124,84,204                  ; vandps        %ymm12,%ymm0,%ymm1
9666  DB  197,252,87,193                      ; vxorps        %ymm1,%ymm0,%ymm0
9667  DB  196,195,125,25,198,1                ; vextractf128  $0x1,%ymm0,%xmm14
9668  DB  196,98,121,24,29,158,33,0,0         ; vbroadcastss  0x219e(%rip),%xmm11        # 6cc8 <_sk_callback_avx+0x442>
9669  DB  196,193,8,87,219                    ; vxorps        %xmm11,%xmm14,%xmm3
9670  DB  196,98,121,24,45,148,33,0,0         ; vbroadcastss  0x2194(%rip),%xmm13        # 6ccc <_sk_callback_avx+0x446>
9671  DB  197,145,102,219                     ; vpcmpgtd      %xmm3,%xmm13,%xmm3
9672  DB  196,65,120,87,211                   ; vxorps        %xmm11,%xmm0,%xmm10
9673  DB  196,65,17,102,210                   ; vpcmpgtd      %xmm10,%xmm13,%xmm10
9674  DB  196,99,45,24,211,1                  ; vinsertf128   $0x1,%xmm3,%ymm10,%ymm10
9675  DB  197,225,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm3
9676  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
9677  DB  197,241,114,241,16                  ; vpslld        $0x10,%xmm1,%xmm1
9678  DB  196,227,101,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm1
9679  DB  197,249,114,240,13                  ; vpslld        $0xd,%xmm0,%xmm0
9680  DB  196,193,97,114,246,13               ; vpslld        $0xd,%xmm14,%xmm3
9681  DB  196,227,125,24,195,1                ; vinsertf128   $0x1,%xmm3,%ymm0,%ymm0
9682  DB  197,252,86,193                      ; vorps         %ymm1,%ymm0,%ymm0
9683  DB  196,227,125,25,193,1                ; vextractf128  $0x1,%ymm0,%xmm1
9684  DB  196,226,121,24,29,74,33,0,0         ; vbroadcastss  0x214a(%rip),%xmm3        # 6cd0 <_sk_callback_avx+0x44a>
9685  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
9686  DB  197,249,254,195                     ; vpaddd        %xmm3,%xmm0,%xmm0
9687  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
9688  DB  196,65,12,87,246                    ; vxorps        %ymm14,%ymm14,%ymm14
9689  DB  196,195,125,74,198,160              ; vblendvps     %ymm10,%ymm14,%ymm0,%ymm0
9690  DB  197,129,109,202                     ; vpunpckhqdq   %xmm2,%xmm15,%xmm1
9691  DB  197,217,239,228                     ; vpxor         %xmm4,%xmm4,%xmm4
9692  DB  197,241,105,212                     ; vpunpckhwd    %xmm4,%xmm1,%xmm2
9693  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
9694  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9695  DB  196,193,116,84,212                  ; vandps        %ymm12,%ymm1,%ymm2
9696  DB  197,244,87,202                      ; vxorps        %ymm2,%ymm1,%ymm1
9697  DB  196,195,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm10
9698  DB  196,193,40,87,251                   ; vxorps        %xmm11,%xmm10,%xmm7
9699  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
9700  DB  196,193,112,87,243                  ; vxorps        %xmm11,%xmm1,%xmm6
9701  DB  197,145,102,246                     ; vpcmpgtd      %xmm6,%xmm13,%xmm6
9702  DB  196,227,77,24,247,1                 ; vinsertf128   $0x1,%xmm7,%ymm6,%ymm6
9703  DB  197,193,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm7
9704  DB  196,227,125,25,210,1                ; vextractf128  $0x1,%ymm2,%xmm2
9705  DB  197,233,114,242,16                  ; vpslld        $0x10,%xmm2,%xmm2
9706  DB  196,227,69,24,210,1                 ; vinsertf128   $0x1,%xmm2,%ymm7,%ymm2
9707  DB  197,241,114,241,13                  ; vpslld        $0xd,%xmm1,%xmm1
9708  DB  196,193,65,114,242,13               ; vpslld        $0xd,%xmm10,%xmm7
9709  DB  196,227,117,24,207,1                ; vinsertf128   $0x1,%xmm7,%ymm1,%ymm1
9710  DB  197,244,86,202                      ; vorps         %ymm2,%ymm1,%ymm1
9711  DB  196,227,125,25,202,1                ; vextractf128  $0x1,%ymm1,%xmm2
9712  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
9713  DB  197,241,254,203                     ; vpaddd        %xmm3,%xmm1,%xmm1
9714  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9715  DB  196,195,117,74,206,96               ; vblendvps     %ymm6,%ymm14,%ymm1,%ymm1
9716  DB  196,193,57,108,209                  ; vpunpcklqdq   %xmm9,%xmm8,%xmm2
9717  DB  197,233,105,244                     ; vpunpckhwd    %xmm4,%xmm2,%xmm6
9718  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
9719  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
9720  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
9721  DB  196,193,108,84,244                  ; vandps        %ymm12,%ymm2,%ymm6
9722  DB  197,236,87,214                      ; vxorps        %ymm6,%ymm2,%ymm2
9723  DB  196,227,125,25,215,1                ; vextractf128  $0x1,%ymm2,%xmm7
9724  DB  196,193,64,87,235                   ; vxorps        %xmm11,%xmm7,%xmm5
9725  DB  197,145,102,237                     ; vpcmpgtd      %xmm5,%xmm13,%xmm5
9726  DB  196,193,104,87,227                  ; vxorps        %xmm11,%xmm2,%xmm4
9727  DB  197,145,102,228                     ; vpcmpgtd      %xmm4,%xmm13,%xmm4
9728  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
9729  DB  197,209,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm5
9730  DB  196,227,125,25,246,1                ; vextractf128  $0x1,%ymm6,%xmm6
9731  DB  197,201,114,246,16                  ; vpslld        $0x10,%xmm6,%xmm6
9732  DB  196,227,85,24,238,1                 ; vinsertf128   $0x1,%xmm6,%ymm5,%ymm5
9733  DB  197,233,114,242,13                  ; vpslld        $0xd,%xmm2,%xmm2
9734  DB  197,201,114,247,13                  ; vpslld        $0xd,%xmm7,%xmm6
9735  DB  196,227,109,24,214,1                ; vinsertf128   $0x1,%xmm6,%ymm2,%ymm2
9736  DB  197,236,86,213                      ; vorps         %ymm5,%ymm2,%ymm2
9737  DB  196,227,125,25,213,1                ; vextractf128  $0x1,%ymm2,%xmm5
9738  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
9739  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
9740  DB  196,227,109,24,213,1                ; vinsertf128   $0x1,%xmm5,%ymm2,%ymm2
9741  DB  196,195,109,74,214,64               ; vblendvps     %ymm4,%ymm14,%ymm2,%ymm2
9742  DB  196,193,57,109,225                  ; vpunpckhqdq   %xmm9,%xmm8,%xmm4
9743  DB  196,193,89,105,234                  ; vpunpckhwd    %xmm10,%xmm4,%xmm5
9744  DB  196,226,121,51,228                  ; vpmovzxwd     %xmm4,%xmm4
9745  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
9746  DB  196,193,92,84,236                   ; vandps        %ymm12,%ymm4,%ymm5
9747  DB  197,220,87,229                      ; vxorps        %ymm5,%ymm4,%ymm4
9748  DB  196,227,125,25,230,1                ; vextractf128  $0x1,%ymm4,%xmm6
9749  DB  196,193,72,87,251                   ; vxorps        %xmm11,%xmm6,%xmm7
9750  DB  197,17,102,199                      ; vpcmpgtd      %xmm7,%xmm13,%xmm8
9751  DB  196,193,88,87,251                   ; vxorps        %xmm11,%xmm4,%xmm7
9752  DB  197,145,102,255                     ; vpcmpgtd      %xmm7,%xmm13,%xmm7
9753  DB  196,195,69,24,248,1                 ; vinsertf128   $0x1,%xmm8,%ymm7,%ymm7
9754  DB  197,185,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm8
9755  DB  196,227,125,25,237,1                ; vextractf128  $0x1,%ymm5,%xmm5
9756  DB  197,209,114,245,16                  ; vpslld        $0x10,%xmm5,%xmm5
9757  DB  196,227,61,24,237,1                 ; vinsertf128   $0x1,%xmm5,%ymm8,%ymm5
9758  DB  197,217,114,244,13                  ; vpslld        $0xd,%xmm4,%xmm4
9759  DB  197,201,114,246,13                  ; vpslld        $0xd,%xmm6,%xmm6
9760  DB  196,227,93,24,230,1                 ; vinsertf128   $0x1,%xmm6,%ymm4,%ymm4
9761  DB  197,220,86,229                      ; vorps         %ymm5,%ymm4,%ymm4
9762  DB  196,227,125,25,229,1                ; vextractf128  $0x1,%ymm4,%xmm5
9763  DB  197,209,254,235                     ; vpaddd        %xmm3,%xmm5,%xmm5
9764  DB  197,217,254,219                     ; vpaddd        %xmm3,%xmm4,%xmm3
9765  DB  196,227,101,24,221,1                ; vinsertf128   $0x1,%xmm5,%ymm3,%ymm3
9766  DB  196,195,101,74,222,112              ; vblendvps     %ymm7,%ymm14,%ymm3,%ymm3
9767  DB  72,173                              ; lods          %ds:(%rsi),%rax
9768  DB  197,252,16,36,36                    ; vmovups       (%rsp),%ymm4
9769  DB  197,252,16,108,36,32                ; vmovups       0x20(%rsp),%ymm5
9770  DB  197,252,16,116,36,64                ; vmovups       0x40(%rsp),%ymm6
9771  DB  197,252,16,124,36,96                ; vmovups       0x60(%rsp),%ymm7
9772  DB  72,129,196,152,0,0,0                ; add           $0x98,%rsp
9773  DB  255,224                             ; jmpq          *%rax
9774
9775PUBLIC _sk_store_f16_avx
9776_sk_store_f16_avx LABEL PROC
9777  DB  72,129,236,216,0,0,0                ; sub           $0xd8,%rsp
9778  DB  197,252,17,188,36,160,0,0,0         ; vmovups       %ymm7,0xa0(%rsp)
9779  DB  197,252,17,180,36,128,0,0,0         ; vmovups       %ymm6,0x80(%rsp)
9780  DB  197,252,17,108,36,96                ; vmovups       %ymm5,0x60(%rsp)
9781  DB  197,252,17,100,36,64                ; vmovups       %ymm4,0x40(%rsp)
9782  DB  196,98,125,24,13,94,31,0,0          ; vbroadcastss  0x1f5e(%rip),%ymm9        # 6cd4 <_sk_callback_avx+0x44e>
9783  DB  196,65,124,84,209                   ; vandps        %ymm9,%ymm0,%ymm10
9784  DB  197,252,17,4,36                     ; vmovups       %ymm0,(%rsp)
9785  DB  196,65,124,87,218                   ; vxorps        %ymm10,%ymm0,%ymm11
9786  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
9787  DB  196,98,121,24,5,68,31,0,0           ; vbroadcastss  0x1f44(%rip),%xmm8        # 6cd8 <_sk_callback_avx+0x452>
9788  DB  196,65,57,102,236                   ; vpcmpgtd      %xmm12,%xmm8,%xmm13
9789  DB  196,65,57,102,243                   ; vpcmpgtd      %xmm11,%xmm8,%xmm14
9790  DB  196,67,13,24,237,1                  ; vinsertf128   $0x1,%xmm13,%ymm14,%ymm13
9791  DB  196,193,9,114,210,16                ; vpsrld        $0x10,%xmm10,%xmm14
9792  DB  196,67,125,25,210,1                 ; vextractf128  $0x1,%ymm10,%xmm10
9793  DB  196,193,41,114,210,16               ; vpsrld        $0x10,%xmm10,%xmm10
9794  DB  196,67,13,24,242,1                  ; vinsertf128   $0x1,%xmm10,%ymm14,%ymm14
9795  DB  196,193,33,114,211,13               ; vpsrld        $0xd,%xmm11,%xmm11
9796  DB  196,193,25,114,212,13               ; vpsrld        $0xd,%xmm12,%xmm12
9797  DB  196,98,125,24,21,11,31,0,0          ; vbroadcastss  0x1f0b(%rip),%ymm10        # 6cdc <_sk_callback_avx+0x456>
9798  DB  196,65,12,86,242                    ; vorps         %ymm10,%ymm14,%ymm14
9799  DB  196,67,125,25,247,1                 ; vextractf128  $0x1,%ymm14,%xmm15
9800  DB  196,65,1,254,228                    ; vpaddd        %xmm12,%xmm15,%xmm12
9801  DB  196,65,9,254,219                    ; vpaddd        %xmm11,%xmm14,%xmm11
9802  DB  196,67,37,24,228,1                  ; vinsertf128   $0x1,%xmm12,%ymm11,%ymm12
9803  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
9804  DB  196,99,29,74,224,208                ; vblendvps     %ymm13,%ymm0,%ymm12,%ymm12
9805  DB  196,65,116,84,233                   ; vandps        %ymm9,%ymm1,%ymm13
9806  DB  197,252,17,76,36,32                 ; vmovups       %ymm1,0x20(%rsp)
9807  DB  196,65,116,87,245                   ; vxorps        %ymm13,%ymm1,%ymm14
9808  DB  196,67,125,25,247,1                 ; vextractf128  $0x1,%ymm14,%xmm15
9809  DB  196,193,57,102,255                  ; vpcmpgtd      %xmm15,%xmm8,%xmm7
9810  DB  196,65,57,102,222                   ; vpcmpgtd      %xmm14,%xmm8,%xmm11
9811  DB  196,227,37,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm11,%ymm7
9812  DB  196,193,33,114,213,16               ; vpsrld        $0x10,%xmm13,%xmm11
9813  DB  196,99,125,25,238,1                 ; vextractf128  $0x1,%ymm13,%xmm6
9814  DB  197,201,114,214,16                  ; vpsrld        $0x10,%xmm6,%xmm6
9815  DB  196,227,37,24,246,1                 ; vinsertf128   $0x1,%xmm6,%ymm11,%ymm6
9816  DB  196,193,33,114,215,13               ; vpsrld        $0xd,%xmm15,%xmm11
9817  DB  196,193,76,86,242                   ; vorps         %ymm10,%ymm6,%ymm6
9818  DB  196,227,125,25,245,1                ; vextractf128  $0x1,%ymm6,%xmm5
9819  DB  196,193,81,254,235                  ; vpaddd        %xmm11,%xmm5,%xmm5
9820  DB  196,193,89,114,214,13               ; vpsrld        $0xd,%xmm14,%xmm4
9821  DB  197,201,254,228                     ; vpaddd        %xmm4,%xmm6,%xmm4
9822  DB  196,227,93,24,229,1                 ; vinsertf128   $0x1,%xmm5,%ymm4,%ymm4
9823  DB  196,99,93,74,232,112                ; vblendvps     %ymm7,%ymm0,%ymm4,%ymm13
9824  DB  196,193,108,84,225                  ; vandps        %ymm9,%ymm2,%ymm4
9825  DB  197,236,87,236                      ; vxorps        %ymm4,%ymm2,%ymm5
9826  DB  196,227,125,25,238,1                ; vextractf128  $0x1,%ymm5,%xmm6
9827  DB  197,185,102,254                     ; vpcmpgtd      %xmm6,%xmm8,%xmm7
9828  DB  197,57,102,221                      ; vpcmpgtd      %xmm5,%xmm8,%xmm11
9829  DB  196,227,37,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm11,%ymm7
9830  DB  197,161,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm11
9831  DB  196,227,125,25,228,1                ; vextractf128  $0x1,%ymm4,%xmm4
9832  DB  197,217,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm4
9833  DB  196,227,37,24,228,1                 ; vinsertf128   $0x1,%xmm4,%ymm11,%ymm4
9834  DB  197,201,114,214,13                  ; vpsrld        $0xd,%xmm6,%xmm6
9835  DB  196,193,92,86,226                   ; vorps         %ymm10,%ymm4,%ymm4
9836  DB  196,227,125,25,225,1                ; vextractf128  $0x1,%ymm4,%xmm1
9837  DB  197,241,254,206                     ; vpaddd        %xmm6,%xmm1,%xmm1
9838  DB  197,209,114,213,13                  ; vpsrld        $0xd,%xmm5,%xmm5
9839  DB  197,217,254,229                     ; vpaddd        %xmm5,%xmm4,%xmm4
9840  DB  196,227,93,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm4,%ymm1
9841  DB  196,99,117,74,216,112               ; vblendvps     %ymm7,%ymm0,%ymm1,%ymm11
9842  DB  196,193,100,84,225                  ; vandps        %ymm9,%ymm3,%ymm4
9843  DB  197,228,87,236                      ; vxorps        %ymm4,%ymm3,%ymm5
9844  DB  196,227,125,25,238,1                ; vextractf128  $0x1,%ymm5,%xmm6
9845  DB  197,185,102,254                     ; vpcmpgtd      %xmm6,%xmm8,%xmm7
9846  DB  197,57,102,197                      ; vpcmpgtd      %xmm5,%xmm8,%xmm8
9847  DB  196,227,61,24,255,1                 ; vinsertf128   $0x1,%xmm7,%ymm8,%ymm7
9848  DB  197,185,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm8
9849  DB  196,227,125,25,228,1                ; vextractf128  $0x1,%ymm4,%xmm4
9850  DB  197,217,114,212,16                  ; vpsrld        $0x10,%xmm4,%xmm4
9851  DB  196,227,61,24,228,1                 ; vinsertf128   $0x1,%xmm4,%ymm8,%ymm4
9852  DB  196,193,92,86,226                   ; vorps         %ymm10,%ymm4,%ymm4
9853  DB  197,201,114,214,13                  ; vpsrld        $0xd,%xmm6,%xmm6
9854  DB  196,227,125,25,225,1                ; vextractf128  $0x1,%ymm4,%xmm1
9855  DB  197,241,254,206                     ; vpaddd        %xmm6,%xmm1,%xmm1
9856  DB  197,209,114,213,13                  ; vpsrld        $0xd,%xmm5,%xmm5
9857  DB  197,217,254,229                     ; vpaddd        %xmm5,%xmm4,%xmm4
9858  DB  196,227,93,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm4,%ymm1
9859  DB  196,227,117,74,200,112              ; vblendvps     %ymm7,%ymm0,%ymm1,%ymm1
9860  DB  196,99,125,25,224,1                 ; vextractf128  $0x1,%ymm12,%xmm0
9861  DB  196,226,25,43,192                   ; vpackusdw     %xmm0,%xmm12,%xmm0
9862  DB  196,99,125,25,236,1                 ; vextractf128  $0x1,%ymm13,%xmm4
9863  DB  196,226,17,43,228                   ; vpackusdw     %xmm4,%xmm13,%xmm4
9864  DB  196,99,125,25,221,1                 ; vextractf128  $0x1,%ymm11,%xmm5
9865  DB  196,226,33,43,245                   ; vpackusdw     %xmm5,%xmm11,%xmm6
9866  DB  196,227,125,25,205,1                ; vextractf128  $0x1,%ymm1,%xmm5
9867  DB  196,226,113,43,205                  ; vpackusdw     %xmm5,%xmm1,%xmm1
9868  DB  197,249,97,236                      ; vpunpcklwd    %xmm4,%xmm0,%xmm5
9869  DB  197,249,105,196                     ; vpunpckhwd    %xmm4,%xmm0,%xmm0
9870  DB  197,201,97,225                      ; vpunpcklwd    %xmm1,%xmm6,%xmm4
9871  DB  197,201,105,201                     ; vpunpckhwd    %xmm1,%xmm6,%xmm1
9872  DB  197,81,98,220                       ; vpunpckldq    %xmm4,%xmm5,%xmm11
9873  DB  197,81,106,212                      ; vpunpckhdq    %xmm4,%xmm5,%xmm10
9874  DB  197,121,98,201                      ; vpunpckldq    %xmm1,%xmm0,%xmm9
9875  DB  197,121,106,193                     ; vpunpckhdq    %xmm1,%xmm0,%xmm8
9876  DB  72,173                              ; lods          %ds:(%rsi),%rax
9877  DB  72,139,0                            ; mov           (%rax),%rax
9878  DB  77,133,192                          ; test          %r8,%r8
9879  DB  117,75                              ; jne           4fb8 <_sk_store_f16_avx+0x270>
9880  DB  197,120,17,28,208                   ; vmovups       %xmm11,(%rax,%rdx,8)
9881  DB  197,120,17,84,208,16                ; vmovups       %xmm10,0x10(%rax,%rdx,8)
9882  DB  197,120,17,76,208,32                ; vmovups       %xmm9,0x20(%rax,%rdx,8)
9883  DB  197,122,127,68,208,48               ; vmovdqu       %xmm8,0x30(%rax,%rdx,8)
9884  DB  72,173                              ; lods          %ds:(%rsi),%rax
9885  DB  197,252,16,4,36                     ; vmovups       (%rsp),%ymm0
9886  DB  197,252,16,76,36,32                 ; vmovups       0x20(%rsp),%ymm1
9887  DB  197,252,16,100,36,64                ; vmovups       0x40(%rsp),%ymm4
9888  DB  197,252,16,108,36,96                ; vmovups       0x60(%rsp),%ymm5
9889  DB  197,252,16,180,36,128,0,0,0         ; vmovups       0x80(%rsp),%ymm6
9890  DB  197,252,16,188,36,160,0,0,0         ; vmovups       0xa0(%rsp),%ymm7
9891  DB  72,129,196,216,0,0,0                ; add           $0xd8,%rsp
9892  DB  255,224                             ; jmpq          *%rax
9893  DB  197,121,214,28,208                  ; vmovq         %xmm11,(%rax,%rdx,8)
9894  DB  73,131,248,1                        ; cmp           $0x1,%r8
9895  DB  116,193                             ; je            4f84 <_sk_store_f16_avx+0x23c>
9896  DB  197,121,23,92,208,8                 ; vmovhpd       %xmm11,0x8(%rax,%rdx,8)
9897  DB  73,131,248,3                        ; cmp           $0x3,%r8
9898  DB  114,181                             ; jb            4f84 <_sk_store_f16_avx+0x23c>
9899  DB  197,121,214,84,208,16               ; vmovq         %xmm10,0x10(%rax,%rdx,8)
9900  DB  116,173                             ; je            4f84 <_sk_store_f16_avx+0x23c>
9901  DB  197,121,23,84,208,24                ; vmovhpd       %xmm10,0x18(%rax,%rdx,8)
9902  DB  73,131,248,5                        ; cmp           $0x5,%r8
9903  DB  114,161                             ; jb            4f84 <_sk_store_f16_avx+0x23c>
9904  DB  197,121,214,76,208,32               ; vmovq         %xmm9,0x20(%rax,%rdx,8)
9905  DB  116,153                             ; je            4f84 <_sk_store_f16_avx+0x23c>
9906  DB  197,121,23,76,208,40                ; vmovhpd       %xmm9,0x28(%rax,%rdx,8)
9907  DB  73,131,248,7                        ; cmp           $0x7,%r8
9908  DB  114,141                             ; jb            4f84 <_sk_store_f16_avx+0x23c>
9909  DB  197,121,214,68,208,48               ; vmovq         %xmm8,0x30(%rax,%rdx,8)
9910  DB  235,133                             ; jmp           4f84 <_sk_store_f16_avx+0x23c>
9911
9912PUBLIC _sk_load_u16_be_avx
9913_sk_load_u16_be_avx LABEL PROC
9914  DB  72,173                              ; lods          %ds:(%rsi),%rax
9915  DB  76,139,8                            ; mov           (%rax),%r9
9916  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
9917  DB  77,133,192                          ; test          %r8,%r8
9918  DB  15,133,253,0,0,0                    ; jne           5112 <_sk_load_u16_be_avx+0x113>
9919  DB  196,65,121,16,4,65                  ; vmovupd       (%r9,%rax,2),%xmm8
9920  DB  196,193,121,16,84,65,16             ; vmovupd       0x10(%r9,%rax,2),%xmm2
9921  DB  196,193,121,16,92,65,32             ; vmovupd       0x20(%r9,%rax,2),%xmm3
9922  DB  196,65,122,111,76,65,48             ; vmovdqu       0x30(%r9,%rax,2),%xmm9
9923  DB  197,185,97,194                      ; vpunpcklwd    %xmm2,%xmm8,%xmm0
9924  DB  197,185,105,210                     ; vpunpckhwd    %xmm2,%xmm8,%xmm2
9925  DB  196,193,97,97,201                   ; vpunpcklwd    %xmm9,%xmm3,%xmm1
9926  DB  196,193,97,105,217                  ; vpunpckhwd    %xmm9,%xmm3,%xmm3
9927  DB  197,121,97,202                      ; vpunpcklwd    %xmm2,%xmm0,%xmm9
9928  DB  197,121,105,194                     ; vpunpckhwd    %xmm2,%xmm0,%xmm8
9929  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
9930  DB  197,113,105,227                     ; vpunpckhwd    %xmm3,%xmm1,%xmm12
9931  DB  197,177,108,194                     ; vpunpcklqdq   %xmm2,%xmm9,%xmm0
9932  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
9933  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
9934  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
9935  DB  196,65,41,239,210                   ; vpxor         %xmm10,%xmm10,%xmm10
9936  DB  196,193,121,105,202                 ; vpunpckhwd    %xmm10,%xmm0,%xmm1
9937  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
9938  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
9939  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
9940  DB  196,98,125,24,29,90,28,0,0          ; vbroadcastss  0x1c5a(%rip),%ymm11        # 6ce0 <_sk_callback_avx+0x45a>
9941  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
9942  DB  197,177,109,202                     ; vpunpckhqdq   %xmm2,%xmm9,%xmm1
9943  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
9944  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
9945  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
9946  DB  196,193,113,105,210                 ; vpunpckhwd    %xmm10,%xmm1,%xmm2
9947  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
9948  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
9949  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
9950  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
9951  DB  196,193,57,108,212                  ; vpunpcklqdq   %xmm12,%xmm8,%xmm2
9952  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
9953  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
9954  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
9955  DB  196,193,105,105,218                 ; vpunpckhwd    %xmm10,%xmm2,%xmm3
9956  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
9957  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
9958  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
9959  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
9960  DB  196,193,57,109,220                  ; vpunpckhqdq   %xmm12,%xmm8,%xmm3
9961  DB  197,185,113,243,8                   ; vpsllw        $0x8,%xmm3,%xmm8
9962  DB  197,225,113,211,8                   ; vpsrlw        $0x8,%xmm3,%xmm3
9963  DB  197,185,235,219                     ; vpor          %xmm3,%xmm8,%xmm3
9964  DB  196,65,97,105,194                   ; vpunpckhwd    %xmm10,%xmm3,%xmm8
9965  DB  196,226,121,51,219                  ; vpmovzxwd     %xmm3,%xmm3
9966  DB  196,195,101,24,216,1                ; vinsertf128   $0x1,%xmm8,%ymm3,%ymm3
9967  DB  197,252,91,219                      ; vcvtdq2ps     %ymm3,%ymm3
9968  DB  196,193,100,89,219                  ; vmulps        %ymm11,%ymm3,%ymm3
9969  DB  72,173                              ; lods          %ds:(%rsi),%rax
9970  DB  255,224                             ; jmpq          *%rax
9971  DB  196,65,123,16,4,65                  ; vmovsd        (%r9,%rax,2),%xmm8
9972  DB  196,65,49,239,201                   ; vpxor         %xmm9,%xmm9,%xmm9
9973  DB  73,131,248,1                        ; cmp           $0x1,%r8
9974  DB  116,85                              ; je            5178 <_sk_load_u16_be_avx+0x179>
9975  DB  196,65,57,22,68,65,8                ; vmovhpd       0x8(%r9,%rax,2),%xmm8,%xmm8
9976  DB  73,131,248,3                        ; cmp           $0x3,%r8
9977  DB  114,72                              ; jb            5178 <_sk_load_u16_be_avx+0x179>
9978  DB  196,193,123,16,84,65,16             ; vmovsd        0x10(%r9,%rax,2),%xmm2
9979  DB  73,131,248,3                        ; cmp           $0x3,%r8
9980  DB  116,72                              ; je            5185 <_sk_load_u16_be_avx+0x186>
9981  DB  196,193,105,22,84,65,24             ; vmovhpd       0x18(%r9,%rax,2),%xmm2,%xmm2
9982  DB  73,131,248,5                        ; cmp           $0x5,%r8
9983  DB  114,59                              ; jb            5185 <_sk_load_u16_be_avx+0x186>
9984  DB  196,193,123,16,92,65,32             ; vmovsd        0x20(%r9,%rax,2),%xmm3
9985  DB  73,131,248,5                        ; cmp           $0x5,%r8
9986  DB  15,132,213,254,255,255              ; je            5030 <_sk_load_u16_be_avx+0x31>
9987  DB  196,193,97,22,92,65,40              ; vmovhpd       0x28(%r9,%rax,2),%xmm3,%xmm3
9988  DB  73,131,248,7                        ; cmp           $0x7,%r8
9989  DB  15,130,196,254,255,255              ; jb            5030 <_sk_load_u16_be_avx+0x31>
9990  DB  196,65,122,126,76,65,48             ; vmovq         0x30(%r9,%rax,2),%xmm9
9991  DB  233,184,254,255,255                 ; jmpq          5030 <_sk_load_u16_be_avx+0x31>
9992  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
9993  DB  197,233,87,210                      ; vxorpd        %xmm2,%xmm2,%xmm2
9994  DB  233,171,254,255,255                 ; jmpq          5030 <_sk_load_u16_be_avx+0x31>
9995  DB  197,225,87,219                      ; vxorpd        %xmm3,%xmm3,%xmm3
9996  DB  233,162,254,255,255                 ; jmpq          5030 <_sk_load_u16_be_avx+0x31>
9997
9998PUBLIC _sk_load_rgb_u16_be_avx
9999_sk_load_rgb_u16_be_avx LABEL PROC
10000  DB  72,173                              ; lods          %ds:(%rsi),%rax
10001  DB  76,139,8                            ; mov           (%rax),%r9
10002  DB  72,141,4,82                         ; lea           (%rdx,%rdx,2),%rax
10003  DB  77,133,192                          ; test          %r8,%r8
10004  DB  15,133,243,0,0,0                    ; jne           5293 <_sk_load_rgb_u16_be_avx+0x105>
10005  DB  196,193,122,111,4,65                ; vmovdqu       (%r9,%rax,2),%xmm0
10006  DB  196,193,122,111,84,65,12            ; vmovdqu       0xc(%r9,%rax,2),%xmm2
10007  DB  196,193,122,111,76,65,24            ; vmovdqu       0x18(%r9,%rax,2),%xmm1
10008  DB  196,193,122,111,92,65,32            ; vmovdqu       0x20(%r9,%rax,2),%xmm3
10009  DB  197,225,115,219,4                   ; vpsrldq       $0x4,%xmm3,%xmm3
10010  DB  197,185,115,216,6                   ; vpsrldq       $0x6,%xmm0,%xmm8
10011  DB  197,177,115,218,6                   ; vpsrldq       $0x6,%xmm2,%xmm9
10012  DB  197,161,115,217,6                   ; vpsrldq       $0x6,%xmm1,%xmm11
10013  DB  197,169,115,219,6                   ; vpsrldq       $0x6,%xmm3,%xmm10
10014  DB  197,249,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm0
10015  DB  196,193,57,97,209                   ; vpunpcklwd    %xmm9,%xmm8,%xmm2
10016  DB  197,241,97,203                      ; vpunpcklwd    %xmm3,%xmm1,%xmm1
10017  DB  196,193,33,97,218                   ; vpunpcklwd    %xmm10,%xmm11,%xmm3
10018  DB  197,121,97,194                      ; vpunpcklwd    %xmm2,%xmm0,%xmm8
10019  DB  197,121,105,202                     ; vpunpckhwd    %xmm2,%xmm0,%xmm9
10020  DB  197,241,97,211                      ; vpunpcklwd    %xmm3,%xmm1,%xmm2
10021  DB  197,113,105,211                     ; vpunpckhwd    %xmm3,%xmm1,%xmm10
10022  DB  197,185,108,194                     ; vpunpcklqdq   %xmm2,%xmm8,%xmm0
10023  DB  197,241,113,240,8                   ; vpsllw        $0x8,%xmm0,%xmm1
10024  DB  197,249,113,208,8                   ; vpsrlw        $0x8,%xmm0,%xmm0
10025  DB  197,241,235,192                     ; vpor          %xmm0,%xmm1,%xmm0
10026  DB  196,65,25,239,228                   ; vpxor         %xmm12,%xmm12,%xmm12
10027  DB  196,193,121,105,204                 ; vpunpckhwd    %xmm12,%xmm0,%xmm1
10028  DB  196,226,121,51,192                  ; vpmovzxwd     %xmm0,%xmm0
10029  DB  196,227,125,24,193,1                ; vinsertf128   $0x1,%xmm1,%ymm0,%ymm0
10030  DB  197,252,91,192                      ; vcvtdq2ps     %ymm0,%ymm0
10031  DB  196,98,125,24,29,186,26,0,0         ; vbroadcastss  0x1aba(%rip),%ymm11        # 6ce4 <_sk_callback_avx+0x45e>
10032  DB  196,193,124,89,195                  ; vmulps        %ymm11,%ymm0,%ymm0
10033  DB  197,185,109,202                     ; vpunpckhqdq   %xmm2,%xmm8,%xmm1
10034  DB  197,233,113,241,8                   ; vpsllw        $0x8,%xmm1,%xmm2
10035  DB  197,241,113,209,8                   ; vpsrlw        $0x8,%xmm1,%xmm1
10036  DB  197,233,235,201                     ; vpor          %xmm1,%xmm2,%xmm1
10037  DB  196,193,113,105,212                 ; vpunpckhwd    %xmm12,%xmm1,%xmm2
10038  DB  196,226,121,51,201                  ; vpmovzxwd     %xmm1,%xmm1
10039  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
10040  DB  197,252,91,201                      ; vcvtdq2ps     %ymm1,%ymm1
10041  DB  196,193,116,89,203                  ; vmulps        %ymm11,%ymm1,%ymm1
10042  DB  196,193,49,108,210                  ; vpunpcklqdq   %xmm10,%xmm9,%xmm2
10043  DB  197,225,113,242,8                   ; vpsllw        $0x8,%xmm2,%xmm3
10044  DB  197,233,113,210,8                   ; vpsrlw        $0x8,%xmm2,%xmm2
10045  DB  197,225,235,210                     ; vpor          %xmm2,%xmm3,%xmm2
10046  DB  196,193,105,105,220                 ; vpunpckhwd    %xmm12,%xmm2,%xmm3
10047  DB  196,226,121,51,210                  ; vpmovzxwd     %xmm2,%xmm2
10048  DB  196,227,109,24,211,1                ; vinsertf128   $0x1,%xmm3,%ymm2,%ymm2
10049  DB  197,252,91,210                      ; vcvtdq2ps     %ymm2,%ymm2
10050  DB  196,193,108,89,211                  ; vmulps        %ymm11,%ymm2,%ymm2
10051  DB  72,173                              ; lods          %ds:(%rsi),%rax
10052  DB  196,226,125,24,29,87,26,0,0         ; vbroadcastss  0x1a57(%rip),%ymm3        # 6ce8 <_sk_callback_avx+0x462>
10053  DB  255,224                             ; jmpq          *%rax
10054  DB  196,193,121,110,4,65                ; vmovd         (%r9,%rax,2),%xmm0
10055  DB  196,193,121,196,68,65,4,2           ; vpinsrw       $0x2,0x4(%r9,%rax,2),%xmm0,%xmm0
10056  DB  73,131,248,1                        ; cmp           $0x1,%r8
10057  DB  117,5                               ; jne           52ac <_sk_load_rgb_u16_be_avx+0x11e>
10058  DB  233,40,255,255,255                  ; jmpq          51d4 <_sk_load_rgb_u16_be_avx+0x46>
10059  DB  196,193,121,110,76,65,6             ; vmovd         0x6(%r9,%rax,2),%xmm1
10060  DB  196,65,113,196,68,65,10,2           ; vpinsrw       $0x2,0xa(%r9,%rax,2),%xmm1,%xmm8
10061  DB  73,131,248,3                        ; cmp           $0x3,%r8
10062  DB  114,26                              ; jb            52db <_sk_load_rgb_u16_be_avx+0x14d>
10063  DB  196,193,121,110,76,65,12            ; vmovd         0xc(%r9,%rax,2),%xmm1
10064  DB  196,193,113,196,84,65,16,2          ; vpinsrw       $0x2,0x10(%r9,%rax,2),%xmm1,%xmm2
10065  DB  73,131,248,3                        ; cmp           $0x3,%r8
10066  DB  117,10                              ; jne           52e0 <_sk_load_rgb_u16_be_avx+0x152>
10067  DB  233,249,254,255,255                 ; jmpq          51d4 <_sk_load_rgb_u16_be_avx+0x46>
10068  DB  233,244,254,255,255                 ; jmpq          51d4 <_sk_load_rgb_u16_be_avx+0x46>
10069  DB  196,193,121,110,76,65,18            ; vmovd         0x12(%r9,%rax,2),%xmm1
10070  DB  196,65,113,196,76,65,22,2           ; vpinsrw       $0x2,0x16(%r9,%rax,2),%xmm1,%xmm9
10071  DB  73,131,248,5                        ; cmp           $0x5,%r8
10072  DB  114,26                              ; jb            530f <_sk_load_rgb_u16_be_avx+0x181>
10073  DB  196,193,121,110,76,65,24            ; vmovd         0x18(%r9,%rax,2),%xmm1
10074  DB  196,193,113,196,76,65,28,2          ; vpinsrw       $0x2,0x1c(%r9,%rax,2),%xmm1,%xmm1
10075  DB  73,131,248,5                        ; cmp           $0x5,%r8
10076  DB  117,10                              ; jne           5314 <_sk_load_rgb_u16_be_avx+0x186>
10077  DB  233,197,254,255,255                 ; jmpq          51d4 <_sk_load_rgb_u16_be_avx+0x46>
10078  DB  233,192,254,255,255                 ; jmpq          51d4 <_sk_load_rgb_u16_be_avx+0x46>
10079  DB  196,193,121,110,92,65,30            ; vmovd         0x1e(%r9,%rax,2),%xmm3
10080  DB  196,65,97,196,92,65,34,2            ; vpinsrw       $0x2,0x22(%r9,%rax,2),%xmm3,%xmm11
10081  DB  73,131,248,7                        ; cmp           $0x7,%r8
10082  DB  114,20                              ; jb            533d <_sk_load_rgb_u16_be_avx+0x1af>
10083  DB  196,193,121,110,92,65,36            ; vmovd         0x24(%r9,%rax,2),%xmm3
10084  DB  196,193,97,196,92,65,40,2           ; vpinsrw       $0x2,0x28(%r9,%rax,2),%xmm3,%xmm3
10085  DB  233,151,254,255,255                 ; jmpq          51d4 <_sk_load_rgb_u16_be_avx+0x46>
10086  DB  233,146,254,255,255                 ; jmpq          51d4 <_sk_load_rgb_u16_be_avx+0x46>
10087
10088PUBLIC _sk_store_u16_be_avx
10089_sk_store_u16_be_avx LABEL PROC
10090  DB  72,173                              ; lods          %ds:(%rsi),%rax
10091  DB  76,139,8                            ; mov           (%rax),%r9
10092  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
10093  DB  196,98,125,24,5,148,25,0,0          ; vbroadcastss  0x1994(%rip),%ymm8        # 6cec <_sk_callback_avx+0x466>
10094  DB  196,65,124,89,200                   ; vmulps        %ymm8,%ymm0,%ymm9
10095  DB  196,65,125,91,201                   ; vcvtps2dq     %ymm9,%ymm9
10096  DB  196,67,125,25,202,1                 ; vextractf128  $0x1,%ymm9,%xmm10
10097  DB  196,66,49,43,202                    ; vpackusdw     %xmm10,%xmm9,%xmm9
10098  DB  196,193,41,113,241,8                ; vpsllw        $0x8,%xmm9,%xmm10
10099  DB  196,193,49,113,209,8                ; vpsrlw        $0x8,%xmm9,%xmm9
10100  DB  196,65,41,235,201                   ; vpor          %xmm9,%xmm10,%xmm9
10101  DB  196,65,116,89,208                   ; vmulps        %ymm8,%ymm1,%ymm10
10102  DB  196,65,125,91,210                   ; vcvtps2dq     %ymm10,%ymm10
10103  DB  196,67,125,25,211,1                 ; vextractf128  $0x1,%ymm10,%xmm11
10104  DB  196,66,41,43,211                    ; vpackusdw     %xmm11,%xmm10,%xmm10
10105  DB  196,193,33,113,242,8                ; vpsllw        $0x8,%xmm10,%xmm11
10106  DB  196,193,41,113,210,8                ; vpsrlw        $0x8,%xmm10,%xmm10
10107  DB  196,65,33,235,210                   ; vpor          %xmm10,%xmm11,%xmm10
10108  DB  196,65,108,89,216                   ; vmulps        %ymm8,%ymm2,%ymm11
10109  DB  196,65,125,91,219                   ; vcvtps2dq     %ymm11,%ymm11
10110  DB  196,67,125,25,220,1                 ; vextractf128  $0x1,%ymm11,%xmm12
10111  DB  196,66,33,43,220                    ; vpackusdw     %xmm12,%xmm11,%xmm11
10112  DB  196,193,25,113,243,8                ; vpsllw        $0x8,%xmm11,%xmm12
10113  DB  196,193,33,113,211,8                ; vpsrlw        $0x8,%xmm11,%xmm11
10114  DB  196,65,25,235,219                   ; vpor          %xmm11,%xmm12,%xmm11
10115  DB  196,65,100,89,192                   ; vmulps        %ymm8,%ymm3,%ymm8
10116  DB  196,65,125,91,192                   ; vcvtps2dq     %ymm8,%ymm8
10117  DB  196,67,125,25,196,1                 ; vextractf128  $0x1,%ymm8,%xmm12
10118  DB  196,66,57,43,196                    ; vpackusdw     %xmm12,%xmm8,%xmm8
10119  DB  196,193,25,113,240,8                ; vpsllw        $0x8,%xmm8,%xmm12
10120  DB  196,193,57,113,208,8                ; vpsrlw        $0x8,%xmm8,%xmm8
10121  DB  196,65,25,235,192                   ; vpor          %xmm8,%xmm12,%xmm8
10122  DB  196,65,49,97,226                    ; vpunpcklwd    %xmm10,%xmm9,%xmm12
10123  DB  196,65,49,105,234                   ; vpunpckhwd    %xmm10,%xmm9,%xmm13
10124  DB  196,65,33,97,200                    ; vpunpcklwd    %xmm8,%xmm11,%xmm9
10125  DB  196,65,33,105,192                   ; vpunpckhwd    %xmm8,%xmm11,%xmm8
10126  DB  196,65,25,98,217                    ; vpunpckldq    %xmm9,%xmm12,%xmm11
10127  DB  196,65,25,106,209                   ; vpunpckhdq    %xmm9,%xmm12,%xmm10
10128  DB  196,65,17,98,200                    ; vpunpckldq    %xmm8,%xmm13,%xmm9
10129  DB  196,65,17,106,192                   ; vpunpckhdq    %xmm8,%xmm13,%xmm8
10130  DB  77,133,192                          ; test          %r8,%r8
10131  DB  117,31                              ; jne           543c <_sk_store_u16_be_avx+0xfa>
10132  DB  196,65,120,17,28,65                 ; vmovups       %xmm11,(%r9,%rax,2)
10133  DB  196,65,120,17,84,65,16              ; vmovups       %xmm10,0x10(%r9,%rax,2)
10134  DB  196,65,120,17,76,65,32              ; vmovups       %xmm9,0x20(%r9,%rax,2)
10135  DB  196,65,122,127,68,65,48             ; vmovdqu       %xmm8,0x30(%r9,%rax,2)
10136  DB  72,173                              ; lods          %ds:(%rsi),%rax
10137  DB  255,224                             ; jmpq          *%rax
10138  DB  196,65,121,214,28,65                ; vmovq         %xmm11,(%r9,%rax,2)
10139  DB  73,131,248,1                        ; cmp           $0x1,%r8
10140  DB  116,240                             ; je            5438 <_sk_store_u16_be_avx+0xf6>
10141  DB  196,65,121,23,92,65,8               ; vmovhpd       %xmm11,0x8(%r9,%rax,2)
10142  DB  73,131,248,3                        ; cmp           $0x3,%r8
10143  DB  114,227                             ; jb            5438 <_sk_store_u16_be_avx+0xf6>
10144  DB  196,65,121,214,84,65,16             ; vmovq         %xmm10,0x10(%r9,%rax,2)
10145  DB  116,218                             ; je            5438 <_sk_store_u16_be_avx+0xf6>
10146  DB  196,65,121,23,84,65,24              ; vmovhpd       %xmm10,0x18(%r9,%rax,2)
10147  DB  73,131,248,5                        ; cmp           $0x5,%r8
10148  DB  114,205                             ; jb            5438 <_sk_store_u16_be_avx+0xf6>
10149  DB  196,65,121,214,76,65,32             ; vmovq         %xmm9,0x20(%r9,%rax,2)
10150  DB  116,196                             ; je            5438 <_sk_store_u16_be_avx+0xf6>
10151  DB  196,65,121,23,76,65,40              ; vmovhpd       %xmm9,0x28(%r9,%rax,2)
10152  DB  73,131,248,7                        ; cmp           $0x7,%r8
10153  DB  114,183                             ; jb            5438 <_sk_store_u16_be_avx+0xf6>
10154  DB  196,65,121,214,68,65,48             ; vmovq         %xmm8,0x30(%r9,%rax,2)
10155  DB  235,174                             ; jmp           5438 <_sk_store_u16_be_avx+0xf6>
10156
10157PUBLIC _sk_load_f32_avx
10158_sk_load_f32_avx LABEL PROC
10159  DB  72,173                              ; lods          %ds:(%rsi),%rax
10160  DB  73,131,248,7                        ; cmp           $0x7,%r8
10161  DB  119,110                             ; ja            5500 <_sk_load_f32_avx+0x76>
10162  DB  76,139,8                            ; mov           (%rax),%r9
10163  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
10164  DB  76,141,29,132,0,0,0                 ; lea           0x84(%rip),%r11        # 5528 <_sk_load_f32_avx+0x9e>
10165  DB  75,99,4,131                         ; movslq        (%r11,%r8,4),%rax
10166  DB  76,1,216                            ; add           %r11,%rax
10167  DB  255,224                             ; jmpq          *%rax
10168  DB  196,3,125,24,68,145,112,1           ; vinsertf128   $0x1,0x70(%r9,%r10,4),%ymm0,%ymm8
10169  DB  196,131,125,24,92,145,96,1          ; vinsertf128   $0x1,0x60(%r9,%r10,4),%ymm0,%ymm3
10170  DB  196,131,125,24,76,145,80,1          ; vinsertf128   $0x1,0x50(%r9,%r10,4),%ymm0,%ymm1
10171  DB  196,131,125,24,84,145,64,1          ; vinsertf128   $0x1,0x40(%r9,%r10,4),%ymm0,%ymm2
10172  DB  196,129,121,16,68,145,48            ; vmovupd       0x30(%r9,%r10,4),%xmm0
10173  DB  196,195,125,13,192,12               ; vblendpd      $0xc,%ymm8,%ymm0,%ymm0
10174  DB  196,1,121,16,68,145,32              ; vmovupd       0x20(%r9,%r10,4),%xmm8
10175  DB  196,99,61,13,203,12                 ; vblendpd      $0xc,%ymm3,%ymm8,%ymm9
10176  DB  196,129,121,16,92,145,16            ; vmovupd       0x10(%r9,%r10,4),%xmm3
10177  DB  196,99,101,13,209,12                ; vblendpd      $0xc,%ymm1,%ymm3,%ymm10
10178  DB  196,129,121,16,12,145               ; vmovupd       (%r9,%r10,4),%xmm1
10179  DB  196,227,117,13,202,12               ; vblendpd      $0xc,%ymm2,%ymm1,%ymm1
10180  DB  196,193,116,20,210                  ; vunpcklps     %ymm10,%ymm1,%ymm2
10181  DB  196,193,116,21,218                  ; vunpckhps     %ymm10,%ymm1,%ymm3
10182  DB  197,180,20,200                      ; vunpcklps     %ymm0,%ymm9,%ymm1
10183  DB  197,52,21,192                       ; vunpckhps     %ymm0,%ymm9,%ymm8
10184  DB  197,237,20,193                      ; vunpcklpd     %ymm1,%ymm2,%ymm0
10185  DB  197,237,21,201                      ; vunpckhpd     %ymm1,%ymm2,%ymm1
10186  DB  196,193,101,20,208                  ; vunpcklpd     %ymm8,%ymm3,%ymm2
10187  DB  196,193,101,21,216                  ; vunpckhpd     %ymm8,%ymm3,%ymm3
10188  DB  72,173                              ; lods          %ds:(%rsi),%rax
10189  DB  255,224                             ; jmpq          *%rax
10190  DB  133,255                             ; test          %edi,%edi
10191  DB  255                                 ; (bad)
10192  DB  255,204                             ; dec           %esp
10193  DB  255                                 ; (bad)
10194  DB  255                                 ; (bad)
10195  DB  255                                 ; (bad)
10196  DB  191,255,255,255,178                 ; mov           $0xb2ffffff,%edi
10197  DB  255                                 ; (bad)
10198  DB  255                                 ; (bad)
10199  DB  255,165,255,255,255,157             ; jmpq          *-0x62000001(%rbp)
10200  DB  255                                 ; (bad)
10201  DB  255                                 ; (bad)
10202  DB  255,149,255,255,255,141             ; callq         *-0x72000001(%rbp)
10203  DB  255                                 ; (bad)
10204  DB  255                                 ; (bad)
10205  DB  255                                 ; .byte         0xff
10206
10207PUBLIC _sk_store_f32_avx
10208_sk_store_f32_avx LABEL PROC
10209  DB  72,173                              ; lods          %ds:(%rsi),%rax
10210  DB  76,139,8                            ; mov           (%rax),%r9
10211  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
10212  DB  197,124,20,193                      ; vunpcklps     %ymm1,%ymm0,%ymm8
10213  DB  197,124,21,217                      ; vunpckhps     %ymm1,%ymm0,%ymm11
10214  DB  197,108,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm9
10215  DB  197,108,21,227                      ; vunpckhps     %ymm3,%ymm2,%ymm12
10216  DB  196,65,61,20,209                    ; vunpcklpd     %ymm9,%ymm8,%ymm10
10217  DB  196,65,61,21,201                    ; vunpckhpd     %ymm9,%ymm8,%ymm9
10218  DB  196,65,37,20,196                    ; vunpcklpd     %ymm12,%ymm11,%ymm8
10219  DB  196,65,37,21,220                    ; vunpckhpd     %ymm12,%ymm11,%ymm11
10220  DB  77,133,192                          ; test          %r8,%r8
10221  DB  117,55                              ; jne           55b5 <_sk_store_f32_avx+0x6d>
10222  DB  196,67,45,24,225,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm12
10223  DB  196,67,61,24,235,1                  ; vinsertf128   $0x1,%xmm11,%ymm8,%ymm13
10224  DB  196,67,45,6,201,49                  ; vperm2f128    $0x31,%ymm9,%ymm10,%ymm9
10225  DB  196,67,61,6,195,49                  ; vperm2f128    $0x31,%ymm11,%ymm8,%ymm8
10226  DB  196,65,125,17,36,129                ; vmovupd       %ymm12,(%r9,%rax,4)
10227  DB  196,65,125,17,108,129,32            ; vmovupd       %ymm13,0x20(%r9,%rax,4)
10228  DB  196,65,125,17,76,129,64             ; vmovupd       %ymm9,0x40(%r9,%rax,4)
10229  DB  196,65,125,17,68,129,96             ; vmovupd       %ymm8,0x60(%r9,%rax,4)
10230  DB  72,173                              ; lods          %ds:(%rsi),%rax
10231  DB  255,224                             ; jmpq          *%rax
10232  DB  196,65,121,17,20,129                ; vmovupd       %xmm10,(%r9,%rax,4)
10233  DB  73,131,248,1                        ; cmp           $0x1,%r8
10234  DB  116,240                             ; je            55b1 <_sk_store_f32_avx+0x69>
10235  DB  196,65,121,17,76,129,16             ; vmovupd       %xmm9,0x10(%r9,%rax,4)
10236  DB  73,131,248,3                        ; cmp           $0x3,%r8
10237  DB  114,227                             ; jb            55b1 <_sk_store_f32_avx+0x69>
10238  DB  196,65,121,17,68,129,32             ; vmovupd       %xmm8,0x20(%r9,%rax,4)
10239  DB  116,218                             ; je            55b1 <_sk_store_f32_avx+0x69>
10240  DB  196,65,121,17,92,129,48             ; vmovupd       %xmm11,0x30(%r9,%rax,4)
10241  DB  73,131,248,5                        ; cmp           $0x5,%r8
10242  DB  114,205                             ; jb            55b1 <_sk_store_f32_avx+0x69>
10243  DB  196,67,125,25,84,129,64,1           ; vextractf128  $0x1,%ymm10,0x40(%r9,%rax,4)
10244  DB  116,195                             ; je            55b1 <_sk_store_f32_avx+0x69>
10245  DB  196,67,125,25,76,129,80,1           ; vextractf128  $0x1,%ymm9,0x50(%r9,%rax,4)
10246  DB  73,131,248,7                        ; cmp           $0x7,%r8
10247  DB  114,181                             ; jb            55b1 <_sk_store_f32_avx+0x69>
10248  DB  196,67,125,25,68,129,96,1           ; vextractf128  $0x1,%ymm8,0x60(%r9,%rax,4)
10249  DB  235,171                             ; jmp           55b1 <_sk_store_f32_avx+0x69>
10250
10251PUBLIC _sk_clamp_x_avx
10252_sk_clamp_x_avx LABEL PROC
10253  DB  72,173                              ; lods          %ds:(%rsi),%rax
10254  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
10255  DB  197,60,95,200                       ; vmaxps        %ymm0,%ymm8,%ymm9
10256  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
10257  DB  196,99,125,25,192,1                 ; vextractf128  $0x1,%ymm8,%xmm0
10258  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
10259  DB  196,193,121,254,194                 ; vpaddd        %xmm10,%xmm0,%xmm0
10260  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
10261  DB  196,227,61,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm8,%ymm0
10262  DB  197,180,93,192                      ; vminps        %ymm0,%ymm9,%ymm0
10263  DB  72,173                              ; lods          %ds:(%rsi),%rax
10264  DB  255,224                             ; jmpq          *%rax
10265
10266PUBLIC _sk_clamp_y_avx
10267_sk_clamp_y_avx LABEL PROC
10268  DB  72,173                              ; lods          %ds:(%rsi),%rax
10269  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
10270  DB  197,60,95,201                       ; vmaxps        %ymm1,%ymm8,%ymm9
10271  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
10272  DB  196,99,125,25,193,1                 ; vextractf128  $0x1,%ymm8,%xmm1
10273  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
10274  DB  196,193,113,254,202                 ; vpaddd        %xmm10,%xmm1,%xmm1
10275  DB  196,65,57,254,194                   ; vpaddd        %xmm10,%xmm8,%xmm8
10276  DB  196,227,61,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm8,%ymm1
10277  DB  197,180,93,201                      ; vminps        %ymm1,%ymm9,%ymm1
10278  DB  72,173                              ; lods          %ds:(%rsi),%rax
10279  DB  255,224                             ; jmpq          *%rax
10280
10281PUBLIC _sk_repeat_x_avx
10282_sk_repeat_x_avx LABEL PROC
10283  DB  72,173                              ; lods          %ds:(%rsi),%rax
10284  DB  196,98,125,24,64,4                  ; vbroadcastss  0x4(%rax),%ymm8
10285  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
10286  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
10287  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
10288  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
10289  DB  196,65,124,92,192                   ; vsubps        %ymm8,%ymm0,%ymm8
10290  DB  196,99,125,25,200,1                 ; vextractf128  $0x1,%ymm9,%xmm0
10291  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
10292  DB  196,193,121,254,194                 ; vpaddd        %xmm10,%xmm0,%xmm0
10293  DB  196,65,49,254,202                   ; vpaddd        %xmm10,%xmm9,%xmm9
10294  DB  196,227,53,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm9,%ymm0
10295  DB  197,188,93,192                      ; vminps        %ymm0,%ymm8,%ymm0
10296  DB  72,173                              ; lods          %ds:(%rsi),%rax
10297  DB  255,224                             ; jmpq          *%rax
10298
10299PUBLIC _sk_repeat_y_avx
10300_sk_repeat_y_avx LABEL PROC
10301  DB  72,173                              ; lods          %ds:(%rsi),%rax
10302  DB  196,98,125,24,64,4                  ; vbroadcastss  0x4(%rax),%ymm8
10303  DB  197,60,89,193                       ; vmulps        %ymm1,%ymm8,%ymm8
10304  DB  196,67,125,8,192,1                  ; vroundps      $0x1,%ymm8,%ymm8
10305  DB  196,98,125,24,8                     ; vbroadcastss  (%rax),%ymm9
10306  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
10307  DB  196,65,116,92,192                   ; vsubps        %ymm8,%ymm1,%ymm8
10308  DB  196,99,125,25,201,1                 ; vextractf128  $0x1,%ymm9,%xmm1
10309  DB  196,65,41,118,210                   ; vpcmpeqd      %xmm10,%xmm10,%xmm10
10310  DB  196,193,113,254,202                 ; vpaddd        %xmm10,%xmm1,%xmm1
10311  DB  196,65,49,254,202                   ; vpaddd        %xmm10,%xmm9,%xmm9
10312  DB  196,227,53,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm9,%ymm1
10313  DB  197,188,93,201                      ; vminps        %ymm1,%ymm8,%ymm1
10314  DB  72,173                              ; lods          %ds:(%rsi),%rax
10315  DB  255,224                             ; jmpq          *%rax
10316
10317PUBLIC _sk_mirror_x_avx
10318_sk_mirror_x_avx LABEL PROC
10319  DB  72,173                              ; lods          %ds:(%rsi),%rax
10320  DB  197,121,110,0                       ; vmovd         (%rax),%xmm8
10321  DB  197,122,16,72,4                     ; vmovss        0x4(%rax),%xmm9
10322  DB  196,65,121,112,208,0                ; vpshufd       $0x0,%xmm8,%xmm10
10323  DB  196,67,45,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm10,%ymm10
10324  DB  196,65,124,92,218                   ; vsubps        %ymm10,%ymm0,%ymm11
10325  DB  196,193,58,88,192                   ; vaddss        %xmm8,%xmm8,%xmm0
10326  DB  196,227,121,4,192,0                 ; vpermilps     $0x0,%xmm0,%xmm0
10327  DB  196,99,125,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm8
10328  DB  197,178,89,5,199,21,0,0             ; vmulss        0x15c7(%rip),%xmm9,%xmm0        # 6cf0 <_sk_callback_avx+0x46a>
10329  DB  196,227,121,4,192,0                 ; vpermilps     $0x0,%xmm0,%xmm0
10330  DB  196,227,125,24,192,1                ; vinsertf128   $0x1,%xmm0,%ymm0,%ymm0
10331  DB  197,164,89,192                      ; vmulps        %ymm0,%ymm11,%ymm0
10332  DB  196,227,125,8,192,1                 ; vroundps      $0x1,%ymm0,%ymm0
10333  DB  196,193,124,89,192                  ; vmulps        %ymm8,%ymm0,%ymm0
10334  DB  197,164,92,192                      ; vsubps        %ymm0,%ymm11,%ymm0
10335  DB  196,193,124,92,194                  ; vsubps        %ymm10,%ymm0,%ymm0
10336  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
10337  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
10338  DB  197,60,84,192                       ; vandps        %ymm0,%ymm8,%ymm8
10339  DB  196,99,125,25,208,1                 ; vextractf128  $0x1,%ymm10,%xmm0
10340  DB  196,65,49,118,201                   ; vpcmpeqd      %xmm9,%xmm9,%xmm9
10341  DB  196,193,121,254,193                 ; vpaddd        %xmm9,%xmm0,%xmm0
10342  DB  196,65,41,254,201                   ; vpaddd        %xmm9,%xmm10,%xmm9
10343  DB  196,227,53,24,192,1                 ; vinsertf128   $0x1,%xmm0,%ymm9,%ymm0
10344  DB  197,188,93,192                      ; vminps        %ymm0,%ymm8,%ymm0
10345  DB  72,173                              ; lods          %ds:(%rsi),%rax
10346  DB  255,224                             ; jmpq          *%rax
10347
10348PUBLIC _sk_mirror_y_avx
10349_sk_mirror_y_avx LABEL PROC
10350  DB  72,173                              ; lods          %ds:(%rsi),%rax
10351  DB  197,121,110,0                       ; vmovd         (%rax),%xmm8
10352  DB  197,122,16,72,4                     ; vmovss        0x4(%rax),%xmm9
10353  DB  196,65,121,112,208,0                ; vpshufd       $0x0,%xmm8,%xmm10
10354  DB  196,67,45,24,210,1                  ; vinsertf128   $0x1,%xmm10,%ymm10,%ymm10
10355  DB  196,65,116,92,218                   ; vsubps        %ymm10,%ymm1,%ymm11
10356  DB  196,193,58,88,200                   ; vaddss        %xmm8,%xmm8,%xmm1
10357  DB  196,227,121,4,201,0                 ; vpermilps     $0x0,%xmm1,%xmm1
10358  DB  196,99,117,24,193,1                 ; vinsertf128   $0x1,%xmm1,%ymm1,%ymm8
10359  DB  197,178,89,13,66,21,0,0             ; vmulss        0x1542(%rip),%xmm9,%xmm1        # 6cf4 <_sk_callback_avx+0x46e>
10360  DB  196,227,121,4,201,0                 ; vpermilps     $0x0,%xmm1,%xmm1
10361  DB  196,227,117,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm1,%ymm1
10362  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
10363  DB  196,227,125,8,201,1                 ; vroundps      $0x1,%ymm1,%ymm1
10364  DB  196,193,116,89,200                  ; vmulps        %ymm8,%ymm1,%ymm1
10365  DB  197,164,92,201                      ; vsubps        %ymm1,%ymm11,%ymm1
10366  DB  196,193,116,92,202                  ; vsubps        %ymm10,%ymm1,%ymm1
10367  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
10368  DB  197,60,92,193                       ; vsubps        %ymm1,%ymm8,%ymm8
10369  DB  197,60,84,193                       ; vandps        %ymm1,%ymm8,%ymm8
10370  DB  196,99,125,25,209,1                 ; vextractf128  $0x1,%ymm10,%xmm1
10371  DB  196,65,49,118,201                   ; vpcmpeqd      %xmm9,%xmm9,%xmm9
10372  DB  196,193,113,254,201                 ; vpaddd        %xmm9,%xmm1,%xmm1
10373  DB  196,65,41,254,201                   ; vpaddd        %xmm9,%xmm10,%xmm9
10374  DB  196,227,53,24,201,1                 ; vinsertf128   $0x1,%xmm1,%ymm9,%ymm1
10375  DB  197,188,93,201                      ; vminps        %ymm1,%ymm8,%ymm1
10376  DB  72,173                              ; lods          %ds:(%rsi),%rax
10377  DB  255,224                             ; jmpq          *%rax
10378
10379PUBLIC _sk_clamp_x_1_avx
10380_sk_clamp_x_1_avx LABEL PROC
10381  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
10382  DB  197,188,95,192                      ; vmaxps        %ymm0,%ymm8,%ymm0
10383  DB  196,98,125,24,5,224,20,0,0          ; vbroadcastss  0x14e0(%rip),%ymm8        # 6cf8 <_sk_callback_avx+0x472>
10384  DB  196,193,124,93,192                  ; vminps        %ymm8,%ymm0,%ymm0
10385  DB  72,173                              ; lods          %ds:(%rsi),%rax
10386  DB  255,224                             ; jmpq          *%rax
10387
10388PUBLIC _sk_repeat_x_1_avx
10389_sk_repeat_x_1_avx LABEL PROC
10390  DB  196,99,125,8,192,1                  ; vroundps      $0x1,%ymm0,%ymm8
10391  DB  196,193,124,92,192                  ; vsubps        %ymm8,%ymm0,%ymm0
10392  DB  72,173                              ; lods          %ds:(%rsi),%rax
10393  DB  255,224                             ; jmpq          *%rax
10394
10395PUBLIC _sk_mirror_x_1_avx
10396_sk_mirror_x_1_avx LABEL PROC
10397  DB  196,98,125,24,5,195,20,0,0          ; vbroadcastss  0x14c3(%rip),%ymm8        # 6cfc <_sk_callback_avx+0x476>
10398  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
10399  DB  196,98,125,24,13,185,20,0,0         ; vbroadcastss  0x14b9(%rip),%ymm9        # 6d00 <_sk_callback_avx+0x47a>
10400  DB  196,65,124,89,201                   ; vmulps        %ymm9,%ymm0,%ymm9
10401  DB  196,67,125,8,201,1                  ; vroundps      $0x1,%ymm9,%ymm9
10402  DB  196,65,52,88,201                    ; vaddps        %ymm9,%ymm9,%ymm9
10403  DB  196,193,124,92,193                  ; vsubps        %ymm9,%ymm0,%ymm0
10404  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
10405  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
10406  DB  197,60,92,192                       ; vsubps        %ymm0,%ymm8,%ymm8
10407  DB  197,188,84,192                      ; vandps        %ymm0,%ymm8,%ymm0
10408  DB  72,173                              ; lods          %ds:(%rsi),%rax
10409  DB  255,224                             ; jmpq          *%rax
10410
10411PUBLIC _sk_luminance_to_alpha_avx
10412_sk_luminance_to_alpha_avx LABEL PROC
10413  DB  196,226,125,24,29,137,20,0,0        ; vbroadcastss  0x1489(%rip),%ymm3        # 6d04 <_sk_callback_avx+0x47e>
10414  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
10415  DB  196,226,125,24,29,128,20,0,0        ; vbroadcastss  0x1480(%rip),%ymm3        # 6d08 <_sk_callback_avx+0x482>
10416  DB  197,244,89,203                      ; vmulps        %ymm3,%ymm1,%ymm1
10417  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10418  DB  196,226,125,24,13,115,20,0,0        ; vbroadcastss  0x1473(%rip),%ymm1        # 6d0c <_sk_callback_avx+0x486>
10419  DB  197,236,89,201                      ; vmulps        %ymm1,%ymm2,%ymm1
10420  DB  197,252,88,217                      ; vaddps        %ymm1,%ymm0,%ymm3
10421  DB  72,173                              ; lods          %ds:(%rsi),%rax
10422  DB  197,252,87,192                      ; vxorps        %ymm0,%ymm0,%ymm0
10423  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
10424  DB  197,236,87,210                      ; vxorps        %ymm2,%ymm2,%ymm2
10425  DB  255,224                             ; jmpq          *%rax
10426
10427PUBLIC _sk_matrix_2x3_avx
10428_sk_matrix_2x3_avx LABEL PROC
10429  DB  72,173                              ; lods          %ds:(%rsi),%rax
10430  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
10431  DB  196,98,125,24,72,8                  ; vbroadcastss  0x8(%rax),%ymm9
10432  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
10433  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
10434  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10435  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
10436  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10437  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
10438  DB  196,98,125,24,80,12                 ; vbroadcastss  0xc(%rax),%ymm10
10439  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
10440  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
10441  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
10442  DB  197,180,89,192                      ; vmulps        %ymm0,%ymm9,%ymm0
10443  DB  197,252,88,201                      ; vaddps        %ymm1,%ymm0,%ymm1
10444  DB  72,173                              ; lods          %ds:(%rsi),%rax
10445  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10446  DB  255,224                             ; jmpq          *%rax
10447
10448PUBLIC _sk_matrix_3x4_avx
10449_sk_matrix_3x4_avx LABEL PROC
10450  DB  72,173                              ; lods          %ds:(%rsi),%rax
10451  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
10452  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
10453  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
10454  DB  196,98,125,24,88,36                 ; vbroadcastss  0x24(%rax),%ymm11
10455  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
10456  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10457  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
10458  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10459  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
10460  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10461  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
10462  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
10463  DB  196,98,125,24,88,28                 ; vbroadcastss  0x1c(%rax),%ymm11
10464  DB  196,98,125,24,96,40                 ; vbroadcastss  0x28(%rax),%ymm12
10465  DB  197,36,89,218                       ; vmulps        %ymm2,%ymm11,%ymm11
10466  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
10467  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
10468  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10469  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
10470  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10471  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
10472  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
10473  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
10474  DB  196,98,125,24,104,44                ; vbroadcastss  0x2c(%rax),%ymm13
10475  DB  197,156,89,210                      ; vmulps        %ymm2,%ymm12,%ymm2
10476  DB  196,193,108,88,213                  ; vaddps        %ymm13,%ymm2,%ymm2
10477  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
10478  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
10479  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
10480  DB  197,252,88,209                      ; vaddps        %ymm1,%ymm0,%ymm2
10481  DB  72,173                              ; lods          %ds:(%rsi),%rax
10482  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10483  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
10484  DB  255,224                             ; jmpq          *%rax
10485
10486PUBLIC _sk_matrix_4x5_avx
10487_sk_matrix_4x5_avx LABEL PROC
10488  DB  72,173                              ; lods          %ds:(%rsi),%rax
10489  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
10490  DB  196,98,125,24,72,16                 ; vbroadcastss  0x10(%rax),%ymm9
10491  DB  196,98,125,24,80,32                 ; vbroadcastss  0x20(%rax),%ymm10
10492  DB  196,98,125,24,88,48                 ; vbroadcastss  0x30(%rax),%ymm11
10493  DB  196,98,125,24,96,64                 ; vbroadcastss  0x40(%rax),%ymm12
10494  DB  197,36,89,219                       ; vmulps        %ymm3,%ymm11,%ymm11
10495  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
10496  DB  197,44,89,210                       ; vmulps        %ymm2,%ymm10,%ymm10
10497  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10498  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
10499  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10500  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
10501  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10502  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
10503  DB  196,98,125,24,80,20                 ; vbroadcastss  0x14(%rax),%ymm10
10504  DB  196,98,125,24,88,36                 ; vbroadcastss  0x24(%rax),%ymm11
10505  DB  196,98,125,24,96,52                 ; vbroadcastss  0x34(%rax),%ymm12
10506  DB  196,98,125,24,104,68                ; vbroadcastss  0x44(%rax),%ymm13
10507  DB  197,28,89,227                       ; vmulps        %ymm3,%ymm12,%ymm12
10508  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
10509  DB  197,36,89,218                       ; vmulps        %ymm2,%ymm11,%ymm11
10510  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
10511  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
10512  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10513  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
10514  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10515  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
10516  DB  196,98,125,24,88,24                 ; vbroadcastss  0x18(%rax),%ymm11
10517  DB  196,98,125,24,96,40                 ; vbroadcastss  0x28(%rax),%ymm12
10518  DB  196,98,125,24,104,56                ; vbroadcastss  0x38(%rax),%ymm13
10519  DB  196,98,125,24,112,72                ; vbroadcastss  0x48(%rax),%ymm14
10520  DB  197,20,89,235                       ; vmulps        %ymm3,%ymm13,%ymm13
10521  DB  196,65,20,88,238                    ; vaddps        %ymm14,%ymm13,%ymm13
10522  DB  197,28,89,226                       ; vmulps        %ymm2,%ymm12,%ymm12
10523  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
10524  DB  197,36,89,217                       ; vmulps        %ymm1,%ymm11,%ymm11
10525  DB  196,65,36,88,220                    ; vaddps        %ymm12,%ymm11,%ymm11
10526  DB  197,44,89,208                       ; vmulps        %ymm0,%ymm10,%ymm10
10527  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10528  DB  196,98,125,24,88,12                 ; vbroadcastss  0xc(%rax),%ymm11
10529  DB  196,98,125,24,96,28                 ; vbroadcastss  0x1c(%rax),%ymm12
10530  DB  196,98,125,24,104,44                ; vbroadcastss  0x2c(%rax),%ymm13
10531  DB  196,98,125,24,112,60                ; vbroadcastss  0x3c(%rax),%ymm14
10532  DB  196,98,125,24,120,76                ; vbroadcastss  0x4c(%rax),%ymm15
10533  DB  197,140,89,219                      ; vmulps        %ymm3,%ymm14,%ymm3
10534  DB  196,193,100,88,223                  ; vaddps        %ymm15,%ymm3,%ymm3
10535  DB  197,148,89,210                      ; vmulps        %ymm2,%ymm13,%ymm2
10536  DB  197,236,88,211                      ; vaddps        %ymm3,%ymm2,%ymm2
10537  DB  197,156,89,201                      ; vmulps        %ymm1,%ymm12,%ymm1
10538  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
10539  DB  197,164,89,192                      ; vmulps        %ymm0,%ymm11,%ymm0
10540  DB  197,252,88,217                      ; vaddps        %ymm1,%ymm0,%ymm3
10541  DB  72,173                              ; lods          %ds:(%rsi),%rax
10542  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10543  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
10544  DB  197,124,41,210                      ; vmovaps       %ymm10,%ymm2
10545  DB  255,224                             ; jmpq          *%rax
10546
10547PUBLIC _sk_matrix_4x3_avx
10548_sk_matrix_4x3_avx LABEL PROC
10549  DB  72,173                              ; lods          %ds:(%rsi),%rax
10550  DB  196,226,125,24,16                   ; vbroadcastss  (%rax),%ymm2
10551  DB  196,226,125,24,88,16                ; vbroadcastss  0x10(%rax),%ymm3
10552  DB  196,98,125,24,64,32                 ; vbroadcastss  0x20(%rax),%ymm8
10553  DB  197,228,89,217                      ; vmulps        %ymm1,%ymm3,%ymm3
10554  DB  196,193,100,88,216                  ; vaddps        %ymm8,%ymm3,%ymm3
10555  DB  197,236,89,208                      ; vmulps        %ymm0,%ymm2,%ymm2
10556  DB  197,108,88,195                      ; vaddps        %ymm3,%ymm2,%ymm8
10557  DB  196,226,125,24,80,4                 ; vbroadcastss  0x4(%rax),%ymm2
10558  DB  196,226,125,24,88,20                ; vbroadcastss  0x14(%rax),%ymm3
10559  DB  196,98,125,24,72,36                 ; vbroadcastss  0x24(%rax),%ymm9
10560  DB  197,228,89,217                      ; vmulps        %ymm1,%ymm3,%ymm3
10561  DB  196,193,100,88,217                  ; vaddps        %ymm9,%ymm3,%ymm3
10562  DB  197,236,89,208                      ; vmulps        %ymm0,%ymm2,%ymm2
10563  DB  197,108,88,203                      ; vaddps        %ymm3,%ymm2,%ymm9
10564  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
10565  DB  196,226,125,24,88,24                ; vbroadcastss  0x18(%rax),%ymm3
10566  DB  196,98,125,24,80,40                 ; vbroadcastss  0x28(%rax),%ymm10
10567  DB  197,228,89,217                      ; vmulps        %ymm1,%ymm3,%ymm3
10568  DB  196,193,100,88,218                  ; vaddps        %ymm10,%ymm3,%ymm3
10569  DB  197,236,89,208                      ; vmulps        %ymm0,%ymm2,%ymm2
10570  DB  197,236,88,211                      ; vaddps        %ymm3,%ymm2,%ymm2
10571  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
10572  DB  196,98,125,24,80,28                 ; vbroadcastss  0x1c(%rax),%ymm10
10573  DB  196,98,125,24,88,44                 ; vbroadcastss  0x2c(%rax),%ymm11
10574  DB  197,172,89,201                      ; vmulps        %ymm1,%ymm10,%ymm1
10575  DB  196,193,116,88,203                  ; vaddps        %ymm11,%ymm1,%ymm1
10576  DB  197,228,89,192                      ; vmulps        %ymm0,%ymm3,%ymm0
10577  DB  197,252,88,217                      ; vaddps        %ymm1,%ymm0,%ymm3
10578  DB  72,173                              ; lods          %ds:(%rsi),%rax
10579  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10580  DB  197,124,41,201                      ; vmovaps       %ymm9,%ymm1
10581  DB  255,224                             ; jmpq          *%rax
10582
10583PUBLIC _sk_matrix_perspective_avx
10584_sk_matrix_perspective_avx LABEL PROC
10585  DB  72,173                              ; lods          %ds:(%rsi),%rax
10586  DB  196,98,125,24,0                     ; vbroadcastss  (%rax),%ymm8
10587  DB  196,98,125,24,72,4                  ; vbroadcastss  0x4(%rax),%ymm9
10588  DB  196,98,125,24,80,8                  ; vbroadcastss  0x8(%rax),%ymm10
10589  DB  197,52,89,201                       ; vmulps        %ymm1,%ymm9,%ymm9
10590  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10591  DB  197,60,89,192                       ; vmulps        %ymm0,%ymm8,%ymm8
10592  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
10593  DB  196,98,125,24,72,12                 ; vbroadcastss  0xc(%rax),%ymm9
10594  DB  196,98,125,24,80,16                 ; vbroadcastss  0x10(%rax),%ymm10
10595  DB  196,98,125,24,88,20                 ; vbroadcastss  0x14(%rax),%ymm11
10596  DB  197,44,89,209                       ; vmulps        %ymm1,%ymm10,%ymm10
10597  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
10598  DB  197,52,89,200                       ; vmulps        %ymm0,%ymm9,%ymm9
10599  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
10600  DB  196,98,125,24,80,24                 ; vbroadcastss  0x18(%rax),%ymm10
10601  DB  196,98,125,24,88,28                 ; vbroadcastss  0x1c(%rax),%ymm11
10602  DB  196,98,125,24,96,32                 ; vbroadcastss  0x20(%rax),%ymm12
10603  DB  197,164,89,201                      ; vmulps        %ymm1,%ymm11,%ymm1
10604  DB  196,193,116,88,204                  ; vaddps        %ymm12,%ymm1,%ymm1
10605  DB  197,172,89,192                      ; vmulps        %ymm0,%ymm10,%ymm0
10606  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10607  DB  197,252,83,200                      ; vrcpps        %ymm0,%ymm1
10608  DB  197,188,89,193                      ; vmulps        %ymm1,%ymm8,%ymm0
10609  DB  197,180,89,201                      ; vmulps        %ymm1,%ymm9,%ymm1
10610  DB  72,173                              ; lods          %ds:(%rsi),%rax
10611  DB  255,224                             ; jmpq          *%rax
10612
10613PUBLIC _sk_evenly_spaced_gradient_avx
10614_sk_evenly_spaced_gradient_avx LABEL PROC
10615  DB  85                                  ; push          %rbp
10616  DB  65,87                               ; push          %r15
10617  DB  65,86                               ; push          %r14
10618  DB  65,85                               ; push          %r13
10619  DB  65,84                               ; push          %r12
10620  DB  83                                  ; push          %rbx
10621  DB  72,131,236,40                       ; sub           $0x28,%rsp
10622  DB  197,252,17,60,36                    ; vmovups       %ymm7,(%rsp)
10623  DB  72,173                              ; lods          %ds:(%rsi),%rax
10624  DB  72,139,24                           ; mov           (%rax),%rbx
10625  DB  72,139,104,8                        ; mov           0x8(%rax),%rbp
10626  DB  72,255,203                          ; dec           %rbx
10627  DB  120,7                               ; js            5bf8 <_sk_evenly_spaced_gradient_avx+0x28>
10628  DB  196,225,242,42,203                  ; vcvtsi2ss     %rbx,%xmm1,%xmm1
10629  DB  235,21                              ; jmp           5c0d <_sk_evenly_spaced_gradient_avx+0x3d>
10630  DB  73,137,217                          ; mov           %rbx,%r9
10631  DB  73,209,233                          ; shr           %r9
10632  DB  131,227,1                           ; and           $0x1,%ebx
10633  DB  76,9,203                            ; or            %r9,%rbx
10634  DB  196,225,242,42,203                  ; vcvtsi2ss     %rbx,%xmm1,%xmm1
10635  DB  197,242,88,201                      ; vaddss        %xmm1,%xmm1,%xmm1
10636  DB  196,227,121,4,201,0                 ; vpermilps     $0x0,%xmm1,%xmm1
10637  DB  196,227,117,24,201,1                ; vinsertf128   $0x1,%xmm1,%ymm1,%ymm1
10638  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
10639  DB  197,254,91,201                      ; vcvttps2dq    %ymm1,%ymm1
10640  DB  196,195,249,22,201,1                ; vpextrq       $0x1,%xmm1,%r9
10641  DB  69,137,202                          ; mov           %r9d,%r10d
10642  DB  73,193,233,32                       ; shr           $0x20,%r9
10643  DB  196,193,249,126,203                 ; vmovq         %xmm1,%r11
10644  DB  69,137,222                          ; mov           %r11d,%r14d
10645  DB  73,193,235,32                       ; shr           $0x20,%r11
10646  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
10647  DB  196,195,249,22,204,1                ; vpextrq       $0x1,%xmm1,%r12
10648  DB  69,137,231                          ; mov           %r12d,%r15d
10649  DB  73,193,236,32                       ; shr           $0x20,%r12
10650  DB  196,225,249,126,203                 ; vmovq         %xmm1,%rbx
10651  DB  65,137,221                          ; mov           %ebx,%r13d
10652  DB  72,193,235,32                       ; shr           $0x20,%rbx
10653  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10654  DB  196,227,113,33,76,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm1
10655  DB  196,161,122,16,84,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm2
10656  DB  196,33,122,16,68,165,0              ; vmovss        0x0(%rbp,%r12,4),%xmm8
10657  DB  196,161,122,16,92,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm3
10658  DB  196,35,97,33,76,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm3,%xmm9
10659  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10660  DB  196,33,122,16,92,141,0              ; vmovss        0x0(%rbp,%r9,4),%xmm11
10661  DB  196,99,113,33,226,32                ; vinsertps     $0x20,%xmm2,%xmm1,%xmm12
10662  DB  72,139,104,40                       ; mov           0x28(%rax),%rbp
10663  DB  196,161,122,16,84,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm2
10664  DB  196,99,105,33,108,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm2,%xmm13
10665  DB  196,161,122,16,92,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm3
10666  DB  196,161,122,16,76,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm1
10667  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10668  DB  196,35,105,33,116,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm14
10669  DB  196,33,122,16,124,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm15
10670  DB  196,33,122,16,84,141,0              ; vmovss        0x0(%rbp,%r9,4),%xmm10
10671  DB  196,67,25,33,192,48                 ; vinsertps     $0x30,%xmm8,%xmm12,%xmm8
10672  DB  196,227,49,33,215,32                ; vinsertps     $0x20,%xmm7,%xmm9,%xmm2
10673  DB  196,195,105,33,211,48               ; vinsertps     $0x30,%xmm11,%xmm2,%xmm2
10674  DB  196,67,109,24,192,1                 ; vinsertf128   $0x1,%xmm8,%ymm2,%ymm8
10675  DB  196,227,17,33,211,32                ; vinsertps     $0x20,%xmm3,%xmm13,%xmm2
10676  DB  196,99,105,33,201,48                ; vinsertps     $0x30,%xmm1,%xmm2,%xmm9
10677  DB  72,139,104,16                       ; mov           0x10(%rax),%rbp
10678  DB  196,161,122,16,84,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm2
10679  DB  196,99,105,33,92,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm2,%xmm11
10680  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10681  DB  196,161,122,16,76,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm1
10682  DB  196,161,122,16,124,181,0            ; vmovss        0x0(%rbp,%r14,4),%xmm7
10683  DB  196,163,65,33,124,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm7,%xmm7
10684  DB  196,161,122,16,92,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm3
10685  DB  196,33,122,16,108,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm13
10686  DB  196,195,9,33,215,32                 ; vinsertps     $0x20,%xmm15,%xmm14,%xmm2
10687  DB  196,195,105,33,210,48               ; vinsertps     $0x30,%xmm10,%xmm2,%xmm2
10688  DB  196,67,109,24,241,1                 ; vinsertf128   $0x1,%xmm9,%ymm2,%ymm14
10689  DB  196,195,33,33,212,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm2
10690  DB  196,99,105,33,201,48                ; vinsertps     $0x30,%xmm1,%xmm2,%xmm9
10691  DB  196,99,65,33,211,32                 ; vinsertps     $0x20,%xmm3,%xmm7,%xmm10
10692  DB  72,139,104,48                       ; mov           0x30(%rax),%rbp
10693  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
10694  DB  196,99,97,33,92,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm3,%xmm11
10695  DB  196,33,122,16,124,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm15
10696  DB  196,33,122,16,100,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm12
10697  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10698  DB  196,163,105,33,84,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm2
10699  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10700  DB  196,161,122,16,92,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm3
10701  DB  196,67,41,33,213,48                 ; vinsertps     $0x30,%xmm13,%xmm10,%xmm10
10702  DB  196,67,45,24,233,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm13
10703  DB  196,195,33,33,207,32                ; vinsertps     $0x20,%xmm15,%xmm11,%xmm1
10704  DB  196,67,113,33,204,48                ; vinsertps     $0x30,%xmm12,%xmm1,%xmm9
10705  DB  196,227,105,33,215,32               ; vinsertps     $0x20,%xmm7,%xmm2,%xmm2
10706  DB  196,99,105,33,211,48                ; vinsertps     $0x30,%xmm3,%xmm2,%xmm10
10707  DB  72,139,104,24                       ; mov           0x18(%rax),%rbp
10708  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
10709  DB  196,99,97,33,92,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm3,%xmm11
10710  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10711  DB  196,33,122,16,124,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm15
10712  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10713  DB  196,163,105,33,84,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm2
10714  DB  196,161,122,16,92,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm3
10715  DB  196,161,122,16,124,141,0            ; vmovss        0x0(%rbp,%r9,4),%xmm7
10716  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
10717  DB  196,195,33,33,204,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm1
10718  DB  196,195,113,33,207,48               ; vinsertps     $0x30,%xmm15,%xmm1,%xmm1
10719  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
10720  DB  196,227,105,33,215,48               ; vinsertps     $0x30,%xmm7,%xmm2,%xmm2
10721  DB  196,99,109,24,209,1                 ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm10
10722  DB  72,139,104,56                       ; mov           0x38(%rax),%rbp
10723  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10724  DB  196,99,113,33,92,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm11
10725  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10726  DB  196,33,122,16,124,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm15
10727  DB  196,161,122,16,124,181,0            ; vmovss        0x0(%rbp,%r14,4),%xmm7
10728  DB  196,163,65,33,124,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm7,%xmm7
10729  DB  196,161,122,16,76,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm1
10730  DB  196,161,122,16,84,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm2
10731  DB  196,195,33,33,220,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm3
10732  DB  196,195,97,33,223,48                ; vinsertps     $0x30,%xmm15,%xmm3,%xmm3
10733  DB  196,227,65,33,201,32                ; vinsertps     $0x20,%xmm1,%xmm7,%xmm1
10734  DB  196,227,113,33,202,48               ; vinsertps     $0x30,%xmm2,%xmm1,%xmm1
10735  DB  196,99,117,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm1,%ymm11
10736  DB  72,139,104,32                       ; mov           0x20(%rax),%rbp
10737  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10738  DB  196,227,113,33,76,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm1
10739  DB  196,161,122,16,84,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm2
10740  DB  196,227,113,33,202,32               ; vinsertps     $0x20,%xmm2,%xmm1,%xmm1
10741  DB  196,161,122,16,84,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm2
10742  DB  196,161,122,16,92,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm3
10743  DB  196,35,97,33,100,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm3,%xmm12
10744  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10745  DB  196,161,122,16,92,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm3
10746  DB  196,99,113,33,250,48                ; vinsertps     $0x30,%xmm2,%xmm1,%xmm15
10747  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
10748  DB  196,161,122,16,20,168               ; vmovss        (%rax,%r13,4),%xmm2
10749  DB  196,227,105,33,20,152,16            ; vinsertps     $0x10,(%rax,%rbx,4),%xmm2,%xmm2
10750  DB  196,227,25,33,255,32                ; vinsertps     $0x20,%xmm7,%xmm12,%xmm7
10751  DB  196,161,122,16,12,184               ; vmovss        (%rax,%r15,4),%xmm1
10752  DB  196,227,65,33,219,48                ; vinsertps     $0x30,%xmm3,%xmm7,%xmm3
10753  DB  196,161,122,16,60,160               ; vmovss        (%rax,%r12,4),%xmm7
10754  DB  196,67,101,24,231,1                 ; vinsertf128   $0x1,%xmm15,%ymm3,%ymm12
10755  DB  196,161,122,16,28,176               ; vmovss        (%rax,%r14,4),%xmm3
10756  DB  196,163,97,33,28,152,16             ; vinsertps     $0x10,(%rax,%r11,4),%xmm3,%xmm3
10757  DB  196,227,105,33,201,32               ; vinsertps     $0x20,%xmm1,%xmm2,%xmm1
10758  DB  196,161,122,16,20,144               ; vmovss        (%rax,%r10,4),%xmm2
10759  DB  196,227,113,33,207,48               ; vinsertps     $0x30,%xmm7,%xmm1,%xmm1
10760  DB  196,161,122,16,60,136               ; vmovss        (%rax,%r9,4),%xmm7
10761  DB  196,227,97,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm3,%xmm2
10762  DB  196,227,105,33,215,48               ; vinsertps     $0x30,%xmm7,%xmm2,%xmm2
10763  DB  196,227,109,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm3
10764  DB  197,188,89,200                      ; vmulps        %ymm0,%ymm8,%ymm1
10765  DB  196,65,116,88,198                   ; vaddps        %ymm14,%ymm1,%ymm8
10766  DB  197,148,89,200                      ; vmulps        %ymm0,%ymm13,%ymm1
10767  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
10768  DB  197,172,89,208                      ; vmulps        %ymm0,%ymm10,%ymm2
10769  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
10770  DB  197,156,89,192                      ; vmulps        %ymm0,%ymm12,%ymm0
10771  DB  197,252,88,219                      ; vaddps        %ymm3,%ymm0,%ymm3
10772  DB  72,173                              ; lods          %ds:(%rsi),%rax
10773  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10774  DB  197,252,16,60,36                    ; vmovups       (%rsp),%ymm7
10775  DB  72,131,196,40                       ; add           $0x28,%rsp
10776  DB  91                                  ; pop           %rbx
10777  DB  65,92                               ; pop           %r12
10778  DB  65,93                               ; pop           %r13
10779  DB  65,94                               ; pop           %r14
10780  DB  65,95                               ; pop           %r15
10781  DB  93                                  ; pop           %rbp
10782  DB  255,224                             ; jmpq          *%rax
10783
10784PUBLIC _sk_gauss_a_to_rgba_avx
10785_sk_gauss_a_to_rgba_avx LABEL PROC
10786  DB  196,226,125,24,5,156,13,0,0         ; vbroadcastss  0xd9c(%rip),%ymm0        # 6d10 <_sk_callback_avx+0x48a>
10787  DB  197,228,89,192                      ; vmulps        %ymm0,%ymm3,%ymm0
10788  DB  196,226,125,24,13,147,13,0,0        ; vbroadcastss  0xd93(%rip),%ymm1        # 6d14 <_sk_callback_avx+0x48e>
10789  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10790  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
10791  DB  196,226,125,24,13,134,13,0,0        ; vbroadcastss  0xd86(%rip),%ymm1        # 6d18 <_sk_callback_avx+0x492>
10792  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10793  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
10794  DB  196,226,125,24,13,121,13,0,0        ; vbroadcastss  0xd79(%rip),%ymm1        # 6d1c <_sk_callback_avx+0x496>
10795  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10796  DB  197,252,89,195                      ; vmulps        %ymm3,%ymm0,%ymm0
10797  DB  196,226,125,24,13,108,13,0,0        ; vbroadcastss  0xd6c(%rip),%ymm1        # 6d20 <_sk_callback_avx+0x49a>
10798  DB  197,252,88,193                      ; vaddps        %ymm1,%ymm0,%ymm0
10799  DB  72,173                              ; lods          %ds:(%rsi),%rax
10800  DB  197,252,40,200                      ; vmovaps       %ymm0,%ymm1
10801  DB  197,252,40,208                      ; vmovaps       %ymm0,%ymm2
10802  DB  197,252,40,216                      ; vmovaps       %ymm0,%ymm3
10803  DB  255,224                             ; jmpq          *%rax
10804
10805PUBLIC _sk_gradient_avx
10806_sk_gradient_avx LABEL PROC
10807  DB  85                                  ; push          %rbp
10808  DB  65,87                               ; push          %r15
10809  DB  65,86                               ; push          %r14
10810  DB  65,85                               ; push          %r13
10811  DB  65,84                               ; push          %r12
10812  DB  83                                  ; push          %rbx
10813  DB  72,131,236,40                       ; sub           $0x28,%rsp
10814  DB  197,252,17,60,36                    ; vmovups       %ymm7,(%rsp)
10815  DB  72,173                              ; lods          %ds:(%rsi),%rax
10816  DB  76,139,8                            ; mov           (%rax),%r9
10817  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
10818  DB  73,131,249,2                        ; cmp           $0x2,%r9
10819  DB  114,80                              ; jb            603a <_sk_gradient_avx+0x72>
10820  DB  72,139,88,72                        ; mov           0x48(%rax),%rbx
10821  DB  73,255,201                          ; dec           %r9
10822  DB  72,131,195,4                        ; add           $0x4,%rbx
10823  DB  196,65,52,87,201                    ; vxorps        %ymm9,%ymm9,%ymm9
10824  DB  196,98,125,24,21,33,13,0,0          ; vbroadcastss  0xd21(%rip),%ymm10        # 6d24 <_sk_callback_avx+0x49e>
10825  DB  197,244,87,201                      ; vxorps        %ymm1,%ymm1,%ymm1
10826  DB  196,98,125,24,3                     ; vbroadcastss  (%rbx),%ymm8
10827  DB  197,60,194,192,2                    ; vcmpleps      %ymm0,%ymm8,%ymm8
10828  DB  196,67,53,74,194,128                ; vblendvps     %ymm8,%ymm10,%ymm9,%ymm8
10829  DB  196,99,125,25,194,1                 ; vextractf128  $0x1,%ymm8,%xmm2
10830  DB  196,227,125,25,203,1                ; vextractf128  $0x1,%ymm1,%xmm3
10831  DB  197,233,254,211                     ; vpaddd        %xmm3,%xmm2,%xmm2
10832  DB  197,185,254,201                     ; vpaddd        %xmm1,%xmm8,%xmm1
10833  DB  196,227,117,24,202,1                ; vinsertf128   $0x1,%xmm2,%ymm1,%ymm1
10834  DB  72,131,195,4                        ; add           $0x4,%rbx
10835  DB  73,255,201                          ; dec           %r9
10836  DB  117,205                             ; jne           6007 <_sk_gradient_avx+0x3f>
10837  DB  196,195,249,22,201,1                ; vpextrq       $0x1,%xmm1,%r9
10838  DB  69,137,202                          ; mov           %r9d,%r10d
10839  DB  73,193,233,32                       ; shr           $0x20,%r9
10840  DB  196,193,249,126,203                 ; vmovq         %xmm1,%r11
10841  DB  69,137,222                          ; mov           %r11d,%r14d
10842  DB  73,193,235,32                       ; shr           $0x20,%r11
10843  DB  196,227,125,25,201,1                ; vextractf128  $0x1,%ymm1,%xmm1
10844  DB  196,195,249,22,204,1                ; vpextrq       $0x1,%xmm1,%r12
10845  DB  69,137,231                          ; mov           %r12d,%r15d
10846  DB  73,193,236,32                       ; shr           $0x20,%r12
10847  DB  196,225,249,126,203                 ; vmovq         %xmm1,%rbx
10848  DB  65,137,221                          ; mov           %ebx,%r13d
10849  DB  72,193,235,32                       ; shr           $0x20,%rbx
10850  DB  72,139,104,8                        ; mov           0x8(%rax),%rbp
10851  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10852  DB  196,227,113,33,76,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm1
10853  DB  196,161,122,16,84,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm2
10854  DB  196,33,122,16,68,165,0              ; vmovss        0x0(%rbp,%r12,4),%xmm8
10855  DB  196,161,122,16,92,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm3
10856  DB  196,35,97,33,76,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm3,%xmm9
10857  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10858  DB  196,33,122,16,92,141,0              ; vmovss        0x0(%rbp,%r9,4),%xmm11
10859  DB  196,99,113,33,226,32                ; vinsertps     $0x20,%xmm2,%xmm1,%xmm12
10860  DB  72,139,104,40                       ; mov           0x28(%rax),%rbp
10861  DB  196,161,122,16,84,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm2
10862  DB  196,99,105,33,108,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm2,%xmm13
10863  DB  196,161,122,16,92,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm3
10864  DB  196,161,122,16,76,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm1
10865  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10866  DB  196,35,105,33,116,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm14
10867  DB  196,33,122,16,124,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm15
10868  DB  196,33,122,16,84,141,0              ; vmovss        0x0(%rbp,%r9,4),%xmm10
10869  DB  196,67,25,33,192,48                 ; vinsertps     $0x30,%xmm8,%xmm12,%xmm8
10870  DB  196,227,49,33,215,32                ; vinsertps     $0x20,%xmm7,%xmm9,%xmm2
10871  DB  196,195,105,33,211,48               ; vinsertps     $0x30,%xmm11,%xmm2,%xmm2
10872  DB  196,67,109,24,192,1                 ; vinsertf128   $0x1,%xmm8,%ymm2,%ymm8
10873  DB  196,227,17,33,211,32                ; vinsertps     $0x20,%xmm3,%xmm13,%xmm2
10874  DB  196,99,105,33,201,48                ; vinsertps     $0x30,%xmm1,%xmm2,%xmm9
10875  DB  72,139,104,16                       ; mov           0x10(%rax),%rbp
10876  DB  196,161,122,16,84,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm2
10877  DB  196,99,105,33,92,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm2,%xmm11
10878  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10879  DB  196,161,122,16,76,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm1
10880  DB  196,161,122,16,124,181,0            ; vmovss        0x0(%rbp,%r14,4),%xmm7
10881  DB  196,163,65,33,124,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm7,%xmm7
10882  DB  196,161,122,16,92,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm3
10883  DB  196,33,122,16,108,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm13
10884  DB  196,195,9,33,215,32                 ; vinsertps     $0x20,%xmm15,%xmm14,%xmm2
10885  DB  196,195,105,33,210,48               ; vinsertps     $0x30,%xmm10,%xmm2,%xmm2
10886  DB  196,67,109,24,241,1                 ; vinsertf128   $0x1,%xmm9,%ymm2,%ymm14
10887  DB  196,195,33,33,212,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm2
10888  DB  196,99,105,33,201,48                ; vinsertps     $0x30,%xmm1,%xmm2,%xmm9
10889  DB  196,99,65,33,211,32                 ; vinsertps     $0x20,%xmm3,%xmm7,%xmm10
10890  DB  72,139,104,48                       ; mov           0x30(%rax),%rbp
10891  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
10892  DB  196,99,97,33,92,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm3,%xmm11
10893  DB  196,33,122,16,124,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm15
10894  DB  196,33,122,16,100,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm12
10895  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10896  DB  196,163,105,33,84,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm2
10897  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10898  DB  196,161,122,16,92,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm3
10899  DB  196,67,41,33,213,48                 ; vinsertps     $0x30,%xmm13,%xmm10,%xmm10
10900  DB  196,67,45,24,233,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm13
10901  DB  196,195,33,33,207,32                ; vinsertps     $0x20,%xmm15,%xmm11,%xmm1
10902  DB  196,67,113,33,204,48                ; vinsertps     $0x30,%xmm12,%xmm1,%xmm9
10903  DB  196,227,105,33,215,32               ; vinsertps     $0x20,%xmm7,%xmm2,%xmm2
10904  DB  196,99,105,33,211,48                ; vinsertps     $0x30,%xmm3,%xmm2,%xmm10
10905  DB  72,139,104,24                       ; mov           0x18(%rax),%rbp
10906  DB  196,161,122,16,92,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm3
10907  DB  196,99,97,33,92,157,0,16            ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm3,%xmm11
10908  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10909  DB  196,33,122,16,124,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm15
10910  DB  196,161,122,16,84,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm2
10911  DB  196,163,105,33,84,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm2,%xmm2
10912  DB  196,161,122,16,92,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm3
10913  DB  196,161,122,16,124,141,0            ; vmovss        0x0(%rbp,%r9,4),%xmm7
10914  DB  196,67,45,24,201,1                  ; vinsertf128   $0x1,%xmm9,%ymm10,%ymm9
10915  DB  196,195,33,33,204,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm1
10916  DB  196,195,113,33,207,48               ; vinsertps     $0x30,%xmm15,%xmm1,%xmm1
10917  DB  196,227,105,33,211,32               ; vinsertps     $0x20,%xmm3,%xmm2,%xmm2
10918  DB  196,227,105,33,215,48               ; vinsertps     $0x30,%xmm7,%xmm2,%xmm2
10919  DB  196,99,109,24,209,1                 ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm10
10920  DB  72,139,104,56                       ; mov           0x38(%rax),%rbp
10921  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10922  DB  196,99,113,33,92,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm11
10923  DB  196,33,122,16,100,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm12
10924  DB  196,33,122,16,124,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm15
10925  DB  196,161,122,16,124,181,0            ; vmovss        0x0(%rbp,%r14,4),%xmm7
10926  DB  196,163,65,33,124,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm7,%xmm7
10927  DB  196,161,122,16,76,149,0             ; vmovss        0x0(%rbp,%r10,4),%xmm1
10928  DB  196,161,122,16,84,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm2
10929  DB  196,195,33,33,220,32                ; vinsertps     $0x20,%xmm12,%xmm11,%xmm3
10930  DB  196,195,97,33,223,48                ; vinsertps     $0x30,%xmm15,%xmm3,%xmm3
10931  DB  196,227,65,33,201,32                ; vinsertps     $0x20,%xmm1,%xmm7,%xmm1
10932  DB  196,227,113,33,202,48               ; vinsertps     $0x30,%xmm2,%xmm1,%xmm1
10933  DB  196,99,117,24,219,1                 ; vinsertf128   $0x1,%xmm3,%ymm1,%ymm11
10934  DB  72,139,104,32                       ; mov           0x20(%rax),%rbp
10935  DB  196,161,122,16,76,173,0             ; vmovss        0x0(%rbp,%r13,4),%xmm1
10936  DB  196,227,113,33,76,157,0,16          ; vinsertps     $0x10,0x0(%rbp,%rbx,4),%xmm1,%xmm1
10937  DB  196,161,122,16,84,189,0             ; vmovss        0x0(%rbp,%r15,4),%xmm2
10938  DB  196,227,113,33,202,32               ; vinsertps     $0x20,%xmm2,%xmm1,%xmm1
10939  DB  196,161,122,16,84,165,0             ; vmovss        0x0(%rbp,%r12,4),%xmm2
10940  DB  196,161,122,16,92,181,0             ; vmovss        0x0(%rbp,%r14,4),%xmm3
10941  DB  196,35,97,33,100,157,0,16           ; vinsertps     $0x10,0x0(%rbp,%r11,4),%xmm3,%xmm12
10942  DB  196,161,122,16,124,149,0            ; vmovss        0x0(%rbp,%r10,4),%xmm7
10943  DB  196,161,122,16,92,141,0             ; vmovss        0x0(%rbp,%r9,4),%xmm3
10944  DB  196,99,113,33,250,48                ; vinsertps     $0x30,%xmm2,%xmm1,%xmm15
10945  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
10946  DB  196,161,122,16,20,168               ; vmovss        (%rax,%r13,4),%xmm2
10947  DB  196,227,105,33,20,152,16            ; vinsertps     $0x10,(%rax,%rbx,4),%xmm2,%xmm2
10948  DB  196,227,25,33,255,32                ; vinsertps     $0x20,%xmm7,%xmm12,%xmm7
10949  DB  196,161,122,16,12,184               ; vmovss        (%rax,%r15,4),%xmm1
10950  DB  196,227,65,33,219,48                ; vinsertps     $0x30,%xmm3,%xmm7,%xmm3
10951  DB  196,161,122,16,60,160               ; vmovss        (%rax,%r12,4),%xmm7
10952  DB  196,67,101,24,231,1                 ; vinsertf128   $0x1,%xmm15,%ymm3,%ymm12
10953  DB  196,161,122,16,28,176               ; vmovss        (%rax,%r14,4),%xmm3
10954  DB  196,163,97,33,28,152,16             ; vinsertps     $0x10,(%rax,%r11,4),%xmm3,%xmm3
10955  DB  196,227,105,33,201,32               ; vinsertps     $0x20,%xmm1,%xmm2,%xmm1
10956  DB  196,161,122,16,20,144               ; vmovss        (%rax,%r10,4),%xmm2
10957  DB  196,227,113,33,207,48               ; vinsertps     $0x30,%xmm7,%xmm1,%xmm1
10958  DB  196,161,122,16,60,136               ; vmovss        (%rax,%r9,4),%xmm7
10959  DB  196,227,97,33,210,32                ; vinsertps     $0x20,%xmm2,%xmm3,%xmm2
10960  DB  196,227,105,33,215,48               ; vinsertps     $0x30,%xmm7,%xmm2,%xmm2
10961  DB  196,227,109,24,217,1                ; vinsertf128   $0x1,%xmm1,%ymm2,%ymm3
10962  DB  197,188,89,200                      ; vmulps        %ymm0,%ymm8,%ymm1
10963  DB  196,65,116,88,198                   ; vaddps        %ymm14,%ymm1,%ymm8
10964  DB  197,148,89,200                      ; vmulps        %ymm0,%ymm13,%ymm1
10965  DB  196,193,116,88,201                  ; vaddps        %ymm9,%ymm1,%ymm1
10966  DB  197,172,89,208                      ; vmulps        %ymm0,%ymm10,%ymm2
10967  DB  196,193,108,88,211                  ; vaddps        %ymm11,%ymm2,%ymm2
10968  DB  197,156,89,192                      ; vmulps        %ymm0,%ymm12,%ymm0
10969  DB  197,252,88,219                      ; vaddps        %ymm3,%ymm0,%ymm3
10970  DB  72,173                              ; lods          %ds:(%rsi),%rax
10971  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
10972  DB  197,252,16,60,36                    ; vmovups       (%rsp),%ymm7
10973  DB  72,131,196,40                       ; add           $0x28,%rsp
10974  DB  91                                  ; pop           %rbx
10975  DB  65,92                               ; pop           %r12
10976  DB  65,93                               ; pop           %r13
10977  DB  65,94                               ; pop           %r14
10978  DB  65,95                               ; pop           %r15
10979  DB  93                                  ; pop           %rbp
10980  DB  255,224                             ; jmpq          *%rax
10981
10982PUBLIC _sk_evenly_spaced_2_stop_gradient_avx
10983_sk_evenly_spaced_2_stop_gradient_avx LABEL PROC
10984  DB  72,173                              ; lods          %ds:(%rsi),%rax
10985  DB  196,226,125,24,8                    ; vbroadcastss  (%rax),%ymm1
10986  DB  196,226,125,24,80,16                ; vbroadcastss  0x10(%rax),%ymm2
10987  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
10988  DB  197,116,88,194                      ; vaddps        %ymm2,%ymm1,%ymm8
10989  DB  196,226,125,24,72,4                 ; vbroadcastss  0x4(%rax),%ymm1
10990  DB  196,226,125,24,80,20                ; vbroadcastss  0x14(%rax),%ymm2
10991  DB  197,244,89,200                      ; vmulps        %ymm0,%ymm1,%ymm1
10992  DB  197,244,88,202                      ; vaddps        %ymm2,%ymm1,%ymm1
10993  DB  196,226,125,24,80,8                 ; vbroadcastss  0x8(%rax),%ymm2
10994  DB  196,226,125,24,88,24                ; vbroadcastss  0x18(%rax),%ymm3
10995  DB  197,236,89,208                      ; vmulps        %ymm0,%ymm2,%ymm2
10996  DB  197,236,88,211                      ; vaddps        %ymm3,%ymm2,%ymm2
10997  DB  196,226,125,24,88,12                ; vbroadcastss  0xc(%rax),%ymm3
10998  DB  196,98,125,24,72,28                 ; vbroadcastss  0x1c(%rax),%ymm9
10999  DB  197,228,89,192                      ; vmulps        %ymm0,%ymm3,%ymm0
11000  DB  196,193,124,88,217                  ; vaddps        %ymm9,%ymm0,%ymm3
11001  DB  72,173                              ; lods          %ds:(%rsi),%rax
11002  DB  197,124,41,192                      ; vmovaps       %ymm8,%ymm0
11003  DB  255,224                             ; jmpq          *%rax
11004
11005PUBLIC _sk_xy_to_unit_angle_avx
11006_sk_xy_to_unit_angle_avx LABEL PROC
11007  DB  196,65,60,87,192                    ; vxorps        %ymm8,%ymm8,%ymm8
11008  DB  197,60,92,200                       ; vsubps        %ymm0,%ymm8,%ymm9
11009  DB  197,52,84,200                       ; vandps        %ymm0,%ymm9,%ymm9
11010  DB  197,60,92,209                       ; vsubps        %ymm1,%ymm8,%ymm10
11011  DB  197,44,84,209                       ; vandps        %ymm1,%ymm10,%ymm10
11012  DB  196,65,52,93,218                    ; vminps        %ymm10,%ymm9,%ymm11
11013  DB  196,65,52,95,226                    ; vmaxps        %ymm10,%ymm9,%ymm12
11014  DB  196,65,36,94,220                    ; vdivps        %ymm12,%ymm11,%ymm11
11015  DB  196,65,36,89,227                    ; vmulps        %ymm11,%ymm11,%ymm12
11016  DB  196,98,125,24,45,20,9,0,0           ; vbroadcastss  0x914(%rip),%ymm13        # 6d28 <_sk_callback_avx+0x4a2>
11017  DB  196,65,28,89,237                    ; vmulps        %ymm13,%ymm12,%ymm13
11018  DB  196,98,125,24,53,10,9,0,0           ; vbroadcastss  0x90a(%rip),%ymm14        # 6d2c <_sk_callback_avx+0x4a6>
11019  DB  196,65,20,88,238                    ; vaddps        %ymm14,%ymm13,%ymm13
11020  DB  196,65,28,89,237                    ; vmulps        %ymm13,%ymm12,%ymm13
11021  DB  196,98,125,24,53,251,8,0,0          ; vbroadcastss  0x8fb(%rip),%ymm14        # 6d30 <_sk_callback_avx+0x4aa>
11022  DB  196,65,20,88,238                    ; vaddps        %ymm14,%ymm13,%ymm13
11023  DB  196,65,28,89,229                    ; vmulps        %ymm13,%ymm12,%ymm12
11024  DB  196,98,125,24,45,236,8,0,0          ; vbroadcastss  0x8ec(%rip),%ymm13        # 6d34 <_sk_callback_avx+0x4ae>
11025  DB  196,65,28,88,229                    ; vaddps        %ymm13,%ymm12,%ymm12
11026  DB  196,65,36,89,220                    ; vmulps        %ymm12,%ymm11,%ymm11
11027  DB  196,65,52,194,202,1                 ; vcmpltps      %ymm10,%ymm9,%ymm9
11028  DB  196,98,125,24,21,215,8,0,0          ; vbroadcastss  0x8d7(%rip),%ymm10        # 6d38 <_sk_callback_avx+0x4b2>
11029  DB  196,65,44,92,211                    ; vsubps        %ymm11,%ymm10,%ymm10
11030  DB  196,67,37,74,202,144                ; vblendvps     %ymm9,%ymm10,%ymm11,%ymm9
11031  DB  196,193,124,194,192,1               ; vcmpltps      %ymm8,%ymm0,%ymm0
11032  DB  196,98,125,24,21,193,8,0,0          ; vbroadcastss  0x8c1(%rip),%ymm10        # 6d3c <_sk_callback_avx+0x4b6>
11033  DB  196,65,44,92,209                    ; vsubps        %ymm9,%ymm10,%ymm10
11034  DB  196,195,53,74,194,0                 ; vblendvps     %ymm0,%ymm10,%ymm9,%ymm0
11035  DB  196,65,116,194,200,1                ; vcmpltps      %ymm8,%ymm1,%ymm9
11036  DB  196,98,125,24,21,171,8,0,0          ; vbroadcastss  0x8ab(%rip),%ymm10        # 6d40 <_sk_callback_avx+0x4ba>
11037  DB  197,44,92,208                       ; vsubps        %ymm0,%ymm10,%ymm10
11038  DB  196,195,125,74,194,144              ; vblendvps     %ymm9,%ymm10,%ymm0,%ymm0
11039  DB  196,65,124,194,200,3                ; vcmpunordps   %ymm8,%ymm0,%ymm9
11040  DB  196,195,125,74,192,144              ; vblendvps     %ymm9,%ymm8,%ymm0,%ymm0
11041  DB  72,173                              ; lods          %ds:(%rsi),%rax
11042  DB  255,224                             ; jmpq          *%rax
11043
11044PUBLIC _sk_xy_to_radius_avx
11045_sk_xy_to_radius_avx LABEL PROC
11046  DB  197,252,89,192                      ; vmulps        %ymm0,%ymm0,%ymm0
11047  DB  197,116,89,193                      ; vmulps        %ymm1,%ymm1,%ymm8
11048  DB  196,193,124,88,192                  ; vaddps        %ymm8,%ymm0,%ymm0
11049  DB  197,252,81,192                      ; vsqrtps       %ymm0,%ymm0
11050  DB  72,173                              ; lods          %ds:(%rsi),%rax
11051  DB  255,224                             ; jmpq          *%rax
11052
11053PUBLIC _sk_save_xy_avx
11054_sk_save_xy_avx LABEL PROC
11055  DB  72,173                              ; lods          %ds:(%rsi),%rax
11056  DB  196,98,125,24,5,117,8,0,0           ; vbroadcastss  0x875(%rip),%ymm8        # 6d44 <_sk_callback_avx+0x4be>
11057  DB  196,65,124,88,200                   ; vaddps        %ymm8,%ymm0,%ymm9
11058  DB  196,67,125,8,209,1                  ; vroundps      $0x1,%ymm9,%ymm10
11059  DB  196,65,52,92,202                    ; vsubps        %ymm10,%ymm9,%ymm9
11060  DB  196,65,116,88,192                   ; vaddps        %ymm8,%ymm1,%ymm8
11061  DB  196,67,125,8,208,1                  ; vroundps      $0x1,%ymm8,%ymm10
11062  DB  196,65,60,92,194                    ; vsubps        %ymm10,%ymm8,%ymm8
11063  DB  197,252,17,0                        ; vmovups       %ymm0,(%rax)
11064  DB  197,252,17,72,32                    ; vmovups       %ymm1,0x20(%rax)
11065  DB  197,124,17,72,64                    ; vmovups       %ymm9,0x40(%rax)
11066  DB  197,124,17,64,96                    ; vmovups       %ymm8,0x60(%rax)
11067  DB  72,173                              ; lods          %ds:(%rsi),%rax
11068  DB  255,224                             ; jmpq          *%rax
11069
11070PUBLIC _sk_accumulate_avx
11071_sk_accumulate_avx LABEL PROC
11072  DB  72,173                              ; lods          %ds:(%rsi),%rax
11073  DB  197,124,16,128,128,0,0,0            ; vmovups       0x80(%rax),%ymm8
11074  DB  197,60,89,128,160,0,0,0             ; vmulps        0xa0(%rax),%ymm8,%ymm8
11075  DB  197,60,89,200                       ; vmulps        %ymm0,%ymm8,%ymm9
11076  DB  197,180,88,228                      ; vaddps        %ymm4,%ymm9,%ymm4
11077  DB  197,60,89,201                       ; vmulps        %ymm1,%ymm8,%ymm9
11078  DB  197,180,88,237                      ; vaddps        %ymm5,%ymm9,%ymm5
11079  DB  197,60,89,202                       ; vmulps        %ymm2,%ymm8,%ymm9
11080  DB  197,180,88,246                      ; vaddps        %ymm6,%ymm9,%ymm6
11081  DB  197,60,89,195                       ; vmulps        %ymm3,%ymm8,%ymm8
11082  DB  197,188,88,255                      ; vaddps        %ymm7,%ymm8,%ymm7
11083  DB  72,173                              ; lods          %ds:(%rsi),%rax
11084  DB  255,224                             ; jmpq          *%rax
11085
11086PUBLIC _sk_bilinear_nx_avx
11087_sk_bilinear_nx_avx LABEL PROC
11088  DB  72,173                              ; lods          %ds:(%rsi),%rax
11089  DB  196,226,125,24,5,1,8,0,0            ; vbroadcastss  0x801(%rip),%ymm0        # 6d48 <_sk_callback_avx+0x4c2>
11090  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
11091  DB  196,98,125,24,5,248,7,0,0           ; vbroadcastss  0x7f8(%rip),%ymm8        # 6d4c <_sk_callback_avx+0x4c6>
11092  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
11093  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
11094  DB  72,173                              ; lods          %ds:(%rsi),%rax
11095  DB  255,224                             ; jmpq          *%rax
11096
11097PUBLIC _sk_bilinear_px_avx
11098_sk_bilinear_px_avx LABEL PROC
11099  DB  72,173                              ; lods          %ds:(%rsi),%rax
11100  DB  196,226,125,24,5,224,7,0,0          ; vbroadcastss  0x7e0(%rip),%ymm0        # 6d50 <_sk_callback_avx+0x4ca>
11101  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
11102  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
11103  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
11104  DB  72,173                              ; lods          %ds:(%rsi),%rax
11105  DB  255,224                             ; jmpq          *%rax
11106
11107PUBLIC _sk_bilinear_ny_avx
11108_sk_bilinear_ny_avx LABEL PROC
11109  DB  72,173                              ; lods          %ds:(%rsi),%rax
11110  DB  196,226,125,24,13,196,7,0,0         ; vbroadcastss  0x7c4(%rip),%ymm1        # 6d54 <_sk_callback_avx+0x4ce>
11111  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
11112  DB  196,98,125,24,5,186,7,0,0           ; vbroadcastss  0x7ba(%rip),%ymm8        # 6d58 <_sk_callback_avx+0x4d2>
11113  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
11114  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
11115  DB  72,173                              ; lods          %ds:(%rsi),%rax
11116  DB  255,224                             ; jmpq          *%rax
11117
11118PUBLIC _sk_bilinear_py_avx
11119_sk_bilinear_py_avx LABEL PROC
11120  DB  72,173                              ; lods          %ds:(%rsi),%rax
11121  DB  196,226,125,24,13,162,7,0,0         ; vbroadcastss  0x7a2(%rip),%ymm1        # 6d5c <_sk_callback_avx+0x4d6>
11122  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
11123  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
11124  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
11125  DB  72,173                              ; lods          %ds:(%rsi),%rax
11126  DB  255,224                             ; jmpq          *%rax
11127
11128PUBLIC _sk_bicubic_n3x_avx
11129_sk_bicubic_n3x_avx LABEL PROC
11130  DB  72,173                              ; lods          %ds:(%rsi),%rax
11131  DB  196,226,125,24,5,133,7,0,0          ; vbroadcastss  0x785(%rip),%ymm0        # 6d60 <_sk_callback_avx+0x4da>
11132  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
11133  DB  196,98,125,24,5,124,7,0,0           ; vbroadcastss  0x77c(%rip),%ymm8        # 6d64 <_sk_callback_avx+0x4de>
11134  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
11135  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
11136  DB  196,98,125,24,21,109,7,0,0          ; vbroadcastss  0x76d(%rip),%ymm10        # 6d68 <_sk_callback_avx+0x4e2>
11137  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
11138  DB  196,98,125,24,21,99,7,0,0           ; vbroadcastss  0x763(%rip),%ymm10        # 6d6c <_sk_callback_avx+0x4e6>
11139  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
11140  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
11141  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
11142  DB  72,173                              ; lods          %ds:(%rsi),%rax
11143  DB  255,224                             ; jmpq          *%rax
11144
11145PUBLIC _sk_bicubic_n1x_avx
11146_sk_bicubic_n1x_avx LABEL PROC
11147  DB  72,173                              ; lods          %ds:(%rsi),%rax
11148  DB  196,226,125,24,5,70,7,0,0           ; vbroadcastss  0x746(%rip),%ymm0        # 6d70 <_sk_callback_avx+0x4ea>
11149  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
11150  DB  196,98,125,24,5,61,7,0,0            ; vbroadcastss  0x73d(%rip),%ymm8        # 6d74 <_sk_callback_avx+0x4ee>
11151  DB  197,60,92,64,64                     ; vsubps        0x40(%rax),%ymm8,%ymm8
11152  DB  196,98,125,24,13,51,7,0,0           ; vbroadcastss  0x733(%rip),%ymm9        # 6d78 <_sk_callback_avx+0x4f2>
11153  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
11154  DB  196,98,125,24,21,41,7,0,0           ; vbroadcastss  0x729(%rip),%ymm10        # 6d7c <_sk_callback_avx+0x4f6>
11155  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
11156  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
11157  DB  196,98,125,24,21,26,7,0,0           ; vbroadcastss  0x71a(%rip),%ymm10        # 6d80 <_sk_callback_avx+0x4fa>
11158  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
11159  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
11160  DB  196,98,125,24,13,11,7,0,0           ; vbroadcastss  0x70b(%rip),%ymm9        # 6d84 <_sk_callback_avx+0x4fe>
11161  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
11162  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
11163  DB  72,173                              ; lods          %ds:(%rsi),%rax
11164  DB  255,224                             ; jmpq          *%rax
11165
11166PUBLIC _sk_bicubic_p1x_avx
11167_sk_bicubic_p1x_avx LABEL PROC
11168  DB  72,173                              ; lods          %ds:(%rsi),%rax
11169  DB  196,98,125,24,5,243,6,0,0           ; vbroadcastss  0x6f3(%rip),%ymm8        # 6d88 <_sk_callback_avx+0x502>
11170  DB  197,188,88,0                        ; vaddps        (%rax),%ymm8,%ymm0
11171  DB  197,124,16,72,64                    ; vmovups       0x40(%rax),%ymm9
11172  DB  196,98,125,24,21,229,6,0,0          ; vbroadcastss  0x6e5(%rip),%ymm10        # 6d8c <_sk_callback_avx+0x506>
11173  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
11174  DB  196,98,125,24,29,219,6,0,0          ; vbroadcastss  0x6db(%rip),%ymm11        # 6d90 <_sk_callback_avx+0x50a>
11175  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
11176  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
11177  DB  196,65,44,88,192                    ; vaddps        %ymm8,%ymm10,%ymm8
11178  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
11179  DB  196,98,125,24,13,194,6,0,0          ; vbroadcastss  0x6c2(%rip),%ymm9        # 6d94 <_sk_callback_avx+0x50e>
11180  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
11181  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
11182  DB  72,173                              ; lods          %ds:(%rsi),%rax
11183  DB  255,224                             ; jmpq          *%rax
11184
11185PUBLIC _sk_bicubic_p3x_avx
11186_sk_bicubic_p3x_avx LABEL PROC
11187  DB  72,173                              ; lods          %ds:(%rsi),%rax
11188  DB  196,226,125,24,5,170,6,0,0          ; vbroadcastss  0x6aa(%rip),%ymm0        # 6d98 <_sk_callback_avx+0x512>
11189  DB  197,252,88,0                        ; vaddps        (%rax),%ymm0,%ymm0
11190  DB  197,124,16,64,64                    ; vmovups       0x40(%rax),%ymm8
11191  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
11192  DB  196,98,125,24,21,151,6,0,0          ; vbroadcastss  0x697(%rip),%ymm10        # 6d9c <_sk_callback_avx+0x516>
11193  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
11194  DB  196,98,125,24,21,141,6,0,0          ; vbroadcastss  0x68d(%rip),%ymm10        # 6da0 <_sk_callback_avx+0x51a>
11195  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
11196  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
11197  DB  197,124,17,128,128,0,0,0            ; vmovups       %ymm8,0x80(%rax)
11198  DB  72,173                              ; lods          %ds:(%rsi),%rax
11199  DB  255,224                             ; jmpq          *%rax
11200
11201PUBLIC _sk_bicubic_n3y_avx
11202_sk_bicubic_n3y_avx LABEL PROC
11203  DB  72,173                              ; lods          %ds:(%rsi),%rax
11204  DB  196,226,125,24,13,112,6,0,0         ; vbroadcastss  0x670(%rip),%ymm1        # 6da4 <_sk_callback_avx+0x51e>
11205  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
11206  DB  196,98,125,24,5,102,6,0,0           ; vbroadcastss  0x666(%rip),%ymm8        # 6da8 <_sk_callback_avx+0x522>
11207  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
11208  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
11209  DB  196,98,125,24,21,87,6,0,0           ; vbroadcastss  0x657(%rip),%ymm10        # 6dac <_sk_callback_avx+0x526>
11210  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
11211  DB  196,98,125,24,21,77,6,0,0           ; vbroadcastss  0x64d(%rip),%ymm10        # 6db0 <_sk_callback_avx+0x52a>
11212  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
11213  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
11214  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
11215  DB  72,173                              ; lods          %ds:(%rsi),%rax
11216  DB  255,224                             ; jmpq          *%rax
11217
11218PUBLIC _sk_bicubic_n1y_avx
11219_sk_bicubic_n1y_avx LABEL PROC
11220  DB  72,173                              ; lods          %ds:(%rsi),%rax
11221  DB  196,226,125,24,13,48,6,0,0          ; vbroadcastss  0x630(%rip),%ymm1        # 6db4 <_sk_callback_avx+0x52e>
11222  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
11223  DB  196,98,125,24,5,38,6,0,0            ; vbroadcastss  0x626(%rip),%ymm8        # 6db8 <_sk_callback_avx+0x532>
11224  DB  197,60,92,64,96                     ; vsubps        0x60(%rax),%ymm8,%ymm8
11225  DB  196,98,125,24,13,28,6,0,0           ; vbroadcastss  0x61c(%rip),%ymm9        # 6dbc <_sk_callback_avx+0x536>
11226  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
11227  DB  196,98,125,24,21,18,6,0,0           ; vbroadcastss  0x612(%rip),%ymm10        # 6dc0 <_sk_callback_avx+0x53a>
11228  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
11229  DB  196,65,60,89,201                    ; vmulps        %ymm9,%ymm8,%ymm9
11230  DB  196,98,125,24,21,3,6,0,0            ; vbroadcastss  0x603(%rip),%ymm10        # 6dc4 <_sk_callback_avx+0x53e>
11231  DB  196,65,52,88,202                    ; vaddps        %ymm10,%ymm9,%ymm9
11232  DB  196,65,60,89,193                    ; vmulps        %ymm9,%ymm8,%ymm8
11233  DB  196,98,125,24,13,244,5,0,0          ; vbroadcastss  0x5f4(%rip),%ymm9        # 6dc8 <_sk_callback_avx+0x542>
11234  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
11235  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
11236  DB  72,173                              ; lods          %ds:(%rsi),%rax
11237  DB  255,224                             ; jmpq          *%rax
11238
11239PUBLIC _sk_bicubic_p1y_avx
11240_sk_bicubic_p1y_avx LABEL PROC
11241  DB  72,173                              ; lods          %ds:(%rsi),%rax
11242  DB  196,98,125,24,5,220,5,0,0           ; vbroadcastss  0x5dc(%rip),%ymm8        # 6dcc <_sk_callback_avx+0x546>
11243  DB  197,188,88,72,32                    ; vaddps        0x20(%rax),%ymm8,%ymm1
11244  DB  197,124,16,72,96                    ; vmovups       0x60(%rax),%ymm9
11245  DB  196,98,125,24,21,205,5,0,0          ; vbroadcastss  0x5cd(%rip),%ymm10        # 6dd0 <_sk_callback_avx+0x54a>
11246  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
11247  DB  196,98,125,24,29,195,5,0,0          ; vbroadcastss  0x5c3(%rip),%ymm11        # 6dd4 <_sk_callback_avx+0x54e>
11248  DB  196,65,44,88,211                    ; vaddps        %ymm11,%ymm10,%ymm10
11249  DB  196,65,52,89,210                    ; vmulps        %ymm10,%ymm9,%ymm10
11250  DB  196,65,44,88,192                    ; vaddps        %ymm8,%ymm10,%ymm8
11251  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
11252  DB  196,98,125,24,13,170,5,0,0          ; vbroadcastss  0x5aa(%rip),%ymm9        # 6dd8 <_sk_callback_avx+0x552>
11253  DB  196,65,60,88,193                    ; vaddps        %ymm9,%ymm8,%ymm8
11254  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
11255  DB  72,173                              ; lods          %ds:(%rsi),%rax
11256  DB  255,224                             ; jmpq          *%rax
11257
11258PUBLIC _sk_bicubic_p3y_avx
11259_sk_bicubic_p3y_avx LABEL PROC
11260  DB  72,173                              ; lods          %ds:(%rsi),%rax
11261  DB  196,226,125,24,13,146,5,0,0         ; vbroadcastss  0x592(%rip),%ymm1        # 6ddc <_sk_callback_avx+0x556>
11262  DB  197,244,88,72,32                    ; vaddps        0x20(%rax),%ymm1,%ymm1
11263  DB  197,124,16,64,96                    ; vmovups       0x60(%rax),%ymm8
11264  DB  196,65,60,89,200                    ; vmulps        %ymm8,%ymm8,%ymm9
11265  DB  196,98,125,24,21,126,5,0,0          ; vbroadcastss  0x57e(%rip),%ymm10        # 6de0 <_sk_callback_avx+0x55a>
11266  DB  196,65,60,89,194                    ; vmulps        %ymm10,%ymm8,%ymm8
11267  DB  196,98,125,24,21,116,5,0,0          ; vbroadcastss  0x574(%rip),%ymm10        # 6de4 <_sk_callback_avx+0x55e>
11268  DB  196,65,60,88,194                    ; vaddps        %ymm10,%ymm8,%ymm8
11269  DB  196,65,52,89,192                    ; vmulps        %ymm8,%ymm9,%ymm8
11270  DB  197,124,17,128,160,0,0,0            ; vmovups       %ymm8,0xa0(%rax)
11271  DB  72,173                              ; lods          %ds:(%rsi),%rax
11272  DB  255,224                             ; jmpq          *%rax
11273
11274PUBLIC _sk_callback_avx
11275_sk_callback_avx LABEL PROC
11276  DB  85                                  ; push          %rbp
11277  DB  72,137,229                          ; mov           %rsp,%rbp
11278  DB  65,87                               ; push          %r15
11279  DB  65,86                               ; push          %r14
11280  DB  65,84                               ; push          %r12
11281  DB  83                                  ; push          %rbx
11282  DB  72,131,228,224                      ; and           $0xffffffffffffffe0,%rsp
11283  DB  72,129,236,192,0,0,0                ; sub           $0xc0,%rsp
11284  DB  197,252,41,188,36,128,0,0,0         ; vmovaps       %ymm7,0x80(%rsp)
11285  DB  197,252,41,116,36,96                ; vmovaps       %ymm6,0x60(%rsp)
11286  DB  197,252,41,108,36,64                ; vmovaps       %ymm5,0x40(%rsp)
11287  DB  197,252,41,100,36,32                ; vmovaps       %ymm4,0x20(%rsp)
11288  DB  77,137,196                          ; mov           %r8,%r12
11289  DB  73,137,206                          ; mov           %rcx,%r14
11290  DB  73,137,215                          ; mov           %rdx,%r15
11291  DB  72,173                              ; lods          %ds:(%rsi),%rax
11292  DB  72,137,195                          ; mov           %rax,%rbx
11293  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
11294  DB  197,252,21,193                      ; vunpckhps     %ymm1,%ymm0,%ymm0
11295  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
11296  DB  197,236,21,211                      ; vunpckhps     %ymm3,%ymm2,%ymm2
11297  DB  197,221,20,217                      ; vunpcklpd     %ymm1,%ymm4,%ymm3
11298  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
11299  DB  197,253,20,226                      ; vunpcklpd     %ymm2,%ymm0,%ymm4
11300  DB  197,253,21,194                      ; vunpckhpd     %ymm2,%ymm0,%ymm0
11301  DB  196,227,101,24,209,1                ; vinsertf128   $0x1,%xmm1,%ymm3,%ymm2
11302  DB  196,227,93,24,232,1                 ; vinsertf128   $0x1,%xmm0,%ymm4,%ymm5
11303  DB  196,227,101,6,201,49                ; vperm2f128    $0x31,%ymm1,%ymm3,%ymm1
11304  DB  196,227,93,6,192,49                 ; vperm2f128    $0x31,%ymm0,%ymm4,%ymm0
11305  DB  197,253,17,83,8                     ; vmovupd       %ymm2,0x8(%rbx)
11306  DB  197,253,17,107,40                   ; vmovupd       %ymm5,0x28(%rbx)
11307  DB  197,253,17,75,72                    ; vmovupd       %ymm1,0x48(%rbx)
11308  DB  197,253,17,67,104                   ; vmovupd       %ymm0,0x68(%rbx)
11309  DB  77,133,228                          ; test          %r12,%r12
11310  DB  186,8,0,0,0                         ; mov           $0x8,%edx
11311  DB  65,15,69,212                        ; cmovne        %r12d,%edx
11312  DB  72,137,217                          ; mov           %rbx,%rcx
11313  DB  197,248,119                         ; vzeroupper
11314  DB  255,19                              ; callq         *(%rbx)
11315  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
11316  DB  197,248,16,0                        ; vmovups       (%rax),%xmm0
11317  DB  197,248,16,72,16                    ; vmovups       0x10(%rax),%xmm1
11318  DB  197,248,16,80,32                    ; vmovups       0x20(%rax),%xmm2
11319  DB  197,248,16,88,48                    ; vmovups       0x30(%rax),%xmm3
11320  DB  196,227,101,24,88,112,1             ; vinsertf128   $0x1,0x70(%rax),%ymm3,%ymm3
11321  DB  196,227,109,24,80,96,1              ; vinsertf128   $0x1,0x60(%rax),%ymm2,%ymm2
11322  DB  196,227,117,24,72,80,1              ; vinsertf128   $0x1,0x50(%rax),%ymm1,%ymm1
11323  DB  196,227,125,24,64,64,1              ; vinsertf128   $0x1,0x40(%rax),%ymm0,%ymm0
11324  DB  197,252,20,225                      ; vunpcklps     %ymm1,%ymm0,%ymm4
11325  DB  197,252,21,233                      ; vunpckhps     %ymm1,%ymm0,%ymm5
11326  DB  197,236,20,203                      ; vunpcklps     %ymm3,%ymm2,%ymm1
11327  DB  197,236,21,219                      ; vunpckhps     %ymm3,%ymm2,%ymm3
11328  DB  197,221,20,193                      ; vunpcklpd     %ymm1,%ymm4,%ymm0
11329  DB  197,221,21,201                      ; vunpckhpd     %ymm1,%ymm4,%ymm1
11330  DB  197,213,20,211                      ; vunpcklpd     %ymm3,%ymm5,%ymm2
11331  DB  197,213,21,219                      ; vunpckhpd     %ymm3,%ymm5,%ymm3
11332  DB  72,173                              ; lods          %ds:(%rsi),%rax
11333  DB  76,137,250                          ; mov           %r15,%rdx
11334  DB  76,137,241                          ; mov           %r14,%rcx
11335  DB  77,137,224                          ; mov           %r12,%r8
11336  DB  197,252,40,100,36,32                ; vmovaps       0x20(%rsp),%ymm4
11337  DB  197,252,40,108,36,64                ; vmovaps       0x40(%rsp),%ymm5
11338  DB  197,252,40,116,36,96                ; vmovaps       0x60(%rsp),%ymm6
11339  DB  197,252,40,188,36,128,0,0,0         ; vmovaps       0x80(%rsp),%ymm7
11340  DB  72,141,101,224                      ; lea           -0x20(%rbp),%rsp
11341  DB  91                                  ; pop           %rbx
11342  DB  65,92                               ; pop           %r12
11343  DB  65,94                               ; pop           %r14
11344  DB  65,95                               ; pop           %r15
11345  DB  93                                  ; pop           %rbp
11346  DB  255,224                             ; jmpq          *%rax
11347
11348ALIGN 4
11349  DB  0,0                                 ; add           %al,(%rax)
11350  DB  0,63                                ; add           %bh,(%rdi)
11351  DB  0,0                                 ; add           %al,(%rax)
11352  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
11353  DB  0,0                                 ; add           %al,(%rax)
11354  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
11355  DB  0,0                                 ; add           %al,(%rax)
11356  DB  2,0                                 ; add           (%rax),%al
11357  DB  0,0                                 ; add           %al,(%rax)
11358  DB  0,0                                 ; add           %al,(%rax)
11359  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
11360  DB  252                                 ; cld
11361  DB  190,0,0,128,63                      ; mov           $0x3f800000,%esi
11362  DB  0,0                                 ; add           %al,(%rax)
11363  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11364  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
11365  DB  63                                  ; (bad)
11366  DB  0,0                                 ; add           %al,(%rax)
11367  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11368  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
11369  DB  63                                  ; (bad)
11370  DB  0,0                                 ; add           %al,(%rax)
11371  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11372  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
11373  DB  63                                  ; (bad)
11374  DB  0,0                                 ; add           %al,(%rax)
11375  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11376  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
11377  DB  63                                  ; (bad)
11378  DB  0,0                                 ; add           %al,(%rax)
11379  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11380  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
11381  DB  63                                  ; (bad)
11382  DB  0,0                                 ; add           %al,(%rax)
11383  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11384  DB  0,128,191,0,0,224                   ; add           %al,-0x1fffff41(%rax)
11385  DB  64,154                              ; rex           (bad)
11386  DB  153                                 ; cltd
11387  DB  153                                 ; cltd
11388  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
11389  DB  71,225,61                           ; rex.RXB       loope 6a61 <.literal4+0xb1>
11390  DB  0,0                                 ; add           %al,(%rax)
11391  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
11392  DB  153                                 ; cltd
11393  DB  153                                 ; cltd
11394  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
11395  DB  71,225,61                           ; rex.RXB       loope 6a71 <.literal4+0xc1>
11396  DB  0,0                                 ; add           %al,(%rax)
11397  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
11398  DB  153                                 ; cltd
11399  DB  153                                 ; cltd
11400  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
11401  DB  71,225,61                           ; rex.RXB       loope 6a81 <.literal4+0xd1>
11402  DB  0,0                                 ; add           %al,(%rax)
11403  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
11404  DB  153                                 ; cltd
11405  DB  153                                 ; cltd
11406  DB  62,61,10,23,63,174                  ; ds            cmp $0xae3f170a,%eax
11407  DB  71,225,61                           ; rex.RXB       loope 6a91 <.literal4+0xe1>
11408  DB  0,0                                 ; add           %al,(%rax)
11409  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11410  DB  0,128,63,0,0,127                    ; add           %al,0x7f00003f(%rax)
11411  DB  67,0,0                              ; rex.XB        add %al,(%r8)
11412  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11413  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
11414  DB  63                                  ; (bad)
11415  DB  145                                 ; xchg          %eax,%ecx
11416  DB  131,158,61,154,153,153,62           ; sbbl          $0x3e,-0x666665c3(%rsi)
11417  DB  92                                  ; pop           %rsp
11418  DB  143                                 ; (bad)
11419  DB  50,63                               ; xor           (%rdi),%bh
11420  DB  10,215                              ; or            %bh,%dl
11421  DB  35,59                               ; and           (%rbx),%edi
11422  DB  174                                 ; scas          %es:(%rdi),%al
11423  DB  71,97                               ; rex.RXB       (bad)
11424  DB  61,82,184,78,65                     ; cmp           $0x414eb852,%eax
11425  DB  57,215                              ; cmp           %edx,%edi
11426  DB  32,187,186,159,98,60                ; and           %bh,0x3c629fba(%rbx)
11427  DB  109                                 ; insl          (%dx),%es:(%rdi)
11428  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
11429  DB  144                                 ; nop
11430  DB  63                                  ; (bad)
11431  DB  252                                 ; cld
11432  DB  191,16,62,168,177                   ; mov           $0xb1a83e10,%edi
11433  DB  152                                 ; cwtl
11434  DB  59,0                                ; cmp           (%rax),%eax
11435  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
11436  DB  64,0,0                              ; add           %al,(%rax)
11437  DB  0,64,0                              ; add           %al,0x0(%rax)
11438  DB  0,128,64,171,170,42                 ; add           %al,0x2aaaab40(%rax)
11439  DB  62,0,0                              ; add           %al,%ds:(%rax)
11440  DB  0,63                                ; add           %bh,(%rdi)
11441  DB  0,0                                 ; add           %al,(%rax)
11442  DB  0,63                                ; add           %bh,(%rdi)
11443  DB  171                                 ; stos          %eax,%es:(%rdi)
11444  DB  170                                 ; stos          %al,%es:(%rdi)
11445  DB  170                                 ; stos          %al,%es:(%rdi)
11446  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
11447  DB  170                                 ; stos          %al,%es:(%rdi)
11448  DB  42,63                               ; sub           (%rdi),%bh
11449  DB  0,0                                 ; add           %al,(%rax)
11450  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
11451  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
11452  DB  42,62                               ; sub           (%rsi),%bh
11453  DB  171                                 ; stos          %eax,%es:(%rdi)
11454  DB  170                                 ; stos          %al,%es:(%rdi)
11455  DB  170                                 ; stos          %al,%es:(%rdi)
11456  DB  190,129,128,128,59                  ; mov           $0x3b808081,%esi
11457  DB  129,128,128,59,0,248,0,0,8,33       ; addl          $0x21080000,-0x7ffc480(%rax)
11458  DB  132,55                              ; test          %dh,(%rdi)
11459  DB  224,7                               ; loopne        6ae5 <.literal4+0x135>
11460  DB  0,0                                 ; add           %al,(%rax)
11461  DB  33,8                                ; and           %ecx,(%rax)
11462  DB  2,58                                ; add           (%rdx),%bh
11463  DB  31                                  ; (bad)
11464  DB  0,0                                 ; add           %al,(%rax)
11465  DB  0,8                                 ; add           %cl,(%rax)
11466  DB  33,4,61,129,128,128,59              ; and           %eax,0x3b808081(,%rdi,1)
11467  DB  128,0,128                           ; addb          $0x80,(%rax)
11468  DB  55                                  ; (bad)
11469  DB  0,0                                 ; add           %al,(%rax)
11470  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11471  DB  0,127,67                            ; add           %bh,0x43(%rdi)
11472  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
11473  DB  0,52,255                            ; add           %dh,(%rdi,%rdi,8)
11474  DB  255                                 ; (bad)
11475  DB  127,0                               ; jg            6b0c <.literal4+0x15c>
11476  DB  0,0                                 ; add           %al,(%rax)
11477  DB  0,63                                ; add           %bh,(%rdi)
11478  DB  119,115                             ; ja            6b85 <.literal4+0x1d5>
11479  DB  248                                 ; clc
11480  DB  194,117,191                         ; retq          $0xbf75
11481  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
11482  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
11483  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
11484  DB  154                                 ; (bad)
11485  DB  64,254                              ; rex           (bad)
11486  DB  210,221                             ; rcr           %cl,%ch
11487  DB  65,0,0                              ; add           %al,(%r8)
11488  DB  0,75,0                              ; add           %cl,0x0(%rbx)
11489  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
11490  DB  52,255                              ; xor           $0xff,%al
11491  DB  255                                 ; (bad)
11492  DB  127,0                               ; jg            6b40 <.literal4+0x190>
11493  DB  0,0                                 ; add           %al,(%rax)
11494  DB  0,63                                ; add           %bh,(%rdi)
11495  DB  119,115                             ; ja            6bb9 <.literal4+0x209>
11496  DB  248                                 ; clc
11497  DB  194,117,191                         ; retq          $0xbf75
11498  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
11499  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
11500  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
11501  DB  154                                 ; (bad)
11502  DB  64,254                              ; rex           (bad)
11503  DB  210,221                             ; rcr           %cl,%ch
11504  DB  65,0,0                              ; add           %al,(%r8)
11505  DB  0,75,0                              ; add           %cl,0x0(%rbx)
11506  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
11507  DB  52,255                              ; xor           $0xff,%al
11508  DB  255                                 ; (bad)
11509  DB  127,0                               ; jg            6b74 <.literal4+0x1c4>
11510  DB  0,0                                 ; add           %al,(%rax)
11511  DB  0,63                                ; add           %bh,(%rdi)
11512  DB  119,115                             ; ja            6bed <.literal4+0x23d>
11513  DB  248                                 ; clc
11514  DB  194,117,191                         ; retq          $0xbf75
11515  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
11516  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
11517  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
11518  DB  154                                 ; (bad)
11519  DB  64,254                              ; rex           (bad)
11520  DB  210,221                             ; rcr           %cl,%ch
11521  DB  65,0,0                              ; add           %al,(%r8)
11522  DB  0,75,0                              ; add           %cl,0x0(%rbx)
11523  DB  0,128,63,0,0,0                      ; add           %al,0x3f(%rax)
11524  DB  52,255                              ; xor           $0xff,%al
11525  DB  255                                 ; (bad)
11526  DB  127,0                               ; jg            6ba8 <.literal4+0x1f8>
11527  DB  0,0                                 ; add           %al,(%rax)
11528  DB  0,63                                ; add           %bh,(%rdi)
11529  DB  119,115                             ; ja            6c21 <.literal4+0x271>
11530  DB  248                                 ; clc
11531  DB  194,117,191                         ; retq          $0xbf75
11532  DB  191,63,249,68,180                   ; mov           $0xb444f93f,%edi
11533  DB  62,163,233,220,63,81,140,242,66,141 ; movabs        %eax,%ds:0x8d42f28c513fdce9
11534  DB  188,190,63,248,245                  ; mov           $0xf5f83fbe,%esp
11535  DB  154                                 ; (bad)
11536  DB  64,254                              ; rex           (bad)
11537  DB  210,221                             ; rcr           %cl,%ch
11538  DB  65,0,0                              ; add           %al,(%r8)
11539  DB  0,75,0                              ; add           %cl,0x0(%rbx)
11540  DB  0,128,63,0,0,200                    ; add           %al,-0x37ffffc1(%rax)
11541  DB  66,0,0                              ; rex.X         add %al,(%rax)
11542  DB  127,67                              ; jg            6c1f <.literal4+0x26f>
11543  DB  0,0                                 ; add           %al,(%rax)
11544  DB  0,195                               ; add           %al,%bl
11545  DB  0,0                                 ; add           %al,(%rax)
11546  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
11547  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
11548  DB  59,10                               ; cmp           (%rdx),%ecx
11549  DB  215                                 ; xlat          %ds:(%rbx)
11550  DB  163,59,194,24,17,60,203,61,13       ; movabs        %eax,0xd3dcb3c1118c23b
11551  DB  190,80,128,3,62                     ; mov           $0x3e038050,%esi
11552  DB  31                                  ; (bad)
11553  DB  215                                 ; xlat          %ds:(%rbx)
11554  DB  118,63                              ; jbe           6c3f <.literal4+0x28f>
11555  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
11556  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
11557  DB  127,67                              ; jg            6c53 <.literal4+0x2a3>
11558  DB  129,128,128,59,0,0,128,63,129,128   ; addl          $0x80813f80,0x3b80(%rax)
11559  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
11560  DB  0,128,63,129,128,128                ; add           %al,-0x7f7f7ec1(%rax)
11561  DB  59,0                                ; cmp           (%rax),%eax
11562  DB  248                                 ; clc
11563  DB  0,0                                 ; add           %al,(%rax)
11564  DB  8,33                                ; or            %ah,(%rcx)
11565  DB  132,55                              ; test          %dh,(%rdi)
11566  DB  224,7                               ; loopne        6c35 <.literal4+0x285>
11567  DB  0,0                                 ; add           %al,(%rax)
11568  DB  33,8                                ; and           %ecx,(%rax)
11569  DB  2,58                                ; add           (%rdx),%bh
11570  DB  31                                  ; (bad)
11571  DB  0,0                                 ; add           %al,(%rax)
11572  DB  0,8                                 ; add           %cl,(%rax)
11573  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
11574  DB  0,248                               ; add           %bh,%al
11575  DB  0,0                                 ; add           %al,(%rax)
11576  DB  8,33                                ; or            %ah,(%rcx)
11577  DB  132,55                              ; test          %dh,(%rdi)
11578  DB  224,7                               ; loopne        6c51 <.literal4+0x2a1>
11579  DB  0,0                                 ; add           %al,(%rax)
11580  DB  33,8                                ; and           %ecx,(%rax)
11581  DB  2,58                                ; add           (%rdx),%bh
11582  DB  31                                  ; (bad)
11583  DB  0,0                                 ; add           %al,(%rax)
11584  DB  0,8                                 ; add           %cl,(%rax)
11585  DB  33,4,61,0,0,128,63                  ; and           %eax,0x3f800000(,%rdi,1)
11586  DB  0,0                                 ; add           %al,(%rax)
11587  DB  248                                 ; clc
11588  DB  65,0,0                              ; add           %al,(%r8)
11589  DB  124,66                              ; jl            6ca6 <.literal4+0x2f6>
11590  DB  0,240                               ; add           %dh,%al
11591  DB  0,0                                 ; add           %al,(%rax)
11592  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
11593  DB  0,0                                 ; add           %al,(%rax)
11594  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
11595  DB  0,0                                 ; add           %al,(%rax)
11596  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
11597  DB  0,0                                 ; add           %al,(%rax)
11598  DB  137,136,136,61,0,240                ; mov           %ecx,-0xfffc278(%rax)
11599  DB  0,0                                 ; add           %al,(%rax)
11600  DB  137,136,136,55,0,15                 ; mov           %ecx,0xf003788(%rax)
11601  DB  0,0                                 ; add           %al,(%rax)
11602  DB  137,136,136,57,240,0                ; mov           %ecx,0xf03988(%rax)
11603  DB  0,0                                 ; add           %al,(%rax)
11604  DB  137,136,136,59,15,0                 ; mov           %ecx,0xf3b88(%rax)
11605  DB  0,0                                 ; add           %al,(%rax)
11606  DB  137,136,136,61,0,0                  ; mov           %ecx,0x3d88(%rax)
11607  DB  112,65                              ; jo            6ce9 <.literal4+0x339>
11608  DB  129,128,128,59,129,128,128,59,0,0   ; addl          $0x3b80,-0x7f7ec480(%rax)
11609  DB  127,67                              ; jg            6cf7 <.literal4+0x347>
11610  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
11611  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
11612  DB  0,0                                 ; add           %al,(%rax)
11613  DB  0,56                                ; add           %bh,(%rax)
11614  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
11615  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
11616  DB  0,0                                 ; add           %al,(%rax)
11617  DB  0,56                                ; add           %bh,(%rax)
11618  DB  0,0                                 ; add           %al,(%rax)
11619  DB  0,128,0,0,128,56                    ; add           %al,0x38800000(%rax)
11620  DB  0,64,254                            ; add           %al,-0x2(%rax)
11621  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
11622  DB  0,128,55,0,0,128                    ; add           %al,-0x7fffffc9(%rax)
11623  DB  63                                  ; (bad)
11624  DB  0,255                               ; add           %bh,%bh
11625  DB  127,71                              ; jg            6d37 <.literal4+0x387>
11626  DB  0,0                                 ; add           %al,(%rax)
11627  DB  0,63                                ; add           %bh,(%rdi)
11628  DB  0,0                                 ; add           %al,(%rax)
11629  DB  0,63                                ; add           %bh,(%rdi)
11630  DB  0,0                                 ; add           %al,(%rax)
11631  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11632  DB  0,128,191,0,0,0                     ; add           %al,0xbf(%rax)
11633  DB  63                                  ; (bad)
11634  DB  208                                 ; (bad)
11635  DB  179,89                              ; mov           $0x59,%bl
11636  DB  62,89                               ; ds            pop %rcx
11637  DB  23                                  ; (bad)
11638  DB  55                                  ; (bad)
11639  DB  63                                  ; (bad)
11640  DB  152                                 ; cwtl
11641  DB  221,147,61,45,16,17                 ; fstl          0x11102d3d(%rbx)
11642  DB  192,18,120                          ; rclb          $0x78,(%rdx)
11643  DB  57,64,32                            ; cmp           %eax,0x20(%rax)
11644  DB  148                                 ; xchg          %eax,%esp
11645  DB  90                                  ; pop           %rdx
11646  DB  62,4,157                            ; ds            add $0x9d,%al
11647  DB  30                                  ; (bad)
11648  DB  62,0,24                             ; add           %bl,%ds:(%rax)
11649  DB  161,57,1,0,0,0,111,43,231           ; movabs        0xe72b6f0000000139,%eax
11650  DB  187,159,215,202,60                  ; mov           $0x3ccad79f,%ebx
11651  DB  212                                 ; (bad)
11652  DB  100,84                              ; fs            push %rsp
11653  DB  189,169,240,34,62                   ; mov           $0x3e22f0a9,%ebp
11654  DB  0,0                                 ; add           %al,(%rax)
11655  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
11656  DB  0,0                                 ; add           %al,(%rax)
11657  DB  63                                  ; (bad)
11658  DB  0,0                                 ; add           %al,(%rax)
11659  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
11660  DB  0,0                                 ; add           %al,(%rax)
11661  DB  63                                  ; (bad)
11662  DB  0,0                                 ; add           %al,(%rax)
11663  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
11664  DB  0,0                                 ; add           %al,(%rax)
11665  DB  0,63                                ; add           %bh,(%rdi)
11666  DB  0,0                                 ; add           %al,(%rax)
11667  DB  0,191,0,0,128,63                    ; add           %bh,0x3f800000(%rdi)
11668  DB  0,0                                 ; add           %al,(%rax)
11669  DB  0,63                                ; add           %bh,(%rdi)
11670  DB  0,0                                 ; add           %al,(%rax)
11671  DB  192,191,0,0,128,63,114              ; sarb          $0x72,0x3f800000(%rdi)
11672  DB  28,199                              ; sbb           $0xc7,%al
11673  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
11674  DB  170                                 ; stos          %al,%es:(%rdi)
11675  DB  170                                 ; stos          %al,%es:(%rdi)
11676  DB  190,0,0,0,191                       ; mov           $0xbf000000,%esi
11677  DB  0,0                                 ; add           %al,(%rax)
11678  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
11679  DB  85                                  ; push          %rbp
11680  DB  149                                 ; xchg          %eax,%ebp
11681  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
11682  DB  0,0                                 ; add           %al,(%rax)
11683  DB  0,63                                ; add           %bh,(%rdi)
11684  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
11685  DB  0,63                                ; add           %bh,(%rdi)
11686  DB  85                                  ; push          %rbp
11687  DB  85                                  ; push          %rbp
11688  DB  149                                 ; xchg          %eax,%ebp
11689  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
11690  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
11691  DB  192,63,114                          ; sarb          $0x72,(%rdi)
11692  DB  28,199                              ; sbb           $0xc7,%al
11693  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
11694  DB  170                                 ; stos          %al,%es:(%rdi)
11695  DB  170                                 ; stos          %al,%es:(%rdi)
11696  DB  190,0,0,192,191                     ; mov           $0xbfc00000,%esi
11697  DB  0,0                                 ; add           %al,(%rax)
11698  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
11699  DB  28,199                              ; sbb           $0xc7,%al
11700  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
11701  DB  170                                 ; stos          %al,%es:(%rdi)
11702  DB  170                                 ; stos          %al,%es:(%rdi)
11703  DB  190,0,0,0,191                       ; mov           $0xbf000000,%esi
11704  DB  0,0                                 ; add           %al,(%rax)
11705  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
11706  DB  85                                  ; push          %rbp
11707  DB  149                                 ; xchg          %eax,%ebp
11708  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
11709  DB  0,0                                 ; add           %al,(%rax)
11710  DB  0,63                                ; add           %bh,(%rdi)
11711  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
11712  DB  0,63                                ; add           %bh,(%rdi)
11713  DB  85                                  ; push          %rbp
11714  DB  85                                  ; push          %rbp
11715  DB  149                                 ; xchg          %eax,%ebp
11716  DB  191,0,0,192,63                      ; mov           $0x3fc00000,%edi
11717  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
11718  DB  192,63,114                          ; sarb          $0x72,(%rdi)
11719  DB  28,199                              ; sbb           $0xc7,%al
11720  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
11721  DB  170                                 ; stos          %al,%es:(%rdi)
11722  DB  170                                 ; stos          %al,%es:(%rdi)
11723  DB  190                                 ; .byte         0xbe
11724
11725ALIGN 16
11726  DB  0,2                                 ; add           %al,(%rdx)
11727  DB  4,6                                 ; add           $0x6,%al
11728  DB  0,0                                 ; add           %al,(%rax)
11729  DB  0,0                                 ; add           %al,(%rax)
11730  DB  0,0                                 ; add           %al,(%rax)
11731  DB  0,0                                 ; add           %al,(%rax)
11732  DB  0,0                                 ; add           %al,(%rax)
11733  DB  0,0                                 ; add           %al,(%rax)
11734  DB  8,10                                ; or            %cl,(%rdx)
11735  DB  12,14                               ; or            $0xe,%al
11736  DB  0,0                                 ; add           %al,(%rax)
11737  DB  0,0                                 ; add           %al,(%rax)
11738  DB  0,0                                 ; add           %al,(%rax)
11739  DB  0,0                                 ; add           %al,(%rax)
11740  DB  0,0                                 ; add           %al,(%rax)
11741  DB  0,0                                 ; add           %al,(%rax)
11742  DB  255,0                               ; incl          (%rax)
11743  DB  255,0                               ; incl          (%rax)
11744  DB  255,0                               ; incl          (%rax)
11745  DB  255,0                               ; incl          (%rax)
11746  DB  255,0                               ; incl          (%rax)
11747  DB  255,0                               ; incl          (%rax)
11748  DB  255,0                               ; incl          (%rax)
11749  DB  255,0                               ; incl          (%rax)
11750  DB  255,0                               ; incl          (%rax)
11751  DB  255,0                               ; incl          (%rax)
11752  DB  255,0                               ; incl          (%rax)
11753  DB  255,0                               ; incl          (%rax)
11754  DB  255,0                               ; incl          (%rax)
11755  DB  255,0                               ; incl          (%rax)
11756  DB  255,0                               ; incl          (%rax)
11757  DB  255,0                               ; incl          (%rax)
11758  DB  0,2                                 ; add           %al,(%rdx)
11759  DB  4,6                                 ; add           $0x6,%al
11760  DB  0,0                                 ; add           %al,(%rax)
11761  DB  0,0                                 ; add           %al,(%rax)
11762  DB  0,0                                 ; add           %al,(%rax)
11763  DB  0,0                                 ; add           %al,(%rax)
11764  DB  0,0                                 ; add           %al,(%rax)
11765  DB  0,0                                 ; add           %al,(%rax)
11766  DB  8,10                                ; or            %cl,(%rdx)
11767  DB  12,14                               ; or            $0xe,%al
11768  DB  0,0                                 ; add           %al,(%rax)
11769  DB  0,0                                 ; add           %al,(%rax)
11770  DB  0,0                                 ; add           %al,(%rax)
11771  DB  0,0                                 ; add           %al,(%rax)
11772  DB  0,0                                 ; add           %al,(%rax)
11773  DB  0,0                                 ; add           %al,(%rax)
11774  DB  255,0                               ; incl          (%rax)
11775  DB  255,0                               ; incl          (%rax)
11776  DB  255,0                               ; incl          (%rax)
11777  DB  255,0                               ; incl          (%rax)
11778  DB  255,0                               ; incl          (%rax)
11779  DB  255,0                               ; incl          (%rax)
11780  DB  255,0                               ; incl          (%rax)
11781  DB  255,0                               ; incl          (%rax)
11782  DB  255,0                               ; incl          (%rax)
11783  DB  255,0                               ; incl          (%rax)
11784  DB  255,0                               ; incl          (%rax)
11785  DB  255,0                               ; incl          (%rax)
11786  DB  255,0                               ; incl          (%rax)
11787  DB  255,0                               ; incl          (%rax)
11788  DB  255,0                               ; incl          (%rax)
11789  DB  255,0                               ; incl          (%rax)
11790  DB  255,0                               ; incl          (%rax)
11791  DB  255,0                               ; incl          (%rax)
11792  DB  255,0                               ; incl          (%rax)
11793  DB  255,0                               ; incl          (%rax)
11794  DB  255,0                               ; incl          (%rax)
11795  DB  255,0                               ; incl          (%rax)
11796  DB  255,0                               ; incl          (%rax)
11797  DB  255,0                               ; incl          (%rax)
11798  DB  0,2                                 ; add           %al,(%rdx)
11799  DB  0,0                                 ; add           %al,(%rax)
11800  DB  0,0                                 ; add           %al,(%rax)
11801  DB  0,0                                 ; add           %al,(%rax)
11802  DB  0,0                                 ; add           %al,(%rax)
11803  DB  0,0                                 ; add           %al,(%rax)
11804  DB  0,0                                 ; add           %al,(%rax)
11805  DB  0,0                                 ; add           %al,(%rax)
11806  DB  0,2                                 ; add           %al,(%rdx)
11807  DB  4,6                                 ; add           $0x6,%al
11808  DB  0,0                                 ; add           %al,(%rax)
11809  DB  0,0                                 ; add           %al,(%rax)
11810  DB  0,0                                 ; add           %al,(%rax)
11811  DB  0,0                                 ; add           %al,(%rax)
11812  DB  0,0                                 ; add           %al,(%rax)
11813  DB  0,0                                 ; add           %al,(%rax)
11814  DB  255,0                               ; incl          (%rax)
11815  DB  255,0                               ; incl          (%rax)
11816  DB  255,0                               ; incl          (%rax)
11817  DB  255,0                               ; incl          (%rax)
11818  DB  255,0                               ; incl          (%rax)
11819  DB  255,0                               ; incl          (%rax)
11820  DB  255,0                               ; incl          (%rax)
11821  DB  255,0                               ; incl          (%rax)
11822  DB  0,2                                 ; add           %al,(%rdx)
11823  DB  4,6                                 ; add           $0x6,%al
11824  DB  0,0                                 ; add           %al,(%rax)
11825  DB  0,0                                 ; add           %al,(%rax)
11826  DB  0,0                                 ; add           %al,(%rax)
11827  DB  0,0                                 ; add           %al,(%rax)
11828  DB  0,0                                 ; add           %al,(%rax)
11829  DB  0,0                                 ; add           %al,(%rax)
11830  DB  8,10                                ; or            %cl,(%rdx)
11831  DB  12,14                               ; or            $0xe,%al
11832  DB  0,0                                 ; add           %al,(%rax)
11833  DB  0,0                                 ; add           %al,(%rax)
11834  DB  0,0                                 ; add           %al,(%rax)
11835  DB  0,0                                 ; add           %al,(%rax)
11836  DB  0,0                                 ; add           %al,(%rax)
11837  DB  0,0                                 ; add           %al,(%rax)
11838  DB  0,2                                 ; add           %al,(%rdx)
11839  DB  4,6                                 ; add           $0x6,%al
11840  DB  0,0                                 ; add           %al,(%rax)
11841  DB  0,0                                 ; add           %al,(%rax)
11842  DB  0,0                                 ; add           %al,(%rax)
11843  DB  0,0                                 ; add           %al,(%rax)
11844  DB  0,0                                 ; add           %al,(%rax)
11845  DB  0,0                                 ; add           %al,(%rax)
11846  DB  8,10                                ; or            %cl,(%rdx)
11847  DB  12,14                               ; or            $0xe,%al
11848  DB  0,0                                 ; add           %al,(%rax)
11849  DB  0,0                                 ; add           %al,(%rax)
11850  DB  0,0                                 ; add           %al,(%rax)
11851  DB  0,0                                 ; add           %al,(%rax)
11852  DB  0,0                                 ; add           %al,(%rax)
11853  DB  0,0                                 ; add           %al,(%rax)
11854
11855ALIGN 32
11856  DB  255,0                               ; incl          (%rax)
11857  DB  0,0                                 ; add           %al,(%rax)
11858  DB  255,0                               ; incl          (%rax)
11859  DB  0,0                                 ; add           %al,(%rax)
11860  DB  255,0                               ; incl          (%rax)
11861  DB  0,0                                 ; add           %al,(%rax)
11862  DB  255,0                               ; incl          (%rax)
11863  DB  0,0                                 ; add           %al,(%rax)
11864  DB  255,0                               ; incl          (%rax)
11865  DB  0,0                                 ; add           %al,(%rax)
11866  DB  255,0                               ; incl          (%rax)
11867  DB  0,0                                 ; add           %al,(%rax)
11868  DB  255,0                               ; incl          (%rax)
11869  DB  0,0                                 ; add           %al,(%rax)
11870  DB  255,0                               ; incl          (%rax)
11871  DB  0,0                                 ; add           %al,(%rax)
11872  DB  255,0                               ; incl          (%rax)
11873  DB  0,0                                 ; add           %al,(%rax)
11874  DB  255,0                               ; incl          (%rax)
11875  DB  0,0                                 ; add           %al,(%rax)
11876  DB  255,0                               ; incl          (%rax)
11877  DB  0,0                                 ; add           %al,(%rax)
11878  DB  255,0                               ; incl          (%rax)
11879  DB  0,0                                 ; add           %al,(%rax)
11880  DB  255,0                               ; incl          (%rax)
11881  DB  0,0                                 ; add           %al,(%rax)
11882  DB  255,0                               ; incl          (%rax)
11883  DB  0,0                                 ; add           %al,(%rax)
11884  DB  255,0                               ; incl          (%rax)
11885  DB  0,0                                 ; add           %al,(%rax)
11886  DB  255,0                               ; incl          (%rax)
11887  DB  0,0                                 ; add           %al,(%rax)
11888  DB  255,0                               ; incl          (%rax)
11889  DB  0,0                                 ; add           %al,(%rax)
11890  DB  255,0                               ; incl          (%rax)
11891  DB  0,0                                 ; add           %al,(%rax)
11892  DB  255,0                               ; incl          (%rax)
11893  DB  0,0                                 ; add           %al,(%rax)
11894  DB  255,0                               ; incl          (%rax)
11895  DB  0,0                                 ; add           %al,(%rax)
11896  DB  255,0                               ; incl          (%rax)
11897  DB  0,0                                 ; add           %al,(%rax)
11898  DB  255,0                               ; incl          (%rax)
11899  DB  0,0                                 ; add           %al,(%rax)
11900  DB  255,0                               ; incl          (%rax)
11901  DB  0,0                                 ; add           %al,(%rax)
11902  DB  255,0                               ; incl          (%rax)
11903  DB  0,0                                 ; add           %al,(%rax)
11904  DB  255,0                               ; incl          (%rax)
11905  DB  0,0                                 ; add           %al,(%rax)
11906  DB  255,0                               ; incl          (%rax)
11907  DB  0,0                                 ; add           %al,(%rax)
11908  DB  255,0                               ; incl          (%rax)
11909  DB  0,0                                 ; add           %al,(%rax)
11910  DB  255,0                               ; incl          (%rax)
11911  DB  0,0                                 ; add           %al,(%rax)
11912  DB  255,0                               ; incl          (%rax)
11913  DB  0,0                                 ; add           %al,(%rax)
11914  DB  255,0                               ; incl          (%rax)
11915  DB  0,0                                 ; add           %al,(%rax)
11916  DB  255,0                               ; incl          (%rax)
11917  DB  0,0                                 ; add           %al,(%rax)
11918  DB  255,0                               ; incl          (%rax)
11919  DB  0,0                                 ; add           %al,(%rax)
11920  DB  255,0                               ; incl          (%rax)
11921  DB  0,0                                 ; add           %al,(%rax)
11922  DB  255,0                               ; incl          (%rax)
11923  DB  0,0                                 ; add           %al,(%rax)
11924  DB  255,0                               ; incl          (%rax)
11925  DB  0,0                                 ; add           %al,(%rax)
11926  DB  255,0                               ; incl          (%rax)
11927  DB  0,0                                 ; add           %al,(%rax)
11928  DB  255,0                               ; incl          (%rax)
11929  DB  0,0                                 ; add           %al,(%rax)
11930  DB  255,0                               ; incl          (%rax)
11931  DB  0,0                                 ; add           %al,(%rax)
11932  DB  255,0                               ; incl          (%rax)
11933  DB  0,0                                 ; add           %al,(%rax)
11934  DB  255,0                               ; incl          (%rax)
11935  DB  0,0                                 ; add           %al,(%rax)
11936ALIGN 32
11937
11938PUBLIC _sk_start_pipeline_sse41
11939_sk_start_pipeline_sse41 LABEL PROC
11940  DB  85                                  ; push          %rbp
11941  DB  72,137,229                          ; mov           %rsp,%rbp
11942  DB  65,87                               ; push          %r15
11943  DB  65,86                               ; push          %r14
11944  DB  65,85                               ; push          %r13
11945  DB  65,84                               ; push          %r12
11946  DB  86                                  ; push          %rsi
11947  DB  87                                  ; push          %rdi
11948  DB  83                                  ; push          %rbx
11949  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
11950  DB  68,15,41,125,176                    ; movaps        %xmm15,-0x50(%rbp)
11951  DB  68,15,41,117,160                    ; movaps        %xmm14,-0x60(%rbp)
11952  DB  68,15,41,109,144                    ; movaps        %xmm13,-0x70(%rbp)
11953  DB  68,15,41,101,128                    ; movaps        %xmm12,-0x80(%rbp)
11954  DB  68,15,41,157,112,255,255,255        ; movaps        %xmm11,-0x90(%rbp)
11955  DB  68,15,41,149,96,255,255,255         ; movaps        %xmm10,-0xa0(%rbp)
11956  DB  68,15,41,141,80,255,255,255         ; movaps        %xmm9,-0xb0(%rbp)
11957  DB  68,15,41,133,64,255,255,255         ; movaps        %xmm8,-0xc0(%rbp)
11958  DB  15,41,189,48,255,255,255            ; movaps        %xmm7,-0xd0(%rbp)
11959  DB  15,41,181,32,255,255,255            ; movaps        %xmm6,-0xe0(%rbp)
11960  DB  72,137,211                          ; mov           %rdx,%rbx
11961  DB  73,137,207                          ; mov           %rcx,%r15
11962  DB  76,139,117,48                       ; mov           0x30(%rbp),%r14
11963  DB  76,137,206                          ; mov           %r9,%rsi
11964  DB  72,173                              ; lods          %ds:(%rsi),%rax
11965  DB  73,137,197                          ; mov           %rax,%r13
11966  DB  73,137,244                          ; mov           %rsi,%r12
11967  DB  73,141,79,4                         ; lea           0x4(%r15),%rcx
11968  DB  76,57,193                           ; cmp           %r8,%rcx
11969  DB  118,5                               ; jbe           7b <_sk_start_pipeline_sse41+0x7b>
11970  DB  76,137,250                          ; mov           %r15,%rdx
11971  DB  235,75                              ; jmp           c6 <_sk_start_pipeline_sse41+0xc6>
11972  DB  76,137,133,24,255,255,255           ; mov           %r8,-0xe8(%rbp)
11973  DB  65,184,0,0,0,0                      ; mov           $0x0,%r8d
11974  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11975  DB  15,87,201                           ; xorps         %xmm1,%xmm1
11976  DB  15,87,210                           ; xorps         %xmm2,%xmm2
11977  DB  15,87,219                           ; xorps         %xmm3,%xmm3
11978  DB  15,87,228                           ; xorps         %xmm4,%xmm4
11979  DB  15,87,237                           ; xorps         %xmm5,%xmm5
11980  DB  15,87,246                           ; xorps         %xmm6,%xmm6
11981  DB  15,87,255                           ; xorps         %xmm7,%xmm7
11982  DB  76,137,247                          ; mov           %r14,%rdi
11983  DB  76,137,230                          ; mov           %r12,%rsi
11984  DB  76,137,250                          ; mov           %r15,%rdx
11985  DB  72,137,217                          ; mov           %rbx,%rcx
11986  DB  65,255,213                          ; callq         *%r13
11987  DB  76,139,133,24,255,255,255           ; mov           -0xe8(%rbp),%r8
11988  DB  73,141,87,4                         ; lea           0x4(%r15),%rdx
11989  DB  73,131,199,8                        ; add           $0x8,%r15
11990  DB  77,57,199                           ; cmp           %r8,%r15
11991  DB  73,137,215                          ; mov           %rdx,%r15
11992  DB  118,188                             ; jbe           82 <_sk_start_pipeline_sse41+0x82>
11993  DB  73,41,208                           ; sub           %rdx,%r8
11994  DB  116,36                              ; je            ef <_sk_start_pipeline_sse41+0xef>
11995  DB  15,87,192                           ; xorps         %xmm0,%xmm0
11996  DB  15,87,201                           ; xorps         %xmm1,%xmm1
11997  DB  15,87,210                           ; xorps         %xmm2,%xmm2
11998  DB  15,87,219                           ; xorps         %xmm3,%xmm3
11999  DB  15,87,228                           ; xorps         %xmm4,%xmm4
12000  DB  15,87,237                           ; xorps         %xmm5,%xmm5
12001  DB  15,87,246                           ; xorps         %xmm6,%xmm6
12002  DB  15,87,255                           ; xorps         %xmm7,%xmm7
12003  DB  76,137,247                          ; mov           %r14,%rdi
12004  DB  76,137,230                          ; mov           %r12,%rsi
12005  DB  72,137,217                          ; mov           %rbx,%rcx
12006  DB  65,255,213                          ; callq         *%r13
12007  DB  15,40,181,32,255,255,255            ; movaps        -0xe0(%rbp),%xmm6
12008  DB  15,40,189,48,255,255,255            ; movaps        -0xd0(%rbp),%xmm7
12009  DB  68,15,40,133,64,255,255,255         ; movaps        -0xc0(%rbp),%xmm8
12010  DB  68,15,40,141,80,255,255,255         ; movaps        -0xb0(%rbp),%xmm9
12011  DB  68,15,40,149,96,255,255,255         ; movaps        -0xa0(%rbp),%xmm10
12012  DB  68,15,40,157,112,255,255,255        ; movaps        -0x90(%rbp),%xmm11
12013  DB  68,15,40,101,128                    ; movaps        -0x80(%rbp),%xmm12
12014  DB  68,15,40,109,144                    ; movaps        -0x70(%rbp),%xmm13
12015  DB  68,15,40,117,160                    ; movaps        -0x60(%rbp),%xmm14
12016  DB  68,15,40,125,176                    ; movaps        -0x50(%rbp),%xmm15
12017  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
12018  DB  91                                  ; pop           %rbx
12019  DB  95                                  ; pop           %rdi
12020  DB  94                                  ; pop           %rsi
12021  DB  65,92                               ; pop           %r12
12022  DB  65,93                               ; pop           %r13
12023  DB  65,94                               ; pop           %r14
12024  DB  65,95                               ; pop           %r15
12025  DB  93                                  ; pop           %rbp
12026  DB  195                                 ; retq
12027
12028PUBLIC _sk_just_return_sse41
12029_sk_just_return_sse41 LABEL PROC
12030  DB  195                                 ; retq
12031
12032PUBLIC _sk_seed_shader_sse41
12033_sk_seed_shader_sse41 LABEL PROC
12034  DB  102,15,110,194                      ; movd          %edx,%xmm0
12035  DB  102,15,112,192,0                    ; pshufd        $0x0,%xmm0,%xmm0
12036  DB  15,91,200                           ; cvtdq2ps      %xmm0,%xmm1
12037  DB  15,40,21,247,80,0,0                 ; movaps        0x50f7(%rip),%xmm2        # 5250 <_sk_callback_sse41+0xd0>
12038  DB  15,88,202                           ; addps         %xmm2,%xmm1
12039  DB  15,16,7                             ; movups        (%rdi),%xmm0
12040  DB  15,88,193                           ; addps         %xmm1,%xmm0
12041  DB  102,15,110,201                      ; movd          %ecx,%xmm1
12042  DB  102,15,112,201,0                    ; pshufd        $0x0,%xmm1,%xmm1
12043  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
12044  DB  15,88,202                           ; addps         %xmm2,%xmm1
12045  DB  72,173                              ; lods          %ds:(%rsi),%rax
12046  DB  15,40,21,230,80,0,0                 ; movaps        0x50e6(%rip),%xmm2        # 5260 <_sk_callback_sse41+0xe0>
12047  DB  15,87,219                           ; xorps         %xmm3,%xmm3
12048  DB  15,87,228                           ; xorps         %xmm4,%xmm4
12049  DB  15,87,237                           ; xorps         %xmm5,%xmm5
12050  DB  15,87,246                           ; xorps         %xmm6,%xmm6
12051  DB  15,87,255                           ; xorps         %xmm7,%xmm7
12052  DB  255,224                             ; jmpq          *%rax
12053
12054PUBLIC _sk_dither_sse41
12055_sk_dither_sse41 LABEL PROC
12056  DB  72,173                              ; lods          %ds:(%rsi),%rax
12057  DB  102,68,15,110,194                   ; movd          %edx,%xmm8
12058  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
12059  DB  243,68,15,111,79,32                 ; movdqu        0x20(%rdi),%xmm9
12060  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
12061  DB  102,68,15,110,193                   ; movd          %ecx,%xmm8
12062  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
12063  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
12064  DB  102,68,15,111,21,180,80,0,0         ; movdqa        0x50b4(%rip),%xmm10        # 5270 <_sk_callback_sse41+0xf0>
12065  DB  102,69,15,111,216                   ; movdqa        %xmm8,%xmm11
12066  DB  102,69,15,219,218                   ; pand          %xmm10,%xmm11
12067  DB  102,65,15,114,243,5                 ; pslld         $0x5,%xmm11
12068  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
12069  DB  102,65,15,114,242,4                 ; pslld         $0x4,%xmm10
12070  DB  102,68,15,111,37,160,80,0,0         ; movdqa        0x50a0(%rip),%xmm12        # 5280 <_sk_callback_sse41+0x100>
12071  DB  102,68,15,111,45,167,80,0,0         ; movdqa        0x50a7(%rip),%xmm13        # 5290 <_sk_callback_sse41+0x110>
12072  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
12073  DB  102,69,15,219,245                   ; pand          %xmm13,%xmm14
12074  DB  102,65,15,114,246,2                 ; pslld         $0x2,%xmm14
12075  DB  102,69,15,219,233                   ; pand          %xmm9,%xmm13
12076  DB  102,69,15,254,237                   ; paddd         %xmm13,%xmm13
12077  DB  102,69,15,219,196                   ; pand          %xmm12,%xmm8
12078  DB  102,65,15,114,208,1                 ; psrld         $0x1,%xmm8
12079  DB  102,69,15,219,204                   ; pand          %xmm12,%xmm9
12080  DB  102,65,15,114,209,2                 ; psrld         $0x2,%xmm9
12081  DB  102,69,15,235,234                   ; por           %xmm10,%xmm13
12082  DB  102,69,15,235,233                   ; por           %xmm9,%xmm13
12083  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
12084  DB  102,69,15,235,245                   ; por           %xmm13,%xmm14
12085  DB  102,69,15,235,240                   ; por           %xmm8,%xmm14
12086  DB  69,15,91,198                        ; cvtdq2ps      %xmm14,%xmm8
12087  DB  68,15,89,5,98,80,0,0                ; mulps         0x5062(%rip),%xmm8        # 52a0 <_sk_callback_sse41+0x120>
12088  DB  68,15,88,5,106,80,0,0               ; addps         0x506a(%rip),%xmm8        # 52b0 <_sk_callback_sse41+0x130>
12089  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
12090  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
12091  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
12092  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
12093  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
12094  DB  68,15,88,210                        ; addps         %xmm2,%xmm10
12095  DB  15,93,195                           ; minps         %xmm3,%xmm0
12096  DB  15,87,210                           ; xorps         %xmm2,%xmm2
12097  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
12098  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
12099  DB  15,93,203                           ; minps         %xmm3,%xmm1
12100  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
12101  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
12102  DB  68,15,93,211                        ; minps         %xmm3,%xmm10
12103  DB  65,15,95,210                        ; maxps         %xmm10,%xmm2
12104  DB  72,173                              ; lods          %ds:(%rsi),%rax
12105  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12106  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
12107  DB  255,224                             ; jmpq          *%rax
12108
12109PUBLIC _sk_constant_color_sse41
12110_sk_constant_color_sse41 LABEL PROC
12111  DB  72,173                              ; lods          %ds:(%rsi),%rax
12112  DB  243,15,16,0                         ; movss         (%rax),%xmm0
12113  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
12114  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
12115  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
12116  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
12117  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
12118  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
12119  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
12120  DB  72,173                              ; lods          %ds:(%rsi),%rax
12121  DB  255,224                             ; jmpq          *%rax
12122
12123PUBLIC _sk_load_rgba_sse41
12124_sk_load_rgba_sse41 LABEL PROC
12125  DB  72,173                              ; lods          %ds:(%rsi),%rax
12126  DB  15,16,0                             ; movups        (%rax),%xmm0
12127  DB  15,16,72,16                         ; movups        0x10(%rax),%xmm1
12128  DB  15,16,80,32                         ; movups        0x20(%rax),%xmm2
12129  DB  15,16,88,48                         ; movups        0x30(%rax),%xmm3
12130  DB  72,173                              ; lods          %ds:(%rsi),%rax
12131  DB  255,224                             ; jmpq          *%rax
12132
12133PUBLIC _sk_store_rgba_sse41
12134_sk_store_rgba_sse41 LABEL PROC
12135  DB  72,173                              ; lods          %ds:(%rsi),%rax
12136  DB  15,17,0                             ; movups        %xmm0,(%rax)
12137  DB  15,17,72,16                         ; movups        %xmm1,0x10(%rax)
12138  DB  15,17,80,32                         ; movups        %xmm2,0x20(%rax)
12139  DB  15,17,88,48                         ; movups        %xmm3,0x30(%rax)
12140  DB  72,173                              ; lods          %ds:(%rsi),%rax
12141  DB  255,224                             ; jmpq          *%rax
12142
12143PUBLIC _sk_clear_sse41
12144_sk_clear_sse41 LABEL PROC
12145  DB  72,173                              ; lods          %ds:(%rsi),%rax
12146  DB  15,87,192                           ; xorps         %xmm0,%xmm0
12147  DB  15,87,201                           ; xorps         %xmm1,%xmm1
12148  DB  15,87,210                           ; xorps         %xmm2,%xmm2
12149  DB  15,87,219                           ; xorps         %xmm3,%xmm3
12150  DB  255,224                             ; jmpq          *%rax
12151
12152PUBLIC _sk_srcatop_sse41
12153_sk_srcatop_sse41 LABEL PROC
12154  DB  15,89,199                           ; mulps         %xmm7,%xmm0
12155  DB  68,15,40,5,196,79,0,0               ; movaps        0x4fc4(%rip),%xmm8        # 52c0 <_sk_callback_sse41+0x140>
12156  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
12157  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
12158  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
12159  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
12160  DB  15,89,207                           ; mulps         %xmm7,%xmm1
12161  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
12162  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
12163  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
12164  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12165  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
12166  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
12167  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
12168  DB  15,89,223                           ; mulps         %xmm7,%xmm3
12169  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
12170  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
12171  DB  72,173                              ; lods          %ds:(%rsi),%rax
12172  DB  255,224                             ; jmpq          *%rax
12173
12174PUBLIC _sk_dstatop_sse41
12175_sk_dstatop_sse41 LABEL PROC
12176  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
12177  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
12178  DB  68,15,40,13,135,79,0,0              ; movaps        0x4f87(%rip),%xmm9        # 52d0 <_sk_callback_sse41+0x150>
12179  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
12180  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
12181  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
12182  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
12183  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
12184  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
12185  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
12186  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
12187  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
12188  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
12189  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
12190  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
12191  DB  15,89,223                           ; mulps         %xmm7,%xmm3
12192  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
12193  DB  72,173                              ; lods          %ds:(%rsi),%rax
12194  DB  255,224                             ; jmpq          *%rax
12195
12196PUBLIC _sk_srcin_sse41
12197_sk_srcin_sse41 LABEL PROC
12198  DB  15,89,199                           ; mulps         %xmm7,%xmm0
12199  DB  15,89,207                           ; mulps         %xmm7,%xmm1
12200  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12201  DB  15,89,223                           ; mulps         %xmm7,%xmm3
12202  DB  72,173                              ; lods          %ds:(%rsi),%rax
12203  DB  255,224                             ; jmpq          *%rax
12204
12205PUBLIC _sk_dstin_sse41
12206_sk_dstin_sse41 LABEL PROC
12207  DB  15,40,195                           ; movaps        %xmm3,%xmm0
12208  DB  15,89,196                           ; mulps         %xmm4,%xmm0
12209  DB  15,40,203                           ; movaps        %xmm3,%xmm1
12210  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12211  DB  15,40,211                           ; movaps        %xmm3,%xmm2
12212  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12213  DB  15,89,223                           ; mulps         %xmm7,%xmm3
12214  DB  72,173                              ; lods          %ds:(%rsi),%rax
12215  DB  255,224                             ; jmpq          *%rax
12216
12217PUBLIC _sk_srcout_sse41
12218_sk_srcout_sse41 LABEL PROC
12219  DB  68,15,40,5,43,79,0,0                ; movaps        0x4f2b(%rip),%xmm8        # 52e0 <_sk_callback_sse41+0x160>
12220  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
12221  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12222  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12223  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12224  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
12225  DB  72,173                              ; lods          %ds:(%rsi),%rax
12226  DB  255,224                             ; jmpq          *%rax
12227
12228PUBLIC _sk_dstout_sse41
12229_sk_dstout_sse41 LABEL PROC
12230  DB  68,15,40,5,27,79,0,0                ; movaps        0x4f1b(%rip),%xmm8        # 52f0 <_sk_callback_sse41+0x170>
12231  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
12232  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12233  DB  15,89,196                           ; mulps         %xmm4,%xmm0
12234  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
12235  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12236  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
12237  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12238  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
12239  DB  72,173                              ; lods          %ds:(%rsi),%rax
12240  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
12241  DB  255,224                             ; jmpq          *%rax
12242
12243PUBLIC _sk_srcover_sse41
12244_sk_srcover_sse41 LABEL PROC
12245  DB  68,15,40,5,254,78,0,0               ; movaps        0x4efe(%rip),%xmm8        # 5300 <_sk_callback_sse41+0x180>
12246  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
12247  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
12248  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
12249  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
12250  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
12251  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
12252  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
12253  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
12254  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
12255  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
12256  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
12257  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
12258  DB  72,173                              ; lods          %ds:(%rsi),%rax
12259  DB  255,224                             ; jmpq          *%rax
12260
12261PUBLIC _sk_dstover_sse41
12262_sk_dstover_sse41 LABEL PROC
12263  DB  68,15,40,5,210,78,0,0               ; movaps        0x4ed2(%rip),%xmm8        # 5310 <_sk_callback_sse41+0x190>
12264  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
12265  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
12266  DB  15,88,196                           ; addps         %xmm4,%xmm0
12267  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12268  DB  15,88,205                           ; addps         %xmm5,%xmm1
12269  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
12270  DB  15,88,214                           ; addps         %xmm6,%xmm2
12271  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
12272  DB  15,88,223                           ; addps         %xmm7,%xmm3
12273  DB  72,173                              ; lods          %ds:(%rsi),%rax
12274  DB  255,224                             ; jmpq          *%rax
12275
12276PUBLIC _sk_modulate_sse41
12277_sk_modulate_sse41 LABEL PROC
12278  DB  15,89,196                           ; mulps         %xmm4,%xmm0
12279  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12280  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12281  DB  15,89,223                           ; mulps         %xmm7,%xmm3
12282  DB  72,173                              ; lods          %ds:(%rsi),%rax
12283  DB  255,224                             ; jmpq          *%rax
12284
12285PUBLIC _sk_multiply_sse41
12286_sk_multiply_sse41 LABEL PROC
12287  DB  68,15,40,5,166,78,0,0               ; movaps        0x4ea6(%rip),%xmm8        # 5320 <_sk_callback_sse41+0x1a0>
12288  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
12289  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
12290  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
12291  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
12292  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
12293  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
12294  DB  68,15,89,220                        ; mulps         %xmm4,%xmm11
12295  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
12296  DB  15,89,196                           ; mulps         %xmm4,%xmm0
12297  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
12298  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
12299  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
12300  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
12301  DB  68,15,89,221                        ; mulps         %xmm5,%xmm11
12302  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
12303  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12304  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
12305  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
12306  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
12307  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
12308  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
12309  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
12310  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12311  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
12312  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
12313  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
12314  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
12315  DB  15,89,223                           ; mulps         %xmm7,%xmm3
12316  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
12317  DB  72,173                              ; lods          %ds:(%rsi),%rax
12318  DB  255,224                             ; jmpq          *%rax
12319
12320PUBLIC _sk_plus__sse41
12321_sk_plus__sse41 LABEL PROC
12322  DB  15,88,196                           ; addps         %xmm4,%xmm0
12323  DB  15,88,205                           ; addps         %xmm5,%xmm1
12324  DB  15,88,214                           ; addps         %xmm6,%xmm2
12325  DB  15,88,223                           ; addps         %xmm7,%xmm3
12326  DB  72,173                              ; lods          %ds:(%rsi),%rax
12327  DB  255,224                             ; jmpq          *%rax
12328
12329PUBLIC _sk_screen_sse41
12330_sk_screen_sse41 LABEL PROC
12331  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12332  DB  15,88,196                           ; addps         %xmm4,%xmm0
12333  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
12334  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
12335  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
12336  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
12337  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12338  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
12339  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
12340  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
12341  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12342  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
12343  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
12344  DB  68,15,88,215                        ; addps         %xmm7,%xmm10
12345  DB  15,89,223                           ; mulps         %xmm7,%xmm3
12346  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
12347  DB  72,173                              ; lods          %ds:(%rsi),%rax
12348  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
12349  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
12350  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
12351  DB  255,224                             ; jmpq          *%rax
12352
12353PUBLIC _sk_xor__sse41
12354_sk_xor__sse41 LABEL PROC
12355  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
12356  DB  15,40,29,219,77,0,0                 ; movaps        0x4ddb(%rip),%xmm3        # 5330 <_sk_callback_sse41+0x1b0>
12357  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
12358  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
12359  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
12360  DB  65,15,92,216                        ; subps         %xmm8,%xmm3
12361  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
12362  DB  68,15,89,212                        ; mulps         %xmm4,%xmm10
12363  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
12364  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
12365  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
12366  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
12367  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
12368  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
12369  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
12370  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
12371  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
12372  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12373  DB  15,89,223                           ; mulps         %xmm7,%xmm3
12374  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
12375  DB  72,173                              ; lods          %ds:(%rsi),%rax
12376  DB  255,224                             ; jmpq          *%rax
12377
12378PUBLIC _sk_darken_sse41
12379_sk_darken_sse41 LABEL PROC
12380  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
12381  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12382  DB  15,88,196                           ; addps         %xmm4,%xmm0
12383  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
12384  DB  15,40,203                           ; movaps        %xmm3,%xmm1
12385  DB  15,89,204                           ; mulps         %xmm4,%xmm1
12386  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
12387  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
12388  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
12389  DB  15,88,205                           ; addps         %xmm5,%xmm1
12390  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
12391  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
12392  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
12393  DB  69,15,95,193                        ; maxps         %xmm9,%xmm8
12394  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
12395  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
12396  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
12397  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12398  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
12399  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
12400  DB  65,15,95,209                        ; maxps         %xmm9,%xmm2
12401  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
12402  DB  15,40,21,70,77,0,0                  ; movaps        0x4d46(%rip),%xmm2        # 5340 <_sk_callback_sse41+0x1c0>
12403  DB  15,92,211                           ; subps         %xmm3,%xmm2
12404  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12405  DB  15,88,218                           ; addps         %xmm2,%xmm3
12406  DB  72,173                              ; lods          %ds:(%rsi),%rax
12407  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
12408  DB  255,224                             ; jmpq          *%rax
12409
12410PUBLIC _sk_lighten_sse41
12411_sk_lighten_sse41 LABEL PROC
12412  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
12413  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12414  DB  15,88,196                           ; addps         %xmm4,%xmm0
12415  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
12416  DB  15,40,203                           ; movaps        %xmm3,%xmm1
12417  DB  15,89,204                           ; mulps         %xmm4,%xmm1
12418  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
12419  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
12420  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
12421  DB  15,88,205                           ; addps         %xmm5,%xmm1
12422  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
12423  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
12424  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
12425  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
12426  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
12427  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
12428  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
12429  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12430  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
12431  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
12432  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
12433  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
12434  DB  15,40,21,235,76,0,0                 ; movaps        0x4ceb(%rip),%xmm2        # 5350 <_sk_callback_sse41+0x1d0>
12435  DB  15,92,211                           ; subps         %xmm3,%xmm2
12436  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12437  DB  15,88,218                           ; addps         %xmm2,%xmm3
12438  DB  72,173                              ; lods          %ds:(%rsi),%rax
12439  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
12440  DB  255,224                             ; jmpq          *%rax
12441
12442PUBLIC _sk_difference_sse41
12443_sk_difference_sse41 LABEL PROC
12444  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
12445  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12446  DB  15,88,196                           ; addps         %xmm4,%xmm0
12447  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
12448  DB  15,40,203                           ; movaps        %xmm3,%xmm1
12449  DB  15,89,204                           ; mulps         %xmm4,%xmm1
12450  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
12451  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
12452  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
12453  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
12454  DB  15,88,205                           ; addps         %xmm5,%xmm1
12455  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
12456  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
12457  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
12458  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
12459  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
12460  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
12461  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
12462  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
12463  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12464  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
12465  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
12466  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
12467  DB  15,88,210                           ; addps         %xmm2,%xmm2
12468  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
12469  DB  15,40,21,133,76,0,0                 ; movaps        0x4c85(%rip),%xmm2        # 5360 <_sk_callback_sse41+0x1e0>
12470  DB  15,92,211                           ; subps         %xmm3,%xmm2
12471  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12472  DB  15,88,218                           ; addps         %xmm2,%xmm3
12473  DB  72,173                              ; lods          %ds:(%rsi),%rax
12474  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
12475  DB  255,224                             ; jmpq          *%rax
12476
12477PUBLIC _sk_exclusion_sse41
12478_sk_exclusion_sse41 LABEL PROC
12479  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
12480  DB  15,40,200                           ; movaps        %xmm0,%xmm1
12481  DB  15,88,196                           ; addps         %xmm4,%xmm0
12482  DB  15,89,204                           ; mulps         %xmm4,%xmm1
12483  DB  15,88,201                           ; addps         %xmm1,%xmm1
12484  DB  15,92,193                           ; subps         %xmm1,%xmm0
12485  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
12486  DB  15,88,205                           ; addps         %xmm5,%xmm1
12487  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
12488  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
12489  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
12490  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
12491  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
12492  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12493  DB  15,88,210                           ; addps         %xmm2,%xmm2
12494  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
12495  DB  15,40,21,69,76,0,0                  ; movaps        0x4c45(%rip),%xmm2        # 5370 <_sk_callback_sse41+0x1f0>
12496  DB  15,92,211                           ; subps         %xmm3,%xmm2
12497  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12498  DB  15,88,218                           ; addps         %xmm2,%xmm3
12499  DB  72,173                              ; lods          %ds:(%rsi),%rax
12500  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
12501  DB  255,224                             ; jmpq          *%rax
12502
12503PUBLIC _sk_colorburn_sse41
12504_sk_colorburn_sse41 LABEL PROC
12505  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12506  DB  68,15,40,21,56,76,0,0               ; movaps        0x4c38(%rip),%xmm10        # 5380 <_sk_callback_sse41+0x200>
12507  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
12508  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
12509  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
12510  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
12511  DB  15,40,199                           ; movaps        %xmm7,%xmm0
12512  DB  15,92,196                           ; subps         %xmm4,%xmm0
12513  DB  15,89,195                           ; mulps         %xmm3,%xmm0
12514  DB  65,15,94,192                        ; divps         %xmm8,%xmm0
12515  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
12516  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
12517  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12518  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
12519  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
12520  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
12521  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
12522  DB  68,15,88,228                        ; addps         %xmm4,%xmm12
12523  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
12524  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12525  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
12526  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
12527  DB  102,69,15,56,20,232                 ; blendvps      %xmm0,%xmm8,%xmm13
12528  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
12529  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
12530  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12531  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
12532  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
12533  DB  102,69,15,56,20,196                 ; blendvps      %xmm0,%xmm12,%xmm8
12534  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
12535  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
12536  DB  15,40,199                           ; movaps        %xmm7,%xmm0
12537  DB  15,92,197                           ; subps         %xmm5,%xmm0
12538  DB  15,89,195                           ; mulps         %xmm3,%xmm0
12539  DB  15,94,193                           ; divps         %xmm1,%xmm0
12540  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12541  DB  68,15,93,232                        ; minps         %xmm0,%xmm13
12542  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
12543  DB  69,15,92,245                        ; subps         %xmm13,%xmm14
12544  DB  15,40,193                           ; movaps        %xmm1,%xmm0
12545  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
12546  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
12547  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
12548  DB  102,68,15,56,20,241                 ; blendvps      %xmm0,%xmm1,%xmm14
12549  DB  68,15,88,229                        ; addps         %xmm5,%xmm12
12550  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
12551  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12552  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
12553  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12554  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
12555  DB  102,65,15,56,20,204                 ; blendvps      %xmm0,%xmm12,%xmm1
12556  DB  15,40,199                           ; movaps        %xmm7,%xmm0
12557  DB  15,92,198                           ; subps         %xmm6,%xmm0
12558  DB  15,89,195                           ; mulps         %xmm3,%xmm0
12559  DB  15,94,194                           ; divps         %xmm2,%xmm0
12560  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
12561  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
12562  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12563  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
12564  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12565  DB  68,15,194,202,0                     ; cmpeqps       %xmm2,%xmm9
12566  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
12567  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
12568  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12569  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
12570  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
12571  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
12572  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12573  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
12574  DB  15,40,198                           ; movaps        %xmm6,%xmm0
12575  DB  15,194,199,0                        ; cmpeqps       %xmm7,%xmm0
12576  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
12577  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
12578  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
12579  DB  72,173                              ; lods          %ds:(%rsi),%rax
12580  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12581  DB  255,224                             ; jmpq          *%rax
12582
12583PUBLIC _sk_colordodge_sse41
12584_sk_colordodge_sse41 LABEL PROC
12585  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12586  DB  68,15,40,21,22,75,0,0               ; movaps        0x4b16(%rip),%xmm10        # 5390 <_sk_callback_sse41+0x210>
12587  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
12588  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
12589  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
12590  DB  69,15,89,224                        ; mulps         %xmm8,%xmm12
12591  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
12592  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
12593  DB  15,40,195                           ; movaps        %xmm3,%xmm0
12594  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
12595  DB  68,15,94,200                        ; divps         %xmm0,%xmm9
12596  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12597  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
12598  DB  69,15,93,241                        ; minps         %xmm9,%xmm14
12599  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12600  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
12601  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
12602  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
12603  DB  102,69,15,56,20,240                 ; blendvps      %xmm0,%xmm8,%xmm14
12604  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
12605  DB  68,15,88,228                        ; addps         %xmm4,%xmm12
12606  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
12607  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
12608  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
12609  DB  69,15,88,198                        ; addps         %xmm14,%xmm8
12610  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12611  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
12612  DB  102,69,15,56,20,196                 ; blendvps      %xmm0,%xmm12,%xmm8
12613  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
12614  DB  68,15,89,229                        ; mulps         %xmm5,%xmm12
12615  DB  15,40,195                           ; movaps        %xmm3,%xmm0
12616  DB  15,92,193                           ; subps         %xmm1,%xmm0
12617  DB  68,15,94,224                        ; divps         %xmm0,%xmm12
12618  DB  69,15,40,243                        ; movaps        %xmm11,%xmm14
12619  DB  68,15,89,241                        ; mulps         %xmm1,%xmm14
12620  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
12621  DB  15,40,193                           ; movaps        %xmm1,%xmm0
12622  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
12623  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
12624  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
12625  DB  102,68,15,56,20,233                 ; blendvps      %xmm0,%xmm1,%xmm13
12626  DB  68,15,88,245                        ; addps         %xmm5,%xmm14
12627  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
12628  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12629  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
12630  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12631  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
12632  DB  102,65,15,56,20,206                 ; blendvps      %xmm0,%xmm14,%xmm1
12633  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
12634  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
12635  DB  15,40,195                           ; movaps        %xmm3,%xmm0
12636  DB  15,92,194                           ; subps         %xmm2,%xmm0
12637  DB  68,15,94,224                        ; divps         %xmm0,%xmm12
12638  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12639  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12640  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
12641  DB  15,40,194                           ; movaps        %xmm2,%xmm0
12642  DB  15,194,195,0                        ; cmpeqps       %xmm3,%xmm0
12643  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
12644  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
12645  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
12646  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
12647  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12648  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
12649  DB  68,15,194,206,0                     ; cmpeqps       %xmm6,%xmm9
12650  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
12651  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12652  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
12653  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
12654  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
12655  DB  72,173                              ; lods          %ds:(%rsi),%rax
12656  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12657  DB  255,224                             ; jmpq          *%rax
12658
12659PUBLIC _sk_hardlight_sse41
12660_sk_hardlight_sse41 LABEL PROC
12661  DB  72,131,236,24                       ; sub           $0x18,%rsp
12662  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
12663  DB  68,15,40,229                        ; movaps        %xmm5,%xmm12
12664  DB  15,40,244                           ; movaps        %xmm4,%xmm6
12665  DB  15,40,227                           ; movaps        %xmm3,%xmm4
12666  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
12667  DB  68,15,40,21,236,73,0,0              ; movaps        0x49ec(%rip),%xmm10        # 53a0 <_sk_callback_sse41+0x220>
12668  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
12669  DB  15,92,239                           ; subps         %xmm7,%xmm5
12670  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12671  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
12672  DB  68,15,92,212                        ; subps         %xmm4,%xmm10
12673  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
12674  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
12675  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
12676  DB  68,15,40,252                        ; movaps        %xmm4,%xmm15
12677  DB  69,15,92,249                        ; subps         %xmm9,%xmm15
12678  DB  15,89,223                           ; mulps         %xmm7,%xmm3
12679  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12680  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
12681  DB  15,40,199                           ; movaps        %xmm7,%xmm0
12682  DB  15,92,198                           ; subps         %xmm6,%xmm0
12683  DB  65,15,89,199                        ; mulps         %xmm15,%xmm0
12684  DB  15,88,192                           ; addps         %xmm0,%xmm0
12685  DB  68,15,40,251                        ; movaps        %xmm3,%xmm15
12686  DB  68,15,92,248                        ; subps         %xmm0,%xmm15
12687  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
12688  DB  15,88,192                           ; addps         %xmm0,%xmm0
12689  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
12690  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
12691  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
12692  DB  102,69,15,56,20,249                 ; blendvps      %xmm0,%xmm9,%xmm15
12693  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
12694  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
12695  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12696  DB  15,92,193                           ; subps         %xmm1,%xmm0
12697  DB  69,15,40,204                        ; movaps        %xmm12,%xmm9
12698  DB  69,15,92,233                        ; subps         %xmm9,%xmm13
12699  DB  68,15,89,232                        ; mulps         %xmm0,%xmm13
12700  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
12701  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
12702  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
12703  DB  15,40,193                           ; movaps        %xmm1,%xmm0
12704  DB  15,88,192                           ; addps         %xmm0,%xmm0
12705  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
12706  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
12707  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
12708  DB  15,88,201                           ; addps         %xmm1,%xmm1
12709  DB  102,68,15,56,20,225                 ; blendvps      %xmm0,%xmm1,%xmm12
12710  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
12711  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
12712  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
12713  DB  69,15,88,199                        ; addps         %xmm15,%xmm8
12714  DB  65,15,89,205                        ; mulps         %xmm13,%xmm1
12715  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
12716  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
12717  DB  15,89,234                           ; mulps         %xmm2,%xmm5
12718  DB  68,15,40,28,36                      ; movaps        (%rsp),%xmm11
12719  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
12720  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
12721  DB  15,40,194                           ; movaps        %xmm2,%xmm0
12722  DB  15,88,192                           ; addps         %xmm0,%xmm0
12723  DB  15,194,196,2                        ; cmpleps       %xmm4,%xmm0
12724  DB  15,40,236                           ; movaps        %xmm4,%xmm5
12725  DB  15,92,234                           ; subps         %xmm2,%xmm5
12726  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
12727  DB  15,88,210                           ; addps         %xmm2,%xmm2
12728  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
12729  DB  68,15,89,245                        ; mulps         %xmm5,%xmm14
12730  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
12731  DB  65,15,92,222                        ; subps         %xmm14,%xmm3
12732  DB  102,15,56,20,218                    ; blendvps      %xmm0,%xmm2,%xmm3
12733  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
12734  DB  65,15,88,226                        ; addps         %xmm10,%xmm4
12735  DB  72,173                              ; lods          %ds:(%rsi),%rax
12736  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12737  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
12738  DB  15,40,220                           ; movaps        %xmm4,%xmm3
12739  DB  15,40,230                           ; movaps        %xmm6,%xmm4
12740  DB  65,15,40,237                        ; movaps        %xmm13,%xmm5
12741  DB  65,15,40,243                        ; movaps        %xmm11,%xmm6
12742  DB  72,131,196,24                       ; add           $0x18,%rsp
12743  DB  255,224                             ; jmpq          *%rax
12744
12745PUBLIC _sk_overlay_sse41
12746_sk_overlay_sse41 LABEL PROC
12747  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
12748  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
12749  DB  68,15,40,21,206,72,0,0              ; movaps        0x48ce(%rip),%xmm10        # 53b0 <_sk_callback_sse41+0x230>
12750  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
12751  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
12752  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
12753  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
12754  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
12755  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
12756  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
12757  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
12758  DB  68,15,40,235                        ; movaps        %xmm3,%xmm13
12759  DB  69,15,92,238                        ; subps         %xmm14,%xmm13
12760  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
12761  DB  15,40,207                           ; movaps        %xmm7,%xmm1
12762  DB  15,92,204                           ; subps         %xmm4,%xmm1
12763  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12764  DB  15,88,192                           ; addps         %xmm0,%xmm0
12765  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12766  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
12767  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
12768  DB  68,15,89,231                        ; mulps         %xmm7,%xmm12
12769  DB  65,15,89,205                        ; mulps         %xmm13,%xmm1
12770  DB  15,88,201                           ; addps         %xmm1,%xmm1
12771  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
12772  DB  68,15,92,233                        ; subps         %xmm1,%xmm13
12773  DB  102,69,15,56,20,238                 ; blendvps      %xmm0,%xmm14,%xmm13
12774  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
12775  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
12776  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
12777  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
12778  DB  15,89,205                           ; mulps         %xmm5,%xmm1
12779  DB  15,88,200                           ; addps         %xmm0,%xmm1
12780  DB  68,15,40,235                        ; movaps        %xmm3,%xmm13
12781  DB  69,15,92,233                        ; subps         %xmm9,%xmm13
12782  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
12783  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
12784  DB  68,15,92,245                        ; subps         %xmm5,%xmm14
12785  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12786  DB  15,88,192                           ; addps         %xmm0,%xmm0
12787  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12788  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
12789  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
12790  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
12791  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
12792  DB  69,15,92,238                        ; subps         %xmm14,%xmm13
12793  DB  102,69,15,56,20,233                 ; blendvps      %xmm0,%xmm9,%xmm13
12794  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
12795  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12796  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
12797  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
12798  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
12799  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
12800  DB  68,15,92,218                        ; subps         %xmm2,%xmm11
12801  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12802  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
12803  DB  68,15,92,238                        ; subps         %xmm6,%xmm13
12804  DB  15,40,198                           ; movaps        %xmm6,%xmm0
12805  DB  15,88,192                           ; addps         %xmm0,%xmm0
12806  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12807  DB  15,88,210                           ; addps         %xmm2,%xmm2
12808  DB  69,15,89,235                        ; mulps         %xmm11,%xmm13
12809  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
12810  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
12811  DB  102,68,15,56,20,226                 ; blendvps      %xmm0,%xmm2,%xmm12
12812  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
12813  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
12814  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
12815  DB  72,173                              ; lods          %ds:(%rsi),%rax
12816  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12817  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
12818  DB  255,224                             ; jmpq          *%rax
12819
12820PUBLIC _sk_softlight_sse41
12821_sk_softlight_sse41 LABEL PROC
12822  DB  72,131,236,72                       ; sub           $0x48,%rsp
12823  DB  15,41,116,36,32                     ; movaps        %xmm6,0x20(%rsp)
12824  DB  15,40,244                           ; movaps        %xmm4,%xmm6
12825  DB  15,41,84,36,48                      ; movaps        %xmm2,0x30(%rsp)
12826  DB  15,41,76,36,16                      ; movaps        %xmm1,0x10(%rsp)
12827  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
12828  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
12829  DB  68,15,194,207,1                     ; cmpltps       %xmm7,%xmm9
12830  DB  15,40,198                           ; movaps        %xmm6,%xmm0
12831  DB  15,94,199                           ; divps         %xmm7,%xmm0
12832  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
12833  DB  15,40,13,161,71,0,0                 ; movaps        0x47a1(%rip),%xmm1        # 53c0 <_sk_callback_sse41+0x240>
12834  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
12835  DB  68,15,92,208                        ; subps         %xmm0,%xmm10
12836  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
12837  DB  68,15,40,248                        ; movaps        %xmm0,%xmm15
12838  DB  15,82,208                           ; rsqrtps       %xmm0,%xmm2
12839  DB  68,15,83,218                        ; rcpps         %xmm2,%xmm11
12840  DB  68,15,92,216                        ; subps         %xmm0,%xmm11
12841  DB  15,88,192                           ; addps         %xmm0,%xmm0
12842  DB  15,88,192                           ; addps         %xmm0,%xmm0
12843  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12844  DB  15,89,210                           ; mulps         %xmm2,%xmm2
12845  DB  15,88,208                           ; addps         %xmm0,%xmm2
12846  DB  68,15,40,45,127,71,0,0              ; movaps        0x477f(%rip),%xmm13        # 53d0 <_sk_callback_sse41+0x250>
12847  DB  69,15,88,245                        ; addps         %xmm13,%xmm14
12848  DB  68,15,89,242                        ; mulps         %xmm2,%xmm14
12849  DB  68,15,40,37,127,71,0,0              ; movaps        0x477f(%rip),%xmm12        # 53e0 <_sk_callback_sse41+0x260>
12850  DB  69,15,89,252                        ; mulps         %xmm12,%xmm15
12851  DB  69,15,88,254                        ; addps         %xmm14,%xmm15
12852  DB  15,40,198                           ; movaps        %xmm6,%xmm0
12853  DB  15,88,192                           ; addps         %xmm0,%xmm0
12854  DB  15,88,192                           ; addps         %xmm0,%xmm0
12855  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12856  DB  102,69,15,56,20,223                 ; blendvps      %xmm0,%xmm15,%xmm11
12857  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12858  DB  15,88,192                           ; addps         %xmm0,%xmm0
12859  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12860  DB  15,92,211                           ; subps         %xmm3,%xmm2
12861  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
12862  DB  68,15,88,211                        ; addps         %xmm3,%xmm10
12863  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
12864  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12865  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
12866  DB  15,40,211                           ; movaps        %xmm3,%xmm2
12867  DB  15,89,214                           ; mulps         %xmm6,%xmm2
12868  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
12869  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
12870  DB  102,69,15,56,20,218                 ; blendvps      %xmm0,%xmm10,%xmm11
12871  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
12872  DB  68,15,94,215                        ; divps         %xmm7,%xmm10
12873  DB  69,15,84,209                        ; andps         %xmm9,%xmm10
12874  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12875  DB  15,88,192                           ; addps         %xmm0,%xmm0
12876  DB  15,88,192                           ; addps         %xmm0,%xmm0
12877  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12878  DB  15,89,210                           ; mulps         %xmm2,%xmm2
12879  DB  15,88,208                           ; addps         %xmm0,%xmm2
12880  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12881  DB  65,15,88,197                        ; addps         %xmm13,%xmm0
12882  DB  15,89,194                           ; mulps         %xmm2,%xmm0
12883  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
12884  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
12885  DB  15,88,208                           ; addps         %xmm0,%xmm2
12886  DB  65,15,82,194                        ; rsqrtps       %xmm10,%xmm0
12887  DB  68,15,83,240                        ; rcpps         %xmm0,%xmm14
12888  DB  69,15,92,242                        ; subps         %xmm10,%xmm14
12889  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12890  DB  15,40,229                           ; movaps        %xmm5,%xmm4
12891  DB  15,88,192                           ; addps         %xmm0,%xmm0
12892  DB  15,88,192                           ; addps         %xmm0,%xmm0
12893  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12894  DB  102,68,15,56,20,242                 ; blendvps      %xmm0,%xmm2,%xmm14
12895  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
12896  DB  69,15,92,250                        ; subps         %xmm10,%xmm15
12897  DB  15,40,108,36,16                     ; movaps        0x10(%rsp),%xmm5
12898  DB  15,40,197                           ; movaps        %xmm5,%xmm0
12899  DB  15,88,192                           ; addps         %xmm0,%xmm0
12900  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12901  DB  15,92,211                           ; subps         %xmm3,%xmm2
12902  DB  68,15,89,250                        ; mulps         %xmm2,%xmm15
12903  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12904  DB  68,15,89,242                        ; mulps         %xmm2,%xmm14
12905  DB  15,40,211                           ; movaps        %xmm3,%xmm2
12906  DB  15,41,36,36                         ; movaps        %xmm4,(%rsp)
12907  DB  15,89,212                           ; mulps         %xmm4,%xmm2
12908  DB  68,15,88,242                        ; addps         %xmm2,%xmm14
12909  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
12910  DB  68,15,89,252                        ; mulps         %xmm4,%xmm15
12911  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
12912  DB  102,69,15,56,20,247                 ; blendvps      %xmm0,%xmm15,%xmm14
12913  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
12914  DB  15,40,100,36,32                     ; movaps        0x20(%rsp),%xmm4
12915  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12916  DB  15,94,199                           ; divps         %xmm7,%xmm0
12917  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
12918  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
12919  DB  15,92,200                           ; subps         %xmm0,%xmm1
12920  DB  68,15,88,232                        ; addps         %xmm0,%xmm13
12921  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
12922  DB  15,82,208                           ; rsqrtps       %xmm0,%xmm2
12923  DB  68,15,83,202                        ; rcpps         %xmm2,%xmm9
12924  DB  68,15,92,200                        ; subps         %xmm0,%xmm9
12925  DB  15,88,192                           ; addps         %xmm0,%xmm0
12926  DB  15,88,192                           ; addps         %xmm0,%xmm0
12927  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12928  DB  15,89,210                           ; mulps         %xmm2,%xmm2
12929  DB  15,88,208                           ; addps         %xmm0,%xmm2
12930  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
12931  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
12932  DB  15,40,196                           ; movaps        %xmm4,%xmm0
12933  DB  15,88,192                           ; addps         %xmm0,%xmm0
12934  DB  15,88,192                           ; addps         %xmm0,%xmm0
12935  DB  15,194,199,2                        ; cmpleps       %xmm7,%xmm0
12936  DB  102,69,15,56,20,204                 ; blendvps      %xmm0,%xmm12,%xmm9
12937  DB  68,15,40,100,36,48                  ; movaps        0x30(%rsp),%xmm12
12938  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
12939  DB  15,88,192                           ; addps         %xmm0,%xmm0
12940  DB  15,40,208                           ; movaps        %xmm0,%xmm2
12941  DB  15,92,211                           ; subps         %xmm3,%xmm2
12942  DB  15,89,202                           ; mulps         %xmm2,%xmm1
12943  DB  15,89,215                           ; mulps         %xmm7,%xmm2
12944  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
12945  DB  15,40,211                           ; movaps        %xmm3,%xmm2
12946  DB  15,89,212                           ; mulps         %xmm4,%xmm2
12947  DB  68,15,88,202                        ; addps         %xmm2,%xmm9
12948  DB  15,88,203                           ; addps         %xmm3,%xmm1
12949  DB  15,89,204                           ; mulps         %xmm4,%xmm1
12950  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
12951  DB  102,68,15,56,20,201                 ; blendvps      %xmm0,%xmm1,%xmm9
12952  DB  68,15,92,255                        ; subps         %xmm7,%xmm15
12953  DB  69,15,89,199                        ; mulps         %xmm15,%xmm8
12954  DB  15,40,205                           ; movaps        %xmm5,%xmm1
12955  DB  65,15,89,207                        ; mulps         %xmm15,%xmm1
12956  DB  69,15,89,252                        ; mulps         %xmm12,%xmm15
12957  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
12958  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12959  DB  15,89,198                           ; mulps         %xmm6,%xmm0
12960  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
12961  DB  69,15,88,195                        ; addps         %xmm11,%xmm8
12962  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12963  DB  15,40,44,36                         ; movaps        (%rsp),%xmm5
12964  DB  15,89,197                           ; mulps         %xmm5,%xmm0
12965  DB  15,88,200                           ; addps         %xmm0,%xmm1
12966  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
12967  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
12968  DB  15,89,196                           ; mulps         %xmm4,%xmm0
12969  DB  15,40,212                           ; movaps        %xmm4,%xmm2
12970  DB  65,15,88,199                        ; addps         %xmm15,%xmm0
12971  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
12972  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
12973  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
12974  DB  72,173                              ; lods          %ds:(%rsi),%rax
12975  DB  15,40,230                           ; movaps        %xmm6,%xmm4
12976  DB  15,40,242                           ; movaps        %xmm2,%xmm6
12977  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
12978  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
12979  DB  72,131,196,72                       ; add           $0x48,%rsp
12980  DB  255,224                             ; jmpq          *%rax
12981
12982PUBLIC _sk_hue_sse41
12983_sk_hue_sse41 LABEL PROC
12984  DB  72,131,236,104                      ; sub           $0x68,%rsp
12985  DB  15,41,60,36                         ; movaps        %xmm7,(%rsp)
12986  DB  68,15,40,246                        ; movaps        %xmm6,%xmm14
12987  DB  15,40,244                           ; movaps        %xmm4,%xmm6
12988  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
12989  DB  15,41,84,36,80                      ; movaps        %xmm2,0x50(%rsp)
12990  DB  15,41,76,36,64                      ; movaps        %xmm1,0x40(%rsp)
12991  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
12992  DB  68,15,41,84,36,48                   ; movaps        %xmm10,0x30(%rsp)
12993  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
12994  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
12995  DB  68,15,40,234                        ; movaps        %xmm2,%xmm13
12996  DB  69,15,89,232                        ; mulps         %xmm8,%xmm13
12997  DB  68,15,40,205                        ; movaps        %xmm5,%xmm9
12998  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
12999  DB  15,41,108,36,32                     ; movaps        %xmm5,0x20(%rsp)
13000  DB  69,15,95,222                        ; maxps         %xmm14,%xmm11
13001  DB  15,40,254                           ; movaps        %xmm6,%xmm7
13002  DB  68,15,40,230                        ; movaps        %xmm6,%xmm12
13003  DB  15,40,214                           ; movaps        %xmm6,%xmm2
13004  DB  65,15,95,211                        ; maxps         %xmm11,%xmm2
13005  DB  65,15,40,230                        ; movaps        %xmm14,%xmm4
13006  DB  15,41,100,36,16                     ; movaps        %xmm4,0x10(%rsp)
13007  DB  68,15,93,204                        ; minps         %xmm4,%xmm9
13008  DB  65,15,93,249                        ; minps         %xmm9,%xmm7
13009  DB  15,92,215                           ; subps         %xmm7,%xmm2
13010  DB  15,40,249                           ; movaps        %xmm1,%xmm7
13011  DB  65,15,93,253                        ; minps         %xmm13,%xmm7
13012  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
13013  DB  15,93,223                           ; minps         %xmm7,%xmm3
13014  DB  15,40,249                           ; movaps        %xmm1,%xmm7
13015  DB  65,15,95,253                        ; maxps         %xmm13,%xmm7
13016  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13017  DB  15,95,199                           ; maxps         %xmm7,%xmm0
13018  DB  15,40,253                           ; movaps        %xmm5,%xmm7
13019  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
13020  DB  15,92,195                           ; subps         %xmm3,%xmm0
13021  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
13022  DB  15,92,203                           ; subps         %xmm3,%xmm1
13023  DB  68,15,92,235                        ; subps         %xmm3,%xmm13
13024  DB  15,87,219                           ; xorps         %xmm3,%xmm3
13025  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
13026  DB  68,15,94,208                        ; divps         %xmm0,%xmm10
13027  DB  15,89,202                           ; mulps         %xmm2,%xmm1
13028  DB  15,94,200                           ; divps         %xmm0,%xmm1
13029  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
13030  DB  68,15,94,232                        ; divps         %xmm0,%xmm13
13031  DB  15,194,195,4                        ; cmpneqps      %xmm3,%xmm0
13032  DB  68,15,84,208                        ; andps         %xmm0,%xmm10
13033  DB  15,84,200                           ; andps         %xmm0,%xmm1
13034  DB  68,15,84,232                        ; andps         %xmm0,%xmm13
13035  DB  15,40,5,229,68,0,0                  ; movaps        0x44e5(%rip),%xmm0        # 53f0 <_sk_callback_sse41+0x270>
13036  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
13037  DB  15,40,21,234,68,0,0                 ; movaps        0x44ea(%rip),%xmm2        # 5400 <_sk_callback_sse41+0x280>
13038  DB  15,89,250                           ; mulps         %xmm2,%xmm7
13039  DB  65,15,88,252                        ; addps         %xmm12,%xmm7
13040  DB  68,15,40,53,235,68,0,0              ; movaps        0x44eb(%rip),%xmm14        # 5410 <_sk_callback_sse41+0x290>
13041  DB  68,15,40,252                        ; movaps        %xmm4,%xmm15
13042  DB  69,15,89,254                        ; mulps         %xmm14,%xmm15
13043  DB  68,15,88,255                        ; addps         %xmm7,%xmm15
13044  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
13045  DB  15,89,216                           ; mulps         %xmm0,%xmm3
13046  DB  15,40,249                           ; movaps        %xmm1,%xmm7
13047  DB  15,89,250                           ; mulps         %xmm2,%xmm7
13048  DB  15,88,251                           ; addps         %xmm3,%xmm7
13049  DB  65,15,40,221                        ; movaps        %xmm13,%xmm3
13050  DB  65,15,89,222                        ; mulps         %xmm14,%xmm3
13051  DB  15,88,223                           ; addps         %xmm7,%xmm3
13052  DB  69,15,89,248                        ; mulps         %xmm8,%xmm15
13053  DB  68,15,92,251                        ; subps         %xmm3,%xmm15
13054  DB  69,15,88,215                        ; addps         %xmm15,%xmm10
13055  DB  65,15,88,207                        ; addps         %xmm15,%xmm1
13056  DB  69,15,88,253                        ; addps         %xmm13,%xmm15
13057  DB  15,40,217                           ; movaps        %xmm1,%xmm3
13058  DB  65,15,93,223                        ; minps         %xmm15,%xmm3
13059  DB  65,15,40,250                        ; movaps        %xmm10,%xmm7
13060  DB  15,93,251                           ; minps         %xmm3,%xmm7
13061  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
13062  DB  15,89,209                           ; mulps         %xmm1,%xmm2
13063  DB  15,88,208                           ; addps         %xmm0,%xmm2
13064  DB  69,15,89,247                        ; mulps         %xmm15,%xmm14
13065  DB  68,15,88,242                        ; addps         %xmm2,%xmm14
13066  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
13067  DB  68,15,194,207,2                     ; cmpleps       %xmm7,%xmm9
13068  DB  65,15,40,222                        ; movaps        %xmm14,%xmm3
13069  DB  15,92,223                           ; subps         %xmm7,%xmm3
13070  DB  69,15,40,234                        ; movaps        %xmm10,%xmm13
13071  DB  69,15,92,238                        ; subps         %xmm14,%xmm13
13072  DB  69,15,89,238                        ; mulps         %xmm14,%xmm13
13073  DB  68,15,94,235                        ; divps         %xmm3,%xmm13
13074  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
13075  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13076  DB  102,69,15,56,20,234                 ; blendvps      %xmm0,%xmm10,%xmm13
13077  DB  15,40,193                           ; movaps        %xmm1,%xmm0
13078  DB  65,15,95,199                        ; maxps         %xmm15,%xmm0
13079  DB  68,15,95,208                        ; maxps         %xmm0,%xmm10
13080  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
13081  DB  15,40,44,36                         ; movaps        (%rsp),%xmm5
13082  DB  15,89,253                           ; mulps         %xmm5,%xmm7
13083  DB  15,40,231                           ; movaps        %xmm7,%xmm4
13084  DB  65,15,194,226,1                     ; cmpltps       %xmm10,%xmm4
13085  DB  65,15,40,213                        ; movaps        %xmm13,%xmm2
13086  DB  65,15,92,214                        ; subps         %xmm14,%xmm2
13087  DB  68,15,40,223                        ; movaps        %xmm7,%xmm11
13088  DB  69,15,92,222                        ; subps         %xmm14,%xmm11
13089  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
13090  DB  69,15,92,214                        ; subps         %xmm14,%xmm10
13091  DB  65,15,94,210                        ; divps         %xmm10,%xmm2
13092  DB  65,15,88,214                        ; addps         %xmm14,%xmm2
13093  DB  15,40,196                           ; movaps        %xmm4,%xmm0
13094  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
13095  DB  68,15,40,225                        ; movaps        %xmm1,%xmm12
13096  DB  69,15,92,230                        ; subps         %xmm14,%xmm12
13097  DB  69,15,89,230                        ; mulps         %xmm14,%xmm12
13098  DB  68,15,94,227                        ; divps         %xmm3,%xmm12
13099  DB  69,15,88,230                        ; addps         %xmm14,%xmm12
13100  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13101  DB  102,68,15,56,20,225                 ; blendvps      %xmm0,%xmm1,%xmm12
13102  DB  65,15,40,204                        ; movaps        %xmm12,%xmm1
13103  DB  65,15,92,206                        ; subps         %xmm14,%xmm1
13104  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
13105  DB  65,15,94,202                        ; divps         %xmm10,%xmm1
13106  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
13107  DB  15,40,196                           ; movaps        %xmm4,%xmm0
13108  DB  102,68,15,56,20,225                 ; blendvps      %xmm0,%xmm1,%xmm12
13109  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
13110  DB  65,15,92,206                        ; subps         %xmm14,%xmm1
13111  DB  65,15,89,206                        ; mulps         %xmm14,%xmm1
13112  DB  15,94,203                           ; divps         %xmm3,%xmm1
13113  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
13114  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13115  DB  102,65,15,56,20,207                 ; blendvps      %xmm0,%xmm15,%xmm1
13116  DB  15,40,209                           ; movaps        %xmm1,%xmm2
13117  DB  65,15,92,214                        ; subps         %xmm14,%xmm2
13118  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
13119  DB  65,15,94,210                        ; divps         %xmm10,%xmm2
13120  DB  65,15,88,214                        ; addps         %xmm14,%xmm2
13121  DB  15,40,196                           ; movaps        %xmm4,%xmm0
13122  DB  102,15,56,20,202                    ; blendvps      %xmm0,%xmm2,%xmm1
13123  DB  68,15,40,13,176,67,0,0              ; movaps        0x43b0(%rip),%xmm9        # 5420 <_sk_callback_sse41+0x2a0>
13124  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
13125  DB  15,92,229                           ; subps         %xmm5,%xmm4
13126  DB  15,40,68,36,48                      ; movaps        0x30(%rsp),%xmm0
13127  DB  15,89,196                           ; mulps         %xmm4,%xmm0
13128  DB  15,40,92,36,64                      ; movaps        0x40(%rsp),%xmm3
13129  DB  15,89,220                           ; mulps         %xmm4,%xmm3
13130  DB  15,89,100,36,80                     ; mulps         0x50(%rsp),%xmm4
13131  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
13132  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
13133  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
13134  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
13135  DB  15,87,210                           ; xorps         %xmm2,%xmm2
13136  DB  68,15,95,234                        ; maxps         %xmm2,%xmm13
13137  DB  68,15,95,226                        ; maxps         %xmm2,%xmm12
13138  DB  15,95,202                           ; maxps         %xmm2,%xmm1
13139  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13140  DB  15,89,214                           ; mulps         %xmm6,%xmm2
13141  DB  15,88,194                           ; addps         %xmm2,%xmm0
13142  DB  65,15,88,197                        ; addps         %xmm13,%xmm0
13143  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13144  DB  15,40,108,36,32                     ; movaps        0x20(%rsp),%xmm5
13145  DB  15,89,213                           ; mulps         %xmm5,%xmm2
13146  DB  15,88,218                           ; addps         %xmm2,%xmm3
13147  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
13148  DB  15,40,211                           ; movaps        %xmm3,%xmm2
13149  DB  15,40,92,36,16                      ; movaps        0x10(%rsp),%xmm3
13150  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
13151  DB  68,15,88,204                        ; addps         %xmm4,%xmm9
13152  DB  68,15,88,201                        ; addps         %xmm1,%xmm9
13153  DB  72,173                              ; lods          %ds:(%rsi),%rax
13154  DB  15,40,230                           ; movaps        %xmm6,%xmm4
13155  DB  15,40,243                           ; movaps        %xmm3,%xmm6
13156  DB  15,40,202                           ; movaps        %xmm2,%xmm1
13157  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13158  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
13159  DB  65,15,40,250                        ; movaps        %xmm10,%xmm7
13160  DB  72,131,196,104                      ; add           $0x68,%rsp
13161  DB  255,224                             ; jmpq          *%rax
13162
13163PUBLIC _sk_saturation_sse41
13164_sk_saturation_sse41 LABEL PROC
13165  DB  72,131,236,88                       ; sub           $0x58,%rsp
13166  DB  68,15,40,206                        ; movaps        %xmm6,%xmm9
13167  DB  15,40,245                           ; movaps        %xmm5,%xmm6
13168  DB  15,40,236                           ; movaps        %xmm4,%xmm5
13169  DB  15,40,227                           ; movaps        %xmm3,%xmm4
13170  DB  15,41,76,36,48                      ; movaps        %xmm1,0x30(%rsp)
13171  DB  15,41,68,36,32                      ; movaps        %xmm0,0x20(%rsp)
13172  DB  68,15,40,212                        ; movaps        %xmm4,%xmm10
13173  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
13174  DB  68,15,40,220                        ; movaps        %xmm4,%xmm11
13175  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
13176  DB  68,15,40,196                        ; movaps        %xmm4,%xmm8
13177  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
13178  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
13179  DB  68,15,41,116,36,16                  ; movaps        %xmm14,0x10(%rsp)
13180  DB  15,40,217                           ; movaps        %xmm1,%xmm3
13181  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
13182  DB  68,15,41,76,36,64                   ; movaps        %xmm9,0x40(%rsp)
13183  DB  65,15,95,217                        ; maxps         %xmm9,%xmm3
13184  DB  15,40,208                           ; movaps        %xmm0,%xmm2
13185  DB  15,95,211                           ; maxps         %xmm3,%xmm2
13186  DB  68,15,40,225                        ; movaps        %xmm1,%xmm12
13187  DB  69,15,93,225                        ; minps         %xmm9,%xmm12
13188  DB  15,40,216                           ; movaps        %xmm0,%xmm3
13189  DB  65,15,93,220                        ; minps         %xmm12,%xmm3
13190  DB  15,92,211                           ; subps         %xmm3,%xmm2
13191  DB  15,89,215                           ; mulps         %xmm7,%xmm2
13192  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
13193  DB  68,15,41,36,36                      ; movaps        %xmm12,(%rsp)
13194  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13195  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
13196  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
13197  DB  15,93,216                           ; minps         %xmm0,%xmm3
13198  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13199  DB  65,15,95,192                        ; maxps         %xmm8,%xmm0
13200  DB  65,15,40,250                        ; movaps        %xmm10,%xmm7
13201  DB  15,95,248                           ; maxps         %xmm0,%xmm7
13202  DB  15,92,251                           ; subps         %xmm3,%xmm7
13203  DB  15,87,192                           ; xorps         %xmm0,%xmm0
13204  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
13205  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
13206  DB  68,15,94,215                        ; divps         %xmm7,%xmm10
13207  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
13208  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
13209  DB  68,15,94,223                        ; divps         %xmm7,%xmm11
13210  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
13211  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
13212  DB  68,15,94,199                        ; divps         %xmm7,%xmm8
13213  DB  15,194,248,4                        ; cmpneqps      %xmm0,%xmm7
13214  DB  68,15,84,215                        ; andps         %xmm7,%xmm10
13215  DB  68,15,84,223                        ; andps         %xmm7,%xmm11
13216  DB  68,15,84,199                        ; andps         %xmm7,%xmm8
13217  DB  15,40,21,99,66,0,0                  ; movaps        0x4263(%rip),%xmm2        # 5430 <_sk_callback_sse41+0x2b0>
13218  DB  15,40,221                           ; movaps        %xmm5,%xmm3
13219  DB  15,89,218                           ; mulps         %xmm2,%xmm3
13220  DB  15,40,13,102,66,0,0                 ; movaps        0x4266(%rip),%xmm1        # 5440 <_sk_callback_sse41+0x2c0>
13221  DB  15,40,254                           ; movaps        %xmm6,%xmm7
13222  DB  15,89,249                           ; mulps         %xmm1,%xmm7
13223  DB  15,88,251                           ; addps         %xmm3,%xmm7
13224  DB  68,15,40,45,101,66,0,0              ; movaps        0x4265(%rip),%xmm13        # 5450 <_sk_callback_sse41+0x2d0>
13225  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
13226  DB  68,15,88,247                        ; addps         %xmm7,%xmm14
13227  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
13228  DB  15,89,218                           ; mulps         %xmm2,%xmm3
13229  DB  65,15,40,251                        ; movaps        %xmm11,%xmm7
13230  DB  15,89,249                           ; mulps         %xmm1,%xmm7
13231  DB  15,88,251                           ; addps         %xmm3,%xmm7
13232  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
13233  DB  65,15,89,221                        ; mulps         %xmm13,%xmm3
13234  DB  15,88,223                           ; addps         %xmm7,%xmm3
13235  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
13236  DB  68,15,92,243                        ; subps         %xmm3,%xmm14
13237  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
13238  DB  69,15,88,222                        ; addps         %xmm14,%xmm11
13239  DB  69,15,88,240                        ; addps         %xmm8,%xmm14
13240  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13241  DB  65,15,93,198                        ; minps         %xmm14,%xmm0
13242  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
13243  DB  15,93,216                           ; minps         %xmm0,%xmm3
13244  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
13245  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
13246  DB  15,88,202                           ; addps         %xmm2,%xmm1
13247  DB  69,15,89,238                        ; mulps         %xmm14,%xmm13
13248  DB  68,15,88,233                        ; addps         %xmm1,%xmm13
13249  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
13250  DB  68,15,194,203,2                     ; cmpleps       %xmm3,%xmm9
13251  DB  65,15,40,253                        ; movaps        %xmm13,%xmm7
13252  DB  15,92,251                           ; subps         %xmm3,%xmm7
13253  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
13254  DB  69,15,92,253                        ; subps         %xmm13,%xmm15
13255  DB  69,15,89,253                        ; mulps         %xmm13,%xmm15
13256  DB  68,15,94,255                        ; divps         %xmm7,%xmm15
13257  DB  69,15,88,253                        ; addps         %xmm13,%xmm15
13258  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13259  DB  102,69,15,56,20,250                 ; blendvps      %xmm0,%xmm10,%xmm15
13260  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13261  DB  65,15,95,198                        ; maxps         %xmm14,%xmm0
13262  DB  68,15,95,208                        ; maxps         %xmm0,%xmm10
13263  DB  15,40,212                           ; movaps        %xmm4,%xmm2
13264  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
13265  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
13266  DB  69,15,194,194,1                     ; cmpltps       %xmm10,%xmm8
13267  DB  65,15,40,223                        ; movaps        %xmm15,%xmm3
13268  DB  65,15,92,221                        ; subps         %xmm13,%xmm3
13269  DB  15,40,202                           ; movaps        %xmm2,%xmm1
13270  DB  65,15,92,205                        ; subps         %xmm13,%xmm1
13271  DB  15,89,217                           ; mulps         %xmm1,%xmm3
13272  DB  69,15,92,213                        ; subps         %xmm13,%xmm10
13273  DB  65,15,94,218                        ; divps         %xmm10,%xmm3
13274  DB  65,15,88,221                        ; addps         %xmm13,%xmm3
13275  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13276  DB  102,68,15,56,20,251                 ; blendvps      %xmm0,%xmm3,%xmm15
13277  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
13278  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
13279  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
13280  DB  68,15,94,231                        ; divps         %xmm7,%xmm12
13281  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
13282  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13283  DB  102,69,15,56,20,227                 ; blendvps      %xmm0,%xmm11,%xmm12
13284  DB  65,15,40,220                        ; movaps        %xmm12,%xmm3
13285  DB  65,15,92,221                        ; subps         %xmm13,%xmm3
13286  DB  15,89,217                           ; mulps         %xmm1,%xmm3
13287  DB  65,15,94,218                        ; divps         %xmm10,%xmm3
13288  DB  65,15,88,221                        ; addps         %xmm13,%xmm3
13289  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13290  DB  102,68,15,56,20,227                 ; blendvps      %xmm0,%xmm3,%xmm12
13291  DB  69,15,40,222                        ; movaps        %xmm14,%xmm11
13292  DB  69,15,92,221                        ; subps         %xmm13,%xmm11
13293  DB  69,15,89,221                        ; mulps         %xmm13,%xmm11
13294  DB  68,15,94,223                        ; divps         %xmm7,%xmm11
13295  DB  69,15,88,221                        ; addps         %xmm13,%xmm11
13296  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13297  DB  102,69,15,56,20,222                 ; blendvps      %xmm0,%xmm14,%xmm11
13298  DB  65,15,40,251                        ; movaps        %xmm11,%xmm7
13299  DB  65,15,92,253                        ; subps         %xmm13,%xmm7
13300  DB  15,89,249                           ; mulps         %xmm1,%xmm7
13301  DB  65,15,94,250                        ; divps         %xmm10,%xmm7
13302  DB  65,15,88,253                        ; addps         %xmm13,%xmm7
13303  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13304  DB  102,68,15,56,20,223                 ; blendvps      %xmm0,%xmm7,%xmm11
13305  DB  68,15,40,13,43,65,0,0               ; movaps        0x412b(%rip),%xmm9        # 5460 <_sk_callback_sse41+0x2e0>
13306  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13307  DB  68,15,92,204                        ; subps         %xmm4,%xmm9
13308  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
13309  DB  15,88,231                           ; addps         %xmm7,%xmm4
13310  DB  15,92,226                           ; subps         %xmm2,%xmm4
13311  DB  15,40,220                           ; movaps        %xmm4,%xmm3
13312  DB  15,87,192                           ; xorps         %xmm0,%xmm0
13313  DB  68,15,95,248                        ; maxps         %xmm0,%xmm15
13314  DB  68,15,95,224                        ; maxps         %xmm0,%xmm12
13315  DB  68,15,95,216                        ; maxps         %xmm0,%xmm11
13316  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
13317  DB  15,89,205                           ; mulps         %xmm5,%xmm1
13318  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
13319  DB  15,40,68,36,32                      ; movaps        0x20(%rsp),%xmm0
13320  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13321  DB  15,88,193                           ; addps         %xmm1,%xmm0
13322  DB  65,15,88,199                        ; addps         %xmm15,%xmm0
13323  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
13324  DB  15,89,206                           ; mulps         %xmm6,%xmm1
13325  DB  15,40,84,36,48                      ; movaps        0x30(%rsp),%xmm2
13326  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
13327  DB  15,88,209                           ; addps         %xmm1,%xmm2
13328  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
13329  DB  15,40,202                           ; movaps        %xmm2,%xmm1
13330  DB  68,15,89,68,36,64                   ; mulps         0x40(%rsp),%xmm8
13331  DB  15,40,84,36,16                      ; movaps        0x10(%rsp),%xmm2
13332  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
13333  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
13334  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
13335  DB  72,173                              ; lods          %ds:(%rsi),%rax
13336  DB  15,40,229                           ; movaps        %xmm5,%xmm4
13337  DB  15,40,238                           ; movaps        %xmm6,%xmm5
13338  DB  15,40,242                           ; movaps        %xmm2,%xmm6
13339  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13340  DB  72,131,196,88                       ; add           $0x58,%rsp
13341  DB  255,224                             ; jmpq          *%rax
13342
13343PUBLIC _sk_color_sse41
13344_sk_color_sse41 LABEL PROC
13345  DB  72,131,236,72                       ; sub           $0x48,%rsp
13346  DB  68,15,40,230                        ; movaps        %xmm6,%xmm12
13347  DB  68,15,41,100,36,16                  ; movaps        %xmm12,0x10(%rsp)
13348  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
13349  DB  68,15,41,92,36,32                   ; movaps        %xmm11,0x20(%rsp)
13350  DB  68,15,40,212                        ; movaps        %xmm4,%xmm10
13351  DB  68,15,41,84,36,48                   ; movaps        %xmm10,0x30(%rsp)
13352  DB  15,40,243                           ; movaps        %xmm3,%xmm6
13353  DB  15,41,20,36                         ; movaps        %xmm2,(%rsp)
13354  DB  15,40,233                           ; movaps        %xmm1,%xmm5
13355  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13356  DB  69,15,40,240                        ; movaps        %xmm8,%xmm14
13357  DB  15,40,231                           ; movaps        %xmm7,%xmm4
13358  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
13359  DB  15,89,204                           ; mulps         %xmm4,%xmm1
13360  DB  68,15,40,13,112,64,0,0              ; movaps        0x4070(%rip),%xmm9        # 5470 <_sk_callback_sse41+0x2f0>
13361  DB  65,15,40,250                        ; movaps        %xmm10,%xmm7
13362  DB  65,15,89,249                        ; mulps         %xmm9,%xmm7
13363  DB  68,15,40,21,112,64,0,0              ; movaps        0x4070(%rip),%xmm10        # 5480 <_sk_callback_sse41+0x300>
13364  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
13365  DB  65,15,89,218                        ; mulps         %xmm10,%xmm3
13366  DB  15,88,223                           ; addps         %xmm7,%xmm3
13367  DB  68,15,40,29,109,64,0,0              ; movaps        0x406d(%rip),%xmm11        # 5490 <_sk_callback_sse41+0x310>
13368  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
13369  DB  69,15,89,235                        ; mulps         %xmm11,%xmm13
13370  DB  68,15,88,235                        ; addps         %xmm3,%xmm13
13371  DB  65,15,40,222                        ; movaps        %xmm14,%xmm3
13372  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
13373  DB  15,40,249                           ; movaps        %xmm1,%xmm7
13374  DB  65,15,89,250                        ; mulps         %xmm10,%xmm7
13375  DB  15,88,251                           ; addps         %xmm3,%xmm7
13376  DB  15,40,194                           ; movaps        %xmm2,%xmm0
13377  DB  15,89,196                           ; mulps         %xmm4,%xmm0
13378  DB  15,40,216                           ; movaps        %xmm0,%xmm3
13379  DB  65,15,89,219                        ; mulps         %xmm11,%xmm3
13380  DB  15,88,223                           ; addps         %xmm7,%xmm3
13381  DB  68,15,89,238                        ; mulps         %xmm6,%xmm13
13382  DB  68,15,92,235                        ; subps         %xmm3,%xmm13
13383  DB  69,15,88,245                        ; addps         %xmm13,%xmm14
13384  DB  65,15,88,205                        ; addps         %xmm13,%xmm1
13385  DB  68,15,88,232                        ; addps         %xmm0,%xmm13
13386  DB  15,40,193                           ; movaps        %xmm1,%xmm0
13387  DB  65,15,93,197                        ; minps         %xmm13,%xmm0
13388  DB  65,15,40,222                        ; movaps        %xmm14,%xmm3
13389  DB  15,93,216                           ; minps         %xmm0,%xmm3
13390  DB  69,15,89,206                        ; mulps         %xmm14,%xmm9
13391  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
13392  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
13393  DB  69,15,89,221                        ; mulps         %xmm13,%xmm11
13394  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
13395  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
13396  DB  68,15,194,203,2                     ; cmpleps       %xmm3,%xmm9
13397  DB  69,15,40,230                        ; movaps        %xmm14,%xmm12
13398  DB  69,15,92,227                        ; subps         %xmm11,%xmm12
13399  DB  69,15,89,227                        ; mulps         %xmm11,%xmm12
13400  DB  65,15,40,251                        ; movaps        %xmm11,%xmm7
13401  DB  15,92,251                           ; subps         %xmm3,%xmm7
13402  DB  68,15,94,231                        ; divps         %xmm7,%xmm12
13403  DB  69,15,88,227                        ; addps         %xmm11,%xmm12
13404  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13405  DB  102,69,15,56,20,230                 ; blendvps      %xmm0,%xmm14,%xmm12
13406  DB  15,40,193                           ; movaps        %xmm1,%xmm0
13407  DB  65,15,95,197                        ; maxps         %xmm13,%xmm0
13408  DB  65,15,40,214                        ; movaps        %xmm14,%xmm2
13409  DB  15,95,208                           ; maxps         %xmm0,%xmm2
13410  DB  15,40,222                           ; movaps        %xmm6,%xmm3
13411  DB  15,89,220                           ; mulps         %xmm4,%xmm3
13412  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
13413  DB  68,15,194,210,1                     ; cmpltps       %xmm2,%xmm10
13414  DB  69,15,40,244                        ; movaps        %xmm12,%xmm14
13415  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
13416  DB  68,15,40,251                        ; movaps        %xmm3,%xmm15
13417  DB  69,15,92,251                        ; subps         %xmm11,%xmm15
13418  DB  69,15,89,247                        ; mulps         %xmm15,%xmm14
13419  DB  65,15,92,211                        ; subps         %xmm11,%xmm2
13420  DB  68,15,94,242                        ; divps         %xmm2,%xmm14
13421  DB  69,15,88,243                        ; addps         %xmm11,%xmm14
13422  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13423  DB  102,69,15,56,20,230                 ; blendvps      %xmm0,%xmm14,%xmm12
13424  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
13425  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
13426  DB  69,15,89,243                        ; mulps         %xmm11,%xmm14
13427  DB  68,15,94,247                        ; divps         %xmm7,%xmm14
13428  DB  69,15,88,243                        ; addps         %xmm11,%xmm14
13429  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13430  DB  102,68,15,56,20,241                 ; blendvps      %xmm0,%xmm1,%xmm14
13431  DB  65,15,40,206                        ; movaps        %xmm14,%xmm1
13432  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
13433  DB  65,15,89,207                        ; mulps         %xmm15,%xmm1
13434  DB  15,94,202                           ; divps         %xmm2,%xmm1
13435  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
13436  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13437  DB  102,68,15,56,20,241                 ; blendvps      %xmm0,%xmm1,%xmm14
13438  DB  65,15,40,205                        ; movaps        %xmm13,%xmm1
13439  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
13440  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
13441  DB  15,94,207                           ; divps         %xmm7,%xmm1
13442  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
13443  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13444  DB  102,65,15,56,20,205                 ; blendvps      %xmm0,%xmm13,%xmm1
13445  DB  15,40,249                           ; movaps        %xmm1,%xmm7
13446  DB  65,15,92,251                        ; subps         %xmm11,%xmm7
13447  DB  65,15,89,255                        ; mulps         %xmm15,%xmm7
13448  DB  15,94,250                           ; divps         %xmm2,%xmm7
13449  DB  65,15,88,251                        ; addps         %xmm11,%xmm7
13450  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13451  DB  102,15,56,20,207                    ; blendvps      %xmm0,%xmm7,%xmm1
13452  DB  68,15,40,13,41,63,0,0               ; movaps        0x3f29(%rip),%xmm9        # 54a0 <_sk_callback_sse41+0x320>
13453  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13454  DB  15,92,196                           ; subps         %xmm4,%xmm0
13455  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
13456  DB  15,89,232                           ; mulps         %xmm0,%xmm5
13457  DB  15,89,4,36                          ; mulps         (%rsp),%xmm0
13458  DB  68,15,92,206                        ; subps         %xmm6,%xmm9
13459  DB  15,88,244                           ; addps         %xmm4,%xmm6
13460  DB  15,40,252                           ; movaps        %xmm4,%xmm7
13461  DB  15,92,243                           ; subps         %xmm3,%xmm6
13462  DB  15,40,222                           ; movaps        %xmm6,%xmm3
13463  DB  15,87,210                           ; xorps         %xmm2,%xmm2
13464  DB  68,15,95,226                        ; maxps         %xmm2,%xmm12
13465  DB  68,15,95,242                        ; maxps         %xmm2,%xmm14
13466  DB  15,95,202                           ; maxps         %xmm2,%xmm1
13467  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13468  DB  15,40,100,36,48                     ; movaps        0x30(%rsp),%xmm4
13469  DB  15,89,212                           ; mulps         %xmm4,%xmm2
13470  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
13471  DB  69,15,88,196                        ; addps         %xmm12,%xmm8
13472  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13473  DB  15,40,116,36,32                     ; movaps        0x20(%rsp),%xmm6
13474  DB  15,89,214                           ; mulps         %xmm6,%xmm2
13475  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
13476  DB  68,15,88,210                        ; addps         %xmm2,%xmm10
13477  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
13478  DB  15,40,84,36,16                      ; movaps        0x10(%rsp),%xmm2
13479  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
13480  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
13481  DB  68,15,88,201                        ; addps         %xmm1,%xmm9
13482  DB  72,173                              ; lods          %ds:(%rsi),%rax
13483  DB  15,40,238                           ; movaps        %xmm6,%xmm5
13484  DB  15,40,242                           ; movaps        %xmm2,%xmm6
13485  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13486  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
13487  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13488  DB  72,131,196,72                       ; add           $0x48,%rsp
13489  DB  255,224                             ; jmpq          *%rax
13490
13491PUBLIC _sk_luminosity_sse41
13492_sk_luminosity_sse41 LABEL PROC
13493  DB  72,131,236,72                       ; sub           $0x48,%rsp
13494  DB  15,41,116,36,16                     ; movaps        %xmm6,0x10(%rsp)
13495  DB  15,41,108,36,48                     ; movaps        %xmm5,0x30(%rsp)
13496  DB  68,15,40,196                        ; movaps        %xmm4,%xmm8
13497  DB  68,15,41,68,36,32                   ; movaps        %xmm8,0x20(%rsp)
13498  DB  15,41,20,36                         ; movaps        %xmm2,(%rsp)
13499  DB  15,40,224                           ; movaps        %xmm0,%xmm4
13500  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
13501  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
13502  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
13503  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
13504  DB  68,15,40,5,123,62,0,0               ; movaps        0x3e7b(%rip),%xmm8        # 54b0 <_sk_callback_sse41+0x330>
13505  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13506  DB  68,15,40,21,127,62,0,0              ; movaps        0x3e7f(%rip),%xmm10        # 54c0 <_sk_callback_sse41+0x340>
13507  DB  15,40,233                           ; movaps        %xmm1,%xmm5
13508  DB  65,15,89,234                        ; mulps         %xmm10,%xmm5
13509  DB  15,88,232                           ; addps         %xmm0,%xmm5
13510  DB  68,15,40,37,125,62,0,0              ; movaps        0x3e7d(%rip),%xmm12        # 54d0 <_sk_callback_sse41+0x350>
13511  DB  68,15,40,242                        ; movaps        %xmm2,%xmm14
13512  DB  69,15,89,244                        ; mulps         %xmm12,%xmm14
13513  DB  68,15,88,245                        ; addps         %xmm5,%xmm14
13514  DB  65,15,40,235                        ; movaps        %xmm11,%xmm5
13515  DB  65,15,89,232                        ; mulps         %xmm8,%xmm5
13516  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13517  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
13518  DB  15,88,213                           ; addps         %xmm5,%xmm2
13519  DB  15,40,195                           ; movaps        %xmm3,%xmm0
13520  DB  15,89,198                           ; mulps         %xmm6,%xmm0
13521  DB  15,40,232                           ; movaps        %xmm0,%xmm5
13522  DB  65,15,89,236                        ; mulps         %xmm12,%xmm5
13523  DB  15,88,234                           ; addps         %xmm2,%xmm5
13524  DB  68,15,89,247                        ; mulps         %xmm7,%xmm14
13525  DB  68,15,92,245                        ; subps         %xmm5,%xmm14
13526  DB  69,15,88,222                        ; addps         %xmm14,%xmm11
13527  DB  69,15,88,206                        ; addps         %xmm14,%xmm9
13528  DB  68,15,88,240                        ; addps         %xmm0,%xmm14
13529  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13530  DB  65,15,93,198                        ; minps         %xmm14,%xmm0
13531  DB  65,15,40,235                        ; movaps        %xmm11,%xmm5
13532  DB  15,93,232                           ; minps         %xmm0,%xmm5
13533  DB  69,15,89,195                        ; mulps         %xmm11,%xmm8
13534  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
13535  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
13536  DB  69,15,89,230                        ; mulps         %xmm14,%xmm12
13537  DB  69,15,88,226                        ; addps         %xmm10,%xmm12
13538  DB  69,15,87,210                        ; xorps         %xmm10,%xmm10
13539  DB  68,15,194,213,2                     ; cmpleps       %xmm5,%xmm10
13540  DB  69,15,40,235                        ; movaps        %xmm11,%xmm13
13541  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
13542  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
13543  DB  65,15,40,244                        ; movaps        %xmm12,%xmm6
13544  DB  15,92,245                           ; subps         %xmm5,%xmm6
13545  DB  68,15,94,238                        ; divps         %xmm6,%xmm13
13546  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
13547  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13548  DB  102,69,15,56,20,235                 ; blendvps      %xmm0,%xmm11,%xmm13
13549  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13550  DB  65,15,95,198                        ; maxps         %xmm14,%xmm0
13551  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
13552  DB  15,95,208                           ; maxps         %xmm0,%xmm2
13553  DB  15,40,235                           ; movaps        %xmm3,%xmm5
13554  DB  15,89,239                           ; mulps         %xmm7,%xmm5
13555  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
13556  DB  68,15,194,218,1                     ; cmpltps       %xmm2,%xmm11
13557  DB  69,15,40,197                        ; movaps        %xmm13,%xmm8
13558  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
13559  DB  68,15,40,253                        ; movaps        %xmm5,%xmm15
13560  DB  69,15,92,252                        ; subps         %xmm12,%xmm15
13561  DB  69,15,89,199                        ; mulps         %xmm15,%xmm8
13562  DB  65,15,92,212                        ; subps         %xmm12,%xmm2
13563  DB  68,15,94,194                        ; divps         %xmm2,%xmm8
13564  DB  69,15,88,196                        ; addps         %xmm12,%xmm8
13565  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13566  DB  102,69,15,56,20,232                 ; blendvps      %xmm0,%xmm8,%xmm13
13567  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
13568  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
13569  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
13570  DB  68,15,94,198                        ; divps         %xmm6,%xmm8
13571  DB  69,15,88,196                        ; addps         %xmm12,%xmm8
13572  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13573  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
13574  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
13575  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
13576  DB  69,15,89,207                        ; mulps         %xmm15,%xmm9
13577  DB  68,15,94,202                        ; divps         %xmm2,%xmm9
13578  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
13579  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13580  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
13581  DB  69,15,40,206                        ; movaps        %xmm14,%xmm9
13582  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
13583  DB  69,15,89,204                        ; mulps         %xmm12,%xmm9
13584  DB  68,15,94,206                        ; divps         %xmm6,%xmm9
13585  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
13586  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13587  DB  102,69,15,56,20,206                 ; blendvps      %xmm0,%xmm14,%xmm9
13588  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
13589  DB  65,15,92,244                        ; subps         %xmm12,%xmm6
13590  DB  65,15,89,247                        ; mulps         %xmm15,%xmm6
13591  DB  15,94,242                           ; divps         %xmm2,%xmm6
13592  DB  65,15,88,244                        ; addps         %xmm12,%xmm6
13593  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13594  DB  102,68,15,56,20,206                 ; blendvps      %xmm0,%xmm6,%xmm9
13595  DB  15,40,5,51,61,0,0                   ; movaps        0x3d33(%rip),%xmm0        # 54e0 <_sk_callback_sse41+0x360>
13596  DB  15,40,208                           ; movaps        %xmm0,%xmm2
13597  DB  15,92,215                           ; subps         %xmm7,%xmm2
13598  DB  15,89,226                           ; mulps         %xmm2,%xmm4
13599  DB  15,89,202                           ; mulps         %xmm2,%xmm1
13600  DB  15,89,20,36                         ; mulps         (%rsp),%xmm2
13601  DB  15,92,195                           ; subps         %xmm3,%xmm0
13602  DB  15,88,223                           ; addps         %xmm7,%xmm3
13603  DB  15,92,221                           ; subps         %xmm5,%xmm3
13604  DB  15,87,237                           ; xorps         %xmm5,%xmm5
13605  DB  68,15,95,237                        ; maxps         %xmm5,%xmm13
13606  DB  68,15,95,197                        ; maxps         %xmm5,%xmm8
13607  DB  68,15,95,205                        ; maxps         %xmm5,%xmm9
13608  DB  15,40,232                           ; movaps        %xmm0,%xmm5
13609  DB  68,15,40,84,36,32                   ; movaps        0x20(%rsp),%xmm10
13610  DB  65,15,89,234                        ; mulps         %xmm10,%xmm5
13611  DB  15,88,229                           ; addps         %xmm5,%xmm4
13612  DB  65,15,88,229                        ; addps         %xmm13,%xmm4
13613  DB  15,40,240                           ; movaps        %xmm0,%xmm6
13614  DB  15,40,108,36,48                     ; movaps        0x30(%rsp),%xmm5
13615  DB  15,89,245                           ; mulps         %xmm5,%xmm6
13616  DB  15,88,206                           ; addps         %xmm6,%xmm1
13617  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
13618  DB  15,40,116,36,16                     ; movaps        0x10(%rsp),%xmm6
13619  DB  15,89,198                           ; mulps         %xmm6,%xmm0
13620  DB  15,88,194                           ; addps         %xmm2,%xmm0
13621  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
13622  DB  72,173                              ; lods          %ds:(%rsi),%rax
13623  DB  15,40,196                           ; movaps        %xmm4,%xmm0
13624  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
13625  DB  65,15,40,226                        ; movaps        %xmm10,%xmm4
13626  DB  72,131,196,72                       ; add           $0x48,%rsp
13627  DB  255,224                             ; jmpq          *%rax
13628
13629PUBLIC _sk_srcover_rgba_8888_sse41
13630_sk_srcover_rgba_8888_sse41 LABEL PROC
13631  DB  72,173                              ; lods          %ds:(%rsi),%rax
13632  DB  72,139,0                            ; mov           (%rax),%rax
13633  DB  77,133,192                          ; test          %r8,%r8
13634  DB  15,133,217,0,0,0                    ; jne           1904 <_sk_srcover_rgba_8888_sse41+0xe7>
13635  DB  243,15,111,60,144                   ; movdqu        (%rax,%rdx,4),%xmm7
13636  DB  77,133,192                          ; test          %r8,%r8
13637  DB  102,15,111,37,181,60,0,0            ; movdqa        0x3cb5(%rip),%xmm4        # 54f0 <_sk_callback_sse41+0x370>
13638  DB  102,15,219,231                      ; pand          %xmm7,%xmm4
13639  DB  15,91,228                           ; cvtdq2ps      %xmm4,%xmm4
13640  DB  102,15,111,239                      ; movdqa        %xmm7,%xmm5
13641  DB  102,15,56,0,45,177,60,0,0           ; pshufb        0x3cb1(%rip),%xmm5        # 5500 <_sk_callback_sse41+0x380>
13642  DB  15,91,237                           ; cvtdq2ps      %xmm5,%xmm5
13643  DB  102,15,111,247                      ; movdqa        %xmm7,%xmm6
13644  DB  102,15,56,0,53,177,60,0,0           ; pshufb        0x3cb1(%rip),%xmm6        # 5510 <_sk_callback_sse41+0x390>
13645  DB  15,91,246                           ; cvtdq2ps      %xmm6,%xmm6
13646  DB  102,15,114,215,24                   ; psrld         $0x18,%xmm7
13647  DB  15,91,255                           ; cvtdq2ps      %xmm7,%xmm7
13648  DB  68,15,40,5,174,60,0,0               ; movaps        0x3cae(%rip),%xmm8        # 5520 <_sk_callback_sse41+0x3a0>
13649  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
13650  DB  68,15,40,37,178,60,0,0              ; movaps        0x3cb2(%rip),%xmm12        # 5530 <_sk_callback_sse41+0x3b0>
13651  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
13652  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
13653  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
13654  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
13655  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
13656  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
13657  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
13658  DB  68,15,88,209                        ; addps         %xmm1,%xmm10
13659  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
13660  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
13661  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
13662  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
13663  DB  65,15,89,220                        ; mulps         %xmm12,%xmm3
13664  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
13665  DB  68,15,88,195                        ; addps         %xmm3,%xmm8
13666  DB  102,65,15,91,193                    ; cvtps2dq      %xmm9,%xmm0
13667  DB  102,65,15,91,202                    ; cvtps2dq      %xmm10,%xmm1
13668  DB  102,15,114,241,8                    ; pslld         $0x8,%xmm1
13669  DB  102,15,235,200                      ; por           %xmm0,%xmm1
13670  DB  102,65,15,91,211                    ; cvtps2dq      %xmm11,%xmm2
13671  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
13672  DB  102,65,15,91,192                    ; cvtps2dq      %xmm8,%xmm0
13673  DB  102,15,114,240,24                   ; pslld         $0x18,%xmm0
13674  DB  102,15,235,194                      ; por           %xmm2,%xmm0
13675  DB  102,15,235,193                      ; por           %xmm1,%xmm0
13676  DB  117,85                              ; jne           1940 <_sk_srcover_rgba_8888_sse41+0x123>
13677  DB  243,15,127,4,144                    ; movdqu        %xmm0,(%rax,%rdx,4)
13678  DB  72,173                              ; lods          %ds:(%rsi),%rax
13679  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13680  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
13681  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
13682  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
13683  DB  255,224                             ; jmpq          *%rax
13684  DB  69,137,193                          ; mov           %r8d,%r9d
13685  DB  65,128,225,3                        ; and           $0x3,%r9b
13686  DB  65,128,249,1                        ; cmp           $0x1,%r9b
13687  DB  116,87                              ; je            1968 <_sk_srcover_rgba_8888_sse41+0x14b>
13688  DB  102,15,239,255                      ; pxor          %xmm7,%xmm7
13689  DB  65,128,249,2                        ; cmp           $0x2,%r9b
13690  DB  116,21                              ; je            1930 <_sk_srcover_rgba_8888_sse41+0x113>
13691  DB  65,128,249,3                        ; cmp           $0x3,%r9b
13692  DB  15,133,11,255,255,255               ; jne           1830 <_sk_srcover_rgba_8888_sse41+0x13>
13693  DB  102,15,110,100,144,8                ; movd          0x8(%rax,%rdx,4),%xmm4
13694  DB  102,15,112,252,69                   ; pshufd        $0x45,%xmm4,%xmm7
13695  DB  243,15,126,36,144                   ; movq          (%rax,%rdx,4),%xmm4
13696  DB  102,15,58,14,252,15                 ; pblendw       $0xf,%xmm4,%xmm7
13697  DB  233,240,254,255,255                 ; jmpq          1830 <_sk_srcover_rgba_8888_sse41+0x13>
13698  DB  69,137,193                          ; mov           %r8d,%r9d
13699  DB  65,128,225,3                        ; and           $0x3,%r9b
13700  DB  65,128,249,1                        ; cmp           $0x1,%r9b
13701  DB  116,37                              ; je            1972 <_sk_srcover_rgba_8888_sse41+0x155>
13702  DB  65,128,249,2                        ; cmp           $0x2,%r9b
13703  DB  116,14                              ; je            1961 <_sk_srcover_rgba_8888_sse41+0x144>
13704  DB  65,128,249,3                        ; cmp           $0x3,%r9b
13705  DB  117,151                             ; jne           18f0 <_sk_srcover_rgba_8888_sse41+0xd3>
13706  DB  102,15,58,22,68,144,8,2             ; pextrd        $0x2,%xmm0,0x8(%rax,%rdx,4)
13707  DB  102,15,214,4,144                    ; movq          %xmm0,(%rax,%rdx,4)
13708  DB  235,136                             ; jmp           18f0 <_sk_srcover_rgba_8888_sse41+0xd3>
13709  DB  102,15,110,60,144                   ; movd          (%rax,%rdx,4),%xmm7
13710  DB  233,190,254,255,255                 ; jmpq          1830 <_sk_srcover_rgba_8888_sse41+0x13>
13711  DB  102,15,126,4,144                    ; movd          %xmm0,(%rax,%rdx,4)
13712  DB  233,116,255,255,255                 ; jmpq          18f0 <_sk_srcover_rgba_8888_sse41+0xd3>
13713
13714PUBLIC _sk_clamp_0_sse41
13715_sk_clamp_0_sse41 LABEL PROC
13716  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
13717  DB  65,15,95,192                        ; maxps         %xmm8,%xmm0
13718  DB  65,15,95,200                        ; maxps         %xmm8,%xmm1
13719  DB  65,15,95,208                        ; maxps         %xmm8,%xmm2
13720  DB  65,15,95,216                        ; maxps         %xmm8,%xmm3
13721  DB  72,173                              ; lods          %ds:(%rsi),%rax
13722  DB  255,224                             ; jmpq          *%rax
13723
13724PUBLIC _sk_clamp_1_sse41
13725_sk_clamp_1_sse41 LABEL PROC
13726  DB  68,15,40,5,164,59,0,0               ; movaps        0x3ba4(%rip),%xmm8        # 5540 <_sk_callback_sse41+0x3c0>
13727  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
13728  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
13729  DB  65,15,93,208                        ; minps         %xmm8,%xmm2
13730  DB  65,15,93,216                        ; minps         %xmm8,%xmm3
13731  DB  72,173                              ; lods          %ds:(%rsi),%rax
13732  DB  255,224                             ; jmpq          *%rax
13733
13734PUBLIC _sk_clamp_a_sse41
13735_sk_clamp_a_sse41 LABEL PROC
13736  DB  15,93,29,153,59,0,0                 ; minps         0x3b99(%rip),%xmm3        # 5550 <_sk_callback_sse41+0x3d0>
13737  DB  15,93,195                           ; minps         %xmm3,%xmm0
13738  DB  15,93,203                           ; minps         %xmm3,%xmm1
13739  DB  15,93,211                           ; minps         %xmm3,%xmm2
13740  DB  72,173                              ; lods          %ds:(%rsi),%rax
13741  DB  255,224                             ; jmpq          *%rax
13742
13743PUBLIC _sk_set_rgb_sse41
13744_sk_set_rgb_sse41 LABEL PROC
13745  DB  72,173                              ; lods          %ds:(%rsi),%rax
13746  DB  243,15,16,0                         ; movss         (%rax),%xmm0
13747  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
13748  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
13749  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
13750  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
13751  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
13752  DB  72,173                              ; lods          %ds:(%rsi),%rax
13753  DB  255,224                             ; jmpq          *%rax
13754
13755PUBLIC _sk_swap_rb_sse41
13756_sk_swap_rb_sse41 LABEL PROC
13757  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13758  DB  72,173                              ; lods          %ds:(%rsi),%rax
13759  DB  15,40,194                           ; movaps        %xmm2,%xmm0
13760  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
13761  DB  255,224                             ; jmpq          *%rax
13762
13763PUBLIC _sk_swap_sse41
13764_sk_swap_sse41 LABEL PROC
13765  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
13766  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
13767  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
13768  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
13769  DB  72,173                              ; lods          %ds:(%rsi),%rax
13770  DB  15,40,196                           ; movaps        %xmm4,%xmm0
13771  DB  15,40,205                           ; movaps        %xmm5,%xmm1
13772  DB  15,40,214                           ; movaps        %xmm6,%xmm2
13773  DB  15,40,223                           ; movaps        %xmm7,%xmm3
13774  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
13775  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
13776  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
13777  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
13778  DB  255,224                             ; jmpq          *%rax
13779
13780PUBLIC _sk_move_src_dst_sse41
13781_sk_move_src_dst_sse41 LABEL PROC
13782  DB  72,173                              ; lods          %ds:(%rsi),%rax
13783  DB  15,40,224                           ; movaps        %xmm0,%xmm4
13784  DB  15,40,233                           ; movaps        %xmm1,%xmm5
13785  DB  15,40,242                           ; movaps        %xmm2,%xmm6
13786  DB  15,40,251                           ; movaps        %xmm3,%xmm7
13787  DB  255,224                             ; jmpq          *%rax
13788
13789PUBLIC _sk_move_dst_src_sse41
13790_sk_move_dst_src_sse41 LABEL PROC
13791  DB  72,173                              ; lods          %ds:(%rsi),%rax
13792  DB  15,40,196                           ; movaps        %xmm4,%xmm0
13793  DB  15,40,205                           ; movaps        %xmm5,%xmm1
13794  DB  15,40,214                           ; movaps        %xmm6,%xmm2
13795  DB  15,40,223                           ; movaps        %xmm7,%xmm3
13796  DB  255,224                             ; jmpq          *%rax
13797
13798PUBLIC _sk_premul_sse41
13799_sk_premul_sse41 LABEL PROC
13800  DB  15,89,195                           ; mulps         %xmm3,%xmm0
13801  DB  15,89,203                           ; mulps         %xmm3,%xmm1
13802  DB  15,89,211                           ; mulps         %xmm3,%xmm2
13803  DB  72,173                              ; lods          %ds:(%rsi),%rax
13804  DB  255,224                             ; jmpq          *%rax
13805
13806PUBLIC _sk_unpremul_sse41
13807_sk_unpremul_sse41 LABEL PROC
13808  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
13809  DB  68,15,40,13,4,59,0,0                ; movaps        0x3b04(%rip),%xmm9        # 5560 <_sk_callback_sse41+0x3e0>
13810  DB  68,15,94,203                        ; divps         %xmm3,%xmm9
13811  DB  68,15,194,195,4                     ; cmpneqps      %xmm3,%xmm8
13812  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
13813  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
13814  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
13815  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
13816  DB  72,173                              ; lods          %ds:(%rsi),%rax
13817  DB  255,224                             ; jmpq          *%rax
13818
13819PUBLIC _sk_from_srgb_sse41
13820_sk_from_srgb_sse41 LABEL PROC
13821  DB  68,15,40,29,239,58,0,0              ; movaps        0x3aef(%rip),%xmm11        # 5570 <_sk_callback_sse41+0x3f0>
13822  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
13823  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
13824  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
13825  DB  69,15,89,210                        ; mulps         %xmm10,%xmm10
13826  DB  68,15,40,37,231,58,0,0              ; movaps        0x3ae7(%rip),%xmm12        # 5580 <_sk_callback_sse41+0x400>
13827  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13828  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
13829  DB  68,15,40,45,231,58,0,0              ; movaps        0x3ae7(%rip),%xmm13        # 5590 <_sk_callback_sse41+0x410>
13830  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
13831  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
13832  DB  68,15,40,53,231,58,0,0              ; movaps        0x3ae7(%rip),%xmm14        # 55a0 <_sk_callback_sse41+0x420>
13833  DB  69,15,88,198                        ; addps         %xmm14,%xmm8
13834  DB  68,15,40,61,235,58,0,0              ; movaps        0x3aeb(%rip),%xmm15        # 55b0 <_sk_callback_sse41+0x430>
13835  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
13836  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
13837  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
13838  DB  69,15,89,211                        ; mulps         %xmm11,%xmm10
13839  DB  15,40,193                           ; movaps        %xmm1,%xmm0
13840  DB  15,89,192                           ; mulps         %xmm0,%xmm0
13841  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
13842  DB  69,15,89,204                        ; mulps         %xmm12,%xmm9
13843  DB  69,15,88,205                        ; addps         %xmm13,%xmm9
13844  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
13845  DB  69,15,88,206                        ; addps         %xmm14,%xmm9
13846  DB  65,15,194,207,1                     ; cmpltps       %xmm15,%xmm1
13847  DB  15,40,193                           ; movaps        %xmm1,%xmm0
13848  DB  102,69,15,56,20,202                 ; blendvps      %xmm0,%xmm10,%xmm9
13849  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
13850  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
13851  DB  69,15,89,210                        ; mulps         %xmm10,%xmm10
13852  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
13853  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
13854  DB  69,15,89,212                        ; mulps         %xmm12,%xmm10
13855  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
13856  DB  65,15,194,215,1                     ; cmpltps       %xmm15,%xmm2
13857  DB  15,40,194                           ; movaps        %xmm2,%xmm0
13858  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
13859  DB  72,173                              ; lods          %ds:(%rsi),%rax
13860  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13861  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
13862  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
13863  DB  255,224                             ; jmpq          *%rax
13864
13865PUBLIC _sk_to_srgb_sse41
13866_sk_to_srgb_sse41 LABEL PROC
13867  DB  72,131,236,24                       ; sub           $0x18,%rsp
13868  DB  15,41,60,36                         ; movaps        %xmm7,(%rsp)
13869  DB  15,40,254                           ; movaps        %xmm6,%xmm7
13870  DB  15,40,245                           ; movaps        %xmm5,%xmm6
13871  DB  15,40,236                           ; movaps        %xmm4,%xmm5
13872  DB  15,40,227                           ; movaps        %xmm3,%xmm4
13873  DB  15,40,218                           ; movaps        %xmm2,%xmm3
13874  DB  15,40,209                           ; movaps        %xmm1,%xmm2
13875  DB  68,15,82,192                        ; rsqrtps       %xmm0,%xmm8
13876  DB  68,15,40,29,96,58,0,0               ; movaps        0x3a60(%rip),%xmm11        # 55c0 <_sk_callback_sse41+0x440>
13877  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
13878  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
13879  DB  68,15,40,37,96,58,0,0               ; movaps        0x3a60(%rip),%xmm12        # 55d0 <_sk_callback_sse41+0x450>
13880  DB  69,15,40,248                        ; movaps        %xmm8,%xmm15
13881  DB  69,15,89,252                        ; mulps         %xmm12,%xmm15
13882  DB  68,15,40,21,96,58,0,0               ; movaps        0x3a60(%rip),%xmm10        # 55e0 <_sk_callback_sse41+0x460>
13883  DB  69,15,88,250                        ; addps         %xmm10,%xmm15
13884  DB  69,15,89,248                        ; mulps         %xmm8,%xmm15
13885  DB  68,15,40,45,96,58,0,0               ; movaps        0x3a60(%rip),%xmm13        # 55f0 <_sk_callback_sse41+0x470>
13886  DB  69,15,88,253                        ; addps         %xmm13,%xmm15
13887  DB  68,15,40,53,100,58,0,0              ; movaps        0x3a64(%rip),%xmm14        # 5600 <_sk_callback_sse41+0x480>
13888  DB  69,15,88,198                        ; addps         %xmm14,%xmm8
13889  DB  69,15,83,192                        ; rcpps         %xmm8,%xmm8
13890  DB  69,15,89,199                        ; mulps         %xmm15,%xmm8
13891  DB  68,15,40,61,96,58,0,0               ; movaps        0x3a60(%rip),%xmm15        # 5610 <_sk_callback_sse41+0x490>
13892  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
13893  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
13894  DB  68,15,82,202                        ; rsqrtps       %xmm2,%xmm9
13895  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13896  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
13897  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
13898  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
13899  DB  65,15,88,197                        ; addps         %xmm13,%xmm0
13900  DB  69,15,88,206                        ; addps         %xmm14,%xmm9
13901  DB  69,15,83,201                        ; rcpps         %xmm9,%xmm9
13902  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
13903  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
13904  DB  65,15,194,215,1                     ; cmpltps       %xmm15,%xmm2
13905  DB  15,40,194                           ; movaps        %xmm2,%xmm0
13906  DB  102,68,15,56,20,201                 ; blendvps      %xmm0,%xmm1,%xmm9
13907  DB  15,82,195                           ; rsqrtps       %xmm3,%xmm0
13908  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
13909  DB  69,15,88,226                        ; addps         %xmm10,%xmm12
13910  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
13911  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
13912  DB  65,15,88,198                        ; addps         %xmm14,%xmm0
13913  DB  68,15,83,208                        ; rcpps         %xmm0,%xmm10
13914  DB  69,15,89,212                        ; mulps         %xmm12,%xmm10
13915  DB  68,15,89,219                        ; mulps         %xmm3,%xmm11
13916  DB  65,15,194,223,1                     ; cmpltps       %xmm15,%xmm3
13917  DB  15,40,195                           ; movaps        %xmm3,%xmm0
13918  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
13919  DB  72,173                              ; lods          %ds:(%rsi),%rax
13920  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13921  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
13922  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
13923  DB  15,40,220                           ; movaps        %xmm4,%xmm3
13924  DB  15,40,229                           ; movaps        %xmm5,%xmm4
13925  DB  15,40,238                           ; movaps        %xmm6,%xmm5
13926  DB  15,40,247                           ; movaps        %xmm7,%xmm6
13927  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
13928  DB  72,131,196,24                       ; add           $0x18,%rsp
13929  DB  255,224                             ; jmpq          *%rax
13930
13931PUBLIC _sk_rgb_to_hsl_sse41
13932_sk_rgb_to_hsl_sse41 LABEL PROC
13933  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
13934  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
13935  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
13936  DB  69,15,95,217                        ; maxps         %xmm9,%xmm11
13937  DB  68,15,95,218                        ; maxps         %xmm2,%xmm11
13938  DB  69,15,40,224                        ; movaps        %xmm8,%xmm12
13939  DB  69,15,93,225                        ; minps         %xmm9,%xmm12
13940  DB  68,15,93,226                        ; minps         %xmm2,%xmm12
13941  DB  65,15,40,203                        ; movaps        %xmm11,%xmm1
13942  DB  65,15,92,204                        ; subps         %xmm12,%xmm1
13943  DB  68,15,40,53,170,57,0,0              ; movaps        0x39aa(%rip),%xmm14        # 5620 <_sk_callback_sse41+0x4a0>
13944  DB  68,15,94,241                        ; divps         %xmm1,%xmm14
13945  DB  69,15,40,211                        ; movaps        %xmm11,%xmm10
13946  DB  69,15,194,208,0                     ; cmpeqps       %xmm8,%xmm10
13947  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13948  DB  15,92,194                           ; subps         %xmm2,%xmm0
13949  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
13950  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
13951  DB  68,15,194,250,1                     ; cmpltps       %xmm2,%xmm15
13952  DB  68,15,84,61,145,57,0,0              ; andps         0x3991(%rip),%xmm15        # 5630 <_sk_callback_sse41+0x4b0>
13953  DB  68,15,88,248                        ; addps         %xmm0,%xmm15
13954  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
13955  DB  65,15,194,193,0                     ; cmpeqps       %xmm9,%xmm0
13956  DB  65,15,92,208                        ; subps         %xmm8,%xmm2
13957  DB  65,15,89,214                        ; mulps         %xmm14,%xmm2
13958  DB  68,15,40,45,132,57,0,0              ; movaps        0x3984(%rip),%xmm13        # 5640 <_sk_callback_sse41+0x4c0>
13959  DB  65,15,88,213                        ; addps         %xmm13,%xmm2
13960  DB  69,15,92,193                        ; subps         %xmm9,%xmm8
13961  DB  69,15,89,198                        ; mulps         %xmm14,%xmm8
13962  DB  68,15,88,5,128,57,0,0               ; addps         0x3980(%rip),%xmm8        # 5650 <_sk_callback_sse41+0x4d0>
13963  DB  102,68,15,56,20,194                 ; blendvps      %xmm0,%xmm2,%xmm8
13964  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
13965  DB  102,69,15,56,20,199                 ; blendvps      %xmm0,%xmm15,%xmm8
13966  DB  68,15,89,5,120,57,0,0               ; mulps         0x3978(%rip),%xmm8        # 5660 <_sk_callback_sse41+0x4e0>
13967  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
13968  DB  69,15,194,204,4                     ; cmpneqps      %xmm12,%xmm9
13969  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
13970  DB  69,15,92,235                        ; subps         %xmm11,%xmm13
13971  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
13972  DB  15,40,5,108,57,0,0                  ; movaps        0x396c(%rip),%xmm0        # 5670 <_sk_callback_sse41+0x4f0>
13973  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
13974  DB  15,89,208                           ; mulps         %xmm0,%xmm2
13975  DB  15,194,194,1                        ; cmpltps       %xmm2,%xmm0
13976  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
13977  DB  102,69,15,56,20,221                 ; blendvps      %xmm0,%xmm13,%xmm11
13978  DB  65,15,94,203                        ; divps         %xmm11,%xmm1
13979  DB  65,15,84,201                        ; andps         %xmm9,%xmm1
13980  DB  72,173                              ; lods          %ds:(%rsi),%rax
13981  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
13982  DB  255,224                             ; jmpq          *%rax
13983
13984PUBLIC _sk_hsl_to_rgb_sse41
13985_sk_hsl_to_rgb_sse41 LABEL PROC
13986  DB  72,131,236,104                      ; sub           $0x68,%rsp
13987  DB  15,41,124,36,80                     ; movaps        %xmm7,0x50(%rsp)
13988  DB  15,41,116,36,64                     ; movaps        %xmm6,0x40(%rsp)
13989  DB  15,41,108,36,48                     ; movaps        %xmm5,0x30(%rsp)
13990  DB  15,41,100,36,32                     ; movaps        %xmm4,0x20(%rsp)
13991  DB  15,41,92,36,16                      ; movaps        %xmm3,0x10(%rsp)
13992  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
13993  DB  68,15,40,13,46,57,0,0               ; movaps        0x392e(%rip),%xmm9        # 5680 <_sk_callback_sse41+0x500>
13994  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
13995  DB  15,194,194,2                        ; cmpleps       %xmm2,%xmm0
13996  DB  15,40,217                           ; movaps        %xmm1,%xmm3
13997  DB  15,40,233                           ; movaps        %xmm1,%xmm5
13998  DB  15,89,234                           ; mulps         %xmm2,%xmm5
13999  DB  15,92,221                           ; subps         %xmm5,%xmm3
14000  DB  102,15,56,20,235                    ; blendvps      %xmm0,%xmm3,%xmm5
14001  DB  15,88,234                           ; addps         %xmm2,%xmm5
14002  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
14003  DB  15,41,20,36                         ; movaps        %xmm2,(%rsp)
14004  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
14005  DB  68,15,92,197                        ; subps         %xmm5,%xmm8
14006  DB  68,15,40,53,10,57,0,0               ; movaps        0x390a(%rip),%xmm14        # 5690 <_sk_callback_sse41+0x510>
14007  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
14008  DB  102,65,15,58,8,198,1                ; roundps       $0x1,%xmm14,%xmm0
14009  DB  68,15,92,240                        ; subps         %xmm0,%xmm14
14010  DB  68,15,40,29,3,57,0,0                ; movaps        0x3903(%rip),%xmm11        # 56a0 <_sk_callback_sse41+0x520>
14011  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
14012  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
14013  DB  15,40,245                           ; movaps        %xmm5,%xmm6
14014  DB  65,15,92,240                        ; subps         %xmm8,%xmm6
14015  DB  15,40,61,252,56,0,0                 ; movaps        0x38fc(%rip),%xmm7        # 56b0 <_sk_callback_sse41+0x530>
14016  DB  69,15,40,238                        ; movaps        %xmm14,%xmm13
14017  DB  68,15,89,239                        ; mulps         %xmm7,%xmm13
14018  DB  15,40,29,253,56,0,0                 ; movaps        0x38fd(%rip),%xmm3        # 56c0 <_sk_callback_sse41+0x540>
14019  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
14020  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
14021  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
14022  DB  69,15,88,224                        ; addps         %xmm8,%xmm12
14023  DB  102,69,15,56,20,224                 ; blendvps      %xmm0,%xmm8,%xmm12
14024  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
14025  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
14026  DB  68,15,40,253                        ; movaps        %xmm5,%xmm15
14027  DB  102,69,15,56,20,252                 ; blendvps      %xmm0,%xmm12,%xmm15
14028  DB  68,15,40,37,220,56,0,0              ; movaps        0x38dc(%rip),%xmm12        # 56d0 <_sk_callback_sse41+0x550>
14029  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
14030  DB  65,15,194,198,2                     ; cmpleps       %xmm14,%xmm0
14031  DB  68,15,89,238                        ; mulps         %xmm6,%xmm13
14032  DB  69,15,88,232                        ; addps         %xmm8,%xmm13
14033  DB  102,69,15,56,20,239                 ; blendvps      %xmm0,%xmm15,%xmm13
14034  DB  69,15,87,246                        ; xorps         %xmm14,%xmm14
14035  DB  68,15,194,241,0                     ; cmpeqps       %xmm1,%xmm14
14036  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
14037  DB  102,68,15,56,20,234                 ; blendvps      %xmm0,%xmm2,%xmm13
14038  DB  102,65,15,58,8,194,1                ; roundps       $0x1,%xmm10,%xmm0
14039  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
14040  DB  68,15,92,248                        ; subps         %xmm0,%xmm15
14041  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
14042  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
14043  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
14044  DB  15,89,207                           ; mulps         %xmm7,%xmm1
14045  DB  15,40,211                           ; movaps        %xmm3,%xmm2
14046  DB  15,92,209                           ; subps         %xmm1,%xmm2
14047  DB  15,89,214                           ; mulps         %xmm6,%xmm2
14048  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
14049  DB  102,65,15,56,20,208                 ; blendvps      %xmm0,%xmm8,%xmm2
14050  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
14051  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
14052  DB  15,40,229                           ; movaps        %xmm5,%xmm4
14053  DB  102,15,56,20,226                    ; blendvps      %xmm0,%xmm2,%xmm4
14054  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
14055  DB  65,15,194,199,2                     ; cmpleps       %xmm15,%xmm0
14056  DB  15,89,206                           ; mulps         %xmm6,%xmm1
14057  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
14058  DB  102,15,56,20,204                    ; blendvps      %xmm0,%xmm4,%xmm1
14059  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
14060  DB  15,40,20,36                         ; movaps        (%rsp),%xmm2
14061  DB  102,15,56,20,202                    ; blendvps      %xmm0,%xmm2,%xmm1
14062  DB  68,15,88,21,85,56,0,0               ; addps         0x3855(%rip),%xmm10        # 56e0 <_sk_callback_sse41+0x560>
14063  DB  102,65,15,58,8,194,1                ; roundps       $0x1,%xmm10,%xmm0
14064  DB  68,15,92,208                        ; subps         %xmm0,%xmm10
14065  DB  69,15,194,218,2                     ; cmpleps       %xmm10,%xmm11
14066  DB  65,15,89,250                        ; mulps         %xmm10,%xmm7
14067  DB  15,92,223                           ; subps         %xmm7,%xmm3
14068  DB  15,89,222                           ; mulps         %xmm6,%xmm3
14069  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
14070  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
14071  DB  102,65,15,56,20,216                 ; blendvps      %xmm0,%xmm8,%xmm3
14072  DB  69,15,194,202,2                     ; cmpleps       %xmm10,%xmm9
14073  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
14074  DB  102,15,56,20,235                    ; blendvps      %xmm0,%xmm3,%xmm5
14075  DB  69,15,194,226,2                     ; cmpleps       %xmm10,%xmm12
14076  DB  15,89,254                           ; mulps         %xmm6,%xmm7
14077  DB  68,15,88,199                        ; addps         %xmm7,%xmm8
14078  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
14079  DB  102,68,15,56,20,197                 ; blendvps      %xmm0,%xmm5,%xmm8
14080  DB  65,15,40,198                        ; movaps        %xmm14,%xmm0
14081  DB  102,68,15,56,20,194                 ; blendvps      %xmm0,%xmm2,%xmm8
14082  DB  72,173                              ; lods          %ds:(%rsi),%rax
14083  DB  65,15,40,197                        ; movaps        %xmm13,%xmm0
14084  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
14085  DB  15,40,92,36,16                      ; movaps        0x10(%rsp),%xmm3
14086  DB  15,40,100,36,32                     ; movaps        0x20(%rsp),%xmm4
14087  DB  15,40,108,36,48                     ; movaps        0x30(%rsp),%xmm5
14088  DB  15,40,116,36,64                     ; movaps        0x40(%rsp),%xmm6
14089  DB  15,40,124,36,80                     ; movaps        0x50(%rsp),%xmm7
14090  DB  72,131,196,104                      ; add           $0x68,%rsp
14091  DB  255,224                             ; jmpq          *%rax
14092
14093PUBLIC _sk_scale_1_float_sse41
14094_sk_scale_1_float_sse41 LABEL PROC
14095  DB  72,173                              ; lods          %ds:(%rsi),%rax
14096  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
14097  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
14098  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
14099  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
14100  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
14101  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
14102  DB  72,173                              ; lods          %ds:(%rsi),%rax
14103  DB  255,224                             ; jmpq          *%rax
14104
14105PUBLIC _sk_scale_u8_sse41
14106_sk_scale_u8_sse41 LABEL PROC
14107  DB  72,173                              ; lods          %ds:(%rsi),%rax
14108  DB  76,139,16                           ; mov           (%rax),%r10
14109  DB  77,133,192                          ; test          %r8,%r8
14110  DB  117,52                              ; jne           1f68 <_sk_scale_u8_sse41+0x3e>
14111  DB  102,69,15,56,49,4,18                ; pmovzxbd      (%r10,%rdx,1),%xmm8
14112  DB  102,68,15,219,5,172,55,0,0          ; pand          0x37ac(%rip),%xmm8        # 56f0 <_sk_callback_sse41+0x570>
14113  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14114  DB  68,15,89,5,176,55,0,0               ; mulps         0x37b0(%rip),%xmm8        # 5700 <_sk_callback_sse41+0x580>
14115  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
14116  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
14117  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
14118  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
14119  DB  72,173                              ; lods          %ds:(%rsi),%rax
14120  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
14121  DB  255,224                             ; jmpq          *%rax
14122  DB  69,137,193                          ; mov           %r8d,%r9d
14123  DB  65,128,225,3                        ; and           $0x3,%r9b
14124  DB  65,128,249,1                        ; cmp           $0x1,%r9b
14125  DB  116,59                              ; je            1fb0 <_sk_scale_u8_sse41+0x86>
14126  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
14127  DB  65,128,249,2                        ; cmp           $0x2,%r9b
14128  DB  116,23                              ; je            1f97 <_sk_scale_u8_sse41+0x6d>
14129  DB  65,128,249,3                        ; cmp           $0x3,%r9b
14130  DB  117,181                             ; jne           1f3b <_sk_scale_u8_sse41+0x11>
14131  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
14132  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14133  DB  102,69,15,112,192,69                ; pshufd        $0x45,%xmm8,%xmm8
14134  DB  65,15,183,4,18                      ; movzwl        (%r10,%rdx,1),%eax
14135  DB  102,68,15,110,200                   ; movd          %eax,%xmm9
14136  DB  102,69,15,56,49,201                 ; pmovzxbd      %xmm9,%xmm9
14137  DB  102,69,15,58,14,193,15              ; pblendw       $0xf,%xmm9,%xmm8
14138  DB  235,139                             ; jmp           1f3b <_sk_scale_u8_sse41+0x11>
14139  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
14140  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14141  DB  233,124,255,255,255                 ; jmpq          1f3b <_sk_scale_u8_sse41+0x11>
14142
14143PUBLIC _sk_lerp_1_float_sse41
14144_sk_lerp_1_float_sse41 LABEL PROC
14145  DB  72,173                              ; lods          %ds:(%rsi),%rax
14146  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
14147  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
14148  DB  15,92,196                           ; subps         %xmm4,%xmm0
14149  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
14150  DB  15,88,196                           ; addps         %xmm4,%xmm0
14151  DB  15,92,205                           ; subps         %xmm5,%xmm1
14152  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
14153  DB  15,88,205                           ; addps         %xmm5,%xmm1
14154  DB  15,92,214                           ; subps         %xmm6,%xmm2
14155  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
14156  DB  15,88,214                           ; addps         %xmm6,%xmm2
14157  DB  15,92,223                           ; subps         %xmm7,%xmm3
14158  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
14159  DB  15,88,223                           ; addps         %xmm7,%xmm3
14160  DB  72,173                              ; lods          %ds:(%rsi),%rax
14161  DB  255,224                             ; jmpq          *%rax
14162
14163PUBLIC _sk_lerp_u8_sse41
14164_sk_lerp_u8_sse41 LABEL PROC
14165  DB  72,173                              ; lods          %ds:(%rsi),%rax
14166  DB  76,139,16                           ; mov           (%rax),%r10
14167  DB  77,133,192                          ; test          %r8,%r8
14168  DB  117,72                              ; jne           2049 <_sk_lerp_u8_sse41+0x52>
14169  DB  102,69,15,56,49,4,18                ; pmovzxbd      (%r10,%rdx,1),%xmm8
14170  DB  102,68,15,219,5,255,54,0,0          ; pand          0x36ff(%rip),%xmm8        # 5710 <_sk_callback_sse41+0x590>
14171  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14172  DB  68,15,89,5,3,55,0,0                 ; mulps         0x3703(%rip),%xmm8        # 5720 <_sk_callback_sse41+0x5a0>
14173  DB  15,92,196                           ; subps         %xmm4,%xmm0
14174  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
14175  DB  15,88,196                           ; addps         %xmm4,%xmm0
14176  DB  15,92,205                           ; subps         %xmm5,%xmm1
14177  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
14178  DB  15,88,205                           ; addps         %xmm5,%xmm1
14179  DB  15,92,214                           ; subps         %xmm6,%xmm2
14180  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
14181  DB  15,88,214                           ; addps         %xmm6,%xmm2
14182  DB  15,92,223                           ; subps         %xmm7,%xmm3
14183  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
14184  DB  15,88,223                           ; addps         %xmm7,%xmm3
14185  DB  72,173                              ; lods          %ds:(%rsi),%rax
14186  DB  255,224                             ; jmpq          *%rax
14187  DB  69,137,193                          ; mov           %r8d,%r9d
14188  DB  65,128,225,3                        ; and           $0x3,%r9b
14189  DB  65,128,249,1                        ; cmp           $0x1,%r9b
14190  DB  116,62                              ; je            2094 <_sk_lerp_u8_sse41+0x9d>
14191  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
14192  DB  65,128,249,2                        ; cmp           $0x2,%r9b
14193  DB  116,23                              ; je            2078 <_sk_lerp_u8_sse41+0x81>
14194  DB  65,128,249,3                        ; cmp           $0x3,%r9b
14195  DB  117,161                             ; jne           2008 <_sk_lerp_u8_sse41+0x11>
14196  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
14197  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14198  DB  102,69,15,112,192,69                ; pshufd        $0x45,%xmm8,%xmm8
14199  DB  65,15,183,4,18                      ; movzwl        (%r10,%rdx,1),%eax
14200  DB  102,68,15,110,200                   ; movd          %eax,%xmm9
14201  DB  102,69,15,56,49,201                 ; pmovzxbd      %xmm9,%xmm9
14202  DB  102,69,15,58,14,193,15              ; pblendw       $0xf,%xmm9,%xmm8
14203  DB  233,116,255,255,255                 ; jmpq          2008 <_sk_lerp_u8_sse41+0x11>
14204  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
14205  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14206  DB  233,101,255,255,255                 ; jmpq          2008 <_sk_lerp_u8_sse41+0x11>
14207
14208PUBLIC _sk_lerp_565_sse41
14209_sk_lerp_565_sse41 LABEL PROC
14210  DB  72,173                              ; lods          %ds:(%rsi),%rax
14211  DB  76,139,16                           ; mov           (%rax),%r10
14212  DB  77,133,192                          ; test          %r8,%r8
14213  DB  15,133,152,0,0,0                    ; jne           2149 <_sk_lerp_565_sse41+0xa6>
14214  DB  102,69,15,56,51,20,82               ; pmovzxwd      (%r10,%rdx,2),%xmm10
14215  DB  102,68,15,111,5,111,54,0,0          ; movdqa        0x366f(%rip),%xmm8        # 5730 <_sk_callback_sse41+0x5b0>
14216  DB  102,69,15,219,194                   ; pand          %xmm10,%xmm8
14217  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14218  DB  68,15,89,5,110,54,0,0               ; mulps         0x366e(%rip),%xmm8        # 5740 <_sk_callback_sse41+0x5c0>
14219  DB  102,68,15,111,13,117,54,0,0         ; movdqa        0x3675(%rip),%xmm9        # 5750 <_sk_callback_sse41+0x5d0>
14220  DB  102,69,15,219,202                   ; pand          %xmm10,%xmm9
14221  DB  69,15,91,201                        ; cvtdq2ps      %xmm9,%xmm9
14222  DB  68,15,89,13,116,54,0,0              ; mulps         0x3674(%rip),%xmm9        # 5760 <_sk_callback_sse41+0x5e0>
14223  DB  102,68,15,219,21,123,54,0,0         ; pand          0x367b(%rip),%xmm10        # 5770 <_sk_callback_sse41+0x5f0>
14224  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
14225  DB  68,15,89,21,127,54,0,0              ; mulps         0x367f(%rip),%xmm10        # 5780 <_sk_callback_sse41+0x600>
14226  DB  15,92,196                           ; subps         %xmm4,%xmm0
14227  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
14228  DB  15,88,196                           ; addps         %xmm4,%xmm0
14229  DB  15,92,205                           ; subps         %xmm5,%xmm1
14230  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
14231  DB  15,88,205                           ; addps         %xmm5,%xmm1
14232  DB  15,92,214                           ; subps         %xmm6,%xmm2
14233  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
14234  DB  15,88,214                           ; addps         %xmm6,%xmm2
14235  DB  15,92,223                           ; subps         %xmm7,%xmm3
14236  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
14237  DB  68,15,88,199                        ; addps         %xmm7,%xmm8
14238  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
14239  DB  68,15,88,207                        ; addps         %xmm7,%xmm9
14240  DB  65,15,89,218                        ; mulps         %xmm10,%xmm3
14241  DB  15,88,223                           ; addps         %xmm7,%xmm3
14242  DB  68,15,95,203                        ; maxps         %xmm3,%xmm9
14243  DB  69,15,95,193                        ; maxps         %xmm9,%xmm8
14244  DB  72,173                              ; lods          %ds:(%rsi),%rax
14245  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
14246  DB  255,224                             ; jmpq          *%rax
14247  DB  69,137,193                          ; mov           %r8d,%r9d
14248  DB  65,128,225,3                        ; and           $0x3,%r9b
14249  DB  65,128,249,1                        ; cmp           $0x1,%r9b
14250  DB  116,62                              ; je            2194 <_sk_lerp_565_sse41+0xf1>
14251  DB  102,69,15,239,210                   ; pxor          %xmm10,%xmm10
14252  DB  65,128,249,2                        ; cmp           $0x2,%r9b
14253  DB  116,27                              ; je            217c <_sk_lerp_565_sse41+0xd9>
14254  DB  65,128,249,3                        ; cmp           $0x3,%r9b
14255  DB  15,133,77,255,255,255               ; jne           20b8 <_sk_lerp_565_sse41+0x15>
14256  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
14257  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14258  DB  102,69,15,112,208,69                ; pshufd        $0x45,%xmm8,%xmm10
14259  DB  102,69,15,110,4,82                  ; movd          (%r10,%rdx,2),%xmm8
14260  DB  102,69,15,56,51,192                 ; pmovzxwd      %xmm8,%xmm8
14261  DB  102,69,15,58,14,208,15              ; pblendw       $0xf,%xmm8,%xmm10
14262  DB  233,36,255,255,255                  ; jmpq          20b8 <_sk_lerp_565_sse41+0x15>
14263  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
14264  DB  102,68,15,110,208                   ; movd          %eax,%xmm10
14265  DB  233,21,255,255,255                  ; jmpq          20b8 <_sk_lerp_565_sse41+0x15>
14266
14267PUBLIC _sk_load_tables_sse41
14268_sk_load_tables_sse41 LABEL PROC
14269  DB  72,173                              ; lods          %ds:(%rsi),%rax
14270  DB  76,139,8                            ; mov           (%rax),%r9
14271  DB  77,133,192                          ; test          %r8,%r8
14272  DB  15,133,24,1,0,0                     ; jne           22c9 <_sk_load_tables_sse41+0x126>
14273  DB  243,69,15,111,4,145                 ; movdqu        (%r9,%rdx,4),%xmm8
14274  DB  65,87                               ; push          %r15
14275  DB  65,86                               ; push          %r14
14276  DB  83                                  ; push          %rbx
14277  DB  102,15,111,5,204,53,0,0             ; movdqa        0x35cc(%rip),%xmm0        # 5790 <_sk_callback_sse41+0x610>
14278  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
14279  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
14280  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
14281  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
14282  DB  73,193,234,30                       ; shr           $0x1e,%r10
14283  DB  69,15,182,241                       ; movzbl        %r9b,%r14d
14284  DB  73,193,233,30                       ; shr           $0x1e,%r9
14285  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
14286  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
14287  DB  243,66,15,16,4,155                  ; movss         (%rbx,%r11,4),%xmm0
14288  DB  102,66,15,58,33,4,19,16             ; insertps      $0x10,(%rbx,%r10,1),%xmm0
14289  DB  102,66,15,58,33,4,179,32            ; insertps      $0x20,(%rbx,%r14,4),%xmm0
14290  DB  102,66,15,58,33,4,11,48             ; insertps      $0x30,(%rbx,%r9,1),%xmm0
14291  DB  102,65,15,111,200                   ; movdqa        %xmm8,%xmm1
14292  DB  102,15,56,0,13,135,53,0,0           ; pshufb        0x3587(%rip),%xmm1        # 57a0 <_sk_callback_sse41+0x620>
14293  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
14294  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
14295  DB  68,15,182,211                       ; movzbl        %bl,%r10d
14296  DB  72,193,235,30                       ; shr           $0x1e,%rbx
14297  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
14298  DB  73,193,233,30                       ; shr           $0x1e,%r9
14299  DB  243,67,15,16,12,151                 ; movss         (%r15,%r10,4),%xmm1
14300  DB  102,65,15,58,33,12,31,16            ; insertps      $0x10,(%r15,%rbx,1),%xmm1
14301  DB  243,67,15,16,20,159                 ; movss         (%r15,%r11,4),%xmm2
14302  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
14303  DB  243,67,15,16,20,15                  ; movss         (%r15,%r9,1),%xmm2
14304  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
14305  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
14306  DB  102,65,15,111,208                   ; movdqa        %xmm8,%xmm2
14307  DB  102,15,56,0,21,67,53,0,0            ; pshufb        0x3543(%rip),%xmm2        # 57b0 <_sk_callback_sse41+0x630>
14308  DB  102,72,15,58,22,211,1               ; pextrq        $0x1,%xmm2,%rbx
14309  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
14310  DB  68,15,182,208                       ; movzbl        %al,%r10d
14311  DB  72,193,232,30                       ; shr           $0x1e,%rax
14312  DB  68,15,182,219                       ; movzbl        %bl,%r11d
14313  DB  72,193,235,30                       ; shr           $0x1e,%rbx
14314  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
14315  DB  102,65,15,58,33,20,1,16             ; insertps      $0x10,(%r9,%rax,1),%xmm2
14316  DB  243,67,15,16,28,153                 ; movss         (%r9,%r11,4),%xmm3
14317  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
14318  DB  243,65,15,16,28,25                  ; movss         (%r9,%rbx,1),%xmm3
14319  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
14320  DB  102,65,15,114,208,24                ; psrld         $0x18,%xmm8
14321  DB  65,15,91,216                        ; cvtdq2ps      %xmm8,%xmm3
14322  DB  15,89,29,0,53,0,0                   ; mulps         0x3500(%rip),%xmm3        # 57c0 <_sk_callback_sse41+0x640>
14323  DB  72,173                              ; lods          %ds:(%rsi),%rax
14324  DB  91                                  ; pop           %rbx
14325  DB  65,94                               ; pop           %r14
14326  DB  65,95                               ; pop           %r15
14327  DB  255,224                             ; jmpq          *%rax
14328  DB  69,137,194                          ; mov           %r8d,%r10d
14329  DB  65,128,226,3                        ; and           $0x3,%r10b
14330  DB  65,128,250,1                        ; cmp           $0x1,%r10b
14331  DB  116,52                              ; je            230a <_sk_load_tables_sse41+0x167>
14332  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
14333  DB  65,128,250,2                        ; cmp           $0x2,%r10b
14334  DB  116,23                              ; je            22f8 <_sk_load_tables_sse41+0x155>
14335  DB  65,128,250,3                        ; cmp           $0x3,%r10b
14336  DB  15,133,204,254,255,255              ; jne           21b7 <_sk_load_tables_sse41+0x14>
14337  DB  102,65,15,110,68,145,8              ; movd          0x8(%r9,%rdx,4),%xmm0
14338  DB  102,68,15,112,192,69                ; pshufd        $0x45,%xmm0,%xmm8
14339  DB  243,65,15,126,4,145                 ; movq          (%r9,%rdx,4),%xmm0
14340  DB  102,68,15,58,14,192,15              ; pblendw       $0xf,%xmm0,%xmm8
14341  DB  233,173,254,255,255                 ; jmpq          21b7 <_sk_load_tables_sse41+0x14>
14342  DB  102,69,15,110,4,145                 ; movd          (%r9,%rdx,4),%xmm8
14343  DB  233,162,254,255,255                 ; jmpq          21b7 <_sk_load_tables_sse41+0x14>
14344
14345PUBLIC _sk_load_tables_u16_be_sse41
14346_sk_load_tables_u16_be_sse41 LABEL PROC
14347  DB  72,173                              ; lods          %ds:(%rsi),%rax
14348  DB  76,139,8                            ; mov           (%rax),%r9
14349  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
14350  DB  77,133,192                          ; test          %r8,%r8
14351  DB  15,133,99,1,0,0                     ; jne           248e <_sk_load_tables_u16_be_sse41+0x179>
14352  DB  102,67,15,16,4,81                   ; movupd        (%r9,%r10,2),%xmm0
14353  DB  243,67,15,111,76,81,16              ; movdqu        0x10(%r9,%r10,2),%xmm1
14354  DB  65,87                               ; push          %r15
14355  DB  65,86                               ; push          %r14
14356  DB  83                                  ; push          %rbx
14357  DB  102,68,15,40,200                    ; movapd        %xmm0,%xmm9
14358  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
14359  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
14360  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
14361  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
14362  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
14363  DB  102,68,15,111,5,110,52,0,0          ; movdqa        0x346e(%rip),%xmm8        # 57d0 <_sk_callback_sse41+0x650>
14364  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
14365  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
14366  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
14367  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
14368  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
14369  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
14370  DB  73,193,234,30                       ; shr           $0x1e,%r10
14371  DB  69,15,182,241                       ; movzbl        %r9b,%r14d
14372  DB  73,193,233,30                       ; shr           $0x1e,%r9
14373  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
14374  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
14375  DB  243,66,15,16,4,155                  ; movss         (%rbx,%r11,4),%xmm0
14376  DB  102,66,15,58,33,4,19,16             ; insertps      $0x10,(%rbx,%r10,1),%xmm0
14377  DB  243,66,15,16,20,179                 ; movss         (%rbx,%r14,4),%xmm2
14378  DB  102,15,58,33,194,32                 ; insertps      $0x20,%xmm2,%xmm0
14379  DB  243,66,15,16,20,11                  ; movss         (%rbx,%r9,1),%xmm2
14380  DB  102,15,58,33,194,48                 ; insertps      $0x30,%xmm2,%xmm0
14381  DB  102,15,56,0,13,29,52,0,0            ; pshufb        0x341d(%rip),%xmm1        # 57e0 <_sk_callback_sse41+0x660>
14382  DB  102,15,56,51,201                    ; pmovzxwd      %xmm1,%xmm1
14383  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
14384  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
14385  DB  68,15,182,211                       ; movzbl        %bl,%r10d
14386  DB  72,193,235,30                       ; shr           $0x1e,%rbx
14387  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
14388  DB  73,193,233,30                       ; shr           $0x1e,%r9
14389  DB  243,67,15,16,12,151                 ; movss         (%r15,%r10,4),%xmm1
14390  DB  102,65,15,58,33,12,31,16            ; insertps      $0x10,(%r15,%rbx,1),%xmm1
14391  DB  243,67,15,16,20,159                 ; movss         (%r15,%r11,4),%xmm2
14392  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
14393  DB  243,67,15,16,20,15                  ; movss         (%r15,%r9,1),%xmm2
14394  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
14395  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
14396  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
14397  DB  102,65,15,56,51,208                 ; pmovzxwd      %xmm8,%xmm2
14398  DB  102,72,15,58,22,211,1               ; pextrq        $0x1,%xmm2,%rbx
14399  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
14400  DB  68,15,182,208                       ; movzbl        %al,%r10d
14401  DB  72,193,232,30                       ; shr           $0x1e,%rax
14402  DB  68,15,182,219                       ; movzbl        %bl,%r11d
14403  DB  72,193,235,30                       ; shr           $0x1e,%rbx
14404  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
14405  DB  102,65,15,58,33,20,1,16             ; insertps      $0x10,(%r9,%rax,1),%xmm2
14406  DB  243,67,15,16,28,153                 ; movss         (%r9,%r11,4),%xmm3
14407  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
14408  DB  243,65,15,16,28,25                  ; movss         (%r9,%rbx,1),%xmm3
14409  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
14410  DB  102,65,15,112,217,78                ; pshufd        $0x4e,%xmm9,%xmm3
14411  DB  102,68,15,111,195                   ; movdqa        %xmm3,%xmm8
14412  DB  102,65,15,113,240,8                 ; psllw         $0x8,%xmm8
14413  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
14414  DB  102,65,15,235,216                   ; por           %xmm8,%xmm3
14415  DB  102,15,56,51,219                    ; pmovzxwd      %xmm3,%xmm3
14416  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
14417  DB  15,89,29,107,51,0,0                 ; mulps         0x336b(%rip),%xmm3        # 57f0 <_sk_callback_sse41+0x670>
14418  DB  72,173                              ; lods          %ds:(%rsi),%rax
14419  DB  91                                  ; pop           %rbx
14420  DB  65,94                               ; pop           %r14
14421  DB  65,95                               ; pop           %r15
14422  DB  255,224                             ; jmpq          *%rax
14423  DB  242,67,15,16,4,81                   ; movsd         (%r9,%r10,2),%xmm0
14424  DB  73,131,248,1                        ; cmp           $0x1,%r8
14425  DB  117,13                              ; jne           24a7 <_sk_load_tables_u16_be_sse41+0x192>
14426  DB  243,15,126,192                      ; movq          %xmm0,%xmm0
14427  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
14428  DB  233,145,254,255,255                 ; jmpq          2338 <_sk_load_tables_u16_be_sse41+0x23>
14429  DB  102,67,15,22,68,81,8                ; movhpd        0x8(%r9,%r10,2),%xmm0
14430  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
14431  DB  73,131,248,3                        ; cmp           $0x3,%r8
14432  DB  15,130,124,254,255,255              ; jb            2338 <_sk_load_tables_u16_be_sse41+0x23>
14433  DB  243,67,15,126,76,81,16              ; movq          0x10(%r9,%r10,2),%xmm1
14434  DB  233,112,254,255,255                 ; jmpq          2338 <_sk_load_tables_u16_be_sse41+0x23>
14435
14436PUBLIC _sk_load_tables_rgb_u16_be_sse41
14437_sk_load_tables_rgb_u16_be_sse41 LABEL PROC
14438  DB  72,173                              ; lods          %ds:(%rsi),%rax
14439  DB  76,139,8                            ; mov           (%rax),%r9
14440  DB  76,141,20,82                        ; lea           (%rdx,%rdx,2),%r10
14441  DB  77,133,192                          ; test          %r8,%r8
14442  DB  15,133,83,1,0,0                     ; jne           262d <_sk_load_tables_rgb_u16_be_sse41+0x165>
14443  DB  243,67,15,111,20,81                 ; movdqu        (%r9,%r10,2),%xmm2
14444  DB  243,67,15,111,76,81,8               ; movdqu        0x8(%r9,%r10,2),%xmm1
14445  DB  102,15,115,217,4                    ; psrldq        $0x4,%xmm1
14446  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
14447  DB  102,65,15,115,217,6                 ; psrldq        $0x6,%xmm9
14448  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
14449  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
14450  DB  65,87                               ; push          %r15
14451  DB  65,86                               ; push          %r14
14452  DB  83                                  ; push          %rbx
14453  DB  102,15,97,209                       ; punpcklwd     %xmm1,%xmm2
14454  DB  102,68,15,97,200                    ; punpcklwd     %xmm0,%xmm9
14455  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
14456  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
14457  DB  102,68,15,111,5,224,50,0,0          ; movdqa        0x32e0(%rip),%xmm8        # 5800 <_sk_callback_sse41+0x680>
14458  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
14459  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
14460  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
14461  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
14462  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
14463  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
14464  DB  73,193,234,30                       ; shr           $0x1e,%r10
14465  DB  69,15,182,241                       ; movzbl        %r9b,%r14d
14466  DB  73,193,233,30                       ; shr           $0x1e,%r9
14467  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
14468  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
14469  DB  243,66,15,16,4,155                  ; movss         (%rbx,%r11,4),%xmm0
14470  DB  102,66,15,58,33,4,19,16             ; insertps      $0x10,(%rbx,%r10,1),%xmm0
14471  DB  243,66,15,16,28,179                 ; movss         (%rbx,%r14,4),%xmm3
14472  DB  102,15,58,33,195,32                 ; insertps      $0x20,%xmm3,%xmm0
14473  DB  243,66,15,16,28,11                  ; movss         (%rbx,%r9,1),%xmm3
14474  DB  102,15,58,33,195,48                 ; insertps      $0x30,%xmm3,%xmm0
14475  DB  102,15,56,0,13,143,50,0,0           ; pshufb        0x328f(%rip),%xmm1        # 5810 <_sk_callback_sse41+0x690>
14476  DB  102,15,56,51,201                    ; pmovzxwd      %xmm1,%xmm1
14477  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
14478  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
14479  DB  68,15,182,211                       ; movzbl        %bl,%r10d
14480  DB  72,193,235,30                       ; shr           $0x1e,%rbx
14481  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
14482  DB  73,193,233,30                       ; shr           $0x1e,%r9
14483  DB  243,67,15,16,12,151                 ; movss         (%r15,%r10,4),%xmm1
14484  DB  102,65,15,58,33,12,31,16            ; insertps      $0x10,(%r15,%rbx,1),%xmm1
14485  DB  243,67,15,16,28,159                 ; movss         (%r15,%r11,4),%xmm3
14486  DB  102,15,58,33,203,32                 ; insertps      $0x20,%xmm3,%xmm1
14487  DB  243,67,15,16,28,15                  ; movss         (%r15,%r9,1),%xmm3
14488  DB  102,15,58,33,203,48                 ; insertps      $0x30,%xmm3,%xmm1
14489  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
14490  DB  102,65,15,105,209                   ; punpckhwd     %xmm9,%xmm2
14491  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
14492  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
14493  DB  102,72,15,58,22,211,1               ; pextrq        $0x1,%xmm2,%rbx
14494  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
14495  DB  68,15,182,208                       ; movzbl        %al,%r10d
14496  DB  72,193,232,30                       ; shr           $0x1e,%rax
14497  DB  68,15,182,219                       ; movzbl        %bl,%r11d
14498  DB  72,193,235,30                       ; shr           $0x1e,%rbx
14499  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
14500  DB  102,65,15,58,33,20,1,16             ; insertps      $0x10,(%r9,%rax,1),%xmm2
14501  DB  243,67,15,16,28,153                 ; movss         (%r9,%r11,4),%xmm3
14502  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
14503  DB  243,65,15,16,28,25                  ; movss         (%r9,%rbx,1),%xmm3
14504  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
14505  DB  72,173                              ; lods          %ds:(%rsi),%rax
14506  DB  15,40,29,250,49,0,0                 ; movaps        0x31fa(%rip),%xmm3        # 5820 <_sk_callback_sse41+0x6a0>
14507  DB  91                                  ; pop           %rbx
14508  DB  65,94                               ; pop           %r14
14509  DB  65,95                               ; pop           %r15
14510  DB  255,224                             ; jmpq          *%rax
14511  DB  102,67,15,110,20,81                 ; movd          (%r9,%r10,2),%xmm2
14512  DB  102,67,15,196,84,81,4,2             ; pinsrw        $0x2,0x4(%r9,%r10,2),%xmm2
14513  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
14514  DB  73,131,248,1                        ; cmp           $0x1,%r8
14515  DB  117,14                              ; jne           2653 <_sk_load_tables_rgb_u16_be_sse41+0x18b>
14516  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
14517  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
14518  DB  233,173,254,255,255                 ; jmpq          2500 <_sk_load_tables_rgb_u16_be_sse41+0x38>
14519  DB  102,71,15,110,76,81,6               ; movd          0x6(%r9,%r10,2),%xmm9
14520  DB  102,71,15,196,76,81,10,2            ; pinsrw        $0x2,0xa(%r9,%r10,2),%xmm9
14521  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
14522  DB  73,131,248,3                        ; cmp           $0x3,%r8
14523  DB  114,24                              ; jb            2684 <_sk_load_tables_rgb_u16_be_sse41+0x1bc>
14524  DB  102,67,15,110,76,81,12              ; movd          0xc(%r9,%r10,2),%xmm1
14525  DB  102,67,15,196,76,81,16,2            ; pinsrw        $0x2,0x10(%r9,%r10,2),%xmm1
14526  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
14527  DB  233,124,254,255,255                 ; jmpq          2500 <_sk_load_tables_rgb_u16_be_sse41+0x38>
14528  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
14529  DB  233,115,254,255,255                 ; jmpq          2500 <_sk_load_tables_rgb_u16_be_sse41+0x38>
14530
14531PUBLIC _sk_byte_tables_sse41
14532_sk_byte_tables_sse41 LABEL PROC
14533  DB  65,87                               ; push          %r15
14534  DB  65,86                               ; push          %r14
14535  DB  65,84                               ; push          %r12
14536  DB  83                                  ; push          %rbx
14537  DB  72,173                              ; lods          %ds:(%rsi),%rax
14538  DB  68,15,40,5,146,49,0,0               ; movaps        0x3192(%rip),%xmm8        # 5830 <_sk_callback_sse41+0x6b0>
14539  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
14540  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
14541  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
14542  DB  69,137,202                          ; mov           %r9d,%r10d
14543  DB  73,193,233,32                       ; shr           $0x20,%r9
14544  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
14545  DB  69,137,222                          ; mov           %r11d,%r14d
14546  DB  73,193,235,32                       ; shr           $0x20,%r11
14547  DB  76,139,32                           ; mov           (%rax),%r12
14548  DB  76,139,120,8                        ; mov           0x8(%rax),%r15
14549  DB  102,67,15,58,32,4,52,0              ; pinsrb        $0x0,(%r12,%r14,1),%xmm0
14550  DB  102,67,15,58,32,4,28,1              ; pinsrb        $0x1,(%r12,%r11,1),%xmm0
14551  DB  67,15,182,28,20                     ; movzbl        (%r12,%r10,1),%ebx
14552  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
14553  DB  67,15,182,28,12                     ; movzbl        (%r12,%r9,1),%ebx
14554  DB  102,15,58,32,195,3                  ; pinsrb        $0x3,%ebx,%xmm0
14555  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
14556  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
14557  DB  68,15,40,13,67,49,0,0               ; movaps        0x3143(%rip),%xmm9        # 5840 <_sk_callback_sse41+0x6c0>
14558  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
14559  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
14560  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
14561  DB  102,72,15,58,22,203,1               ; pextrq        $0x1,%xmm1,%rbx
14562  DB  65,137,217                          ; mov           %ebx,%r9d
14563  DB  72,193,235,32                       ; shr           $0x20,%rbx
14564  DB  102,73,15,126,202                   ; movq          %xmm1,%r10
14565  DB  69,137,211                          ; mov           %r10d,%r11d
14566  DB  73,193,234,32                       ; shr           $0x20,%r10
14567  DB  102,67,15,58,32,12,31,0             ; pinsrb        $0x0,(%r15,%r11,1),%xmm1
14568  DB  102,67,15,58,32,12,23,1             ; pinsrb        $0x1,(%r15,%r10,1),%xmm1
14569  DB  71,15,182,12,15                     ; movzbl        (%r15,%r9,1),%r9d
14570  DB  102,65,15,58,32,201,2               ; pinsrb        $0x2,%r9d,%xmm1
14571  DB  65,15,182,28,31                     ; movzbl        (%r15,%rbx,1),%ebx
14572  DB  102,15,58,32,203,3                  ; pinsrb        $0x3,%ebx,%xmm1
14573  DB  102,15,56,49,201                    ; pmovzxbd      %xmm1,%xmm1
14574  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
14575  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
14576  DB  76,139,88,16                        ; mov           0x10(%rax),%r11
14577  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
14578  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
14579  DB  102,73,15,58,22,209,1               ; pextrq        $0x1,%xmm2,%r9
14580  DB  69,137,202                          ; mov           %r9d,%r10d
14581  DB  73,193,233,32                       ; shr           $0x20,%r9
14582  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
14583  DB  65,137,222                          ; mov           %ebx,%r14d
14584  DB  72,193,235,32                       ; shr           $0x20,%rbx
14585  DB  102,67,15,58,32,20,51,0             ; pinsrb        $0x0,(%r11,%r14,1),%xmm2
14586  DB  102,65,15,58,32,20,27,1             ; pinsrb        $0x1,(%r11,%rbx,1),%xmm2
14587  DB  67,15,182,28,19                     ; movzbl        (%r11,%r10,1),%ebx
14588  DB  102,15,58,32,211,2                  ; pinsrb        $0x2,%ebx,%xmm2
14589  DB  67,15,182,28,11                     ; movzbl        (%r11,%r9,1),%ebx
14590  DB  102,15,58,32,211,3                  ; pinsrb        $0x3,%ebx,%xmm2
14591  DB  102,15,56,49,210                    ; pmovzxbd      %xmm2,%xmm2
14592  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
14593  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
14594  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
14595  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
14596  DB  102,15,91,219                       ; cvtps2dq      %xmm3,%xmm3
14597  DB  102,72,15,58,22,219,1               ; pextrq        $0x1,%xmm3,%rbx
14598  DB  65,137,217                          ; mov           %ebx,%r9d
14599  DB  72,193,235,32                       ; shr           $0x20,%rbx
14600  DB  102,72,15,126,216                   ; movq          %xmm3,%rax
14601  DB  65,137,195                          ; mov           %eax,%r11d
14602  DB  72,193,232,32                       ; shr           $0x20,%rax
14603  DB  102,67,15,58,32,28,26,0             ; pinsrb        $0x0,(%r10,%r11,1),%xmm3
14604  DB  102,65,15,58,32,28,2,1              ; pinsrb        $0x1,(%r10,%rax,1),%xmm3
14605  DB  67,15,182,4,10                      ; movzbl        (%r10,%r9,1),%eax
14606  DB  102,15,58,32,216,2                  ; pinsrb        $0x2,%eax,%xmm3
14607  DB  65,15,182,4,26                      ; movzbl        (%r10,%rbx,1),%eax
14608  DB  102,15,58,32,216,3                  ; pinsrb        $0x3,%eax,%xmm3
14609  DB  102,15,56,49,219                    ; pmovzxbd      %xmm3,%xmm3
14610  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
14611  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
14612  DB  72,173                              ; lods          %ds:(%rsi),%rax
14613  DB  91                                  ; pop           %rbx
14614  DB  65,92                               ; pop           %r12
14615  DB  65,94                               ; pop           %r14
14616  DB  65,95                               ; pop           %r15
14617  DB  255,224                             ; jmpq          *%rax
14618
14619PUBLIC _sk_byte_tables_rgb_sse41
14620_sk_byte_tables_rgb_sse41 LABEL PROC
14621  DB  65,87                               ; push          %r15
14622  DB  65,86                               ; push          %r14
14623  DB  65,84                               ; push          %r12
14624  DB  83                                  ; push          %rbx
14625  DB  72,173                              ; lods          %ds:(%rsi),%rax
14626  DB  68,139,72,24                        ; mov           0x18(%rax),%r9d
14627  DB  65,255,201                          ; dec           %r9d
14628  DB  102,69,15,110,193                   ; movd          %r9d,%xmm8
14629  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
14630  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14631  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
14632  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
14633  DB  102,73,15,58,22,193,1               ; pextrq        $0x1,%xmm0,%r9
14634  DB  69,137,202                          ; mov           %r9d,%r10d
14635  DB  77,137,203                          ; mov           %r9,%r11
14636  DB  73,193,235,32                       ; shr           $0x20,%r11
14637  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
14638  DB  69,137,206                          ; mov           %r9d,%r14d
14639  DB  77,137,207                          ; mov           %r9,%r15
14640  DB  73,193,239,32                       ; shr           $0x20,%r15
14641  DB  76,139,32                           ; mov           (%rax),%r12
14642  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
14643  DB  102,67,15,58,32,4,52,0              ; pinsrb        $0x0,(%r12,%r14,1),%xmm0
14644  DB  102,67,15,58,32,4,60,1              ; pinsrb        $0x1,(%r12,%r15,1),%xmm0
14645  DB  67,15,182,28,20                     ; movzbl        (%r12,%r10,1),%ebx
14646  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
14647  DB  67,15,182,28,28                     ; movzbl        (%r12,%r11,1),%ebx
14648  DB  102,15,58,32,195,3                  ; pinsrb        $0x3,%ebx,%xmm0
14649  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
14650  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
14651  DB  68,15,40,13,187,47,0,0              ; movaps        0x2fbb(%rip),%xmm9        # 5850 <_sk_callback_sse41+0x6d0>
14652  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
14653  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
14654  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
14655  DB  102,72,15,58,22,203,1               ; pextrq        $0x1,%xmm1,%rbx
14656  DB  65,137,218                          ; mov           %ebx,%r10d
14657  DB  72,193,235,32                       ; shr           $0x20,%rbx
14658  DB  102,73,15,126,203                   ; movq          %xmm1,%r11
14659  DB  69,137,222                          ; mov           %r11d,%r14d
14660  DB  73,193,235,32                       ; shr           $0x20,%r11
14661  DB  102,67,15,58,32,12,49,0             ; pinsrb        $0x0,(%r9,%r14,1),%xmm1
14662  DB  102,67,15,58,32,12,25,1             ; pinsrb        $0x1,(%r9,%r11,1),%xmm1
14663  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
14664  DB  102,65,15,58,32,202,2               ; pinsrb        $0x2,%r10d,%xmm1
14665  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
14666  DB  102,15,58,32,203,3                  ; pinsrb        $0x3,%ebx,%xmm1
14667  DB  102,15,56,49,201                    ; pmovzxbd      %xmm1,%xmm1
14668  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
14669  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
14670  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
14671  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
14672  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
14673  DB  102,72,15,58,22,211,1               ; pextrq        $0x1,%xmm2,%rbx
14674  DB  65,137,217                          ; mov           %ebx,%r9d
14675  DB  72,193,235,32                       ; shr           $0x20,%rbx
14676  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
14677  DB  65,137,195                          ; mov           %eax,%r11d
14678  DB  72,193,232,32                       ; shr           $0x20,%rax
14679  DB  102,67,15,58,32,20,26,0             ; pinsrb        $0x0,(%r10,%r11,1),%xmm2
14680  DB  102,65,15,58,32,20,2,1              ; pinsrb        $0x1,(%r10,%rax,1),%xmm2
14681  DB  67,15,182,4,10                      ; movzbl        (%r10,%r9,1),%eax
14682  DB  102,15,58,32,208,2                  ; pinsrb        $0x2,%eax,%xmm2
14683  DB  65,15,182,4,26                      ; movzbl        (%r10,%rbx,1),%eax
14684  DB  102,15,58,32,208,3                  ; pinsrb        $0x3,%eax,%xmm2
14685  DB  102,15,56,49,210                    ; pmovzxbd      %xmm2,%xmm2
14686  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
14687  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
14688  DB  72,173                              ; lods          %ds:(%rsi),%rax
14689  DB  91                                  ; pop           %rbx
14690  DB  65,92                               ; pop           %r12
14691  DB  65,94                               ; pop           %r14
14692  DB  65,95                               ; pop           %r15
14693  DB  255,224                             ; jmpq          *%rax
14694
14695PUBLIC _sk_table_r_sse41
14696_sk_table_r_sse41 LABEL PROC
14697  DB  83                                  ; push          %rbx
14698  DB  72,173                              ; lods          %ds:(%rsi),%rax
14699  DB  76,139,8                            ; mov           (%rax),%r9
14700  DB  139,64,8                            ; mov           0x8(%rax),%eax
14701  DB  255,200                             ; dec           %eax
14702  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14703  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
14704  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14705  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
14706  DB  102,65,15,91,192                    ; cvtps2dq      %xmm8,%xmm0
14707  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
14708  DB  65,137,194                          ; mov           %eax,%r10d
14709  DB  72,193,232,32                       ; shr           $0x20,%rax
14710  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
14711  DB  68,137,219                          ; mov           %r11d,%ebx
14712  DB  73,193,235,32                       ; shr           $0x20,%r11
14713  DB  243,65,15,16,4,153                  ; movss         (%r9,%rbx,4),%xmm0
14714  DB  102,67,15,58,33,4,153,16            ; insertps      $0x10,(%r9,%r11,4),%xmm0
14715  DB  243,71,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm8
14716  DB  102,65,15,58,33,192,32              ; insertps      $0x20,%xmm8,%xmm0
14717  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
14718  DB  102,65,15,58,33,192,48              ; insertps      $0x30,%xmm8,%xmm0
14719  DB  72,173                              ; lods          %ds:(%rsi),%rax
14720  DB  91                                  ; pop           %rbx
14721  DB  255,224                             ; jmpq          *%rax
14722
14723PUBLIC _sk_table_g_sse41
14724_sk_table_g_sse41 LABEL PROC
14725  DB  83                                  ; push          %rbx
14726  DB  72,173                              ; lods          %ds:(%rsi),%rax
14727  DB  76,139,8                            ; mov           (%rax),%r9
14728  DB  139,64,8                            ; mov           0x8(%rax),%eax
14729  DB  255,200                             ; dec           %eax
14730  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14731  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
14732  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14733  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
14734  DB  102,65,15,91,200                    ; cvtps2dq      %xmm8,%xmm1
14735  DB  102,72,15,58,22,200,1               ; pextrq        $0x1,%xmm1,%rax
14736  DB  65,137,194                          ; mov           %eax,%r10d
14737  DB  72,193,232,32                       ; shr           $0x20,%rax
14738  DB  102,73,15,126,203                   ; movq          %xmm1,%r11
14739  DB  68,137,219                          ; mov           %r11d,%ebx
14740  DB  73,193,235,32                       ; shr           $0x20,%r11
14741  DB  243,65,15,16,12,153                 ; movss         (%r9,%rbx,4),%xmm1
14742  DB  102,67,15,58,33,12,153,16           ; insertps      $0x10,(%r9,%r11,4),%xmm1
14743  DB  243,71,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm8
14744  DB  102,65,15,58,33,200,32              ; insertps      $0x20,%xmm8,%xmm1
14745  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
14746  DB  102,65,15,58,33,200,48              ; insertps      $0x30,%xmm8,%xmm1
14747  DB  72,173                              ; lods          %ds:(%rsi),%rax
14748  DB  91                                  ; pop           %rbx
14749  DB  255,224                             ; jmpq          *%rax
14750
14751PUBLIC _sk_table_b_sse41
14752_sk_table_b_sse41 LABEL PROC
14753  DB  83                                  ; push          %rbx
14754  DB  72,173                              ; lods          %ds:(%rsi),%rax
14755  DB  76,139,8                            ; mov           (%rax),%r9
14756  DB  139,64,8                            ; mov           0x8(%rax),%eax
14757  DB  255,200                             ; dec           %eax
14758  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14759  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
14760  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14761  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
14762  DB  102,65,15,91,208                    ; cvtps2dq      %xmm8,%xmm2
14763  DB  102,72,15,58,22,208,1               ; pextrq        $0x1,%xmm2,%rax
14764  DB  65,137,194                          ; mov           %eax,%r10d
14765  DB  72,193,232,32                       ; shr           $0x20,%rax
14766  DB  102,73,15,126,211                   ; movq          %xmm2,%r11
14767  DB  68,137,219                          ; mov           %r11d,%ebx
14768  DB  73,193,235,32                       ; shr           $0x20,%r11
14769  DB  243,65,15,16,20,153                 ; movss         (%r9,%rbx,4),%xmm2
14770  DB  102,67,15,58,33,20,153,16           ; insertps      $0x10,(%r9,%r11,4),%xmm2
14771  DB  243,71,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm8
14772  DB  102,65,15,58,33,208,32              ; insertps      $0x20,%xmm8,%xmm2
14773  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
14774  DB  102,65,15,58,33,208,48              ; insertps      $0x30,%xmm8,%xmm2
14775  DB  72,173                              ; lods          %ds:(%rsi),%rax
14776  DB  91                                  ; pop           %rbx
14777  DB  255,224                             ; jmpq          *%rax
14778
14779PUBLIC _sk_table_a_sse41
14780_sk_table_a_sse41 LABEL PROC
14781  DB  83                                  ; push          %rbx
14782  DB  72,173                              ; lods          %ds:(%rsi),%rax
14783  DB  76,139,8                            ; mov           (%rax),%r9
14784  DB  139,64,8                            ; mov           0x8(%rax),%eax
14785  DB  255,200                             ; dec           %eax
14786  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
14787  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
14788  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
14789  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
14790  DB  102,65,15,91,216                    ; cvtps2dq      %xmm8,%xmm3
14791  DB  102,72,15,58,22,216,1               ; pextrq        $0x1,%xmm3,%rax
14792  DB  65,137,194                          ; mov           %eax,%r10d
14793  DB  72,193,232,32                       ; shr           $0x20,%rax
14794  DB  102,73,15,126,219                   ; movq          %xmm3,%r11
14795  DB  68,137,219                          ; mov           %r11d,%ebx
14796  DB  73,193,235,32                       ; shr           $0x20,%r11
14797  DB  243,65,15,16,28,153                 ; movss         (%r9,%rbx,4),%xmm3
14798  DB  102,67,15,58,33,28,153,16           ; insertps      $0x10,(%r9,%r11,4),%xmm3
14799  DB  243,71,15,16,4,145                  ; movss         (%r9,%r10,4),%xmm8
14800  DB  102,65,15,58,33,216,32              ; insertps      $0x20,%xmm8,%xmm3
14801  DB  243,69,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm8
14802  DB  102,65,15,58,33,216,48              ; insertps      $0x30,%xmm8,%xmm3
14803  DB  72,173                              ; lods          %ds:(%rsi),%rax
14804  DB  91                                  ; pop           %rbx
14805  DB  255,224                             ; jmpq          *%rax
14806
14807PUBLIC _sk_parametric_r_sse41
14808_sk_parametric_r_sse41 LABEL PROC
14809  DB  72,173                              ; lods          %ds:(%rsi),%rax
14810  DB  243,68,15,16,64,16                  ; movss         0x10(%rax),%xmm8
14811  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
14812  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
14813  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
14814  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
14815  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
14816  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14817  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
14818  DB  65,15,194,192,2                     ; cmpleps       %xmm8,%xmm0
14819  DB  243,68,15,16,64,24                  ; movss         0x18(%rax),%xmm8
14820  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
14821  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
14822  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
14823  DB  243,68,15,16,64,8                   ; movss         0x8(%rax),%xmm8
14824  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
14825  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
14826  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
14827  DB  69,15,91,194                        ; cvtdq2ps      %xmm10,%xmm8
14828  DB  68,15,89,5,3,45,0,0                 ; mulps         0x2d03(%rip),%xmm8        # 5860 <_sk_callback_sse41+0x6e0>
14829  DB  68,15,84,21,11,45,0,0               ; andps         0x2d0b(%rip),%xmm10        # 5870 <_sk_callback_sse41+0x6f0>
14830  DB  68,15,86,21,19,45,0,0               ; orps          0x2d13(%rip),%xmm10        # 5880 <_sk_callback_sse41+0x700>
14831  DB  68,15,88,5,27,45,0,0                ; addps         0x2d1b(%rip),%xmm8        # 5890 <_sk_callback_sse41+0x710>
14832  DB  68,15,40,37,35,45,0,0               ; movaps        0x2d23(%rip),%xmm12        # 58a0 <_sk_callback_sse41+0x720>
14833  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
14834  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
14835  DB  68,15,88,21,35,45,0,0               ; addps         0x2d23(%rip),%xmm10        # 58b0 <_sk_callback_sse41+0x730>
14836  DB  68,15,40,37,43,45,0,0               ; movaps        0x2d2b(%rip),%xmm12        # 58c0 <_sk_callback_sse41+0x740>
14837  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
14838  DB  69,15,92,196                        ; subps         %xmm12,%xmm8
14839  DB  69,15,89,195                        ; mulps         %xmm11,%xmm8
14840  DB  102,69,15,58,8,208,1                ; roundps       $0x1,%xmm8,%xmm10
14841  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
14842  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
14843  DB  68,15,88,5,24,45,0,0                ; addps         0x2d18(%rip),%xmm8        # 58d0 <_sk_callback_sse41+0x750>
14844  DB  68,15,40,21,32,45,0,0               ; movaps        0x2d20(%rip),%xmm10        # 58e0 <_sk_callback_sse41+0x760>
14845  DB  69,15,89,211                        ; mulps         %xmm11,%xmm10
14846  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
14847  DB  68,15,40,21,32,45,0,0               ; movaps        0x2d20(%rip),%xmm10        # 58f0 <_sk_callback_sse41+0x770>
14848  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
14849  DB  68,15,40,29,36,45,0,0               ; movaps        0x2d24(%rip),%xmm11        # 5900 <_sk_callback_sse41+0x780>
14850  DB  69,15,94,218                        ; divps         %xmm10,%xmm11
14851  DB  69,15,88,216                        ; addps         %xmm8,%xmm11
14852  DB  68,15,89,29,36,45,0,0               ; mulps         0x2d24(%rip),%xmm11        # 5910 <_sk_callback_sse41+0x790>
14853  DB  102,69,15,91,211                    ; cvtps2dq      %xmm11,%xmm10
14854  DB  243,68,15,16,64,20                  ; movss         0x14(%rax),%xmm8
14855  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
14856  DB  69,15,88,194                        ; addps         %xmm10,%xmm8
14857  DB  102,69,15,56,20,193                 ; blendvps      %xmm0,%xmm9,%xmm8
14858  DB  15,87,192                           ; xorps         %xmm0,%xmm0
14859  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
14860  DB  68,15,93,5,11,45,0,0                ; minps         0x2d0b(%rip),%xmm8        # 5920 <_sk_callback_sse41+0x7a0>
14861  DB  72,173                              ; lods          %ds:(%rsi),%rax
14862  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
14863  DB  255,224                             ; jmpq          *%rax
14864
14865PUBLIC _sk_parametric_g_sse41
14866_sk_parametric_g_sse41 LABEL PROC
14867  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
14868  DB  72,173                              ; lods          %ds:(%rsi),%rax
14869  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
14870  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14871  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
14872  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
14873  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
14874  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
14875  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
14876  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
14877  DB  15,40,193                           ; movaps        %xmm1,%xmm0
14878  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
14879  DB  243,15,16,72,24                     ; movss         0x18(%rax),%xmm1
14880  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
14881  DB  68,15,88,201                        ; addps         %xmm1,%xmm9
14882  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
14883  DB  243,15,16,72,8                      ; movss         0x8(%rax),%xmm1
14884  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
14885  DB  68,15,88,217                        ; addps         %xmm1,%xmm11
14886  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14887  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
14888  DB  68,15,89,37,172,44,0,0              ; mulps         0x2cac(%rip),%xmm12        # 5930 <_sk_callback_sse41+0x7b0>
14889  DB  68,15,84,29,180,44,0,0              ; andps         0x2cb4(%rip),%xmm11        # 5940 <_sk_callback_sse41+0x7c0>
14890  DB  68,15,86,29,188,44,0,0              ; orps          0x2cbc(%rip),%xmm11        # 5950 <_sk_callback_sse41+0x7d0>
14891  DB  68,15,88,37,196,44,0,0              ; addps         0x2cc4(%rip),%xmm12        # 5960 <_sk_callback_sse41+0x7e0>
14892  DB  15,40,13,205,44,0,0                 ; movaps        0x2ccd(%rip),%xmm1        # 5970 <_sk_callback_sse41+0x7f0>
14893  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
14894  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
14895  DB  68,15,88,29,205,44,0,0              ; addps         0x2ccd(%rip),%xmm11        # 5980 <_sk_callback_sse41+0x800>
14896  DB  15,40,13,214,44,0,0                 ; movaps        0x2cd6(%rip),%xmm1        # 5990 <_sk_callback_sse41+0x810>
14897  DB  65,15,94,203                        ; divps         %xmm11,%xmm1
14898  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
14899  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
14900  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
14901  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
14902  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
14903  DB  68,15,88,37,195,44,0,0              ; addps         0x2cc3(%rip),%xmm12        # 59a0 <_sk_callback_sse41+0x820>
14904  DB  15,40,13,204,44,0,0                 ; movaps        0x2ccc(%rip),%xmm1        # 59b0 <_sk_callback_sse41+0x830>
14905  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
14906  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
14907  DB  68,15,40,21,204,44,0,0              ; movaps        0x2ccc(%rip),%xmm10        # 59c0 <_sk_callback_sse41+0x840>
14908  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
14909  DB  15,40,13,209,44,0,0                 ; movaps        0x2cd1(%rip),%xmm1        # 59d0 <_sk_callback_sse41+0x850>
14910  DB  65,15,94,202                        ; divps         %xmm10,%xmm1
14911  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
14912  DB  15,89,13,210,44,0,0                 ; mulps         0x2cd2(%rip),%xmm1        # 59e0 <_sk_callback_sse41+0x860>
14913  DB  102,68,15,91,209                    ; cvtps2dq      %xmm1,%xmm10
14914  DB  243,15,16,72,20                     ; movss         0x14(%rax),%xmm1
14915  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
14916  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
14917  DB  102,65,15,56,20,201                 ; blendvps      %xmm0,%xmm9,%xmm1
14918  DB  15,87,192                           ; xorps         %xmm0,%xmm0
14919  DB  15,95,200                           ; maxps         %xmm0,%xmm1
14920  DB  15,93,13,189,44,0,0                 ; minps         0x2cbd(%rip),%xmm1        # 59f0 <_sk_callback_sse41+0x870>
14921  DB  72,173                              ; lods          %ds:(%rsi),%rax
14922  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
14923  DB  255,224                             ; jmpq          *%rax
14924
14925PUBLIC _sk_parametric_b_sse41
14926_sk_parametric_b_sse41 LABEL PROC
14927  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
14928  DB  72,173                              ; lods          %ds:(%rsi),%rax
14929  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
14930  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14931  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
14932  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
14933  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
14934  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
14935  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
14936  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
14937  DB  15,40,194                           ; movaps        %xmm2,%xmm0
14938  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
14939  DB  243,15,16,80,24                     ; movss         0x18(%rax),%xmm2
14940  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
14941  DB  68,15,88,202                        ; addps         %xmm2,%xmm9
14942  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
14943  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
14944  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
14945  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
14946  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14947  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
14948  DB  68,15,89,37,94,44,0,0               ; mulps         0x2c5e(%rip),%xmm12        # 5a00 <_sk_callback_sse41+0x880>
14949  DB  68,15,84,29,102,44,0,0              ; andps         0x2c66(%rip),%xmm11        # 5a10 <_sk_callback_sse41+0x890>
14950  DB  68,15,86,29,110,44,0,0              ; orps          0x2c6e(%rip),%xmm11        # 5a20 <_sk_callback_sse41+0x8a0>
14951  DB  68,15,88,37,118,44,0,0              ; addps         0x2c76(%rip),%xmm12        # 5a30 <_sk_callback_sse41+0x8b0>
14952  DB  15,40,21,127,44,0,0                 ; movaps        0x2c7f(%rip),%xmm2        # 5a40 <_sk_callback_sse41+0x8c0>
14953  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
14954  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
14955  DB  68,15,88,29,127,44,0,0              ; addps         0x2c7f(%rip),%xmm11        # 5a50 <_sk_callback_sse41+0x8d0>
14956  DB  15,40,21,136,44,0,0                 ; movaps        0x2c88(%rip),%xmm2        # 5a60 <_sk_callback_sse41+0x8e0>
14957  DB  65,15,94,211                        ; divps         %xmm11,%xmm2
14958  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
14959  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
14960  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
14961  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
14962  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
14963  DB  68,15,88,37,117,44,0,0              ; addps         0x2c75(%rip),%xmm12        # 5a70 <_sk_callback_sse41+0x8f0>
14964  DB  15,40,21,126,44,0,0                 ; movaps        0x2c7e(%rip),%xmm2        # 5a80 <_sk_callback_sse41+0x900>
14965  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
14966  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
14967  DB  68,15,40,21,126,44,0,0              ; movaps        0x2c7e(%rip),%xmm10        # 5a90 <_sk_callback_sse41+0x910>
14968  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
14969  DB  15,40,21,131,44,0,0                 ; movaps        0x2c83(%rip),%xmm2        # 5aa0 <_sk_callback_sse41+0x920>
14970  DB  65,15,94,210                        ; divps         %xmm10,%xmm2
14971  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
14972  DB  15,89,21,132,44,0,0                 ; mulps         0x2c84(%rip),%xmm2        # 5ab0 <_sk_callback_sse41+0x930>
14973  DB  102,68,15,91,210                    ; cvtps2dq      %xmm2,%xmm10
14974  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
14975  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
14976  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
14977  DB  102,65,15,56,20,209                 ; blendvps      %xmm0,%xmm9,%xmm2
14978  DB  15,87,192                           ; xorps         %xmm0,%xmm0
14979  DB  15,95,208                           ; maxps         %xmm0,%xmm2
14980  DB  15,93,21,111,44,0,0                 ; minps         0x2c6f(%rip),%xmm2        # 5ac0 <_sk_callback_sse41+0x940>
14981  DB  72,173                              ; lods          %ds:(%rsi),%rax
14982  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
14983  DB  255,224                             ; jmpq          *%rax
14984
14985PUBLIC _sk_parametric_a_sse41
14986_sk_parametric_a_sse41 LABEL PROC
14987  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
14988  DB  72,173                              ; lods          %ds:(%rsi),%rax
14989  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
14990  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
14991  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
14992  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
14993  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
14994  DB  243,68,15,16,88,4                   ; movss         0x4(%rax),%xmm11
14995  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
14996  DB  68,15,89,219                        ; mulps         %xmm3,%xmm11
14997  DB  15,40,195                           ; movaps        %xmm3,%xmm0
14998  DB  65,15,194,194,2                     ; cmpleps       %xmm10,%xmm0
14999  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
15000  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
15001  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
15002  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
15003  DB  243,15,16,88,8                      ; movss         0x8(%rax),%xmm3
15004  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
15005  DB  68,15,88,219                        ; addps         %xmm3,%xmm11
15006  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
15007  DB  69,15,91,227                        ; cvtdq2ps      %xmm11,%xmm12
15008  DB  68,15,89,37,16,44,0,0               ; mulps         0x2c10(%rip),%xmm12        # 5ad0 <_sk_callback_sse41+0x950>
15009  DB  68,15,84,29,24,44,0,0               ; andps         0x2c18(%rip),%xmm11        # 5ae0 <_sk_callback_sse41+0x960>
15010  DB  68,15,86,29,32,44,0,0               ; orps          0x2c20(%rip),%xmm11        # 5af0 <_sk_callback_sse41+0x970>
15011  DB  68,15,88,37,40,44,0,0               ; addps         0x2c28(%rip),%xmm12        # 5b00 <_sk_callback_sse41+0x980>
15012  DB  15,40,29,49,44,0,0                  ; movaps        0x2c31(%rip),%xmm3        # 5b10 <_sk_callback_sse41+0x990>
15013  DB  65,15,89,219                        ; mulps         %xmm11,%xmm3
15014  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
15015  DB  68,15,88,29,49,44,0,0               ; addps         0x2c31(%rip),%xmm11        # 5b20 <_sk_callback_sse41+0x9a0>
15016  DB  15,40,29,58,44,0,0                  ; movaps        0x2c3a(%rip),%xmm3        # 5b30 <_sk_callback_sse41+0x9b0>
15017  DB  65,15,94,219                        ; divps         %xmm11,%xmm3
15018  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
15019  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
15020  DB  102,69,15,58,8,212,1                ; roundps       $0x1,%xmm12,%xmm10
15021  DB  69,15,40,220                        ; movaps        %xmm12,%xmm11
15022  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
15023  DB  68,15,88,37,39,44,0,0               ; addps         0x2c27(%rip),%xmm12        # 5b40 <_sk_callback_sse41+0x9c0>
15024  DB  15,40,29,48,44,0,0                  ; movaps        0x2c30(%rip),%xmm3        # 5b50 <_sk_callback_sse41+0x9d0>
15025  DB  65,15,89,219                        ; mulps         %xmm11,%xmm3
15026  DB  68,15,92,227                        ; subps         %xmm3,%xmm12
15027  DB  68,15,40,21,48,44,0,0               ; movaps        0x2c30(%rip),%xmm10        # 5b60 <_sk_callback_sse41+0x9e0>
15028  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
15029  DB  15,40,29,53,44,0,0                  ; movaps        0x2c35(%rip),%xmm3        # 5b70 <_sk_callback_sse41+0x9f0>
15030  DB  65,15,94,218                        ; divps         %xmm10,%xmm3
15031  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
15032  DB  15,89,29,54,44,0,0                  ; mulps         0x2c36(%rip),%xmm3        # 5b80 <_sk_callback_sse41+0xa00>
15033  DB  102,68,15,91,211                    ; cvtps2dq      %xmm3,%xmm10
15034  DB  243,15,16,88,20                     ; movss         0x14(%rax),%xmm3
15035  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
15036  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
15037  DB  102,65,15,56,20,217                 ; blendvps      %xmm0,%xmm9,%xmm3
15038  DB  15,87,192                           ; xorps         %xmm0,%xmm0
15039  DB  15,95,216                           ; maxps         %xmm0,%xmm3
15040  DB  15,93,29,33,44,0,0                  ; minps         0x2c21(%rip),%xmm3        # 5b90 <_sk_callback_sse41+0xa10>
15041  DB  72,173                              ; lods          %ds:(%rsi),%rax
15042  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
15043  DB  255,224                             ; jmpq          *%rax
15044
15045PUBLIC _sk_lab_to_xyz_sse41
15046_sk_lab_to_xyz_sse41 LABEL PROC
15047  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
15048  DB  68,15,89,5,29,44,0,0                ; mulps         0x2c1d(%rip),%xmm8        # 5ba0 <_sk_callback_sse41+0xa20>
15049  DB  68,15,40,13,37,44,0,0               ; movaps        0x2c25(%rip),%xmm9        # 5bb0 <_sk_callback_sse41+0xa30>
15050  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
15051  DB  15,40,5,42,44,0,0                   ; movaps        0x2c2a(%rip),%xmm0        # 5bc0 <_sk_callback_sse41+0xa40>
15052  DB  15,88,200                           ; addps         %xmm0,%xmm1
15053  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
15054  DB  15,88,208                           ; addps         %xmm0,%xmm2
15055  DB  68,15,88,5,40,44,0,0                ; addps         0x2c28(%rip),%xmm8        # 5bd0 <_sk_callback_sse41+0xa50>
15056  DB  68,15,89,5,48,44,0,0                ; mulps         0x2c30(%rip),%xmm8        # 5be0 <_sk_callback_sse41+0xa60>
15057  DB  15,89,13,57,44,0,0                  ; mulps         0x2c39(%rip),%xmm1        # 5bf0 <_sk_callback_sse41+0xa70>
15058  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
15059  DB  15,89,21,62,44,0,0                  ; mulps         0x2c3e(%rip),%xmm2        # 5c00 <_sk_callback_sse41+0xa80>
15060  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
15061  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
15062  DB  68,15,40,217                        ; movaps        %xmm1,%xmm11
15063  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
15064  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
15065  DB  68,15,40,13,50,44,0,0               ; movaps        0x2c32(%rip),%xmm9        # 5c10 <_sk_callback_sse41+0xa90>
15066  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
15067  DB  65,15,194,195,1                     ; cmpltps       %xmm11,%xmm0
15068  DB  15,40,21,50,44,0,0                  ; movaps        0x2c32(%rip),%xmm2        # 5c20 <_sk_callback_sse41+0xaa0>
15069  DB  15,88,202                           ; addps         %xmm2,%xmm1
15070  DB  68,15,40,37,55,44,0,0               ; movaps        0x2c37(%rip),%xmm12        # 5c30 <_sk_callback_sse41+0xab0>
15071  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
15072  DB  102,65,15,56,20,203                 ; blendvps      %xmm0,%xmm11,%xmm1
15073  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
15074  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
15075  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
15076  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
15077  DB  65,15,194,195,1                     ; cmpltps       %xmm11,%xmm0
15078  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
15079  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
15080  DB  102,69,15,56,20,195                 ; blendvps      %xmm0,%xmm11,%xmm8
15081  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
15082  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
15083  DB  69,15,89,218                        ; mulps         %xmm10,%xmm11
15084  DB  69,15,194,203,1                     ; cmpltps       %xmm11,%xmm9
15085  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
15086  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
15087  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
15088  DB  102,65,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm2
15089  DB  15,89,13,240,43,0,0                 ; mulps         0x2bf0(%rip),%xmm1        # 5c40 <_sk_callback_sse41+0xac0>
15090  DB  15,89,21,249,43,0,0                 ; mulps         0x2bf9(%rip),%xmm2        # 5c50 <_sk_callback_sse41+0xad0>
15091  DB  72,173                              ; lods          %ds:(%rsi),%rax
15092  DB  15,40,193                           ; movaps        %xmm1,%xmm0
15093  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
15094  DB  255,224                             ; jmpq          *%rax
15095
15096PUBLIC _sk_load_a8_sse41
15097_sk_load_a8_sse41 LABEL PROC
15098  DB  72,173                              ; lods          %ds:(%rsi),%rax
15099  DB  76,139,16                           ; mov           (%rax),%r10
15100  DB  77,133,192                          ; test          %r8,%r8
15101  DB  117,39                              ; jne           3093 <_sk_load_a8_sse41+0x31>
15102  DB  102,65,15,56,49,4,18                ; pmovzxbd      (%r10,%rdx,1),%xmm0
15103  DB  102,15,219,5,229,43,0,0             ; pand          0x2be5(%rip),%xmm0        # 5c60 <_sk_callback_sse41+0xae0>
15104  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
15105  DB  15,89,29,235,43,0,0                 ; mulps         0x2beb(%rip),%xmm3        # 5c70 <_sk_callback_sse41+0xaf0>
15106  DB  72,173                              ; lods          %ds:(%rsi),%rax
15107  DB  15,87,192                           ; xorps         %xmm0,%xmm0
15108  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15109  DB  15,87,210                           ; xorps         %xmm2,%xmm2
15110  DB  255,224                             ; jmpq          *%rax
15111  DB  69,137,193                          ; mov           %r8d,%r9d
15112  DB  65,128,225,3                        ; and           $0x3,%r9b
15113  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15114  DB  116,53                              ; je            30d5 <_sk_load_a8_sse41+0x73>
15115  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
15116  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15117  DB  116,21                              ; je            30bf <_sk_load_a8_sse41+0x5d>
15118  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15119  DB  117,195                             ; jne           3073 <_sk_load_a8_sse41+0x11>
15120  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
15121  DB  102,15,110,192                      ; movd          %eax,%xmm0
15122  DB  102,15,112,192,69                   ; pshufd        $0x45,%xmm0,%xmm0
15123  DB  65,15,183,4,18                      ; movzwl        (%r10,%rdx,1),%eax
15124  DB  102,15,110,200                      ; movd          %eax,%xmm1
15125  DB  102,15,56,49,201                    ; pmovzxbd      %xmm1,%xmm1
15126  DB  102,15,58,14,193,15                 ; pblendw       $0xf,%xmm1,%xmm0
15127  DB  235,158                             ; jmp           3073 <_sk_load_a8_sse41+0x11>
15128  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
15129  DB  102,15,110,192                      ; movd          %eax,%xmm0
15130  DB  235,147                             ; jmp           3073 <_sk_load_a8_sse41+0x11>
15131
15132PUBLIC _sk_gather_a8_sse41
15133_sk_gather_a8_sse41 LABEL PROC
15134  DB  83                                  ; push          %rbx
15135  DB  72,173                              ; lods          %ds:(%rsi),%rax
15136  DB  76,139,8                            ; mov           (%rax),%r9
15137  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
15138  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
15139  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
15140  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
15141  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
15142  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
15143  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
15144  DB  65,137,194                          ; mov           %eax,%r10d
15145  DB  72,193,232,32                       ; shr           $0x20,%rax
15146  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
15147  DB  68,137,219                          ; mov           %r11d,%ebx
15148  DB  73,193,235,32                       ; shr           $0x20,%r11
15149  DB  102,65,15,58,32,4,25,0              ; pinsrb        $0x0,(%r9,%rbx,1),%xmm0
15150  DB  102,67,15,58,32,4,25,1              ; pinsrb        $0x1,(%r9,%r11,1),%xmm0
15151  DB  67,15,182,28,17                     ; movzbl        (%r9,%r10,1),%ebx
15152  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
15153  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
15154  DB  102,15,58,32,192,3                  ; pinsrb        $0x3,%eax,%xmm0
15155  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
15156  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
15157  DB  15,89,29,48,43,0,0                  ; mulps         0x2b30(%rip),%xmm3        # 5c80 <_sk_callback_sse41+0xb00>
15158  DB  72,173                              ; lods          %ds:(%rsi),%rax
15159  DB  15,87,192                           ; xorps         %xmm0,%xmm0
15160  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15161  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
15162  DB  91                                  ; pop           %rbx
15163  DB  255,224                             ; jmpq          *%rax
15164
15165PUBLIC _sk_store_a8_sse41
15166_sk_store_a8_sse41 LABEL PROC
15167  DB  72,131,236,4                        ; sub           $0x4,%rsp
15168  DB  72,173                              ; lods          %ds:(%rsi),%rax
15169  DB  76,139,16                           ; mov           (%rax),%r10
15170  DB  68,15,40,5,31,43,0,0                ; movaps        0x2b1f(%rip),%xmm8        # 5c90 <_sk_callback_sse41+0xb10>
15171  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
15172  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
15173  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
15174  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
15175  DB  77,133,192                          ; test          %r8,%r8
15176  DB  117,17                              ; jne           319b <_sk_store_a8_sse41+0x3b>
15177  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
15178  DB  65,137,4,18                         ; mov           %eax,(%r10,%rdx,1)
15179  DB  72,173                              ; lods          %ds:(%rsi),%rax
15180  DB  72,131,196,4                        ; add           $0x4,%rsp
15181  DB  255,224                             ; jmpq          *%rax
15182  DB  102,69,15,56,49,192                 ; pmovzxbd      %xmm8,%xmm8
15183  DB  69,137,193                          ; mov           %r8d,%r9d
15184  DB  65,128,225,3                        ; and           $0x3,%r9b
15185  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15186  DB  116,41                              ; je            31d7 <_sk_store_a8_sse41+0x77>
15187  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15188  DB  116,15                              ; je            31c3 <_sk_store_a8_sse41+0x63>
15189  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15190  DB  117,217                             ; jne           3193 <_sk_store_a8_sse41+0x33>
15191  DB  102,69,15,58,20,68,18,2,8           ; pextrb        $0x8,%xmm8,0x2(%r10,%rdx,1)
15192  DB  102,68,15,56,0,5,211,42,0,0         ; pshufb        0x2ad3(%rip),%xmm8        # 5ca0 <_sk_callback_sse41+0xb20>
15193  DB  102,69,15,58,21,4,18,0              ; pextrw        $0x0,%xmm8,(%r10,%rdx,1)
15194  DB  235,188                             ; jmp           3193 <_sk_store_a8_sse41+0x33>
15195  DB  102,69,15,58,20,4,18,0              ; pextrb        $0x0,%xmm8,(%r10,%rdx,1)
15196  DB  235,178                             ; jmp           3193 <_sk_store_a8_sse41+0x33>
15197
15198PUBLIC _sk_load_g8_sse41
15199_sk_load_g8_sse41 LABEL PROC
15200  DB  72,173                              ; lods          %ds:(%rsi),%rax
15201  DB  76,139,16                           ; mov           (%rax),%r10
15202  DB  77,133,192                          ; test          %r8,%r8
15203  DB  117,42                              ; jne           3215 <_sk_load_g8_sse41+0x34>
15204  DB  102,65,15,56,49,4,18                ; pmovzxbd      (%r10,%rdx,1),%xmm0
15205  DB  102,15,219,5,182,42,0,0             ; pand          0x2ab6(%rip),%xmm0        # 5cb0 <_sk_callback_sse41+0xb30>
15206  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15207  DB  15,89,5,188,42,0,0                  ; mulps         0x2abc(%rip),%xmm0        # 5cc0 <_sk_callback_sse41+0xb40>
15208  DB  72,173                              ; lods          %ds:(%rsi),%rax
15209  DB  15,40,29,195,42,0,0                 ; movaps        0x2ac3(%rip),%xmm3        # 5cd0 <_sk_callback_sse41+0xb50>
15210  DB  15,40,200                           ; movaps        %xmm0,%xmm1
15211  DB  15,40,208                           ; movaps        %xmm0,%xmm2
15212  DB  255,224                             ; jmpq          *%rax
15213  DB  69,137,193                          ; mov           %r8d,%r9d
15214  DB  65,128,225,3                        ; and           $0x3,%r9b
15215  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15216  DB  116,53                              ; je            3257 <_sk_load_g8_sse41+0x76>
15217  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
15218  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15219  DB  116,21                              ; je            3241 <_sk_load_g8_sse41+0x60>
15220  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15221  DB  117,192                             ; jne           31f2 <_sk_load_g8_sse41+0x11>
15222  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
15223  DB  102,15,110,192                      ; movd          %eax,%xmm0
15224  DB  102,15,112,192,69                   ; pshufd        $0x45,%xmm0,%xmm0
15225  DB  65,15,183,4,18                      ; movzwl        (%r10,%rdx,1),%eax
15226  DB  102,15,110,200                      ; movd          %eax,%xmm1
15227  DB  102,15,56,49,201                    ; pmovzxbd      %xmm1,%xmm1
15228  DB  102,15,58,14,193,15                 ; pblendw       $0xf,%xmm1,%xmm0
15229  DB  235,155                             ; jmp           31f2 <_sk_load_g8_sse41+0x11>
15230  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
15231  DB  102,15,110,192                      ; movd          %eax,%xmm0
15232  DB  235,144                             ; jmp           31f2 <_sk_load_g8_sse41+0x11>
15233
15234PUBLIC _sk_gather_g8_sse41
15235_sk_gather_g8_sse41 LABEL PROC
15236  DB  83                                  ; push          %rbx
15237  DB  72,173                              ; lods          %ds:(%rsi),%rax
15238  DB  76,139,8                            ; mov           (%rax),%r9
15239  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
15240  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
15241  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
15242  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
15243  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
15244  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
15245  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
15246  DB  65,137,194                          ; mov           %eax,%r10d
15247  DB  72,193,232,32                       ; shr           $0x20,%rax
15248  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
15249  DB  68,137,219                          ; mov           %r11d,%ebx
15250  DB  73,193,235,32                       ; shr           $0x20,%r11
15251  DB  102,65,15,58,32,4,25,0              ; pinsrb        $0x0,(%r9,%rbx,1),%xmm0
15252  DB  102,67,15,58,32,4,25,1              ; pinsrb        $0x1,(%r9,%r11,1),%xmm0
15253  DB  67,15,182,28,17                     ; movzbl        (%r9,%r10,1),%ebx
15254  DB  102,15,58,32,195,2                  ; pinsrb        $0x2,%ebx,%xmm0
15255  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
15256  DB  102,15,58,32,192,3                  ; pinsrb        $0x3,%eax,%xmm0
15257  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
15258  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15259  DB  15,89,5,14,42,0,0                   ; mulps         0x2a0e(%rip),%xmm0        # 5ce0 <_sk_callback_sse41+0xb60>
15260  DB  72,173                              ; lods          %ds:(%rsi),%rax
15261  DB  15,40,29,21,42,0,0                  ; movaps        0x2a15(%rip),%xmm3        # 5cf0 <_sk_callback_sse41+0xb70>
15262  DB  15,40,200                           ; movaps        %xmm0,%xmm1
15263  DB  15,40,208                           ; movaps        %xmm0,%xmm2
15264  DB  91                                  ; pop           %rbx
15265  DB  255,224                             ; jmpq          *%rax
15266
15267PUBLIC _sk_gather_i8_sse41
15268_sk_gather_i8_sse41 LABEL PROC
15269  DB  72,173                              ; lods          %ds:(%rsi),%rax
15270  DB  73,137,193                          ; mov           %rax,%r9
15271  DB  77,133,201                          ; test          %r9,%r9
15272  DB  116,5                               ; je            32f3 <_sk_gather_i8_sse41+0xf>
15273  DB  76,137,200                          ; mov           %r9,%rax
15274  DB  235,2                               ; jmp           32f5 <_sk_gather_i8_sse41+0x11>
15275  DB  72,173                              ; lods          %ds:(%rsi),%rax
15276  DB  65,86                               ; push          %r14
15277  DB  83                                  ; push          %rbx
15278  DB  76,139,16                           ; mov           (%rax),%r10
15279  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
15280  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
15281  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
15282  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
15283  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
15284  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
15285  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
15286  DB  65,137,195                          ; mov           %eax,%r11d
15287  DB  72,193,232,32                       ; shr           $0x20,%rax
15288  DB  102,72,15,126,195                   ; movq          %xmm0,%rbx
15289  DB  65,137,222                          ; mov           %ebx,%r14d
15290  DB  72,193,235,32                       ; shr           $0x20,%rbx
15291  DB  102,67,15,58,32,4,50,0              ; pinsrb        $0x0,(%r10,%r14,1),%xmm0
15292  DB  102,65,15,58,32,4,26,1              ; pinsrb        $0x1,(%r10,%rbx,1),%xmm0
15293  DB  102,67,15,58,32,4,26,2              ; pinsrb        $0x2,(%r10,%r11,1),%xmm0
15294  DB  102,65,15,58,32,4,2,3               ; pinsrb        $0x3,(%r10,%rax,1),%xmm0
15295  DB  102,15,56,49,192                    ; pmovzxbd      %xmm0,%xmm0
15296  DB  102,73,15,58,22,194,1               ; pextrq        $0x1,%xmm0,%r10
15297  DB  102,72,15,126,195                   ; movq          %xmm0,%rbx
15298  DB  73,139,65,8                         ; mov           0x8(%r9),%rax
15299  DB  65,137,217                          ; mov           %ebx,%r9d
15300  DB  72,193,235,30                       ; shr           $0x1e,%rbx
15301  DB  69,137,211                          ; mov           %r10d,%r11d
15302  DB  73,193,234,30                       ; shr           $0x1e,%r10
15303  DB  102,66,15,110,28,136                ; movd          (%rax,%r9,4),%xmm3
15304  DB  102,15,58,34,28,24,1                ; pinsrd        $0x1,(%rax,%rbx,1),%xmm3
15305  DB  102,66,15,58,34,28,152,2            ; pinsrd        $0x2,(%rax,%r11,4),%xmm3
15306  DB  102,66,15,58,34,28,16,3             ; pinsrd        $0x3,(%rax,%r10,1),%xmm3
15307  DB  102,15,111,5,104,41,0,0             ; movdqa        0x2968(%rip),%xmm0        # 5d00 <_sk_callback_sse41+0xb80>
15308  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
15309  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15310  DB  68,15,40,5,105,41,0,0               ; movaps        0x2969(%rip),%xmm8        # 5d10 <_sk_callback_sse41+0xb90>
15311  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15312  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
15313  DB  102,15,56,0,13,104,41,0,0           ; pshufb        0x2968(%rip),%xmm1        # 5d20 <_sk_callback_sse41+0xba0>
15314  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15315  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15316  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
15317  DB  102,15,56,0,21,100,41,0,0           ; pshufb        0x2964(%rip),%xmm2        # 5d30 <_sk_callback_sse41+0xbb0>
15318  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15319  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15320  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
15321  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
15322  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
15323  DB  72,173                              ; lods          %ds:(%rsi),%rax
15324  DB  91                                  ; pop           %rbx
15325  DB  65,94                               ; pop           %r14
15326  DB  255,224                             ; jmpq          *%rax
15327
15328PUBLIC _sk_load_565_sse41
15329_sk_load_565_sse41 LABEL PROC
15330  DB  72,173                              ; lods          %ds:(%rsi),%rax
15331  DB  76,139,16                           ; mov           (%rax),%r10
15332  DB  77,133,192                          ; test          %r8,%r8
15333  DB  117,80                              ; jne           3440 <_sk_load_565_sse41+0x5a>
15334  DB  102,65,15,56,51,20,82               ; pmovzxwd      (%r10,%rdx,2),%xmm2
15335  DB  102,15,111,5,65,41,0,0              ; movdqa        0x2941(%rip),%xmm0        # 5d40 <_sk_callback_sse41+0xbc0>
15336  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
15337  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15338  DB  15,89,5,67,41,0,0                   ; mulps         0x2943(%rip),%xmm0        # 5d50 <_sk_callback_sse41+0xbd0>
15339  DB  102,15,111,13,75,41,0,0             ; movdqa        0x294b(%rip),%xmm1        # 5d60 <_sk_callback_sse41+0xbe0>
15340  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
15341  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15342  DB  15,89,13,77,41,0,0                  ; mulps         0x294d(%rip),%xmm1        # 5d70 <_sk_callback_sse41+0xbf0>
15343  DB  102,15,219,21,85,41,0,0             ; pand          0x2955(%rip),%xmm2        # 5d80 <_sk_callback_sse41+0xc00>
15344  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15345  DB  15,89,21,91,41,0,0                  ; mulps         0x295b(%rip),%xmm2        # 5d90 <_sk_callback_sse41+0xc10>
15346  DB  72,173                              ; lods          %ds:(%rsi),%rax
15347  DB  15,40,29,98,41,0,0                  ; movaps        0x2962(%rip),%xmm3        # 5da0 <_sk_callback_sse41+0xc20>
15348  DB  255,224                             ; jmpq          *%rax
15349  DB  69,137,193                          ; mov           %r8d,%r9d
15350  DB  65,128,225,3                        ; and           $0x3,%r9b
15351  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15352  DB  116,53                              ; je            3482 <_sk_load_565_sse41+0x9c>
15353  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
15354  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15355  DB  116,21                              ; je            346c <_sk_load_565_sse41+0x86>
15356  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15357  DB  117,154                             ; jne           33f7 <_sk_load_565_sse41+0x11>
15358  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
15359  DB  102,15,110,192                      ; movd          %eax,%xmm0
15360  DB  102,15,112,208,69                   ; pshufd        $0x45,%xmm0,%xmm2
15361  DB  102,65,15,110,4,82                  ; movd          (%r10,%rdx,2),%xmm0
15362  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
15363  DB  102,15,58,14,208,15                 ; pblendw       $0xf,%xmm0,%xmm2
15364  DB  233,117,255,255,255                 ; jmpq          33f7 <_sk_load_565_sse41+0x11>
15365  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
15366  DB  102,15,110,208                      ; movd          %eax,%xmm2
15367  DB  233,103,255,255,255                 ; jmpq          33f7 <_sk_load_565_sse41+0x11>
15368
15369PUBLIC _sk_gather_565_sse41
15370_sk_gather_565_sse41 LABEL PROC
15371  DB  83                                  ; push          %rbx
15372  DB  72,173                              ; lods          %ds:(%rsi),%rax
15373  DB  76,139,8                            ; mov           (%rax),%r9
15374  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
15375  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
15376  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
15377  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
15378  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
15379  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
15380  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
15381  DB  65,137,194                          ; mov           %eax,%r10d
15382  DB  72,193,232,32                       ; shr           $0x20,%rax
15383  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
15384  DB  68,137,219                          ; mov           %r11d,%ebx
15385  DB  73,193,235,32                       ; shr           $0x20,%r11
15386  DB  102,65,15,196,4,89,0                ; pinsrw        $0x0,(%r9,%rbx,2),%xmm0
15387  DB  102,67,15,196,4,89,1                ; pinsrw        $0x1,(%r9,%r11,2),%xmm0
15388  DB  67,15,183,28,81                     ; movzwl        (%r9,%r10,2),%ebx
15389  DB  102,15,196,195,2                    ; pinsrw        $0x2,%ebx,%xmm0
15390  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
15391  DB  102,15,196,192,3                    ; pinsrw        $0x3,%eax,%xmm0
15392  DB  102,15,56,51,208                    ; pmovzxwd      %xmm0,%xmm2
15393  DB  102,15,111,5,182,40,0,0             ; movdqa        0x28b6(%rip),%xmm0        # 5db0 <_sk_callback_sse41+0xc30>
15394  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
15395  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15396  DB  15,89,5,184,40,0,0                  ; mulps         0x28b8(%rip),%xmm0        # 5dc0 <_sk_callback_sse41+0xc40>
15397  DB  102,15,111,13,192,40,0,0            ; movdqa        0x28c0(%rip),%xmm1        # 5dd0 <_sk_callback_sse41+0xc50>
15398  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
15399  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15400  DB  15,89,13,194,40,0,0                 ; mulps         0x28c2(%rip),%xmm1        # 5de0 <_sk_callback_sse41+0xc60>
15401  DB  102,15,219,21,202,40,0,0            ; pand          0x28ca(%rip),%xmm2        # 5df0 <_sk_callback_sse41+0xc70>
15402  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15403  DB  15,89,21,208,40,0,0                 ; mulps         0x28d0(%rip),%xmm2        # 5e00 <_sk_callback_sse41+0xc80>
15404  DB  72,173                              ; lods          %ds:(%rsi),%rax
15405  DB  15,40,29,215,40,0,0                 ; movaps        0x28d7(%rip),%xmm3        # 5e10 <_sk_callback_sse41+0xc90>
15406  DB  91                                  ; pop           %rbx
15407  DB  255,224                             ; jmpq          *%rax
15408
15409PUBLIC _sk_store_565_sse41
15410_sk_store_565_sse41 LABEL PROC
15411  DB  72,173                              ; lods          %ds:(%rsi),%rax
15412  DB  72,139,0                            ; mov           (%rax),%rax
15413  DB  68,15,40,5,215,40,0,0               ; movaps        0x28d7(%rip),%xmm8        # 5e20 <_sk_callback_sse41+0xca0>
15414  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15415  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15416  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
15417  DB  102,65,15,114,241,11                ; pslld         $0xb,%xmm9
15418  DB  68,15,40,21,204,40,0,0              ; movaps        0x28cc(%rip),%xmm10        # 5e30 <_sk_callback_sse41+0xcb0>
15419  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
15420  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
15421  DB  102,65,15,114,242,5                 ; pslld         $0x5,%xmm10
15422  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
15423  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
15424  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
15425  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
15426  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
15427  DB  77,133,192                          ; test          %r8,%r8
15428  DB  117,10                              ; jne           359b <_sk_store_565_sse41+0x5f>
15429  DB  242,68,15,17,4,80                   ; movsd         %xmm8,(%rax,%rdx,2)
15430  DB  72,173                              ; lods          %ds:(%rsi),%rax
15431  DB  255,224                             ; jmpq          *%rax
15432  DB  102,69,15,56,51,192                 ; pmovzxwd      %xmm8,%xmm8
15433  DB  69,137,193                          ; mov           %r8d,%r9d
15434  DB  65,128,225,3                        ; and           $0x3,%r9b
15435  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15436  DB  116,35                              ; je            35d1 <_sk_store_565_sse41+0x95>
15437  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15438  DB  116,15                              ; je            35c3 <_sk_store_565_sse41+0x87>
15439  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15440  DB  117,221                             ; jne           3597 <_sk_store_565_sse41+0x5b>
15441  DB  102,68,15,58,21,68,80,4,4           ; pextrw        $0x4,%xmm8,0x4(%rax,%rdx,2)
15442  DB  242,69,15,112,192,232               ; pshuflw       $0xe8,%xmm8,%xmm8
15443  DB  102,68,15,126,4,80                  ; movd          %xmm8,(%rax,%rdx,2)
15444  DB  235,198                             ; jmp           3597 <_sk_store_565_sse41+0x5b>
15445  DB  102,68,15,58,21,4,80,0              ; pextrw        $0x0,%xmm8,(%rax,%rdx,2)
15446  DB  235,188                             ; jmp           3597 <_sk_store_565_sse41+0x5b>
15447
15448PUBLIC _sk_load_4444_sse41
15449_sk_load_4444_sse41 LABEL PROC
15450  DB  72,173                              ; lods          %ds:(%rsi),%rax
15451  DB  76,139,16                           ; mov           (%rax),%r10
15452  DB  77,133,192                          ; test          %r8,%r8
15453  DB  117,95                              ; jne           3644 <_sk_load_4444_sse41+0x69>
15454  DB  102,65,15,56,51,28,82               ; pmovzxwd      (%r10,%rdx,2),%xmm3
15455  DB  102,15,111,5,76,40,0,0              ; movdqa        0x284c(%rip),%xmm0        # 5e40 <_sk_callback_sse41+0xcc0>
15456  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
15457  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15458  DB  15,89,5,78,40,0,0                   ; mulps         0x284e(%rip),%xmm0        # 5e50 <_sk_callback_sse41+0xcd0>
15459  DB  102,15,111,13,86,40,0,0             ; movdqa        0x2856(%rip),%xmm1        # 5e60 <_sk_callback_sse41+0xce0>
15460  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
15461  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15462  DB  15,89,13,88,40,0,0                  ; mulps         0x2858(%rip),%xmm1        # 5e70 <_sk_callback_sse41+0xcf0>
15463  DB  102,15,111,21,96,40,0,0             ; movdqa        0x2860(%rip),%xmm2        # 5e80 <_sk_callback_sse41+0xd00>
15464  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
15465  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15466  DB  15,89,21,98,40,0,0                  ; mulps         0x2862(%rip),%xmm2        # 5e90 <_sk_callback_sse41+0xd10>
15467  DB  102,15,219,29,106,40,0,0            ; pand          0x286a(%rip),%xmm3        # 5ea0 <_sk_callback_sse41+0xd20>
15468  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
15469  DB  15,89,29,112,40,0,0                 ; mulps         0x2870(%rip),%xmm3        # 5eb0 <_sk_callback_sse41+0xd30>
15470  DB  72,173                              ; lods          %ds:(%rsi),%rax
15471  DB  255,224                             ; jmpq          *%rax
15472  DB  69,137,193                          ; mov           %r8d,%r9d
15473  DB  65,128,225,3                        ; and           $0x3,%r9b
15474  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15475  DB  116,53                              ; je            3686 <_sk_load_4444_sse41+0xab>
15476  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
15477  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15478  DB  116,21                              ; je            3670 <_sk_load_4444_sse41+0x95>
15479  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15480  DB  117,139                             ; jne           35ec <_sk_load_4444_sse41+0x11>
15481  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
15482  DB  102,15,110,192                      ; movd          %eax,%xmm0
15483  DB  102,15,112,216,69                   ; pshufd        $0x45,%xmm0,%xmm3
15484  DB  102,65,15,110,4,82                  ; movd          (%r10,%rdx,2),%xmm0
15485  DB  102,15,56,51,192                    ; pmovzxwd      %xmm0,%xmm0
15486  DB  102,15,58,14,216,15                 ; pblendw       $0xf,%xmm0,%xmm3
15487  DB  233,102,255,255,255                 ; jmpq          35ec <_sk_load_4444_sse41+0x11>
15488  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
15489  DB  102,15,110,216                      ; movd          %eax,%xmm3
15490  DB  233,88,255,255,255                  ; jmpq          35ec <_sk_load_4444_sse41+0x11>
15491
15492PUBLIC _sk_gather_4444_sse41
15493_sk_gather_4444_sse41 LABEL PROC
15494  DB  83                                  ; push          %rbx
15495  DB  72,173                              ; lods          %ds:(%rsi),%rax
15496  DB  76,139,8                            ; mov           (%rax),%r9
15497  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
15498  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
15499  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
15500  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
15501  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
15502  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
15503  DB  102,72,15,58,22,192,1               ; pextrq        $0x1,%xmm0,%rax
15504  DB  65,137,194                          ; mov           %eax,%r10d
15505  DB  72,193,232,32                       ; shr           $0x20,%rax
15506  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
15507  DB  68,137,219                          ; mov           %r11d,%ebx
15508  DB  73,193,235,32                       ; shr           $0x20,%r11
15509  DB  102,65,15,196,4,89,0                ; pinsrw        $0x0,(%r9,%rbx,2),%xmm0
15510  DB  102,67,15,196,4,89,1                ; pinsrw        $0x1,(%r9,%r11,2),%xmm0
15511  DB  67,15,183,28,81                     ; movzwl        (%r9,%r10,2),%ebx
15512  DB  102,15,196,195,2                    ; pinsrw        $0x2,%ebx,%xmm0
15513  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
15514  DB  102,15,196,192,3                    ; pinsrw        $0x3,%eax,%xmm0
15515  DB  102,15,56,51,216                    ; pmovzxwd      %xmm0,%xmm3
15516  DB  102,15,111,5,194,39,0,0             ; movdqa        0x27c2(%rip),%xmm0        # 5ec0 <_sk_callback_sse41+0xd40>
15517  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
15518  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15519  DB  15,89,5,196,39,0,0                  ; mulps         0x27c4(%rip),%xmm0        # 5ed0 <_sk_callback_sse41+0xd50>
15520  DB  102,15,111,13,204,39,0,0            ; movdqa        0x27cc(%rip),%xmm1        # 5ee0 <_sk_callback_sse41+0xd60>
15521  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
15522  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15523  DB  15,89,13,206,39,0,0                 ; mulps         0x27ce(%rip),%xmm1        # 5ef0 <_sk_callback_sse41+0xd70>
15524  DB  102,15,111,21,214,39,0,0            ; movdqa        0x27d6(%rip),%xmm2        # 5f00 <_sk_callback_sse41+0xd80>
15525  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
15526  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15527  DB  15,89,21,216,39,0,0                 ; mulps         0x27d8(%rip),%xmm2        # 5f10 <_sk_callback_sse41+0xd90>
15528  DB  102,15,219,29,224,39,0,0            ; pand          0x27e0(%rip),%xmm3        # 5f20 <_sk_callback_sse41+0xda0>
15529  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
15530  DB  15,89,29,230,39,0,0                 ; mulps         0x27e6(%rip),%xmm3        # 5f30 <_sk_callback_sse41+0xdb0>
15531  DB  72,173                              ; lods          %ds:(%rsi),%rax
15532  DB  91                                  ; pop           %rbx
15533  DB  255,224                             ; jmpq          *%rax
15534
15535PUBLIC _sk_store_4444_sse41
15536_sk_store_4444_sse41 LABEL PROC
15537  DB  72,173                              ; lods          %ds:(%rsi),%rax
15538  DB  72,139,0                            ; mov           (%rax),%rax
15539  DB  68,15,40,5,228,39,0,0               ; movaps        0x27e4(%rip),%xmm8        # 5f40 <_sk_callback_sse41+0xdc0>
15540  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15541  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15542  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
15543  DB  102,65,15,114,241,12                ; pslld         $0xc,%xmm9
15544  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
15545  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
15546  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
15547  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
15548  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
15549  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
15550  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15551  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
15552  DB  102,65,15,114,241,4                 ; pslld         $0x4,%xmm9
15553  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
15554  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
15555  DB  102,69,15,86,193                    ; orpd          %xmm9,%xmm8
15556  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
15557  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
15558  DB  77,133,192                          ; test          %r8,%r8
15559  DB  117,10                              ; jne           37c2 <_sk_store_4444_sse41+0x73>
15560  DB  242,68,15,17,4,80                   ; movsd         %xmm8,(%rax,%rdx,2)
15561  DB  72,173                              ; lods          %ds:(%rsi),%rax
15562  DB  255,224                             ; jmpq          *%rax
15563  DB  102,69,15,56,51,192                 ; pmovzxwd      %xmm8,%xmm8
15564  DB  69,137,193                          ; mov           %r8d,%r9d
15565  DB  65,128,225,3                        ; and           $0x3,%r9b
15566  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15567  DB  116,35                              ; je            37f8 <_sk_store_4444_sse41+0xa9>
15568  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15569  DB  116,15                              ; je            37ea <_sk_store_4444_sse41+0x9b>
15570  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15571  DB  117,221                             ; jne           37be <_sk_store_4444_sse41+0x6f>
15572  DB  102,68,15,58,21,68,80,4,4           ; pextrw        $0x4,%xmm8,0x4(%rax,%rdx,2)
15573  DB  242,69,15,112,192,232               ; pshuflw       $0xe8,%xmm8,%xmm8
15574  DB  102,68,15,126,4,80                  ; movd          %xmm8,(%rax,%rdx,2)
15575  DB  235,198                             ; jmp           37be <_sk_store_4444_sse41+0x6f>
15576  DB  102,68,15,58,21,4,80,0              ; pextrw        $0x0,%xmm8,(%rax,%rdx,2)
15577  DB  235,188                             ; jmp           37be <_sk_store_4444_sse41+0x6f>
15578
15579PUBLIC _sk_load_8888_sse41
15580_sk_load_8888_sse41 LABEL PROC
15581  DB  72,173                              ; lods          %ds:(%rsi),%rax
15582  DB  72,139,0                            ; mov           (%rax),%rax
15583  DB  77,133,192                          ; test          %r8,%r8
15584  DB  117,88                              ; jne           3864 <_sk_load_8888_sse41+0x62>
15585  DB  243,15,111,28,144                   ; movdqu        (%rax,%rdx,4),%xmm3
15586  DB  102,15,111,5,55,39,0,0              ; movdqa        0x2737(%rip),%xmm0        # 5f50 <_sk_callback_sse41+0xdd0>
15587  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
15588  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15589  DB  68,15,40,5,56,39,0,0                ; movaps        0x2738(%rip),%xmm8        # 5f60 <_sk_callback_sse41+0xde0>
15590  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15591  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
15592  DB  102,15,56,0,13,55,39,0,0            ; pshufb        0x2737(%rip),%xmm1        # 5f70 <_sk_callback_sse41+0xdf0>
15593  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15594  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15595  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
15596  DB  102,15,56,0,21,51,39,0,0            ; pshufb        0x2733(%rip),%xmm2        # 5f80 <_sk_callback_sse41+0xe00>
15597  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15598  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15599  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
15600  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
15601  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
15602  DB  72,173                              ; lods          %ds:(%rsi),%rax
15603  DB  255,224                             ; jmpq          *%rax
15604  DB  69,137,193                          ; mov           %r8d,%r9d
15605  DB  65,128,225,3                        ; and           $0x3,%r9b
15606  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15607  DB  116,43                              ; je            389c <_sk_load_8888_sse41+0x9a>
15608  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
15609  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15610  DB  116,17                              ; je            388c <_sk_load_8888_sse41+0x8a>
15611  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15612  DB  117,144                             ; jne           3811 <_sk_load_8888_sse41+0xf>
15613  DB  102,15,110,68,144,8                 ; movd          0x8(%rax,%rdx,4),%xmm0
15614  DB  102,15,112,216,69                   ; pshufd        $0x45,%xmm0,%xmm3
15615  DB  243,15,126,4,144                    ; movq          (%rax,%rdx,4),%xmm0
15616  DB  102,15,58,14,216,15                 ; pblendw       $0xf,%xmm0,%xmm3
15617  DB  233,117,255,255,255                 ; jmpq          3811 <_sk_load_8888_sse41+0xf>
15618  DB  102,15,110,28,144                   ; movd          (%rax,%rdx,4),%xmm3
15619  DB  233,107,255,255,255                 ; jmpq          3811 <_sk_load_8888_sse41+0xf>
15620
15621PUBLIC _sk_gather_8888_sse41
15622_sk_gather_8888_sse41 LABEL PROC
15623  DB  83                                  ; push          %rbx
15624  DB  72,173                              ; lods          %ds:(%rsi),%rax
15625  DB  76,139,8                            ; mov           (%rax),%r9
15626  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
15627  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
15628  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
15629  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
15630  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
15631  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
15632  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
15633  DB  65,137,194                          ; mov           %eax,%r10d
15634  DB  72,193,232,32                       ; shr           $0x20,%rax
15635  DB  102,73,15,58,22,195,1               ; pextrq        $0x1,%xmm0,%r11
15636  DB  68,137,219                          ; mov           %r11d,%ebx
15637  DB  73,193,235,32                       ; shr           $0x20,%r11
15638  DB  102,67,15,110,28,145                ; movd          (%r9,%r10,4),%xmm3
15639  DB  102,65,15,58,34,28,129,1            ; pinsrd        $0x1,(%r9,%rax,4),%xmm3
15640  DB  102,65,15,58,34,28,153,2            ; pinsrd        $0x2,(%r9,%rbx,4),%xmm3
15641  DB  102,67,15,58,34,28,153,3            ; pinsrd        $0x3,(%r9,%r11,4),%xmm3
15642  DB  102,15,111,5,137,38,0,0             ; movdqa        0x2689(%rip),%xmm0        # 5f90 <_sk_callback_sse41+0xe10>
15643  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
15644  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15645  DB  68,15,40,5,138,38,0,0               ; movaps        0x268a(%rip),%xmm8        # 5fa0 <_sk_callback_sse41+0xe20>
15646  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15647  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
15648  DB  102,15,56,0,13,137,38,0,0           ; pshufb        0x2689(%rip),%xmm1        # 5fb0 <_sk_callback_sse41+0xe30>
15649  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15650  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15651  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
15652  DB  102,15,56,0,21,133,38,0,0           ; pshufb        0x2685(%rip),%xmm2        # 5fc0 <_sk_callback_sse41+0xe40>
15653  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15654  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15655  DB  102,15,114,211,24                   ; psrld         $0x18,%xmm3
15656  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
15657  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
15658  DB  72,173                              ; lods          %ds:(%rsi),%rax
15659  DB  91                                  ; pop           %rbx
15660  DB  255,224                             ; jmpq          *%rax
15661
15662PUBLIC _sk_store_8888_sse41
15663_sk_store_8888_sse41 LABEL PROC
15664  DB  72,173                              ; lods          %ds:(%rsi),%rax
15665  DB  72,139,0                            ; mov           (%rax),%rax
15666  DB  68,15,40,5,112,38,0,0               ; movaps        0x2670(%rip),%xmm8        # 5fd0 <_sk_callback_sse41+0xe50>
15667  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
15668  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15669  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
15670  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
15671  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
15672  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
15673  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
15674  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
15675  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
15676  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
15677  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
15678  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
15679  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
15680  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
15681  DB  102,65,15,114,240,24                ; pslld         $0x18,%xmm8
15682  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
15683  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
15684  DB  77,133,192                          ; test          %r8,%r8
15685  DB  117,10                              ; jne           39c0 <_sk_store_8888_sse41+0x6d>
15686  DB  243,68,15,127,4,144                 ; movdqu        %xmm8,(%rax,%rdx,4)
15687  DB  72,173                              ; lods          %ds:(%rsi),%rax
15688  DB  255,224                             ; jmpq          *%rax
15689  DB  69,137,193                          ; mov           %r8d,%r9d
15690  DB  65,128,225,3                        ; and           $0x3,%r9b
15691  DB  65,128,249,1                        ; cmp           $0x1,%r9b
15692  DB  116,29                              ; je            39ea <_sk_store_8888_sse41+0x97>
15693  DB  65,128,249,2                        ; cmp           $0x2,%r9b
15694  DB  116,15                              ; je            39e2 <_sk_store_8888_sse41+0x8f>
15695  DB  65,128,249,3                        ; cmp           $0x3,%r9b
15696  DB  117,227                             ; jne           39bc <_sk_store_8888_sse41+0x69>
15697  DB  102,68,15,58,22,68,144,8,2          ; pextrd        $0x2,%xmm8,0x8(%rax,%rdx,4)
15698  DB  102,68,15,214,4,144                 ; movq          %xmm8,(%rax,%rdx,4)
15699  DB  235,210                             ; jmp           39bc <_sk_store_8888_sse41+0x69>
15700  DB  102,68,15,126,4,144                 ; movd          %xmm8,(%rax,%rdx,4)
15701  DB  235,202                             ; jmp           39bc <_sk_store_8888_sse41+0x69>
15702
15703PUBLIC _sk_load_f16_sse41
15704_sk_load_f16_sse41 LABEL PROC
15705  DB  72,173                              ; lods          %ds:(%rsi),%rax
15706  DB  72,139,0                            ; mov           (%rax),%rax
15707  DB  77,133,192                          ; test          %r8,%r8
15708  DB  15,133,60,1,0,0                     ; jne           3b3c <_sk_load_f16_sse41+0x14a>
15709  DB  102,15,16,4,208                     ; movupd        (%rax,%rdx,8),%xmm0
15710  DB  243,15,111,76,208,16                ; movdqu        0x10(%rax,%rdx,8),%xmm1
15711  DB  102,68,15,40,200                    ; movapd        %xmm0,%xmm9
15712  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
15713  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
15714  DB  102,69,15,111,217                   ; movdqa        %xmm9,%xmm11
15715  DB  102,68,15,97,216                    ; punpcklwd     %xmm0,%xmm11
15716  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
15717  DB  102,65,15,56,51,203                 ; pmovzxwd      %xmm11,%xmm1
15718  DB  102,68,15,111,5,169,37,0,0          ; movdqa        0x25a9(%rip),%xmm8        # 5fe0 <_sk_callback_sse41+0xe60>
15719  DB  102,15,111,209                      ; movdqa        %xmm1,%xmm2
15720  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
15721  DB  102,15,239,202                      ; pxor          %xmm2,%xmm1
15722  DB  102,15,111,29,164,37,0,0            ; movdqa        0x25a4(%rip),%xmm3        # 5ff0 <_sk_callback_sse41+0xe70>
15723  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
15724  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
15725  DB  102,15,56,63,195                    ; pmaxud        %xmm3,%xmm0
15726  DB  102,15,118,193                      ; pcmpeqd       %xmm1,%xmm0
15727  DB  102,15,114,241,13                   ; pslld         $0xd,%xmm1
15728  DB  102,15,235,202                      ; por           %xmm2,%xmm1
15729  DB  102,68,15,111,21,144,37,0,0         ; movdqa        0x2590(%rip),%xmm10        # 6000 <_sk_callback_sse41+0xe80>
15730  DB  102,65,15,254,202                   ; paddd         %xmm10,%xmm1
15731  DB  102,15,219,193                      ; pand          %xmm1,%xmm0
15732  DB  102,65,15,115,219,8                 ; psrldq        $0x8,%xmm11
15733  DB  102,69,15,56,51,219                 ; pmovzxwd      %xmm11,%xmm11
15734  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
15735  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
15736  DB  102,68,15,239,218                   ; pxor          %xmm2,%xmm11
15737  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
15738  DB  102,65,15,111,203                   ; movdqa        %xmm11,%xmm1
15739  DB  102,15,56,63,203                    ; pmaxud        %xmm3,%xmm1
15740  DB  102,65,15,118,203                   ; pcmpeqd       %xmm11,%xmm1
15741  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
15742  DB  102,68,15,235,218                   ; por           %xmm2,%xmm11
15743  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
15744  DB  102,65,15,219,203                   ; pand          %xmm11,%xmm1
15745  DB  102,69,15,56,51,217                 ; pmovzxwd      %xmm9,%xmm11
15746  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
15747  DB  102,69,15,219,224                   ; pand          %xmm8,%xmm12
15748  DB  102,69,15,239,220                   ; pxor          %xmm12,%xmm11
15749  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
15750  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
15751  DB  102,15,56,63,211                    ; pmaxud        %xmm3,%xmm2
15752  DB  102,65,15,118,211                   ; pcmpeqd       %xmm11,%xmm2
15753  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
15754  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
15755  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
15756  DB  102,65,15,219,211                   ; pand          %xmm11,%xmm2
15757  DB  102,65,15,115,217,8                 ; psrldq        $0x8,%xmm9
15758  DB  102,69,15,56,51,201                 ; pmovzxwd      %xmm9,%xmm9
15759  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
15760  DB  102,69,15,239,200                   ; pxor          %xmm8,%xmm9
15761  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
15762  DB  102,65,15,56,63,217                 ; pmaxud        %xmm9,%xmm3
15763  DB  102,65,15,118,217                   ; pcmpeqd       %xmm9,%xmm3
15764  DB  102,65,15,114,241,13                ; pslld         $0xd,%xmm9
15765  DB  102,69,15,235,200                   ; por           %xmm8,%xmm9
15766  DB  102,69,15,254,202                   ; paddd         %xmm10,%xmm9
15767  DB  102,65,15,219,217                   ; pand          %xmm9,%xmm3
15768  DB  72,173                              ; lods          %ds:(%rsi),%rax
15769  DB  255,224                             ; jmpq          *%rax
15770  DB  242,15,16,4,208                     ; movsd         (%rax,%rdx,8),%xmm0
15771  DB  73,131,248,1                        ; cmp           $0x1,%r8
15772  DB  117,13                              ; jne           3b54 <_sk_load_f16_sse41+0x162>
15773  DB  243,15,126,192                      ; movq          %xmm0,%xmm0
15774  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15775  DB  233,183,254,255,255                 ; jmpq          3a0b <_sk_load_f16_sse41+0x19>
15776  DB  102,15,22,68,208,8                  ; movhpd        0x8(%rax,%rdx,8),%xmm0
15777  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15778  DB  73,131,248,3                        ; cmp           $0x3,%r8
15779  DB  15,130,163,254,255,255              ; jb            3a0b <_sk_load_f16_sse41+0x19>
15780  DB  243,15,126,76,208,16                ; movq          0x10(%rax,%rdx,8),%xmm1
15781  DB  233,152,254,255,255                 ; jmpq          3a0b <_sk_load_f16_sse41+0x19>
15782
15783PUBLIC _sk_gather_f16_sse41
15784_sk_gather_f16_sse41 LABEL PROC
15785  DB  83                                  ; push          %rbx
15786  DB  72,173                              ; lods          %ds:(%rsi),%rax
15787  DB  76,139,8                            ; mov           (%rax),%r9
15788  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
15789  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
15790  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
15791  DB  102,15,56,64,209                    ; pmulld        %xmm1,%xmm2
15792  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
15793  DB  102,15,254,194                      ; paddd         %xmm2,%xmm0
15794  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
15795  DB  65,137,194                          ; mov           %eax,%r10d
15796  DB  72,193,232,32                       ; shr           $0x20,%rax
15797  DB  102,73,15,58,22,195,1               ; pextrq        $0x1,%xmm0,%r11
15798  DB  68,137,219                          ; mov           %r11d,%ebx
15799  DB  73,193,235,32                       ; shr           $0x20,%r11
15800  DB  243,67,15,126,4,217                 ; movq          (%r9,%r11,8),%xmm0
15801  DB  243,65,15,126,12,217                ; movq          (%r9,%rbx,8),%xmm1
15802  DB  102,15,108,200                      ; punpcklqdq    %xmm0,%xmm1
15803  DB  243,65,15,126,4,193                 ; movq          (%r9,%rax,8),%xmm0
15804  DB  243,67,15,126,20,209                ; movq          (%r9,%r10,8),%xmm2
15805  DB  102,15,108,208                      ; punpcklqdq    %xmm0,%xmm2
15806  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
15807  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
15808  DB  102,15,105,209                      ; punpckhwd     %xmm1,%xmm2
15809  DB  102,69,15,111,217                   ; movdqa        %xmm9,%xmm11
15810  DB  102,68,15,97,218                    ; punpcklwd     %xmm2,%xmm11
15811  DB  102,68,15,105,202                   ; punpckhwd     %xmm2,%xmm9
15812  DB  102,65,15,56,51,203                 ; pmovzxwd      %xmm11,%xmm1
15813  DB  102,68,15,111,5,22,36,0,0           ; movdqa        0x2416(%rip),%xmm8        # 6010 <_sk_callback_sse41+0xe90>
15814  DB  102,15,111,209                      ; movdqa        %xmm1,%xmm2
15815  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
15816  DB  102,15,239,202                      ; pxor          %xmm2,%xmm1
15817  DB  102,15,111,29,17,36,0,0             ; movdqa        0x2411(%rip),%xmm3        # 6020 <_sk_callback_sse41+0xea0>
15818  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
15819  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
15820  DB  102,15,56,63,195                    ; pmaxud        %xmm3,%xmm0
15821  DB  102,15,118,193                      ; pcmpeqd       %xmm1,%xmm0
15822  DB  102,15,114,241,13                   ; pslld         $0xd,%xmm1
15823  DB  102,15,235,202                      ; por           %xmm2,%xmm1
15824  DB  102,68,15,111,21,253,35,0,0         ; movdqa        0x23fd(%rip),%xmm10        # 6030 <_sk_callback_sse41+0xeb0>
15825  DB  102,65,15,254,202                   ; paddd         %xmm10,%xmm1
15826  DB  102,15,219,193                      ; pand          %xmm1,%xmm0
15827  DB  102,65,15,115,219,8                 ; psrldq        $0x8,%xmm11
15828  DB  102,69,15,56,51,219                 ; pmovzxwd      %xmm11,%xmm11
15829  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
15830  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
15831  DB  102,68,15,239,218                   ; pxor          %xmm2,%xmm11
15832  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
15833  DB  102,65,15,111,203                   ; movdqa        %xmm11,%xmm1
15834  DB  102,15,56,63,203                    ; pmaxud        %xmm3,%xmm1
15835  DB  102,65,15,118,203                   ; pcmpeqd       %xmm11,%xmm1
15836  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
15837  DB  102,68,15,235,218                   ; por           %xmm2,%xmm11
15838  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
15839  DB  102,65,15,219,203                   ; pand          %xmm11,%xmm1
15840  DB  102,69,15,56,51,217                 ; pmovzxwd      %xmm9,%xmm11
15841  DB  102,69,15,111,227                   ; movdqa        %xmm11,%xmm12
15842  DB  102,69,15,219,224                   ; pand          %xmm8,%xmm12
15843  DB  102,69,15,239,220                   ; pxor          %xmm12,%xmm11
15844  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
15845  DB  102,65,15,111,211                   ; movdqa        %xmm11,%xmm2
15846  DB  102,15,56,63,211                    ; pmaxud        %xmm3,%xmm2
15847  DB  102,65,15,118,211                   ; pcmpeqd       %xmm11,%xmm2
15848  DB  102,65,15,114,243,13                ; pslld         $0xd,%xmm11
15849  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
15850  DB  102,69,15,254,218                   ; paddd         %xmm10,%xmm11
15851  DB  102,65,15,219,211                   ; pand          %xmm11,%xmm2
15852  DB  102,65,15,115,217,8                 ; psrldq        $0x8,%xmm9
15853  DB  102,69,15,56,51,201                 ; pmovzxwd      %xmm9,%xmm9
15854  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
15855  DB  102,69,15,239,200                   ; pxor          %xmm8,%xmm9
15856  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
15857  DB  102,65,15,56,63,217                 ; pmaxud        %xmm9,%xmm3
15858  DB  102,65,15,118,217                   ; pcmpeqd       %xmm9,%xmm3
15859  DB  102,65,15,114,241,13                ; pslld         $0xd,%xmm9
15860  DB  102,69,15,235,200                   ; por           %xmm8,%xmm9
15861  DB  102,69,15,254,202                   ; paddd         %xmm10,%xmm9
15862  DB  102,65,15,219,217                   ; pand          %xmm9,%xmm3
15863  DB  72,173                              ; lods          %ds:(%rsi),%rax
15864  DB  91                                  ; pop           %rbx
15865  DB  255,224                             ; jmpq          *%rax
15866
15867PUBLIC _sk_store_f16_sse41
15868_sk_store_f16_sse41 LABEL PROC
15869  DB  72,173                              ; lods          %ds:(%rsi),%rax
15870  DB  72,139,0                            ; mov           (%rax),%rax
15871  DB  102,68,15,111,21,50,35,0,0          ; movdqa        0x2332(%rip),%xmm10        # 6040 <_sk_callback_sse41+0xec0>
15872  DB  102,68,15,111,216                   ; movdqa        %xmm0,%xmm11
15873  DB  102,69,15,219,218                   ; pand          %xmm10,%xmm11
15874  DB  102,68,15,111,232                   ; movdqa        %xmm0,%xmm13
15875  DB  102,69,15,239,235                   ; pxor          %xmm11,%xmm13
15876  DB  102,68,15,111,13,37,35,0,0          ; movdqa        0x2325(%rip),%xmm9        # 6050 <_sk_callback_sse41+0xed0>
15877  DB  102,65,15,114,211,16                ; psrld         $0x10,%xmm11
15878  DB  102,69,15,111,193                   ; movdqa        %xmm9,%xmm8
15879  DB  102,69,15,102,197                   ; pcmpgtd       %xmm13,%xmm8
15880  DB  102,65,15,114,213,13                ; psrld         $0xd,%xmm13
15881  DB  102,68,15,111,37,22,35,0,0          ; movdqa        0x2316(%rip),%xmm12        # 6060 <_sk_callback_sse41+0xee0>
15882  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
15883  DB  102,69,15,254,221                   ; paddd         %xmm13,%xmm11
15884  DB  102,69,15,223,195                   ; pandn         %xmm11,%xmm8
15885  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
15886  DB  102,68,15,111,217                   ; movdqa        %xmm1,%xmm11
15887  DB  102,69,15,219,218                   ; pand          %xmm10,%xmm11
15888  DB  102,68,15,111,241                   ; movdqa        %xmm1,%xmm14
15889  DB  102,69,15,239,243                   ; pxor          %xmm11,%xmm14
15890  DB  102,65,15,114,211,16                ; psrld         $0x10,%xmm11
15891  DB  102,69,15,111,233                   ; movdqa        %xmm9,%xmm13
15892  DB  102,69,15,102,238                   ; pcmpgtd       %xmm14,%xmm13
15893  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
15894  DB  102,69,15,235,220                   ; por           %xmm12,%xmm11
15895  DB  102,69,15,254,222                   ; paddd         %xmm14,%xmm11
15896  DB  102,69,15,223,235                   ; pandn         %xmm11,%xmm13
15897  DB  102,69,15,56,43,237                 ; packusdw      %xmm13,%xmm13
15898  DB  102,68,15,111,242                   ; movdqa        %xmm2,%xmm14
15899  DB  102,69,15,219,242                   ; pand          %xmm10,%xmm14
15900  DB  102,68,15,111,250                   ; movdqa        %xmm2,%xmm15
15901  DB  102,69,15,239,254                   ; pxor          %xmm14,%xmm15
15902  DB  102,65,15,114,214,16                ; psrld         $0x10,%xmm14
15903  DB  102,69,15,111,217                   ; movdqa        %xmm9,%xmm11
15904  DB  102,69,15,102,223                   ; pcmpgtd       %xmm15,%xmm11
15905  DB  102,65,15,114,215,13                ; psrld         $0xd,%xmm15
15906  DB  102,69,15,235,244                   ; por           %xmm12,%xmm14
15907  DB  102,69,15,254,247                   ; paddd         %xmm15,%xmm14
15908  DB  102,69,15,223,222                   ; pandn         %xmm14,%xmm11
15909  DB  102,69,15,56,43,219                 ; packusdw      %xmm11,%xmm11
15910  DB  102,68,15,219,211                   ; pand          %xmm3,%xmm10
15911  DB  102,68,15,111,243                   ; movdqa        %xmm3,%xmm14
15912  DB  102,69,15,239,242                   ; pxor          %xmm10,%xmm14
15913  DB  102,65,15,114,210,16                ; psrld         $0x10,%xmm10
15914  DB  102,69,15,102,206                   ; pcmpgtd       %xmm14,%xmm9
15915  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
15916  DB  102,69,15,235,212                   ; por           %xmm12,%xmm10
15917  DB  102,69,15,254,214                   ; paddd         %xmm14,%xmm10
15918  DB  102,69,15,223,202                   ; pandn         %xmm10,%xmm9
15919  DB  102,69,15,56,43,201                 ; packusdw      %xmm9,%xmm9
15920  DB  102,69,15,97,197                    ; punpcklwd     %xmm13,%xmm8
15921  DB  102,69,15,97,217                    ; punpcklwd     %xmm9,%xmm11
15922  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
15923  DB  102,69,15,98,203                    ; punpckldq     %xmm11,%xmm9
15924  DB  77,133,192                          ; test          %r8,%r8
15925  DB  117,21                              ; jne           3e40 <_sk_store_f16_sse41+0x140>
15926  DB  68,15,17,12,208                     ; movups        %xmm9,(%rax,%rdx,8)
15927  DB  102,69,15,106,195                   ; punpckhdq     %xmm11,%xmm8
15928  DB  243,68,15,127,68,208,16             ; movdqu        %xmm8,0x10(%rax,%rdx,8)
15929  DB  72,173                              ; lods          %ds:(%rsi),%rax
15930  DB  255,224                             ; jmpq          *%rax
15931  DB  102,68,15,214,12,208                ; movq          %xmm9,(%rax,%rdx,8)
15932  DB  73,131,248,1                        ; cmp           $0x1,%r8
15933  DB  116,240                             ; je            3e3c <_sk_store_f16_sse41+0x13c>
15934  DB  102,68,15,23,76,208,8               ; movhpd        %xmm9,0x8(%rax,%rdx,8)
15935  DB  73,131,248,3                        ; cmp           $0x3,%r8
15936  DB  114,227                             ; jb            3e3c <_sk_store_f16_sse41+0x13c>
15937  DB  102,69,15,106,195                   ; punpckhdq     %xmm11,%xmm8
15938  DB  102,68,15,214,68,208,16             ; movq          %xmm8,0x10(%rax,%rdx,8)
15939  DB  235,213                             ; jmp           3e3c <_sk_store_f16_sse41+0x13c>
15940
15941PUBLIC _sk_load_u16_be_sse41
15942_sk_load_u16_be_sse41 LABEL PROC
15943  DB  72,173                              ; lods          %ds:(%rsi),%rax
15944  DB  76,139,8                            ; mov           (%rax),%r9
15945  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
15946  DB  77,133,192                          ; test          %r8,%r8
15947  DB  15,133,185,0,0,0                    ; jne           3f36 <_sk_load_u16_be_sse41+0xcf>
15948  DB  102,65,15,16,4,65                   ; movupd        (%r9,%rax,2),%xmm0
15949  DB  243,65,15,111,76,65,16              ; movdqu        0x10(%r9,%rax,2),%xmm1
15950  DB  102,15,40,208                       ; movapd        %xmm0,%xmm2
15951  DB  102,15,97,209                       ; punpcklwd     %xmm1,%xmm2
15952  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
15953  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
15954  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
15955  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
15956  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
15957  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
15958  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
15959  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
15960  DB  102,15,235,200                      ; por           %xmm0,%xmm1
15961  DB  102,15,56,51,193                    ; pmovzxwd      %xmm1,%xmm0
15962  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
15963  DB  68,15,40,5,167,33,0,0               ; movaps        0x21a7(%rip),%xmm8        # 6070 <_sk_callback_sse41+0xef0>
15964  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
15965  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
15966  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
15967  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
15968  DB  102,15,235,217                      ; por           %xmm1,%xmm3
15969  DB  102,15,56,51,203                    ; pmovzxwd      %xmm3,%xmm1
15970  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
15971  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
15972  DB  102,68,15,111,202                   ; movdqa        %xmm2,%xmm9
15973  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
15974  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
15975  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
15976  DB  102,65,15,235,209                   ; por           %xmm9,%xmm2
15977  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
15978  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
15979  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
15980  DB  102,68,15,111,203                   ; movdqa        %xmm3,%xmm9
15981  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
15982  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
15983  DB  102,65,15,235,217                   ; por           %xmm9,%xmm3
15984  DB  102,15,56,51,219                    ; pmovzxwd      %xmm3,%xmm3
15985  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
15986  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
15987  DB  72,173                              ; lods          %ds:(%rsi),%rax
15988  DB  255,224                             ; jmpq          *%rax
15989  DB  242,65,15,16,4,65                   ; movsd         (%r9,%rax,2),%xmm0
15990  DB  73,131,248,1                        ; cmp           $0x1,%r8
15991  DB  117,13                              ; jne           3f4f <_sk_load_u16_be_sse41+0xe8>
15992  DB  243,15,126,192                      ; movq          %xmm0,%xmm0
15993  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15994  DB  233,59,255,255,255                  ; jmpq          3e8a <_sk_load_u16_be_sse41+0x23>
15995  DB  102,65,15,22,68,65,8                ; movhpd        0x8(%r9,%rax,2),%xmm0
15996  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
15997  DB  73,131,248,3                        ; cmp           $0x3,%r8
15998  DB  15,130,38,255,255,255               ; jb            3e8a <_sk_load_u16_be_sse41+0x23>
15999  DB  243,65,15,126,76,65,16              ; movq          0x10(%r9,%rax,2),%xmm1
16000  DB  233,26,255,255,255                  ; jmpq          3e8a <_sk_load_u16_be_sse41+0x23>
16001
16002PUBLIC _sk_load_rgb_u16_be_sse41
16003_sk_load_rgb_u16_be_sse41 LABEL PROC
16004  DB  72,173                              ; lods          %ds:(%rsi),%rax
16005  DB  76,139,8                            ; mov           (%rax),%r9
16006  DB  72,141,4,82                         ; lea           (%rdx,%rdx,2),%rax
16007  DB  77,133,192                          ; test          %r8,%r8
16008  DB  15,133,170,0,0,0                    ; jne           402c <_sk_load_rgb_u16_be_sse41+0xbc>
16009  DB  243,65,15,111,20,65                 ; movdqu        (%r9,%rax,2),%xmm2
16010  DB  243,65,15,111,92,65,8               ; movdqu        0x8(%r9,%rax,2),%xmm3
16011  DB  102,15,115,219,4                    ; psrldq        $0x4,%xmm3
16012  DB  102,15,111,194                      ; movdqa        %xmm2,%xmm0
16013  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
16014  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
16015  DB  102,15,115,217,6                    ; psrldq        $0x6,%xmm1
16016  DB  102,15,97,211                       ; punpcklwd     %xmm3,%xmm2
16017  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
16018  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
16019  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
16020  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
16021  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
16022  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
16023  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
16024  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
16025  DB  102,15,235,200                      ; por           %xmm0,%xmm1
16026  DB  102,15,56,51,193                    ; pmovzxwd      %xmm1,%xmm0
16027  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
16028  DB  68,15,40,5,159,32,0,0               ; movaps        0x209f(%rip),%xmm8        # 6080 <_sk_callback_sse41+0xf00>
16029  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16030  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
16031  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
16032  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
16033  DB  102,15,235,217                      ; por           %xmm1,%xmm3
16034  DB  102,15,56,51,203                    ; pmovzxwd      %xmm3,%xmm1
16035  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
16036  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16037  DB  102,15,111,218                      ; movdqa        %xmm2,%xmm3
16038  DB  102,15,113,243,8                    ; psllw         $0x8,%xmm3
16039  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
16040  DB  102,15,235,211                      ; por           %xmm3,%xmm2
16041  DB  102,15,56,51,210                    ; pmovzxwd      %xmm2,%xmm2
16042  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
16043  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16044  DB  72,173                              ; lods          %ds:(%rsi),%rax
16045  DB  15,40,29,102,32,0,0                 ; movaps        0x2066(%rip),%xmm3        # 6090 <_sk_callback_sse41+0xf10>
16046  DB  255,224                             ; jmpq          *%rax
16047  DB  102,65,15,110,20,65                 ; movd          (%r9,%rax,2),%xmm2
16048  DB  102,65,15,196,84,65,4,2             ; pinsrw        $0x2,0x4(%r9,%rax,2),%xmm2
16049  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
16050  DB  73,131,248,1                        ; cmp           $0x1,%r8
16051  DB  117,13                              ; jne           4051 <_sk_load_rgb_u16_be_sse41+0xe1>
16052  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
16053  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
16054  DB  233,85,255,255,255                  ; jmpq          3fa6 <_sk_load_rgb_u16_be_sse41+0x36>
16055  DB  102,65,15,110,68,65,6               ; movd          0x6(%r9,%rax,2),%xmm0
16056  DB  102,65,15,196,68,65,10,2            ; pinsrw        $0x2,0xa(%r9,%rax,2),%xmm0
16057  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
16058  DB  73,131,248,3                        ; cmp           $0x3,%r8
16059  DB  114,24                              ; jb            4082 <_sk_load_rgb_u16_be_sse41+0x112>
16060  DB  102,65,15,110,92,65,12              ; movd          0xc(%r9,%rax,2),%xmm3
16061  DB  102,65,15,196,92,65,16,2            ; pinsrw        $0x2,0x10(%r9,%rax,2),%xmm3
16062  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
16063  DB  233,36,255,255,255                  ; jmpq          3fa6 <_sk_load_rgb_u16_be_sse41+0x36>
16064  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
16065  DB  233,27,255,255,255                  ; jmpq          3fa6 <_sk_load_rgb_u16_be_sse41+0x36>
16066
16067PUBLIC _sk_store_u16_be_sse41
16068_sk_store_u16_be_sse41 LABEL PROC
16069  DB  72,173                              ; lods          %ds:(%rsi),%rax
16070  DB  76,139,8                            ; mov           (%rax),%r9
16071  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
16072  DB  68,15,40,21,0,32,0,0                ; movaps        0x2000(%rip),%xmm10        # 60a0 <_sk_callback_sse41+0xf20>
16073  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16074  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
16075  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
16076  DB  102,69,15,56,43,192                 ; packusdw      %xmm8,%xmm8
16077  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
16078  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
16079  DB  102,65,15,113,208,8                 ; psrlw         $0x8,%xmm8
16080  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
16081  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
16082  DB  69,15,89,202                        ; mulps         %xmm10,%xmm9
16083  DB  102,69,15,91,217                    ; cvtps2dq      %xmm9,%xmm11
16084  DB  102,69,15,56,43,219                 ; packusdw      %xmm11,%xmm11
16085  DB  102,69,15,111,203                   ; movdqa        %xmm11,%xmm9
16086  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
16087  DB  102,65,15,113,211,8                 ; psrlw         $0x8,%xmm11
16088  DB  102,69,15,235,217                   ; por           %xmm9,%xmm11
16089  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
16090  DB  69,15,89,202                        ; mulps         %xmm10,%xmm9
16091  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
16092  DB  102,69,15,56,43,201                 ; packusdw      %xmm9,%xmm9
16093  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
16094  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
16095  DB  102,65,15,113,209,8                 ; psrlw         $0x8,%xmm9
16096  DB  102,69,15,235,204                   ; por           %xmm12,%xmm9
16097  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
16098  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
16099  DB  102,69,15,56,43,210                 ; packusdw      %xmm10,%xmm10
16100  DB  102,69,15,111,226                   ; movdqa        %xmm10,%xmm12
16101  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
16102  DB  102,65,15,113,210,8                 ; psrlw         $0x8,%xmm10
16103  DB  102,69,15,235,212                   ; por           %xmm12,%xmm10
16104  DB  102,69,15,97,195                    ; punpcklwd     %xmm11,%xmm8
16105  DB  102,69,15,97,202                    ; punpcklwd     %xmm10,%xmm9
16106  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
16107  DB  102,69,15,98,209                    ; punpckldq     %xmm9,%xmm10
16108  DB  77,133,192                          ; test          %r8,%r8
16109  DB  117,21                              ; jne           416e <_sk_store_u16_be_sse41+0xe3>
16110  DB  69,15,17,20,65                      ; movups        %xmm10,(%r9,%rax,2)
16111  DB  102,69,15,106,193                   ; punpckhdq     %xmm9,%xmm8
16112  DB  243,69,15,127,68,65,16              ; movdqu        %xmm8,0x10(%r9,%rax,2)
16113  DB  72,173                              ; lods          %ds:(%rsi),%rax
16114  DB  255,224                             ; jmpq          *%rax
16115  DB  102,69,15,214,20,65                 ; movq          %xmm10,(%r9,%rax,2)
16116  DB  73,131,248,1                        ; cmp           $0x1,%r8
16117  DB  116,240                             ; je            416a <_sk_store_u16_be_sse41+0xdf>
16118  DB  102,69,15,23,84,65,8                ; movhpd        %xmm10,0x8(%r9,%rax,2)
16119  DB  73,131,248,3                        ; cmp           $0x3,%r8
16120  DB  114,227                             ; jb            416a <_sk_store_u16_be_sse41+0xdf>
16121  DB  102,69,15,106,193                   ; punpckhdq     %xmm9,%xmm8
16122  DB  102,69,15,214,68,65,16              ; movq          %xmm8,0x10(%r9,%rax,2)
16123  DB  235,213                             ; jmp           416a <_sk_store_u16_be_sse41+0xdf>
16124
16125PUBLIC _sk_load_f32_sse41
16126_sk_load_f32_sse41 LABEL PROC
16127  DB  72,173                              ; lods          %ds:(%rsi),%rax
16128  DB  76,139,16                           ; mov           (%rax),%r10
16129  DB  76,141,12,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r9
16130  DB  72,137,208                          ; mov           %rdx,%rax
16131  DB  72,193,224,4                        ; shl           $0x4,%rax
16132  DB  69,15,16,4,2                        ; movups        (%r10,%rax,1),%xmm8
16133  DB  77,133,192                          ; test          %r8,%r8
16134  DB  117,66                              ; jne           41f5 <_sk_load_f32_sse41+0x60>
16135  DB  67,15,16,68,138,16                  ; movups        0x10(%r10,%r9,4),%xmm0
16136  DB  67,15,16,92,138,32                  ; movups        0x20(%r10,%r9,4),%xmm3
16137  DB  71,15,16,76,138,48                  ; movups        0x30(%r10,%r9,4),%xmm9
16138  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
16139  DB  15,20,208                           ; unpcklps      %xmm0,%xmm2
16140  DB  15,40,203                           ; movaps        %xmm3,%xmm1
16141  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
16142  DB  68,15,21,192                        ; unpckhps      %xmm0,%xmm8
16143  DB  65,15,21,217                        ; unpckhps      %xmm9,%xmm3
16144  DB  15,40,194                           ; movaps        %xmm2,%xmm0
16145  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
16146  DB  15,18,202                           ; movhlps       %xmm2,%xmm1
16147  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
16148  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
16149  DB  65,15,18,216                        ; movhlps       %xmm8,%xmm3
16150  DB  72,173                              ; lods          %ds:(%rsi),%rax
16151  DB  255,224                             ; jmpq          *%rax
16152  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
16153  DB  73,131,248,1                        ; cmp           $0x1,%r8
16154  DB  117,8                               ; jne           4207 <_sk_load_f32_sse41+0x72>
16155  DB  15,87,219                           ; xorps         %xmm3,%xmm3
16156  DB  15,87,192                           ; xorps         %xmm0,%xmm0
16157  DB  235,190                             ; jmp           41c5 <_sk_load_f32_sse41+0x30>
16158  DB  67,15,16,68,138,16                  ; movups        0x10(%r10,%r9,4),%xmm0
16159  DB  73,131,248,3                        ; cmp           $0x3,%r8
16160  DB  114,8                               ; jb            421b <_sk_load_f32_sse41+0x86>
16161  DB  67,15,16,92,138,32                  ; movups        0x20(%r10,%r9,4),%xmm3
16162  DB  235,170                             ; jmp           41c5 <_sk_load_f32_sse41+0x30>
16163  DB  15,87,219                           ; xorps         %xmm3,%xmm3
16164  DB  235,165                             ; jmp           41c5 <_sk_load_f32_sse41+0x30>
16165
16166PUBLIC _sk_store_f32_sse41
16167_sk_store_f32_sse41 LABEL PROC
16168  DB  72,173                              ; lods          %ds:(%rsi),%rax
16169  DB  76,139,16                           ; mov           (%rax),%r10
16170  DB  76,141,12,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r9
16171  DB  72,137,208                          ; mov           %rdx,%rax
16172  DB  72,193,224,4                        ; shl           $0x4,%rax
16173  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
16174  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
16175  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
16176  DB  68,15,20,195                        ; unpcklps      %xmm3,%xmm8
16177  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
16178  DB  68,15,21,209                        ; unpckhps      %xmm1,%xmm10
16179  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
16180  DB  68,15,21,219                        ; unpckhps      %xmm3,%xmm11
16181  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
16182  DB  102,69,15,20,224                    ; unpcklpd      %xmm8,%xmm12
16183  DB  69,15,18,193                        ; movhlps       %xmm9,%xmm8
16184  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
16185  DB  102,69,15,20,203                    ; unpcklpd      %xmm11,%xmm9
16186  DB  102,69,15,17,36,2                   ; movupd        %xmm12,(%r10,%rax,1)
16187  DB  77,133,192                          ; test          %r8,%r8
16188  DB  117,29                              ; jne           4292 <_sk_store_f32_sse41+0x72>
16189  DB  102,69,15,21,211                    ; unpckhpd      %xmm11,%xmm10
16190  DB  71,15,17,68,138,16                  ; movups        %xmm8,0x10(%r10,%r9,4)
16191  DB  102,71,15,17,76,138,32              ; movupd        %xmm9,0x20(%r10,%r9,4)
16192  DB  102,71,15,17,84,138,48              ; movupd        %xmm10,0x30(%r10,%r9,4)
16193  DB  72,173                              ; lods          %ds:(%rsi),%rax
16194  DB  255,224                             ; jmpq          *%rax
16195  DB  73,131,248,1                        ; cmp           $0x1,%r8
16196  DB  116,246                             ; je            428e <_sk_store_f32_sse41+0x6e>
16197  DB  71,15,17,68,138,16                  ; movups        %xmm8,0x10(%r10,%r9,4)
16198  DB  73,131,248,3                        ; cmp           $0x3,%r8
16199  DB  114,234                             ; jb            428e <_sk_store_f32_sse41+0x6e>
16200  DB  102,71,15,17,76,138,32              ; movupd        %xmm9,0x20(%r10,%r9,4)
16201  DB  235,225                             ; jmp           428e <_sk_store_f32_sse41+0x6e>
16202
16203PUBLIC _sk_clamp_x_sse41
16204_sk_clamp_x_sse41 LABEL PROC
16205  DB  72,173                              ; lods          %ds:(%rsi),%rax
16206  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16207  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
16208  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
16209  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16210  DB  102,15,118,192                      ; pcmpeqd       %xmm0,%xmm0
16211  DB  102,65,15,254,193                   ; paddd         %xmm9,%xmm0
16212  DB  68,15,93,192                        ; minps         %xmm0,%xmm8
16213  DB  72,173                              ; lods          %ds:(%rsi),%rax
16214  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16215  DB  255,224                             ; jmpq          *%rax
16216
16217PUBLIC _sk_clamp_y_sse41
16218_sk_clamp_y_sse41 LABEL PROC
16219  DB  72,173                              ; lods          %ds:(%rsi),%rax
16220  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16221  DB  68,15,95,193                        ; maxps         %xmm1,%xmm8
16222  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
16223  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16224  DB  102,15,118,201                      ; pcmpeqd       %xmm1,%xmm1
16225  DB  102,65,15,254,201                   ; paddd         %xmm9,%xmm1
16226  DB  68,15,93,193                        ; minps         %xmm1,%xmm8
16227  DB  72,173                              ; lods          %ds:(%rsi),%rax
16228  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
16229  DB  255,224                             ; jmpq          *%rax
16230
16231PUBLIC _sk_repeat_x_sse41
16232_sk_repeat_x_sse41 LABEL PROC
16233  DB  72,173                              ; lods          %ds:(%rsi),%rax
16234  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
16235  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
16236  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16237  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
16238  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
16239  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
16240  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
16241  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
16242  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
16243  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
16244  DB  65,15,93,193                        ; minps         %xmm9,%xmm0
16245  DB  72,173                              ; lods          %ds:(%rsi),%rax
16246  DB  255,224                             ; jmpq          *%rax
16247
16248PUBLIC _sk_repeat_y_sse41
16249_sk_repeat_y_sse41 LABEL PROC
16250  DB  72,173                              ; lods          %ds:(%rsi),%rax
16251  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
16252  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
16253  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16254  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
16255  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
16256  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
16257  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
16258  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
16259  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
16260  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
16261  DB  65,15,93,201                        ; minps         %xmm9,%xmm1
16262  DB  72,173                              ; lods          %ds:(%rsi),%rax
16263  DB  255,224                             ; jmpq          *%rax
16264
16265PUBLIC _sk_mirror_x_sse41
16266_sk_mirror_x_sse41 LABEL PROC
16267  DB  72,173                              ; lods          %ds:(%rsi),%rax
16268  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
16269  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
16270  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
16271  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16272  DB  65,15,92,194                        ; subps         %xmm10,%xmm0
16273  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
16274  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
16275  DB  243,68,15,89,13,204,32,0,0          ; mulss         0x20cc(%rip),%xmm9        # 6470 <_sk_callback_sse41+0x12f0>
16276  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16277  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
16278  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
16279  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
16280  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
16281  DB  65,15,92,194                        ; subps         %xmm10,%xmm0
16282  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16283  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
16284  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
16285  DB  102,69,15,118,192                   ; pcmpeqd       %xmm8,%xmm8
16286  DB  102,69,15,254,194                   ; paddd         %xmm10,%xmm8
16287  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
16288  DB  72,173                              ; lods          %ds:(%rsi),%rax
16289  DB  255,224                             ; jmpq          *%rax
16290
16291PUBLIC _sk_mirror_y_sse41
16292_sk_mirror_y_sse41 LABEL PROC
16293  DB  72,173                              ; lods          %ds:(%rsi),%rax
16294  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
16295  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
16296  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
16297  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16298  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
16299  DB  243,69,15,88,192                    ; addss         %xmm8,%xmm8
16300  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
16301  DB  243,68,15,89,13,105,32,0,0          ; mulss         0x2069(%rip),%xmm9        # 6474 <_sk_callback_sse41+0x12f4>
16302  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16303  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
16304  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
16305  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
16306  DB  65,15,92,201                        ; subps         %xmm9,%xmm1
16307  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
16308  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16309  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
16310  DB  65,15,84,200                        ; andps         %xmm8,%xmm1
16311  DB  102,69,15,118,192                   ; pcmpeqd       %xmm8,%xmm8
16312  DB  102,69,15,254,194                   ; paddd         %xmm10,%xmm8
16313  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
16314  DB  72,173                              ; lods          %ds:(%rsi),%rax
16315  DB  255,224                             ; jmpq          *%rax
16316
16317PUBLIC _sk_clamp_x_1_sse41
16318_sk_clamp_x_1_sse41 LABEL PROC
16319  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16320  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
16321  DB  68,15,93,5,91,28,0,0                ; minps         0x1c5b(%rip),%xmm8        # 60b0 <_sk_callback_sse41+0xf30>
16322  DB  72,173                              ; lods          %ds:(%rsi),%rax
16323  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16324  DB  255,224                             ; jmpq          *%rax
16325
16326PUBLIC _sk_repeat_x_1_sse41
16327_sk_repeat_x_1_sse41 LABEL PROC
16328  DB  102,68,15,58,8,192,1                ; roundps       $0x1,%xmm0,%xmm8
16329  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
16330  DB  72,173                              ; lods          %ds:(%rsi),%rax
16331  DB  255,224                             ; jmpq          *%rax
16332
16333PUBLIC _sk_mirror_x_1_sse41
16334_sk_mirror_x_1_sse41 LABEL PROC
16335  DB  68,15,40,5,76,28,0,0                ; movaps        0x1c4c(%rip),%xmm8        # 60c0 <_sk_callback_sse41+0xf40>
16336  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
16337  DB  68,15,40,13,80,28,0,0               ; movaps        0x1c50(%rip),%xmm9        # 60d0 <_sk_callback_sse41+0xf50>
16338  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
16339  DB  102,69,15,58,8,201,1                ; roundps       $0x1,%xmm9,%xmm9
16340  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
16341  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
16342  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
16343  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16344  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
16345  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
16346  DB  72,173                              ; lods          %ds:(%rsi),%rax
16347  DB  255,224                             ; jmpq          *%rax
16348
16349PUBLIC _sk_luminance_to_alpha_sse41
16350_sk_luminance_to_alpha_sse41 LABEL PROC
16351  DB  15,40,218                           ; movaps        %xmm2,%xmm3
16352  DB  15,89,5,47,28,0,0                   ; mulps         0x1c2f(%rip),%xmm0        # 60e0 <_sk_callback_sse41+0xf60>
16353  DB  15,89,13,56,28,0,0                  ; mulps         0x1c38(%rip),%xmm1        # 60f0 <_sk_callback_sse41+0xf70>
16354  DB  15,88,200                           ; addps         %xmm0,%xmm1
16355  DB  15,89,29,62,28,0,0                  ; mulps         0x1c3e(%rip),%xmm3        # 6100 <_sk_callback_sse41+0xf80>
16356  DB  15,88,217                           ; addps         %xmm1,%xmm3
16357  DB  72,173                              ; lods          %ds:(%rsi),%rax
16358  DB  15,87,192                           ; xorps         %xmm0,%xmm0
16359  DB  15,87,201                           ; xorps         %xmm1,%xmm1
16360  DB  15,87,210                           ; xorps         %xmm2,%xmm2
16361  DB  255,224                             ; jmpq          *%rax
16362
16363PUBLIC _sk_matrix_2x3_sse41
16364_sk_matrix_2x3_sse41 LABEL PROC
16365  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
16366  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16367  DB  72,173                              ; lods          %ds:(%rsi),%rax
16368  DB  243,15,16,0                         ; movss         (%rax),%xmm0
16369  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
16370  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
16371  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
16372  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16373  DB  243,68,15,16,88,16                  ; movss         0x10(%rax),%xmm11
16374  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16375  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16376  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16377  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16378  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
16379  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
16380  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
16381  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16382  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
16383  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16384  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16385  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16386  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16387  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
16388  DB  72,173                              ; lods          %ds:(%rsi),%rax
16389  DB  255,224                             ; jmpq          *%rax
16390
16391PUBLIC _sk_matrix_3x4_sse41
16392_sk_matrix_3x4_sse41 LABEL PROC
16393  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
16394  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16395  DB  72,173                              ; lods          %ds:(%rsi),%rax
16396  DB  243,15,16,0                         ; movss         (%rax),%xmm0
16397  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
16398  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
16399  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
16400  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16401  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
16402  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16403  DB  243,68,15,16,96,36                  ; movss         0x24(%rax),%xmm12
16404  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
16405  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
16406  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
16407  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16408  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16409  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16410  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
16411  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
16412  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
16413  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16414  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
16415  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16416  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
16417  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
16418  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
16419  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
16420  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16421  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16422  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16423  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
16424  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
16425  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16426  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
16427  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16428  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
16429  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
16430  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
16431  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
16432  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
16433  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
16434  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
16435  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
16436  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
16437  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16438  DB  72,173                              ; lods          %ds:(%rsi),%rax
16439  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
16440  DB  255,224                             ; jmpq          *%rax
16441
16442PUBLIC _sk_matrix_4x5_sse41
16443_sk_matrix_4x5_sse41 LABEL PROC
16444  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
16445  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16446  DB  72,173                              ; lods          %ds:(%rsi),%rax
16447  DB  243,15,16,0                         ; movss         (%rax),%xmm0
16448  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
16449  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
16450  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
16451  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16452  DB  243,68,15,16,88,32                  ; movss         0x20(%rax),%xmm11
16453  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16454  DB  243,68,15,16,96,48                  ; movss         0x30(%rax),%xmm12
16455  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
16456  DB  243,68,15,16,104,64                 ; movss         0x40(%rax),%xmm13
16457  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
16458  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
16459  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
16460  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
16461  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
16462  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16463  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16464  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16465  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
16466  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
16467  DB  243,68,15,16,80,20                  ; movss         0x14(%rax),%xmm10
16468  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16469  DB  243,68,15,16,88,36                  ; movss         0x24(%rax),%xmm11
16470  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16471  DB  243,68,15,16,96,52                  ; movss         0x34(%rax),%xmm12
16472  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
16473  DB  243,68,15,16,104,68                 ; movss         0x44(%rax),%xmm13
16474  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
16475  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
16476  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
16477  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
16478  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
16479  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16480  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16481  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16482  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
16483  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
16484  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16485  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
16486  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16487  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
16488  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
16489  DB  243,68,15,16,104,56                 ; movss         0x38(%rax),%xmm13
16490  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
16491  DB  243,68,15,16,112,72                 ; movss         0x48(%rax),%xmm14
16492  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
16493  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
16494  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
16495  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
16496  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
16497  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
16498  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
16499  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
16500  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16501  DB  243,68,15,16,88,12                  ; movss         0xc(%rax),%xmm11
16502  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16503  DB  243,68,15,16,96,28                  ; movss         0x1c(%rax),%xmm12
16504  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
16505  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
16506  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
16507  DB  243,68,15,16,112,60                 ; movss         0x3c(%rax),%xmm14
16508  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
16509  DB  243,68,15,16,120,76                 ; movss         0x4c(%rax),%xmm15
16510  DB  69,15,198,255,0                     ; shufps        $0x0,%xmm15,%xmm15
16511  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
16512  DB  69,15,88,247                        ; addps         %xmm15,%xmm14
16513  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
16514  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
16515  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
16516  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
16517  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
16518  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
16519  DB  72,173                              ; lods          %ds:(%rsi),%rax
16520  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
16521  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
16522  DB  255,224                             ; jmpq          *%rax
16523
16524PUBLIC _sk_matrix_4x3_sse41
16525_sk_matrix_4x3_sse41 LABEL PROC
16526  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
16527  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16528  DB  72,173                              ; lods          %ds:(%rsi),%rax
16529  DB  243,15,16,0                         ; movss         (%rax),%xmm0
16530  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
16531  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
16532  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
16533  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16534  DB  243,15,16,88,32                     ; movss         0x20(%rax),%xmm3
16535  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16536  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
16537  DB  15,88,211                           ; addps         %xmm3,%xmm2
16538  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16539  DB  15,88,194                           ; addps         %xmm2,%xmm0
16540  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
16541  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
16542  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16543  DB  243,15,16,88,36                     ; movss         0x24(%rax),%xmm3
16544  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16545  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
16546  DB  15,88,211                           ; addps         %xmm3,%xmm2
16547  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16548  DB  15,88,202                           ; addps         %xmm2,%xmm1
16549  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
16550  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16551  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
16552  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16553  DB  243,68,15,16,80,40                  ; movss         0x28(%rax),%xmm10
16554  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16555  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
16556  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
16557  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16558  DB  15,88,211                           ; addps         %xmm3,%xmm2
16559  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
16560  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16561  DB  243,68,15,16,80,28                  ; movss         0x1c(%rax),%xmm10
16562  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16563  DB  243,68,15,16,88,44                  ; movss         0x2c(%rax),%xmm11
16564  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16565  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
16566  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16567  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16568  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
16569  DB  72,173                              ; lods          %ds:(%rsi),%rax
16570  DB  255,224                             ; jmpq          *%rax
16571
16572PUBLIC _sk_matrix_perspective_sse41
16573_sk_matrix_perspective_sse41 LABEL PROC
16574  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16575  DB  72,173                              ; lods          %ds:(%rsi),%rax
16576  DB  243,15,16,0                         ; movss         (%rax),%xmm0
16577  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
16578  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
16579  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16580  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
16581  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16582  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
16583  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
16584  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16585  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
16586  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
16587  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16588  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
16589  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16590  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
16591  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16592  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
16593  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16594  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
16595  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
16596  DB  243,68,15,16,80,24                  ; movss         0x18(%rax),%xmm10
16597  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
16598  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
16599  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
16600  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
16601  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
16602  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
16603  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
16604  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
16605  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
16606  DB  65,15,83,202                        ; rcpps         %xmm10,%xmm1
16607  DB  15,89,193                           ; mulps         %xmm1,%xmm0
16608  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
16609  DB  72,173                              ; lods          %ds:(%rsi),%rax
16610  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
16611  DB  255,224                             ; jmpq          *%rax
16612
16613PUBLIC _sk_evenly_spaced_gradient_sse41
16614_sk_evenly_spaced_gradient_sse41 LABEL PROC
16615  DB  65,87                               ; push          %r15
16616  DB  65,86                               ; push          %r14
16617  DB  83                                  ; push          %rbx
16618  DB  72,173                              ; lods          %ds:(%rsi),%rax
16619  DB  72,139,24                           ; mov           (%rax),%rbx
16620  DB  76,139,112,8                        ; mov           0x8(%rax),%r14
16621  DB  72,255,203                          ; dec           %rbx
16622  DB  120,7                               ; js            4900 <_sk_evenly_spaced_gradient_sse41+0x1a>
16623  DB  243,72,15,42,203                    ; cvtsi2ss      %rbx,%xmm1
16624  DB  235,21                              ; jmp           4915 <_sk_evenly_spaced_gradient_sse41+0x2f>
16625  DB  73,137,217                          ; mov           %rbx,%r9
16626  DB  73,209,233                          ; shr           %r9
16627  DB  131,227,1                           ; and           $0x1,%ebx
16628  DB  76,9,203                            ; or            %r9,%rbx
16629  DB  243,72,15,42,203                    ; cvtsi2ss      %rbx,%xmm1
16630  DB  243,15,88,201                       ; addss         %xmm1,%xmm1
16631  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
16632  DB  15,89,200                           ; mulps         %xmm0,%xmm1
16633  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
16634  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
16635  DB  69,137,202                          ; mov           %r9d,%r10d
16636  DB  73,193,233,32                       ; shr           $0x20,%r9
16637  DB  102,73,15,126,203                   ; movq          %xmm1,%r11
16638  DB  69,137,223                          ; mov           %r11d,%r15d
16639  DB  73,193,235,32                       ; shr           $0x20,%r11
16640  DB  243,71,15,16,4,190                  ; movss         (%r14,%r15,4),%xmm8
16641  DB  102,71,15,58,33,4,158,16            ; insertps      $0x10,(%r14,%r11,4),%xmm8
16642  DB  243,67,15,16,12,150                 ; movss         (%r14,%r10,4),%xmm1
16643  DB  102,68,15,58,33,193,32              ; insertps      $0x20,%xmm1,%xmm8
16644  DB  243,67,15,16,12,142                 ; movss         (%r14,%r9,4),%xmm1
16645  DB  102,68,15,58,33,193,48              ; insertps      $0x30,%xmm1,%xmm8
16646  DB  72,139,88,40                        ; mov           0x28(%rax),%rbx
16647  DB  243,70,15,16,12,187                 ; movss         (%rbx,%r15,4),%xmm9
16648  DB  102,70,15,58,33,12,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm9
16649  DB  243,66,15,16,12,147                 ; movss         (%rbx,%r10,4),%xmm1
16650  DB  102,68,15,58,33,201,32              ; insertps      $0x20,%xmm1,%xmm9
16651  DB  243,66,15,16,12,139                 ; movss         (%rbx,%r9,4),%xmm1
16652  DB  102,68,15,58,33,201,48              ; insertps      $0x30,%xmm1,%xmm9
16653  DB  72,139,88,16                        ; mov           0x10(%rax),%rbx
16654  DB  243,66,15,16,12,187                 ; movss         (%rbx,%r15,4),%xmm1
16655  DB  102,66,15,58,33,12,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm1
16656  DB  243,66,15,16,20,147                 ; movss         (%rbx,%r10,4),%xmm2
16657  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
16658  DB  243,66,15,16,20,139                 ; movss         (%rbx,%r9,4),%xmm2
16659  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
16660  DB  72,139,88,48                        ; mov           0x30(%rax),%rbx
16661  DB  243,70,15,16,20,187                 ; movss         (%rbx,%r15,4),%xmm10
16662  DB  102,70,15,58,33,20,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm10
16663  DB  243,66,15,16,20,147                 ; movss         (%rbx,%r10,4),%xmm2
16664  DB  102,68,15,58,33,210,32              ; insertps      $0x20,%xmm2,%xmm10
16665  DB  243,66,15,16,20,139                 ; movss         (%rbx,%r9,4),%xmm2
16666  DB  102,68,15,58,33,210,48              ; insertps      $0x30,%xmm2,%xmm10
16667  DB  72,139,88,24                        ; mov           0x18(%rax),%rbx
16668  DB  243,66,15,16,20,187                 ; movss         (%rbx,%r15,4),%xmm2
16669  DB  102,66,15,58,33,20,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm2
16670  DB  243,66,15,16,28,147                 ; movss         (%rbx,%r10,4),%xmm3
16671  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
16672  DB  243,66,15,16,28,139                 ; movss         (%rbx,%r9,4),%xmm3
16673  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
16674  DB  72,139,88,56                        ; mov           0x38(%rax),%rbx
16675  DB  243,70,15,16,28,187                 ; movss         (%rbx,%r15,4),%xmm11
16676  DB  102,70,15,58,33,28,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm11
16677  DB  243,66,15,16,28,147                 ; movss         (%rbx,%r10,4),%xmm3
16678  DB  102,68,15,58,33,219,32              ; insertps      $0x20,%xmm3,%xmm11
16679  DB  243,66,15,16,28,139                 ; movss         (%rbx,%r9,4),%xmm3
16680  DB  102,68,15,58,33,219,48              ; insertps      $0x30,%xmm3,%xmm11
16681  DB  72,139,88,32                        ; mov           0x20(%rax),%rbx
16682  DB  243,66,15,16,28,187                 ; movss         (%rbx,%r15,4),%xmm3
16683  DB  102,66,15,58,33,28,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm3
16684  DB  243,70,15,16,36,147                 ; movss         (%rbx,%r10,4),%xmm12
16685  DB  102,65,15,58,33,220,32              ; insertps      $0x20,%xmm12,%xmm3
16686  DB  243,70,15,16,36,139                 ; movss         (%rbx,%r9,4),%xmm12
16687  DB  102,65,15,58,33,220,48              ; insertps      $0x30,%xmm12,%xmm3
16688  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
16689  DB  243,70,15,16,36,184                 ; movss         (%rax,%r15,4),%xmm12
16690  DB  102,70,15,58,33,36,152,16           ; insertps      $0x10,(%rax,%r11,4),%xmm12
16691  DB  243,70,15,16,44,144                 ; movss         (%rax,%r10,4),%xmm13
16692  DB  102,69,15,58,33,229,32              ; insertps      $0x20,%xmm13,%xmm12
16693  DB  243,70,15,16,44,136                 ; movss         (%rax,%r9,4),%xmm13
16694  DB  102,69,15,58,33,229,48              ; insertps      $0x30,%xmm13,%xmm12
16695  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
16696  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
16697  DB  15,89,200                           ; mulps         %xmm0,%xmm1
16698  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
16699  DB  15,89,208                           ; mulps         %xmm0,%xmm2
16700  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
16701  DB  15,89,216                           ; mulps         %xmm0,%xmm3
16702  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
16703  DB  72,173                              ; lods          %ds:(%rsi),%rax
16704  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16705  DB  91                                  ; pop           %rbx
16706  DB  65,94                               ; pop           %r14
16707  DB  65,95                               ; pop           %r15
16708  DB  255,224                             ; jmpq          *%rax
16709
16710PUBLIC _sk_gauss_a_to_rgba_sse41
16711_sk_gauss_a_to_rgba_sse41 LABEL PROC
16712  DB  15,40,5,77,22,0,0                   ; movaps        0x164d(%rip),%xmm0        # 6110 <_sk_callback_sse41+0xf90>
16713  DB  15,89,195                           ; mulps         %xmm3,%xmm0
16714  DB  15,88,5,83,22,0,0                   ; addps         0x1653(%rip),%xmm0        # 6120 <_sk_callback_sse41+0xfa0>
16715  DB  15,89,195                           ; mulps         %xmm3,%xmm0
16716  DB  15,88,5,89,22,0,0                   ; addps         0x1659(%rip),%xmm0        # 6130 <_sk_callback_sse41+0xfb0>
16717  DB  15,89,195                           ; mulps         %xmm3,%xmm0
16718  DB  15,88,5,95,22,0,0                   ; addps         0x165f(%rip),%xmm0        # 6140 <_sk_callback_sse41+0xfc0>
16719  DB  15,89,195                           ; mulps         %xmm3,%xmm0
16720  DB  15,88,5,101,22,0,0                  ; addps         0x1665(%rip),%xmm0        # 6150 <_sk_callback_sse41+0xfd0>
16721  DB  72,173                              ; lods          %ds:(%rsi),%rax
16722  DB  15,40,200                           ; movaps        %xmm0,%xmm1
16723  DB  15,40,208                           ; movaps        %xmm0,%xmm2
16724  DB  15,40,216                           ; movaps        %xmm0,%xmm3
16725  DB  255,224                             ; jmpq          *%rax
16726
16727PUBLIC _sk_gradient_sse41
16728_sk_gradient_sse41 LABEL PROC
16729  DB  65,87                               ; push          %r15
16730  DB  65,86                               ; push          %r14
16731  DB  83                                  ; push          %rbx
16732  DB  72,173                              ; lods          %ds:(%rsi),%rax
16733  DB  76,139,8                            ; mov           (%rax),%r9
16734  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
16735  DB  73,131,249,2                        ; cmp           $0x2,%r9
16736  DB  114,50                              ; jb            4b3e <_sk_gradient_sse41+0x46>
16737  DB  72,139,88,72                        ; mov           0x48(%rax),%rbx
16738  DB  73,255,201                          ; dec           %r9
16739  DB  72,131,195,4                        ; add           $0x4,%rbx
16740  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
16741  DB  15,40,21,62,22,0,0                  ; movaps        0x163e(%rip),%xmm2        # 6160 <_sk_callback_sse41+0xfe0>
16742  DB  243,15,16,27                        ; movss         (%rbx),%xmm3
16743  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16744  DB  15,194,216,2                        ; cmpleps       %xmm0,%xmm3
16745  DB  15,84,218                           ; andps         %xmm2,%xmm3
16746  DB  102,15,254,203                      ; paddd         %xmm3,%xmm1
16747  DB  72,131,195,4                        ; add           $0x4,%rbx
16748  DB  73,255,201                          ; dec           %r9
16749  DB  117,228                             ; jne           4b22 <_sk_gradient_sse41+0x2a>
16750  DB  102,73,15,58,22,201,1               ; pextrq        $0x1,%xmm1,%r9
16751  DB  69,137,202                          ; mov           %r9d,%r10d
16752  DB  73,193,233,32                       ; shr           $0x20,%r9
16753  DB  102,73,15,126,203                   ; movq          %xmm1,%r11
16754  DB  69,137,222                          ; mov           %r11d,%r14d
16755  DB  73,193,235,32                       ; shr           $0x20,%r11
16756  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
16757  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
16758  DB  243,70,15,16,4,179                  ; movss         (%rbx,%r14,4),%xmm8
16759  DB  102,70,15,58,33,4,155,16            ; insertps      $0x10,(%rbx,%r11,4),%xmm8
16760  DB  243,66,15,16,12,147                 ; movss         (%rbx,%r10,4),%xmm1
16761  DB  102,68,15,58,33,193,32              ; insertps      $0x20,%xmm1,%xmm8
16762  DB  243,66,15,16,12,139                 ; movss         (%rbx,%r9,4),%xmm1
16763  DB  102,68,15,58,33,193,48              ; insertps      $0x30,%xmm1,%xmm8
16764  DB  72,139,88,40                        ; mov           0x28(%rax),%rbx
16765  DB  243,70,15,16,12,179                 ; movss         (%rbx,%r14,4),%xmm9
16766  DB  102,70,15,58,33,12,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm9
16767  DB  243,66,15,16,12,147                 ; movss         (%rbx,%r10,4),%xmm1
16768  DB  102,68,15,58,33,201,32              ; insertps      $0x20,%xmm1,%xmm9
16769  DB  243,66,15,16,12,139                 ; movss         (%rbx,%r9,4),%xmm1
16770  DB  102,68,15,58,33,201,48              ; insertps      $0x30,%xmm1,%xmm9
16771  DB  243,67,15,16,12,183                 ; movss         (%r15,%r14,4),%xmm1
16772  DB  102,67,15,58,33,12,159,16           ; insertps      $0x10,(%r15,%r11,4),%xmm1
16773  DB  243,67,15,16,20,151                 ; movss         (%r15,%r10,4),%xmm2
16774  DB  102,15,58,33,202,32                 ; insertps      $0x20,%xmm2,%xmm1
16775  DB  243,67,15,16,20,143                 ; movss         (%r15,%r9,4),%xmm2
16776  DB  102,15,58,33,202,48                 ; insertps      $0x30,%xmm2,%xmm1
16777  DB  72,139,88,48                        ; mov           0x30(%rax),%rbx
16778  DB  243,70,15,16,20,179                 ; movss         (%rbx,%r14,4),%xmm10
16779  DB  102,70,15,58,33,20,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm10
16780  DB  243,66,15,16,20,147                 ; movss         (%rbx,%r10,4),%xmm2
16781  DB  102,68,15,58,33,210,32              ; insertps      $0x20,%xmm2,%xmm10
16782  DB  243,66,15,16,20,139                 ; movss         (%rbx,%r9,4),%xmm2
16783  DB  102,68,15,58,33,210,48              ; insertps      $0x30,%xmm2,%xmm10
16784  DB  72,139,88,24                        ; mov           0x18(%rax),%rbx
16785  DB  243,66,15,16,20,179                 ; movss         (%rbx,%r14,4),%xmm2
16786  DB  102,66,15,58,33,20,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm2
16787  DB  243,66,15,16,28,147                 ; movss         (%rbx,%r10,4),%xmm3
16788  DB  102,15,58,33,211,32                 ; insertps      $0x20,%xmm3,%xmm2
16789  DB  243,66,15,16,28,139                 ; movss         (%rbx,%r9,4),%xmm3
16790  DB  102,15,58,33,211,48                 ; insertps      $0x30,%xmm3,%xmm2
16791  DB  72,139,88,56                        ; mov           0x38(%rax),%rbx
16792  DB  243,70,15,16,28,179                 ; movss         (%rbx,%r14,4),%xmm11
16793  DB  102,70,15,58,33,28,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm11
16794  DB  243,66,15,16,28,147                 ; movss         (%rbx,%r10,4),%xmm3
16795  DB  102,68,15,58,33,219,32              ; insertps      $0x20,%xmm3,%xmm11
16796  DB  243,66,15,16,28,139                 ; movss         (%rbx,%r9,4),%xmm3
16797  DB  102,68,15,58,33,219,48              ; insertps      $0x30,%xmm3,%xmm11
16798  DB  72,139,88,32                        ; mov           0x20(%rax),%rbx
16799  DB  243,66,15,16,28,179                 ; movss         (%rbx,%r14,4),%xmm3
16800  DB  102,66,15,58,33,28,155,16           ; insertps      $0x10,(%rbx,%r11,4),%xmm3
16801  DB  243,70,15,16,36,147                 ; movss         (%rbx,%r10,4),%xmm12
16802  DB  102,65,15,58,33,220,32              ; insertps      $0x20,%xmm12,%xmm3
16803  DB  243,70,15,16,36,139                 ; movss         (%rbx,%r9,4),%xmm12
16804  DB  102,65,15,58,33,220,48              ; insertps      $0x30,%xmm12,%xmm3
16805  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
16806  DB  243,70,15,16,36,176                 ; movss         (%rax,%r14,4),%xmm12
16807  DB  102,70,15,58,33,36,152,16           ; insertps      $0x10,(%rax,%r11,4),%xmm12
16808  DB  243,70,15,16,44,144                 ; movss         (%rax,%r10,4),%xmm13
16809  DB  102,69,15,58,33,229,32              ; insertps      $0x20,%xmm13,%xmm12
16810  DB  243,70,15,16,44,136                 ; movss         (%rax,%r9,4),%xmm13
16811  DB  102,69,15,58,33,229,48              ; insertps      $0x30,%xmm13,%xmm12
16812  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
16813  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
16814  DB  15,89,200                           ; mulps         %xmm0,%xmm1
16815  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
16816  DB  15,89,208                           ; mulps         %xmm0,%xmm2
16817  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
16818  DB  15,89,216                           ; mulps         %xmm0,%xmm3
16819  DB  65,15,88,220                        ; addps         %xmm12,%xmm3
16820  DB  72,173                              ; lods          %ds:(%rsi),%rax
16821  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16822  DB  91                                  ; pop           %rbx
16823  DB  65,94                               ; pop           %r14
16824  DB  65,95                               ; pop           %r15
16825  DB  255,224                             ; jmpq          *%rax
16826
16827PUBLIC _sk_evenly_spaced_2_stop_gradient_sse41
16828_sk_evenly_spaced_2_stop_gradient_sse41 LABEL PROC
16829  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
16830  DB  72,173                              ; lods          %ds:(%rsi),%rax
16831  DB  243,15,16,0                         ; movss         (%rax),%xmm0
16832  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
16833  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
16834  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
16835  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16836  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
16837  DB  15,88,194                           ; addps         %xmm2,%xmm0
16838  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
16839  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
16840  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16841  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
16842  DB  15,88,202                           ; addps         %xmm2,%xmm1
16843  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
16844  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
16845  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
16846  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16847  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
16848  DB  15,88,211                           ; addps         %xmm3,%xmm2
16849  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
16850  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
16851  DB  243,68,15,16,72,28                  ; movss         0x1c(%rax),%xmm9
16852  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
16853  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
16854  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
16855  DB  72,173                              ; lods          %ds:(%rsi),%rax
16856  DB  255,224                             ; jmpq          *%rax
16857
16858PUBLIC _sk_xy_to_unit_angle_sse41
16859_sk_xy_to_unit_angle_sse41 LABEL PROC
16860  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
16861  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
16862  DB  15,87,192                           ; xorps         %xmm0,%xmm0
16863  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
16864  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
16865  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
16866  DB  68,15,92,217                        ; subps         %xmm1,%xmm11
16867  DB  68,15,84,217                        ; andps         %xmm1,%xmm11
16868  DB  68,15,40,224                        ; movaps        %xmm0,%xmm12
16869  DB  69,15,93,227                        ; minps         %xmm11,%xmm12
16870  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
16871  DB  69,15,95,211                        ; maxps         %xmm11,%xmm10
16872  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
16873  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
16874  DB  69,15,89,237                        ; mulps         %xmm13,%xmm13
16875  DB  68,15,40,21,223,19,0,0              ; movaps        0x13df(%rip),%xmm10        # 6170 <_sk_callback_sse41+0xff0>
16876  DB  69,15,89,213                        ; mulps         %xmm13,%xmm10
16877  DB  68,15,88,21,227,19,0,0              ; addps         0x13e3(%rip),%xmm10        # 6180 <_sk_callback_sse41+0x1000>
16878  DB  69,15,89,213                        ; mulps         %xmm13,%xmm10
16879  DB  68,15,88,21,231,19,0,0              ; addps         0x13e7(%rip),%xmm10        # 6190 <_sk_callback_sse41+0x1010>
16880  DB  69,15,89,213                        ; mulps         %xmm13,%xmm10
16881  DB  68,15,88,21,235,19,0,0              ; addps         0x13eb(%rip),%xmm10        # 61a0 <_sk_callback_sse41+0x1020>
16882  DB  69,15,89,212                        ; mulps         %xmm12,%xmm10
16883  DB  65,15,194,195,1                     ; cmpltps       %xmm11,%xmm0
16884  DB  68,15,40,29,234,19,0,0              ; movaps        0x13ea(%rip),%xmm11        # 61b0 <_sk_callback_sse41+0x1030>
16885  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
16886  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
16887  DB  69,15,194,200,1                     ; cmpltps       %xmm8,%xmm9
16888  DB  68,15,40,29,227,19,0,0              ; movaps        0x13e3(%rip),%xmm11        # 61c0 <_sk_callback_sse41+0x1040>
16889  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
16890  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
16891  DB  102,69,15,56,20,211                 ; blendvps      %xmm0,%xmm11,%xmm10
16892  DB  15,40,193                           ; movaps        %xmm1,%xmm0
16893  DB  65,15,194,192,1                     ; cmpltps       %xmm8,%xmm0
16894  DB  68,15,40,13,213,19,0,0              ; movaps        0x13d5(%rip),%xmm9        # 61d0 <_sk_callback_sse41+0x1050>
16895  DB  69,15,92,202                        ; subps         %xmm10,%xmm9
16896  DB  102,69,15,56,20,209                 ; blendvps      %xmm0,%xmm9,%xmm10
16897  DB  69,15,194,194,7                     ; cmpordps      %xmm10,%xmm8
16898  DB  69,15,84,194                        ; andps         %xmm10,%xmm8
16899  DB  72,173                              ; lods          %ds:(%rsi),%rax
16900  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
16901  DB  255,224                             ; jmpq          *%rax
16902
16903PUBLIC _sk_xy_to_radius_sse41
16904_sk_xy_to_radius_sse41 LABEL PROC
16905  DB  15,89,192                           ; mulps         %xmm0,%xmm0
16906  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
16907  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
16908  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
16909  DB  65,15,81,192                        ; sqrtps        %xmm8,%xmm0
16910  DB  72,173                              ; lods          %ds:(%rsi),%rax
16911  DB  255,224                             ; jmpq          *%rax
16912
16913PUBLIC _sk_save_xy_sse41
16914_sk_save_xy_sse41 LABEL PROC
16915  DB  72,173                              ; lods          %ds:(%rsi),%rax
16916  DB  68,15,40,5,169,19,0,0               ; movaps        0x13a9(%rip),%xmm8        # 61e0 <_sk_callback_sse41+0x1060>
16917  DB  15,17,0                             ; movups        %xmm0,(%rax)
16918  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
16919  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
16920  DB  102,69,15,58,8,209,1                ; roundps       $0x1,%xmm9,%xmm10
16921  DB  69,15,92,202                        ; subps         %xmm10,%xmm9
16922  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
16923  DB  102,69,15,58,8,208,1                ; roundps       $0x1,%xmm8,%xmm10
16924  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
16925  DB  15,17,72,32                         ; movups        %xmm1,0x20(%rax)
16926  DB  68,15,17,72,64                      ; movups        %xmm9,0x40(%rax)
16927  DB  68,15,17,64,96                      ; movups        %xmm8,0x60(%rax)
16928  DB  72,173                              ; lods          %ds:(%rsi),%rax
16929  DB  255,224                             ; jmpq          *%rax
16930
16931PUBLIC _sk_accumulate_sse41
16932_sk_accumulate_sse41 LABEL PROC
16933  DB  72,173                              ; lods          %ds:(%rsi),%rax
16934  DB  68,15,16,128,128,0,0,0              ; movups        0x80(%rax),%xmm8
16935  DB  68,15,16,136,160,0,0,0              ; movups        0xa0(%rax),%xmm9
16936  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
16937  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
16938  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
16939  DB  65,15,88,224                        ; addps         %xmm8,%xmm4
16940  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
16941  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
16942  DB  65,15,88,232                        ; addps         %xmm8,%xmm5
16943  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
16944  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
16945  DB  65,15,88,240                        ; addps         %xmm8,%xmm6
16946  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
16947  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
16948  DB  72,173                              ; lods          %ds:(%rsi),%rax
16949  DB  255,224                             ; jmpq          *%rax
16950
16951PUBLIC _sk_bilinear_nx_sse41
16952_sk_bilinear_nx_sse41 LABEL PROC
16953  DB  72,173                              ; lods          %ds:(%rsi),%rax
16954  DB  15,16,0                             ; movups        (%rax),%xmm0
16955  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
16956  DB  15,88,5,43,19,0,0                   ; addps         0x132b(%rip),%xmm0        # 61f0 <_sk_callback_sse41+0x1070>
16957  DB  68,15,40,13,51,19,0,0               ; movaps        0x1333(%rip),%xmm9        # 6200 <_sk_callback_sse41+0x1080>
16958  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
16959  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
16960  DB  72,173                              ; lods          %ds:(%rsi),%rax
16961  DB  255,224                             ; jmpq          *%rax
16962
16963PUBLIC _sk_bilinear_px_sse41
16964_sk_bilinear_px_sse41 LABEL PROC
16965  DB  72,173                              ; lods          %ds:(%rsi),%rax
16966  DB  15,16,0                             ; movups        (%rax),%xmm0
16967  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
16968  DB  15,88,5,34,19,0,0                   ; addps         0x1322(%rip),%xmm0        # 6210 <_sk_callback_sse41+0x1090>
16969  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
16970  DB  72,173                              ; lods          %ds:(%rsi),%rax
16971  DB  255,224                             ; jmpq          *%rax
16972
16973PUBLIC _sk_bilinear_ny_sse41
16974_sk_bilinear_ny_sse41 LABEL PROC
16975  DB  72,173                              ; lods          %ds:(%rsi),%rax
16976  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
16977  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
16978  DB  15,88,13,20,19,0,0                  ; addps         0x1314(%rip),%xmm1        # 6220 <_sk_callback_sse41+0x10a0>
16979  DB  68,15,40,13,28,19,0,0               ; movaps        0x131c(%rip),%xmm9        # 6230 <_sk_callback_sse41+0x10b0>
16980  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
16981  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
16982  DB  72,173                              ; lods          %ds:(%rsi),%rax
16983  DB  255,224                             ; jmpq          *%rax
16984
16985PUBLIC _sk_bilinear_py_sse41
16986_sk_bilinear_py_sse41 LABEL PROC
16987  DB  72,173                              ; lods          %ds:(%rsi),%rax
16988  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
16989  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
16990  DB  15,88,13,10,19,0,0                  ; addps         0x130a(%rip),%xmm1        # 6240 <_sk_callback_sse41+0x10c0>
16991  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
16992  DB  72,173                              ; lods          %ds:(%rsi),%rax
16993  DB  255,224                             ; jmpq          *%rax
16994
16995PUBLIC _sk_bicubic_n3x_sse41
16996_sk_bicubic_n3x_sse41 LABEL PROC
16997  DB  72,173                              ; lods          %ds:(%rsi),%rax
16998  DB  15,16,0                             ; movups        (%rax),%xmm0
16999  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
17000  DB  15,88,5,253,18,0,0                  ; addps         0x12fd(%rip),%xmm0        # 6250 <_sk_callback_sse41+0x10d0>
17001  DB  68,15,40,13,5,19,0,0                ; movaps        0x1305(%rip),%xmm9        # 6260 <_sk_callback_sse41+0x10e0>
17002  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
17003  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
17004  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
17005  DB  68,15,89,13,1,19,0,0                ; mulps         0x1301(%rip),%xmm9        # 6270 <_sk_callback_sse41+0x10f0>
17006  DB  68,15,88,13,9,19,0,0                ; addps         0x1309(%rip),%xmm9        # 6280 <_sk_callback_sse41+0x1100>
17007  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
17008  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
17009  DB  72,173                              ; lods          %ds:(%rsi),%rax
17010  DB  255,224                             ; jmpq          *%rax
17011
17012PUBLIC _sk_bicubic_n1x_sse41
17013_sk_bicubic_n1x_sse41 LABEL PROC
17014  DB  72,173                              ; lods          %ds:(%rsi),%rax
17015  DB  15,16,0                             ; movups        (%rax),%xmm0
17016  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
17017  DB  15,88,5,248,18,0,0                  ; addps         0x12f8(%rip),%xmm0        # 6290 <_sk_callback_sse41+0x1110>
17018  DB  68,15,40,13,0,19,0,0                ; movaps        0x1300(%rip),%xmm9        # 62a0 <_sk_callback_sse41+0x1120>
17019  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
17020  DB  68,15,40,5,4,19,0,0                 ; movaps        0x1304(%rip),%xmm8        # 62b0 <_sk_callback_sse41+0x1130>
17021  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
17022  DB  68,15,88,5,8,19,0,0                 ; addps         0x1308(%rip),%xmm8        # 62c0 <_sk_callback_sse41+0x1140>
17023  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
17024  DB  68,15,88,5,12,19,0,0                ; addps         0x130c(%rip),%xmm8        # 62d0 <_sk_callback_sse41+0x1150>
17025  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
17026  DB  68,15,88,5,16,19,0,0                ; addps         0x1310(%rip),%xmm8        # 62e0 <_sk_callback_sse41+0x1160>
17027  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
17028  DB  72,173                              ; lods          %ds:(%rsi),%rax
17029  DB  255,224                             ; jmpq          *%rax
17030
17031PUBLIC _sk_bicubic_p1x_sse41
17032_sk_bicubic_p1x_sse41 LABEL PROC
17033  DB  72,173                              ; lods          %ds:(%rsi),%rax
17034  DB  68,15,40,5,10,19,0,0                ; movaps        0x130a(%rip),%xmm8        # 62f0 <_sk_callback_sse41+0x1170>
17035  DB  15,16,0                             ; movups        (%rax),%xmm0
17036  DB  68,15,16,72,64                      ; movups        0x40(%rax),%xmm9
17037  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
17038  DB  68,15,40,21,6,19,0,0                ; movaps        0x1306(%rip),%xmm10        # 6300 <_sk_callback_sse41+0x1180>
17039  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
17040  DB  68,15,88,21,10,19,0,0               ; addps         0x130a(%rip),%xmm10        # 6310 <_sk_callback_sse41+0x1190>
17041  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
17042  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
17043  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
17044  DB  68,15,88,21,6,19,0,0                ; addps         0x1306(%rip),%xmm10        # 6320 <_sk_callback_sse41+0x11a0>
17045  DB  68,15,17,144,128,0,0,0              ; movups        %xmm10,0x80(%rax)
17046  DB  72,173                              ; lods          %ds:(%rsi),%rax
17047  DB  255,224                             ; jmpq          *%rax
17048
17049PUBLIC _sk_bicubic_p3x_sse41
17050_sk_bicubic_p3x_sse41 LABEL PROC
17051  DB  72,173                              ; lods          %ds:(%rsi),%rax
17052  DB  15,16,0                             ; movups        (%rax),%xmm0
17053  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
17054  DB  15,88,5,249,18,0,0                  ; addps         0x12f9(%rip),%xmm0        # 6330 <_sk_callback_sse41+0x11b0>
17055  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
17056  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
17057  DB  68,15,89,5,249,18,0,0               ; mulps         0x12f9(%rip),%xmm8        # 6340 <_sk_callback_sse41+0x11c0>
17058  DB  68,15,88,5,1,19,0,0                 ; addps         0x1301(%rip),%xmm8        # 6350 <_sk_callback_sse41+0x11d0>
17059  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
17060  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
17061  DB  72,173                              ; lods          %ds:(%rsi),%rax
17062  DB  255,224                             ; jmpq          *%rax
17063
17064PUBLIC _sk_bicubic_n3y_sse41
17065_sk_bicubic_n3y_sse41 LABEL PROC
17066  DB  72,173                              ; lods          %ds:(%rsi),%rax
17067  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
17068  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
17069  DB  15,88,13,239,18,0,0                 ; addps         0x12ef(%rip),%xmm1        # 6360 <_sk_callback_sse41+0x11e0>
17070  DB  68,15,40,13,247,18,0,0              ; movaps        0x12f7(%rip),%xmm9        # 6370 <_sk_callback_sse41+0x11f0>
17071  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
17072  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
17073  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
17074  DB  68,15,89,13,243,18,0,0              ; mulps         0x12f3(%rip),%xmm9        # 6380 <_sk_callback_sse41+0x1200>
17075  DB  68,15,88,13,251,18,0,0              ; addps         0x12fb(%rip),%xmm9        # 6390 <_sk_callback_sse41+0x1210>
17076  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
17077  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
17078  DB  72,173                              ; lods          %ds:(%rsi),%rax
17079  DB  255,224                             ; jmpq          *%rax
17080
17081PUBLIC _sk_bicubic_n1y_sse41
17082_sk_bicubic_n1y_sse41 LABEL PROC
17083  DB  72,173                              ; lods          %ds:(%rsi),%rax
17084  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
17085  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
17086  DB  15,88,13,233,18,0,0                 ; addps         0x12e9(%rip),%xmm1        # 63a0 <_sk_callback_sse41+0x1220>
17087  DB  68,15,40,13,241,18,0,0              ; movaps        0x12f1(%rip),%xmm9        # 63b0 <_sk_callback_sse41+0x1230>
17088  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
17089  DB  68,15,40,5,245,18,0,0               ; movaps        0x12f5(%rip),%xmm8        # 63c0 <_sk_callback_sse41+0x1240>
17090  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
17091  DB  68,15,88,5,249,18,0,0               ; addps         0x12f9(%rip),%xmm8        # 63d0 <_sk_callback_sse41+0x1250>
17092  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
17093  DB  68,15,88,5,253,18,0,0               ; addps         0x12fd(%rip),%xmm8        # 63e0 <_sk_callback_sse41+0x1260>
17094  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
17095  DB  68,15,88,5,1,19,0,0                 ; addps         0x1301(%rip),%xmm8        # 63f0 <_sk_callback_sse41+0x1270>
17096  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
17097  DB  72,173                              ; lods          %ds:(%rsi),%rax
17098  DB  255,224                             ; jmpq          *%rax
17099
17100PUBLIC _sk_bicubic_p1y_sse41
17101_sk_bicubic_p1y_sse41 LABEL PROC
17102  DB  72,173                              ; lods          %ds:(%rsi),%rax
17103  DB  68,15,40,5,251,18,0,0               ; movaps        0x12fb(%rip),%xmm8        # 6400 <_sk_callback_sse41+0x1280>
17104  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
17105  DB  68,15,16,72,96                      ; movups        0x60(%rax),%xmm9
17106  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
17107  DB  68,15,40,21,246,18,0,0              ; movaps        0x12f6(%rip),%xmm10        # 6410 <_sk_callback_sse41+0x1290>
17108  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
17109  DB  68,15,88,21,250,18,0,0              ; addps         0x12fa(%rip),%xmm10        # 6420 <_sk_callback_sse41+0x12a0>
17110  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
17111  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
17112  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
17113  DB  68,15,88,21,246,18,0,0              ; addps         0x12f6(%rip),%xmm10        # 6430 <_sk_callback_sse41+0x12b0>
17114  DB  68,15,17,144,160,0,0,0              ; movups        %xmm10,0xa0(%rax)
17115  DB  72,173                              ; lods          %ds:(%rsi),%rax
17116  DB  255,224                             ; jmpq          *%rax
17117
17118PUBLIC _sk_bicubic_p3y_sse41
17119_sk_bicubic_p3y_sse41 LABEL PROC
17120  DB  72,173                              ; lods          %ds:(%rsi),%rax
17121  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
17122  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
17123  DB  15,88,13,232,18,0,0                 ; addps         0x12e8(%rip),%xmm1        # 6440 <_sk_callback_sse41+0x12c0>
17124  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
17125  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
17126  DB  68,15,89,5,232,18,0,0               ; mulps         0x12e8(%rip),%xmm8        # 6450 <_sk_callback_sse41+0x12d0>
17127  DB  68,15,88,5,240,18,0,0               ; addps         0x12f0(%rip),%xmm8        # 6460 <_sk_callback_sse41+0x12e0>
17128  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
17129  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
17130  DB  72,173                              ; lods          %ds:(%rsi),%rax
17131  DB  255,224                             ; jmpq          *%rax
17132
17133PUBLIC _sk_callback_sse41
17134_sk_callback_sse41 LABEL PROC
17135  DB  85                                  ; push          %rbp
17136  DB  72,137,229                          ; mov           %rsp,%rbp
17137  DB  65,87                               ; push          %r15
17138  DB  65,86                               ; push          %r14
17139  DB  65,84                               ; push          %r12
17140  DB  83                                  ; push          %rbx
17141  DB  72,131,236,32                       ; sub           $0x20,%rsp
17142  DB  68,15,40,197                        ; movaps        %xmm5,%xmm8
17143  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
17144  DB  77,137,196                          ; mov           %r8,%r12
17145  DB  73,137,206                          ; mov           %rcx,%r14
17146  DB  73,137,215                          ; mov           %rdx,%r15
17147  DB  72,173                              ; lods          %ds:(%rsi),%rax
17148  DB  72,137,195                          ; mov           %rax,%rbx
17149  DB  15,40,224                           ; movaps        %xmm0,%xmm4
17150  DB  15,20,225                           ; unpcklps      %xmm1,%xmm4
17151  DB  15,40,234                           ; movaps        %xmm2,%xmm5
17152  DB  15,20,235                           ; unpcklps      %xmm3,%xmm5
17153  DB  15,21,193                           ; unpckhps      %xmm1,%xmm0
17154  DB  15,21,211                           ; unpckhps      %xmm3,%xmm2
17155  DB  15,40,204                           ; movaps        %xmm4,%xmm1
17156  DB  102,15,20,205                       ; unpcklpd      %xmm5,%xmm1
17157  DB  15,18,236                           ; movhlps       %xmm4,%xmm5
17158  DB  15,40,216                           ; movaps        %xmm0,%xmm3
17159  DB  102,15,20,218                       ; unpcklpd      %xmm2,%xmm3
17160  DB  102,15,17,75,8                      ; movupd        %xmm1,0x8(%rbx)
17161  DB  15,18,208                           ; movhlps       %xmm0,%xmm2
17162  DB  15,17,107,24                        ; movups        %xmm5,0x18(%rbx)
17163  DB  102,15,17,91,40                     ; movupd        %xmm3,0x28(%rbx)
17164  DB  15,17,83,56                         ; movups        %xmm2,0x38(%rbx)
17165  DB  77,133,228                          ; test          %r12,%r12
17166  DB  186,4,0,0,0                         ; mov           $0x4,%edx
17167  DB  65,15,69,212                        ; cmovne        %r12d,%edx
17168  DB  72,137,217                          ; mov           %rbx,%rcx
17169  DB  255,19                              ; callq         *(%rbx)
17170  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
17171  DB  15,16,32                            ; movups        (%rax),%xmm4
17172  DB  15,16,64,16                         ; movups        0x10(%rax),%xmm0
17173  DB  15,16,88,32                         ; movups        0x20(%rax),%xmm3
17174  DB  15,16,80,48                         ; movups        0x30(%rax),%xmm2
17175  DB  15,40,236                           ; movaps        %xmm4,%xmm5
17176  DB  15,20,232                           ; unpcklps      %xmm0,%xmm5
17177  DB  15,40,203                           ; movaps        %xmm3,%xmm1
17178  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
17179  DB  15,21,224                           ; unpckhps      %xmm0,%xmm4
17180  DB  15,21,218                           ; unpckhps      %xmm2,%xmm3
17181  DB  15,40,197                           ; movaps        %xmm5,%xmm0
17182  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
17183  DB  15,18,205                           ; movhlps       %xmm5,%xmm1
17184  DB  15,40,212                           ; movaps        %xmm4,%xmm2
17185  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
17186  DB  15,18,220                           ; movhlps       %xmm4,%xmm3
17187  DB  72,173                              ; lods          %ds:(%rsi),%rax
17188  DB  76,137,250                          ; mov           %r15,%rdx
17189  DB  76,137,241                          ; mov           %r14,%rcx
17190  DB  77,137,224                          ; mov           %r12,%r8
17191  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
17192  DB  65,15,40,232                        ; movaps        %xmm8,%xmm5
17193  DB  72,131,196,32                       ; add           $0x20,%rsp
17194  DB  91                                  ; pop           %rbx
17195  DB  65,92                               ; pop           %r12
17196  DB  65,94                               ; pop           %r14
17197  DB  65,95                               ; pop           %r15
17198  DB  93                                  ; pop           %rbp
17199  DB  255,224                             ; jmpq          *%rax
17200
17201ALIGN 16
17202  DB  0,0                                 ; add           %al,(%rax)
17203  DB  0,63                                ; add           %bh,(%rdi)
17204  DB  0,0                                 ; add           %al,(%rax)
17205  DB  0,63                                ; add           %bh,(%rdi)
17206  DB  0,0                                 ; add           %al,(%rax)
17207  DB  0,63                                ; add           %bh,(%rdi)
17208  DB  0,0                                 ; add           %al,(%rax)
17209  DB  0,63                                ; add           %bh,(%rdi)
17210  DB  0,0                                 ; add           %al,(%rax)
17211  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17212  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17213  DB  63                                  ; (bad)
17214  DB  0,0                                 ; add           %al,(%rax)
17215  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
17216  DB  0,0                                 ; add           %al,(%rax)
17217  DB  0,1                                 ; add           %al,(%rcx)
17218  DB  0,0                                 ; add           %al,(%rax)
17219  DB  0,1                                 ; add           %al,(%rcx)
17220  DB  0,0                                 ; add           %al,(%rax)
17221  DB  0,1                                 ; add           %al,(%rcx)
17222  DB  0,0                                 ; add           %al,(%rax)
17223  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
17224  DB  0,0                                 ; add           %al,(%rax)
17225  DB  4,0                                 ; add           $0x0,%al
17226  DB  0,0                                 ; add           %al,(%rax)
17227  DB  4,0                                 ; add           $0x0,%al
17228  DB  0,0                                 ; add           %al,(%rax)
17229  DB  4,0                                 ; add           $0x0,%al
17230  DB  0,0                                 ; add           %al,(%rax)
17231  DB  2,0                                 ; add           (%rax),%al
17232  DB  0,0                                 ; add           %al,(%rax)
17233  DB  2,0                                 ; add           (%rax),%al
17234  DB  0,0                                 ; add           %al,(%rax)
17235  DB  2,0                                 ; add           (%rax),%al
17236  DB  0,0                                 ; add           %al,(%rax)
17237  DB  2,0                                 ; add           (%rax),%al
17238  DB  0,0                                 ; add           %al,(%rax)
17239  DB  0,0                                 ; add           %al,(%rax)
17240  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
17241  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
17242  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
17243  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
17244  DB  252                                 ; cld
17245  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
17246  DB  0,0                                 ; add           %al,(%rax)
17247  DB  252                                 ; cld
17248  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
17249  DB  0,0                                 ; add           %al,(%rax)
17250  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17251  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17252  DB  63                                  ; (bad)
17253  DB  0,0                                 ; add           %al,(%rax)
17254  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17255  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17256  DB  63                                  ; (bad)
17257  DB  0,0                                 ; add           %al,(%rax)
17258  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17259  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17260  DB  63                                  ; (bad)
17261  DB  0,0                                 ; add           %al,(%rax)
17262  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17263  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17264  DB  63                                  ; (bad)
17265  DB  0,0                                 ; add           %al,(%rax)
17266  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17267  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17268  DB  63                                  ; (bad)
17269  DB  0,0                                 ; add           %al,(%rax)
17270  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17271  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17272  DB  63                                  ; (bad)
17273  DB  0,0                                 ; add           %al,(%rax)
17274  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17275  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17276  DB  63                                  ; (bad)
17277  DB  0,0                                 ; add           %al,(%rax)
17278  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17279  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17280  DB  63                                  ; (bad)
17281  DB  0,0                                 ; add           %al,(%rax)
17282  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17283  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17284  DB  63                                  ; (bad)
17285  DB  0,0                                 ; add           %al,(%rax)
17286  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17287  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17288  DB  63                                  ; (bad)
17289  DB  0,0                                 ; add           %al,(%rax)
17290  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17291  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17292  DB  63                                  ; (bad)
17293  DB  0,0                                 ; add           %al,(%rax)
17294  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17295  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17296  DB  63                                  ; (bad)
17297  DB  0,0                                 ; add           %al,(%rax)
17298  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17299  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17300  DB  63                                  ; (bad)
17301  DB  0,0                                 ; add           %al,(%rax)
17302  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17303  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17304  DB  63                                  ; (bad)
17305  DB  0,0                                 ; add           %al,(%rax)
17306  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17307  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17308  DB  63                                  ; (bad)
17309  DB  0,0                                 ; add           %al,(%rax)
17310  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17311  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17312  DB  63                                  ; (bad)
17313  DB  0,0                                 ; add           %al,(%rax)
17314  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17315  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17316  DB  63                                  ; (bad)
17317  DB  0,0                                 ; add           %al,(%rax)
17318  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17319  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17320  DB  63                                  ; (bad)
17321  DB  0,0                                 ; add           %al,(%rax)
17322  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17323  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17324  DB  63                                  ; (bad)
17325  DB  0,0                                 ; add           %al,(%rax)
17326  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17327  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17328  DB  63                                  ; (bad)
17329  DB  0,0                                 ; add           %al,(%rax)
17330  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17331  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17332  DB  63                                  ; (bad)
17333  DB  0,0                                 ; add           %al,(%rax)
17334  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17335  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17336  DB  63                                  ; (bad)
17337  DB  0,0                                 ; add           %al,(%rax)
17338  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17339  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17340  DB  191,0,0,128,191                     ; mov           $0xbf800000,%edi
17341  DB  0,0                                 ; add           %al,(%rax)
17342  DB  128,191,0,0,128,191,0               ; cmpb          $0x0,-0x40800000(%rdi)
17343  DB  0,224                               ; add           %ah,%al
17344  DB  64,0,0                              ; add           %al,(%rax)
17345  DB  224,64                              ; loopne        5428 <.literal16+0x1d8>
17346  DB  0,0                                 ; add           %al,(%rax)
17347  DB  224,64                              ; loopne        542c <.literal16+0x1dc>
17348  DB  0,0                                 ; add           %al,(%rax)
17349  DB  224,64                              ; loopne        5430 <.literal16+0x1e0>
17350  DB  154                                 ; (bad)
17351  DB  153                                 ; cltd
17352  DB  153                                 ; cltd
17353  DB  62,154                              ; ds            (bad)
17354  DB  153                                 ; cltd
17355  DB  153                                 ; cltd
17356  DB  62,154                              ; ds            (bad)
17357  DB  153                                 ; cltd
17358  DB  153                                 ; cltd
17359  DB  62,154                              ; ds            (bad)
17360  DB  153                                 ; cltd
17361  DB  153                                 ; cltd
17362  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
17363  DB  10,23                               ; or            (%rdi),%dl
17364  DB  63                                  ; (bad)
17365  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
17366  DB  10,23                               ; or            (%rdi),%dl
17367  DB  63                                  ; (bad)
17368  DB  174                                 ; scas          %es:(%rdi),%al
17369  DB  71,225,61                           ; rex.RXB       loope 5451 <.literal16+0x201>
17370  DB  174                                 ; scas          %es:(%rdi),%al
17371  DB  71,225,61                           ; rex.RXB       loope 5455 <.literal16+0x205>
17372  DB  174                                 ; scas          %es:(%rdi),%al
17373  DB  71,225,61                           ; rex.RXB       loope 5459 <.literal16+0x209>
17374  DB  174                                 ; scas          %es:(%rdi),%al
17375  DB  71,225,61                           ; rex.RXB       loope 545d <.literal16+0x20d>
17376  DB  0,0                                 ; add           %al,(%rax)
17377  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17378  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17379  DB  63                                  ; (bad)
17380  DB  0,0                                 ; add           %al,(%rax)
17381  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
17382  DB  153                                 ; cltd
17383  DB  153                                 ; cltd
17384  DB  62,154                              ; ds            (bad)
17385  DB  153                                 ; cltd
17386  DB  153                                 ; cltd
17387  DB  62,154                              ; ds            (bad)
17388  DB  153                                 ; cltd
17389  DB  153                                 ; cltd
17390  DB  62,154                              ; ds            (bad)
17391  DB  153                                 ; cltd
17392  DB  153                                 ; cltd
17393  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
17394  DB  10,23                               ; or            (%rdi),%dl
17395  DB  63                                  ; (bad)
17396  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
17397  DB  10,23                               ; or            (%rdi),%dl
17398  DB  63                                  ; (bad)
17399  DB  174                                 ; scas          %es:(%rdi),%al
17400  DB  71,225,61                           ; rex.RXB       loope 5491 <.literal16+0x241>
17401  DB  174                                 ; scas          %es:(%rdi),%al
17402  DB  71,225,61                           ; rex.RXB       loope 5495 <.literal16+0x245>
17403  DB  174                                 ; scas          %es:(%rdi),%al
17404  DB  71,225,61                           ; rex.RXB       loope 5499 <.literal16+0x249>
17405  DB  174                                 ; scas          %es:(%rdi),%al
17406  DB  71,225,61                           ; rex.RXB       loope 549d <.literal16+0x24d>
17407  DB  0,0                                 ; add           %al,(%rax)
17408  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17409  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17410  DB  63                                  ; (bad)
17411  DB  0,0                                 ; add           %al,(%rax)
17412  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
17413  DB  153                                 ; cltd
17414  DB  153                                 ; cltd
17415  DB  62,154                              ; ds            (bad)
17416  DB  153                                 ; cltd
17417  DB  153                                 ; cltd
17418  DB  62,154                              ; ds            (bad)
17419  DB  153                                 ; cltd
17420  DB  153                                 ; cltd
17421  DB  62,154                              ; ds            (bad)
17422  DB  153                                 ; cltd
17423  DB  153                                 ; cltd
17424  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
17425  DB  10,23                               ; or            (%rdi),%dl
17426  DB  63                                  ; (bad)
17427  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
17428  DB  10,23                               ; or            (%rdi),%dl
17429  DB  63                                  ; (bad)
17430  DB  174                                 ; scas          %es:(%rdi),%al
17431  DB  71,225,61                           ; rex.RXB       loope 54d1 <.literal16+0x281>
17432  DB  174                                 ; scas          %es:(%rdi),%al
17433  DB  71,225,61                           ; rex.RXB       loope 54d5 <.literal16+0x285>
17434  DB  174                                 ; scas          %es:(%rdi),%al
17435  DB  71,225,61                           ; rex.RXB       loope 54d9 <.literal16+0x289>
17436  DB  174                                 ; scas          %es:(%rdi),%al
17437  DB  71,225,61                           ; rex.RXB       loope 54dd <.literal16+0x28d>
17438  DB  0,0                                 ; add           %al,(%rax)
17439  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17440  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17441  DB  63                                  ; (bad)
17442  DB  0,0                                 ; add           %al,(%rax)
17443  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
17444  DB  153                                 ; cltd
17445  DB  153                                 ; cltd
17446  DB  62,154                              ; ds            (bad)
17447  DB  153                                 ; cltd
17448  DB  153                                 ; cltd
17449  DB  62,154                              ; ds            (bad)
17450  DB  153                                 ; cltd
17451  DB  153                                 ; cltd
17452  DB  62,154                              ; ds            (bad)
17453  DB  153                                 ; cltd
17454  DB  153                                 ; cltd
17455  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
17456  DB  10,23                               ; or            (%rdi),%dl
17457  DB  63                                  ; (bad)
17458  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
17459  DB  10,23                               ; or            (%rdi),%dl
17460  DB  63                                  ; (bad)
17461  DB  174                                 ; scas          %es:(%rdi),%al
17462  DB  71,225,61                           ; rex.RXB       loope 5511 <.literal16+0x2c1>
17463  DB  174                                 ; scas          %es:(%rdi),%al
17464  DB  71,225,61                           ; rex.RXB       loope 5515 <.literal16+0x2c5>
17465  DB  174                                 ; scas          %es:(%rdi),%al
17466  DB  71,225,61                           ; rex.RXB       loope 5519 <.literal16+0x2c9>
17467  DB  174                                 ; scas          %es:(%rdi),%al
17468  DB  71,225,61                           ; rex.RXB       loope 551d <.literal16+0x2cd>
17469  DB  0,0                                 ; add           %al,(%rax)
17470  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17471  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17472  DB  63                                  ; (bad)
17473  DB  0,0                                 ; add           %al,(%rax)
17474  DB  128,63,255                          ; cmpb          $0xff,(%rdi)
17475  DB  0,0                                 ; add           %al,(%rax)
17476  DB  0,255                               ; add           %bh,%bh
17477  DB  0,0                                 ; add           %al,(%rax)
17478  DB  0,255                               ; add           %bh,%bh
17479  DB  0,0                                 ; add           %al,(%rax)
17480  DB  0,255                               ; add           %bh,%bh
17481  DB  0,0                                 ; add           %al,(%rax)
17482  DB  0,1                                 ; add           %al,(%rcx)
17483  DB  255                                 ; (bad)
17484  DB  255                                 ; (bad)
17485  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a005508 <_sk_callback_sse41+0xa000388>
17486  DB  255                                 ; (bad)
17487  DB  255                                 ; (bad)
17488  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3005510 <_sk_callback_sse41+0x3000390>
17489  DB  255                                 ; (bad)
17490  DB  255                                 ; (bad)
17491  DB  255,6                               ; incl          (%rsi)
17492  DB  255                                 ; (bad)
17493  DB  255                                 ; (bad)
17494  DB  255,10                              ; decl          (%rdx)
17495  DB  255                                 ; (bad)
17496  DB  255                                 ; (bad)
17497  DB  255,14                              ; decl          (%rsi)
17498  DB  255                                 ; (bad)
17499  DB  255                                 ; (bad)
17500  DB  255,0                               ; incl          (%rax)
17501  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17502  DB  63                                  ; (bad)
17503  DB  0,0                                 ; add           %al,(%rax)
17504  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17505  DB  0,128,63,0,0,127                    ; add           %al,0x7f00003f(%rax)
17506  DB  67,0,0                              ; rex.XB        add %al,(%r8)
17507  DB  127,67                              ; jg            557b <.literal16+0x32b>
17508  DB  0,0                                 ; add           %al,(%rax)
17509  DB  127,67                              ; jg            557f <.literal16+0x32f>
17510  DB  0,0                                 ; add           %al,(%rax)
17511  DB  127,67                              ; jg            5583 <.literal16+0x333>
17512  DB  0,0                                 ; add           %al,(%rax)
17513  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17514  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17515  DB  63                                  ; (bad)
17516  DB  0,0                                 ; add           %al,(%rax)
17517  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17518  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17519  DB  63                                  ; (bad)
17520  DB  0,0                                 ; add           %al,(%rax)
17521  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17522  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17523  DB  63                                  ; (bad)
17524  DB  0,0                                 ; add           %al,(%rax)
17525  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17526  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17527  DB  63                                  ; (bad)
17528  DB  145                                 ; xchg          %eax,%ecx
17529  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
17530  DB  145                                 ; xchg          %eax,%ecx
17531  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
17532  DB  154                                 ; (bad)
17533  DB  153                                 ; cltd
17534  DB  153                                 ; cltd
17535  DB  62,154                              ; ds            (bad)
17536  DB  153                                 ; cltd
17537  DB  153                                 ; cltd
17538  DB  62,154                              ; ds            (bad)
17539  DB  153                                 ; cltd
17540  DB  153                                 ; cltd
17541  DB  62,154                              ; ds            (bad)
17542  DB  153                                 ; cltd
17543  DB  153                                 ; cltd
17544  DB  62,92                               ; ds            pop %rsp
17545  DB  143                                 ; (bad)
17546  DB  50,63                               ; xor           (%rdi),%bh
17547  DB  92                                  ; pop           %rsp
17548  DB  143                                 ; (bad)
17549  DB  50,63                               ; xor           (%rdi),%bh
17550  DB  92                                  ; pop           %rsp
17551  DB  143                                 ; (bad)
17552  DB  50,63                               ; xor           (%rdi),%bh
17553  DB  92                                  ; pop           %rsp
17554  DB  143                                 ; (bad)
17555  DB  50,63                               ; xor           (%rdi),%bh
17556  DB  10,215                              ; or            %bh,%dl
17557  DB  35,59                               ; and           (%rbx),%edi
17558  DB  10,215                              ; or            %bh,%dl
17559  DB  35,59                               ; and           (%rbx),%edi
17560  DB  10,215                              ; or            %bh,%dl
17561  DB  35,59                               ; and           (%rbx),%edi
17562  DB  10,215                              ; or            %bh,%dl
17563  DB  35,59                               ; and           (%rbx),%edi
17564  DB  174                                 ; scas          %es:(%rdi),%al
17565  DB  71,97                               ; rex.RXB       (bad)
17566  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
17567  DB  174                                 ; scas          %es:(%rdi),%al
17568  DB  71,97                               ; rex.RXB       (bad)
17569  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
17570  DB  82                                  ; push          %rdx
17571  DB  184,78,65,82,184                    ; mov           $0xb852414e,%eax
17572  DB  78                                  ; rex.WRX
17573  DB  65,82                               ; push          %r10
17574  DB  184,78,65,82,184                    ; mov           $0xb852414e,%eax
17575  DB  78                                  ; rex.WRX
17576  DB  65,57,215                           ; cmp           %edx,%r15d
17577  DB  32,187,57,215,32,187                ; and           %bh,-0x44df28c7(%rbx)
17578  DB  57,215                              ; cmp           %edx,%edi
17579  DB  32,187,57,215,32,187                ; and           %bh,-0x44df28c7(%rbx)
17580  DB  186,159,98,60,186                   ; mov           $0xba3c629f,%edx
17581  DB  159                                 ; lahf
17582  DB  98                                  ; (bad)
17583  DB  60,186                              ; cmp           $0xba,%al
17584  DB  159                                 ; lahf
17585  DB  98                                  ; (bad)
17586  DB  60,186                              ; cmp           $0xba,%al
17587  DB  159                                 ; lahf
17588  DB  98                                  ; (bad)
17589  DB  60,109                              ; cmp           $0x6d,%al
17590  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
17591  DB  144                                 ; nop
17592  DB  63                                  ; (bad)
17593  DB  109                                 ; insl          (%dx),%es:(%rdi)
17594  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
17595  DB  144                                 ; nop
17596  DB  63                                  ; (bad)
17597  DB  109                                 ; insl          (%dx),%es:(%rdi)
17598  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
17599  DB  144                                 ; nop
17600  DB  63                                  ; (bad)
17601  DB  109                                 ; insl          (%dx),%es:(%rdi)
17602  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
17603  DB  144                                 ; nop
17604  DB  63                                  ; (bad)
17605  DB  252                                 ; cld
17606  DB  191,16,62,252,191                   ; mov           $0xbffc3e10,%edi
17607  DB  16,62                               ; adc           %bh,(%rsi)
17608  DB  252                                 ; cld
17609  DB  191,16,62,252,191                   ; mov           $0xbffc3e10,%edi
17610  DB  16,62                               ; adc           %bh,(%rsi)
17611  DB  168,177                             ; test          $0xb1,%al
17612  DB  152                                 ; cwtl
17613  DB  59,168,177,152,59,168               ; cmp           -0x57c4674f(%rax),%ebp
17614  DB  177,152                             ; mov           $0x98,%cl
17615  DB  59,168,177,152,59,0                 ; cmp           0x3b98b1(%rax),%ebp
17616  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17617  DB  63                                  ; (bad)
17618  DB  0,0                                 ; add           %al,(%rax)
17619  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17620  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
17621  DB  64,0,0                              ; add           %al,(%rax)
17622  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17623  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17624  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17625  DB  0,64,0                              ; add           %al,0x0(%rax)
17626  DB  0,0                                 ; add           %al,(%rax)
17627  DB  64,0,0                              ; add           %al,(%rax)
17628  DB  0,64,0                              ; add           %al,0x0(%rax)
17629  DB  0,0                                 ; add           %al,(%rax)
17630  DB  64,0,0                              ; add           %al,(%rax)
17631  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17632  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17633  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17634  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
17635  DB  42,62                               ; sub           (%rsi),%bh
17636  DB  171                                 ; stos          %eax,%es:(%rdi)
17637  DB  170                                 ; stos          %al,%es:(%rdi)
17638  DB  42,62                               ; sub           (%rsi),%bh
17639  DB  171                                 ; stos          %eax,%es:(%rdi)
17640  DB  170                                 ; stos          %al,%es:(%rdi)
17641  DB  42,62                               ; sub           (%rsi),%bh
17642  DB  171                                 ; stos          %eax,%es:(%rdi)
17643  DB  170                                 ; stos          %al,%es:(%rdi)
17644  DB  42,62                               ; sub           (%rsi),%bh
17645  DB  0,0                                 ; add           %al,(%rax)
17646  DB  0,63                                ; add           %bh,(%rdi)
17647  DB  0,0                                 ; add           %al,(%rax)
17648  DB  0,63                                ; add           %bh,(%rdi)
17649  DB  0,0                                 ; add           %al,(%rax)
17650  DB  0,63                                ; add           %bh,(%rdi)
17651  DB  0,0                                 ; add           %al,(%rax)
17652  DB  0,63                                ; add           %bh,(%rdi)
17653  DB  0,0                                 ; add           %al,(%rax)
17654  DB  0,63                                ; add           %bh,(%rdi)
17655  DB  0,0                                 ; add           %al,(%rax)
17656  DB  0,63                                ; add           %bh,(%rdi)
17657  DB  0,0                                 ; add           %al,(%rax)
17658  DB  0,63                                ; add           %bh,(%rdi)
17659  DB  0,0                                 ; add           %al,(%rax)
17660  DB  0,63                                ; add           %bh,(%rdi)
17661  DB  171                                 ; stos          %eax,%es:(%rdi)
17662  DB  170                                 ; stos          %al,%es:(%rdi)
17663  DB  170                                 ; stos          %al,%es:(%rdi)
17664  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
17665  DB  170                                 ; stos          %al,%es:(%rdi)
17666  DB  170                                 ; stos          %al,%es:(%rdi)
17667  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
17668  DB  170                                 ; stos          %al,%es:(%rdi)
17669  DB  170                                 ; stos          %al,%es:(%rdi)
17670  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
17671  DB  170                                 ; stos          %al,%es:(%rdi)
17672  DB  170                                 ; stos          %al,%es:(%rdi)
17673  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
17674  DB  170                                 ; stos          %al,%es:(%rdi)
17675  DB  42,63                               ; sub           (%rdi),%bh
17676  DB  171                                 ; stos          %eax,%es:(%rdi)
17677  DB  170                                 ; stos          %al,%es:(%rdi)
17678  DB  42,63                               ; sub           (%rdi),%bh
17679  DB  171                                 ; stos          %eax,%es:(%rdi)
17680  DB  170                                 ; stos          %al,%es:(%rdi)
17681  DB  42,63                               ; sub           (%rdi),%bh
17682  DB  171                                 ; stos          %eax,%es:(%rdi)
17683  DB  170                                 ; stos          %al,%es:(%rdi)
17684  DB  42,63                               ; sub           (%rdi),%bh
17685  DB  0,0                                 ; add           %al,(%rax)
17686  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17687  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17688  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17689  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
17690  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17691  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17692  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
17693  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
17694  DB  42,62                               ; sub           (%rsi),%bh
17695  DB  171                                 ; stos          %eax,%es:(%rdi)
17696  DB  170                                 ; stos          %al,%es:(%rdi)
17697  DB  42,62                               ; sub           (%rsi),%bh
17698  DB  171                                 ; stos          %eax,%es:(%rdi)
17699  DB  170                                 ; stos          %al,%es:(%rdi)
17700  DB  42,62                               ; sub           (%rsi),%bh
17701  DB  171                                 ; stos          %eax,%es:(%rdi)
17702  DB  170                                 ; stos          %al,%es:(%rdi)
17703  DB  42,62                               ; sub           (%rsi),%bh
17704  DB  171                                 ; stos          %eax,%es:(%rdi)
17705  DB  170                                 ; stos          %al,%es:(%rdi)
17706  DB  170                                 ; stos          %al,%es:(%rdi)
17707  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
17708  DB  171                                 ; stos          %eax,%es:(%rdi)
17709  DB  170                                 ; stos          %al,%es:(%rdi)
17710  DB  170                                 ; stos          %al,%es:(%rdi)
17711  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
17712  DB  255,0                               ; incl          (%rax)
17713  DB  0,0                                 ; add           %al,(%rax)
17714  DB  255,0                               ; incl          (%rax)
17715  DB  0,0                                 ; add           %al,(%rax)
17716  DB  255,0                               ; incl          (%rax)
17717  DB  0,0                                 ; add           %al,(%rax)
17718  DB  255,0                               ; incl          (%rax)
17719  DB  0,0                                 ; add           %al,(%rax)
17720  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17721  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
17722  DB  128,128,59,255,0,0,0                ; addb          $0x0,0xff3b(%rax)
17723  DB  255,0                               ; incl          (%rax)
17724  DB  0,0                                 ; add           %al,(%rax)
17725  DB  255,0                               ; incl          (%rax)
17726  DB  0,0                                 ; add           %al,(%rax)
17727  DB  255,0                               ; incl          (%rax)
17728  DB  0,0                                 ; add           %al,(%rax)
17729  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17730  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
17731  DB  128,128,59,0,248,0,0                ; addb          $0x0,0xf8003b(%rax)
17732  DB  0,248                               ; add           %bh,%al
17733  DB  0,0                                 ; add           %al,(%rax)
17734  DB  0,248                               ; add           %bh,%al
17735  DB  0,0                                 ; add           %al,(%rax)
17736  DB  0,248                               ; add           %bh,%al
17737  DB  0,0                                 ; add           %al,(%rax)
17738  DB  8,33                                ; or            %ah,(%rcx)
17739  DB  132,55                              ; test          %dh,(%rdi)
17740  DB  8,33                                ; or            %ah,(%rcx)
17741  DB  132,55                              ; test          %dh,(%rdi)
17742  DB  8,33                                ; or            %ah,(%rcx)
17743  DB  132,55                              ; test          %dh,(%rdi)
17744  DB  8,33                                ; or            %ah,(%rcx)
17745  DB  132,55                              ; test          %dh,(%rdi)
17746  DB  224,7                               ; loopne        5759 <.literal16+0x509>
17747  DB  0,0                                 ; add           %al,(%rax)
17748  DB  224,7                               ; loopne        575d <.literal16+0x50d>
17749  DB  0,0                                 ; add           %al,(%rax)
17750  DB  224,7                               ; loopne        5761 <.literal16+0x511>
17751  DB  0,0                                 ; add           %al,(%rax)
17752  DB  224,7                               ; loopne        5765 <.literal16+0x515>
17753  DB  0,0                                 ; add           %al,(%rax)
17754  DB  33,8                                ; and           %ecx,(%rax)
17755  DB  2,58                                ; add           (%rdx),%bh
17756  DB  33,8                                ; and           %ecx,(%rax)
17757  DB  2,58                                ; add           (%rdx),%bh
17758  DB  33,8                                ; and           %ecx,(%rax)
17759  DB  2,58                                ; add           (%rdx),%bh
17760  DB  33,8                                ; and           %ecx,(%rax)
17761  DB  2,58                                ; add           (%rdx),%bh
17762  DB  31                                  ; (bad)
17763  DB  0,0                                 ; add           %al,(%rax)
17764  DB  0,31                                ; add           %bl,(%rdi)
17765  DB  0,0                                 ; add           %al,(%rax)
17766  DB  0,31                                ; add           %bl,(%rdi)
17767  DB  0,0                                 ; add           %al,(%rax)
17768  DB  0,31                                ; add           %bl,(%rdi)
17769  DB  0,0                                 ; add           %al,(%rax)
17770  DB  0,8                                 ; add           %cl,(%rax)
17771  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
17772  DB  8,33                                ; or            %ah,(%rcx)
17773  DB  4,61                                ; add           $0x3d,%al
17774  DB  8,33                                ; or            %ah,(%rcx)
17775  DB  4,61                                ; add           $0x3d,%al
17776  DB  255,0                               ; incl          (%rax)
17777  DB  0,0                                 ; add           %al,(%rax)
17778  DB  255,0                               ; incl          (%rax)
17779  DB  0,0                                 ; add           %al,(%rax)
17780  DB  255,0                               ; incl          (%rax)
17781  DB  0,0                                 ; add           %al,(%rax)
17782  DB  255,0                               ; incl          (%rax)
17783  DB  0,0                                 ; add           %al,(%rax)
17784  DB  1,255                               ; add           %edi,%edi
17785  DB  255                                 ; (bad)
17786  DB  255,5,255,255,255,9                 ; incl          0x9ffffff(%rip)        # a0057a8 <_sk_callback_sse41+0xa000628>
17787  DB  255                                 ; (bad)
17788  DB  255                                 ; (bad)
17789  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 30057b0 <_sk_callback_sse41+0x3000630>
17790  DB  255                                 ; (bad)
17791  DB  255                                 ; (bad)
17792  DB  255,6                               ; incl          (%rsi)
17793  DB  255                                 ; (bad)
17794  DB  255                                 ; (bad)
17795  DB  255,10                              ; decl          (%rdx)
17796  DB  255                                 ; (bad)
17797  DB  255                                 ; (bad)
17798  DB  255,14                              ; decl          (%rsi)
17799  DB  255                                 ; (bad)
17800  DB  255                                 ; (bad)
17801  DB  255,129,128,128,59,129              ; incl          -0x7ec47f80(%rcx)
17802  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
17803  DB  129,128,128,59,255,0,255,0,255,0    ; addl          $0xff00ff,0xff3b80(%rax)
17804  DB  255,0                               ; incl          (%rax)
17805  DB  0,0                                 ; add           %al,(%rax)
17806  DB  0,0                                 ; add           %al,(%rax)
17807  DB  0,0                                 ; add           %al,(%rax)
17808  DB  0,0                                 ; add           %al,(%rax)
17809  DB  8,255                               ; or            %bh,%bh
17810  DB  10,255                              ; or            %bh,%bh
17811  DB  12,255                              ; or            $0xff,%al
17812  DB  14                                  ; (bad)
17813  DB  255,0                               ; incl          (%rax)
17814  DB  0,0                                 ; add           %al,(%rax)
17815  DB  0,0                                 ; add           %al,(%rax)
17816  DB  0,0                                 ; add           %al,(%rax)
17817  DB  0,128,0,128,55,128                  ; add           %al,-0x7fc88000(%rax)
17818  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
17819  DB  55                                  ; (bad)
17820  DB  128,0,128                           ; addb          $0x80,(%rax)
17821  DB  55                                  ; (bad)
17822  DB  255,0                               ; incl          (%rax)
17823  DB  255,0                               ; incl          (%rax)
17824  DB  255,0                               ; incl          (%rax)
17825  DB  255,0                               ; incl          (%rax)
17826  DB  0,0                                 ; add           %al,(%rax)
17827  DB  0,0                                 ; add           %al,(%rax)
17828  DB  0,0                                 ; add           %al,(%rax)
17829  DB  0,0                                 ; add           %al,(%rax)
17830  DB  8,128,10,128,12,128                 ; or            %al,-0x7ff37ff6(%rax)
17831  DB  14                                  ; (bad)
17832  DB  128,0,0                             ; addb          $0x0,(%rax)
17833  DB  0,0                                 ; add           %al,(%rax)
17834  DB  0,0                                 ; add           %al,(%rax)
17835  DB  0,0                                 ; add           %al,(%rax)
17836  DB  0,0                                 ; add           %al,(%rax)
17837  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17838  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17839  DB  63                                  ; (bad)
17840  DB  0,0                                 ; add           %al,(%rax)
17841  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17842  DB  0,127,67                            ; add           %bh,0x43(%rdi)
17843  DB  0,0                                 ; add           %al,(%rax)
17844  DB  127,67                              ; jg            587b <.literal16+0x62b>
17845  DB  0,0                                 ; add           %al,(%rax)
17846  DB  127,67                              ; jg            587f <.literal16+0x62f>
17847  DB  0,0                                 ; add           %al,(%rax)
17848  DB  127,67                              ; jg            5883 <.literal16+0x633>
17849  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17850  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
17851  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
17852  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
17853  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
17854  DB  0,0                                 ; add           %al,(%rax)
17855  DB  52,0                                ; xor           $0x0,%al
17856  DB  0,0                                 ; add           %al,(%rax)
17857  DB  52,0                                ; xor           $0x0,%al
17858  DB  0,0                                 ; add           %al,(%rax)
17859  DB  52,0                                ; xor           $0x0,%al
17860  DB  0,0                                 ; add           %al,(%rax)
17861  DB  52,255                              ; xor           $0xff,%al
17862  DB  255                                 ; (bad)
17863  DB  127,0                               ; jg            5874 <.literal16+0x624>
17864  DB  255                                 ; (bad)
17865  DB  255                                 ; (bad)
17866  DB  127,0                               ; jg            5878 <.literal16+0x628>
17867  DB  255                                 ; (bad)
17868  DB  255                                 ; (bad)
17869  DB  127,0                               ; jg            587c <.literal16+0x62c>
17870  DB  255                                 ; (bad)
17871  DB  255                                 ; (bad)
17872  DB  127,0                               ; jg            5880 <.literal16+0x630>
17873  DB  0,0                                 ; add           %al,(%rax)
17874  DB  0,63                                ; add           %bh,(%rdi)
17875  DB  0,0                                 ; add           %al,(%rax)
17876  DB  0,63                                ; add           %bh,(%rdi)
17877  DB  0,0                                 ; add           %al,(%rax)
17878  DB  0,63                                ; add           %bh,(%rdi)
17879  DB  0,0                                 ; add           %al,(%rax)
17880  DB  0,63                                ; add           %bh,(%rdi)
17881  DB  119,115                             ; ja            5905 <.literal16+0x6b5>
17882  DB  248                                 ; clc
17883  DB  194,119,115                         ; retq          $0x7377
17884  DB  248                                 ; clc
17885  DB  194,119,115                         ; retq          $0x7377
17886  DB  248                                 ; clc
17887  DB  194,119,115                         ; retq          $0x7377
17888  DB  248                                 ; clc
17889  DB  194,117,191                         ; retq          $0xbf75
17890  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17891  DB  63                                  ; (bad)
17892  DB  117,191                             ; jne           5869 <.literal16+0x619>
17893  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17894  DB  63                                  ; (bad)
17895  DB  249                                 ; stc
17896  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17897  DB  249                                 ; stc
17898  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17899  DB  249                                 ; stc
17900  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17901  DB  249                                 ; stc
17902  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17903  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
17904  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a398aa <_sk_callback_sse41+0xffffffffe9a3472a>
17905  DB  220,63                              ; fdivrl        (%rdi)
17906  DB  81                                  ; push          %rcx
17907  DB  140,242                             ; mov           %?,%edx
17908  DB  66,81                               ; rex.X         push %rcx
17909  DB  140,242                             ; mov           %?,%edx
17910  DB  66,81                               ; rex.X         push %rcx
17911  DB  140,242                             ; mov           %?,%edx
17912  DB  66,81                               ; rex.X         push %rcx
17913  DB  140,242                             ; mov           %?,%edx
17914  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
17915  DB  63                                  ; (bad)
17916  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
17917  DB  63                                  ; (bad)
17918  DB  248                                 ; clc
17919  DB  245                                 ; cmc
17920  DB  154                                 ; (bad)
17921  DB  64,248                              ; rex           clc
17922  DB  245                                 ; cmc
17923  DB  154                                 ; (bad)
17924  DB  64,248                              ; rex           clc
17925  DB  245                                 ; cmc
17926  DB  154                                 ; (bad)
17927  DB  64,248                              ; rex           clc
17928  DB  245                                 ; cmc
17929  DB  154                                 ; (bad)
17930  DB  64,254                              ; rex           (bad)
17931  DB  210,221                             ; rcr           %cl,%ch
17932  DB  65,254                              ; rex.B         (bad)
17933  DB  210,221                             ; rcr           %cl,%ch
17934  DB  65,254                              ; rex.B         (bad)
17935  DB  210,221                             ; rcr           %cl,%ch
17936  DB  65,254                              ; rex.B         (bad)
17937  DB  210,221                             ; rcr           %cl,%ch
17938  DB  65,0,0                              ; add           %al,(%r8)
17939  DB  0,75,0                              ; add           %cl,0x0(%rbx)
17940  DB  0,0                                 ; add           %al,(%rax)
17941  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
17942  DB  0,75,0                              ; add           %cl,0x0(%rbx)
17943  DB  0,0                                 ; add           %al,(%rax)
17944  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
17945  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17946  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
17947  DB  63                                  ; (bad)
17948  DB  0,0                                 ; add           %al,(%rax)
17949  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
17950  DB  0,0                                 ; add           %al,(%rax)
17951  DB  52,0                                ; xor           $0x0,%al
17952  DB  0,0                                 ; add           %al,(%rax)
17953  DB  52,0                                ; xor           $0x0,%al
17954  DB  0,0                                 ; add           %al,(%rax)
17955  DB  52,0                                ; xor           $0x0,%al
17956  DB  0,0                                 ; add           %al,(%rax)
17957  DB  52,255                              ; xor           $0xff,%al
17958  DB  255                                 ; (bad)
17959  DB  127,0                               ; jg            5944 <.literal16+0x6f4>
17960  DB  255                                 ; (bad)
17961  DB  255                                 ; (bad)
17962  DB  127,0                               ; jg            5948 <.literal16+0x6f8>
17963  DB  255                                 ; (bad)
17964  DB  255                                 ; (bad)
17965  DB  127,0                               ; jg            594c <.literal16+0x6fc>
17966  DB  255                                 ; (bad)
17967  DB  255                                 ; (bad)
17968  DB  127,0                               ; jg            5950 <.literal16+0x700>
17969  DB  0,0                                 ; add           %al,(%rax)
17970  DB  0,63                                ; add           %bh,(%rdi)
17971  DB  0,0                                 ; add           %al,(%rax)
17972  DB  0,63                                ; add           %bh,(%rdi)
17973  DB  0,0                                 ; add           %al,(%rax)
17974  DB  0,63                                ; add           %bh,(%rdi)
17975  DB  0,0                                 ; add           %al,(%rax)
17976  DB  0,63                                ; add           %bh,(%rdi)
17977  DB  119,115                             ; ja            59d5 <.literal16+0x785>
17978  DB  248                                 ; clc
17979  DB  194,119,115                         ; retq          $0x7377
17980  DB  248                                 ; clc
17981  DB  194,119,115                         ; retq          $0x7377
17982  DB  248                                 ; clc
17983  DB  194,119,115                         ; retq          $0x7377
17984  DB  248                                 ; clc
17985  DB  194,117,191                         ; retq          $0xbf75
17986  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17987  DB  63                                  ; (bad)
17988  DB  117,191                             ; jne           5939 <.literal16+0x6e9>
17989  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
17990  DB  63                                  ; (bad)
17991  DB  249                                 ; stc
17992  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17993  DB  249                                 ; stc
17994  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17995  DB  249                                 ; stc
17996  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17997  DB  249                                 ; stc
17998  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
17999  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
18000  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a3997a <_sk_callback_sse41+0xffffffffe9a347fa>
18001  DB  220,63                              ; fdivrl        (%rdi)
18002  DB  81                                  ; push          %rcx
18003  DB  140,242                             ; mov           %?,%edx
18004  DB  66,81                               ; rex.X         push %rcx
18005  DB  140,242                             ; mov           %?,%edx
18006  DB  66,81                               ; rex.X         push %rcx
18007  DB  140,242                             ; mov           %?,%edx
18008  DB  66,81                               ; rex.X         push %rcx
18009  DB  140,242                             ; mov           %?,%edx
18010  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
18011  DB  63                                  ; (bad)
18012  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
18013  DB  63                                  ; (bad)
18014  DB  248                                 ; clc
18015  DB  245                                 ; cmc
18016  DB  154                                 ; (bad)
18017  DB  64,248                              ; rex           clc
18018  DB  245                                 ; cmc
18019  DB  154                                 ; (bad)
18020  DB  64,248                              ; rex           clc
18021  DB  245                                 ; cmc
18022  DB  154                                 ; (bad)
18023  DB  64,248                              ; rex           clc
18024  DB  245                                 ; cmc
18025  DB  154                                 ; (bad)
18026  DB  64,254                              ; rex           (bad)
18027  DB  210,221                             ; rcr           %cl,%ch
18028  DB  65,254                              ; rex.B         (bad)
18029  DB  210,221                             ; rcr           %cl,%ch
18030  DB  65,254                              ; rex.B         (bad)
18031  DB  210,221                             ; rcr           %cl,%ch
18032  DB  65,254                              ; rex.B         (bad)
18033  DB  210,221                             ; rcr           %cl,%ch
18034  DB  65,0,0                              ; add           %al,(%r8)
18035  DB  0,75,0                              ; add           %cl,0x0(%rbx)
18036  DB  0,0                                 ; add           %al,(%rax)
18037  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
18038  DB  0,75,0                              ; add           %cl,0x0(%rbx)
18039  DB  0,0                                 ; add           %al,(%rax)
18040  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
18041  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18042  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18043  DB  63                                  ; (bad)
18044  DB  0,0                                 ; add           %al,(%rax)
18045  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18046  DB  0,0                                 ; add           %al,(%rax)
18047  DB  52,0                                ; xor           $0x0,%al
18048  DB  0,0                                 ; add           %al,(%rax)
18049  DB  52,0                                ; xor           $0x0,%al
18050  DB  0,0                                 ; add           %al,(%rax)
18051  DB  52,0                                ; xor           $0x0,%al
18052  DB  0,0                                 ; add           %al,(%rax)
18053  DB  52,255                              ; xor           $0xff,%al
18054  DB  255                                 ; (bad)
18055  DB  127,0                               ; jg            5a14 <.literal16+0x7c4>
18056  DB  255                                 ; (bad)
18057  DB  255                                 ; (bad)
18058  DB  127,0                               ; jg            5a18 <.literal16+0x7c8>
18059  DB  255                                 ; (bad)
18060  DB  255                                 ; (bad)
18061  DB  127,0                               ; jg            5a1c <.literal16+0x7cc>
18062  DB  255                                 ; (bad)
18063  DB  255                                 ; (bad)
18064  DB  127,0                               ; jg            5a20 <.literal16+0x7d0>
18065  DB  0,0                                 ; add           %al,(%rax)
18066  DB  0,63                                ; add           %bh,(%rdi)
18067  DB  0,0                                 ; add           %al,(%rax)
18068  DB  0,63                                ; add           %bh,(%rdi)
18069  DB  0,0                                 ; add           %al,(%rax)
18070  DB  0,63                                ; add           %bh,(%rdi)
18071  DB  0,0                                 ; add           %al,(%rax)
18072  DB  0,63                                ; add           %bh,(%rdi)
18073  DB  119,115                             ; ja            5aa5 <.literal16+0x855>
18074  DB  248                                 ; clc
18075  DB  194,119,115                         ; retq          $0x7377
18076  DB  248                                 ; clc
18077  DB  194,119,115                         ; retq          $0x7377
18078  DB  248                                 ; clc
18079  DB  194,119,115                         ; retq          $0x7377
18080  DB  248                                 ; clc
18081  DB  194,117,191                         ; retq          $0xbf75
18082  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
18083  DB  63                                  ; (bad)
18084  DB  117,191                             ; jne           5a09 <.literal16+0x7b9>
18085  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
18086  DB  63                                  ; (bad)
18087  DB  249                                 ; stc
18088  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
18089  DB  249                                 ; stc
18090  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
18091  DB  249                                 ; stc
18092  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
18093  DB  249                                 ; stc
18094  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
18095  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
18096  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a39a4a <_sk_callback_sse41+0xffffffffe9a348ca>
18097  DB  220,63                              ; fdivrl        (%rdi)
18098  DB  81                                  ; push          %rcx
18099  DB  140,242                             ; mov           %?,%edx
18100  DB  66,81                               ; rex.X         push %rcx
18101  DB  140,242                             ; mov           %?,%edx
18102  DB  66,81                               ; rex.X         push %rcx
18103  DB  140,242                             ; mov           %?,%edx
18104  DB  66,81                               ; rex.X         push %rcx
18105  DB  140,242                             ; mov           %?,%edx
18106  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
18107  DB  63                                  ; (bad)
18108  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
18109  DB  63                                  ; (bad)
18110  DB  248                                 ; clc
18111  DB  245                                 ; cmc
18112  DB  154                                 ; (bad)
18113  DB  64,248                              ; rex           clc
18114  DB  245                                 ; cmc
18115  DB  154                                 ; (bad)
18116  DB  64,248                              ; rex           clc
18117  DB  245                                 ; cmc
18118  DB  154                                 ; (bad)
18119  DB  64,248                              ; rex           clc
18120  DB  245                                 ; cmc
18121  DB  154                                 ; (bad)
18122  DB  64,254                              ; rex           (bad)
18123  DB  210,221                             ; rcr           %cl,%ch
18124  DB  65,254                              ; rex.B         (bad)
18125  DB  210,221                             ; rcr           %cl,%ch
18126  DB  65,254                              ; rex.B         (bad)
18127  DB  210,221                             ; rcr           %cl,%ch
18128  DB  65,254                              ; rex.B         (bad)
18129  DB  210,221                             ; rcr           %cl,%ch
18130  DB  65,0,0                              ; add           %al,(%r8)
18131  DB  0,75,0                              ; add           %cl,0x0(%rbx)
18132  DB  0,0                                 ; add           %al,(%rax)
18133  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
18134  DB  0,75,0                              ; add           %cl,0x0(%rbx)
18135  DB  0,0                                 ; add           %al,(%rax)
18136  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
18137  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18138  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18139  DB  63                                  ; (bad)
18140  DB  0,0                                 ; add           %al,(%rax)
18141  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18142  DB  0,0                                 ; add           %al,(%rax)
18143  DB  52,0                                ; xor           $0x0,%al
18144  DB  0,0                                 ; add           %al,(%rax)
18145  DB  52,0                                ; xor           $0x0,%al
18146  DB  0,0                                 ; add           %al,(%rax)
18147  DB  52,0                                ; xor           $0x0,%al
18148  DB  0,0                                 ; add           %al,(%rax)
18149  DB  52,255                              ; xor           $0xff,%al
18150  DB  255                                 ; (bad)
18151  DB  127,0                               ; jg            5ae4 <.literal16+0x894>
18152  DB  255                                 ; (bad)
18153  DB  255                                 ; (bad)
18154  DB  127,0                               ; jg            5ae8 <.literal16+0x898>
18155  DB  255                                 ; (bad)
18156  DB  255                                 ; (bad)
18157  DB  127,0                               ; jg            5aec <.literal16+0x89c>
18158  DB  255                                 ; (bad)
18159  DB  255                                 ; (bad)
18160  DB  127,0                               ; jg            5af0 <.literal16+0x8a0>
18161  DB  0,0                                 ; add           %al,(%rax)
18162  DB  0,63                                ; add           %bh,(%rdi)
18163  DB  0,0                                 ; add           %al,(%rax)
18164  DB  0,63                                ; add           %bh,(%rdi)
18165  DB  0,0                                 ; add           %al,(%rax)
18166  DB  0,63                                ; add           %bh,(%rdi)
18167  DB  0,0                                 ; add           %al,(%rax)
18168  DB  0,63                                ; add           %bh,(%rdi)
18169  DB  119,115                             ; ja            5b75 <.literal16+0x925>
18170  DB  248                                 ; clc
18171  DB  194,119,115                         ; retq          $0x7377
18172  DB  248                                 ; clc
18173  DB  194,119,115                         ; retq          $0x7377
18174  DB  248                                 ; clc
18175  DB  194,119,115                         ; retq          $0x7377
18176  DB  248                                 ; clc
18177  DB  194,117,191                         ; retq          $0xbf75
18178  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
18179  DB  63                                  ; (bad)
18180  DB  117,191                             ; jne           5ad9 <.literal16+0x889>
18181  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
18182  DB  63                                  ; (bad)
18183  DB  249                                 ; stc
18184  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
18185  DB  249                                 ; stc
18186  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
18187  DB  249                                 ; stc
18188  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
18189  DB  249                                 ; stc
18190  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
18191  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
18192  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a39b1a <_sk_callback_sse41+0xffffffffe9a3499a>
18193  DB  220,63                              ; fdivrl        (%rdi)
18194  DB  81                                  ; push          %rcx
18195  DB  140,242                             ; mov           %?,%edx
18196  DB  66,81                               ; rex.X         push %rcx
18197  DB  140,242                             ; mov           %?,%edx
18198  DB  66,81                               ; rex.X         push %rcx
18199  DB  140,242                             ; mov           %?,%edx
18200  DB  66,81                               ; rex.X         push %rcx
18201  DB  140,242                             ; mov           %?,%edx
18202  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
18203  DB  63                                  ; (bad)
18204  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
18205  DB  63                                  ; (bad)
18206  DB  248                                 ; clc
18207  DB  245                                 ; cmc
18208  DB  154                                 ; (bad)
18209  DB  64,248                              ; rex           clc
18210  DB  245                                 ; cmc
18211  DB  154                                 ; (bad)
18212  DB  64,248                              ; rex           clc
18213  DB  245                                 ; cmc
18214  DB  154                                 ; (bad)
18215  DB  64,248                              ; rex           clc
18216  DB  245                                 ; cmc
18217  DB  154                                 ; (bad)
18218  DB  64,254                              ; rex           (bad)
18219  DB  210,221                             ; rcr           %cl,%ch
18220  DB  65,254                              ; rex.B         (bad)
18221  DB  210,221                             ; rcr           %cl,%ch
18222  DB  65,254                              ; rex.B         (bad)
18223  DB  210,221                             ; rcr           %cl,%ch
18224  DB  65,254                              ; rex.B         (bad)
18225  DB  210,221                             ; rcr           %cl,%ch
18226  DB  65,0,0                              ; add           %al,(%r8)
18227  DB  0,75,0                              ; add           %cl,0x0(%rbx)
18228  DB  0,0                                 ; add           %al,(%rax)
18229  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
18230  DB  0,75,0                              ; add           %cl,0x0(%rbx)
18231  DB  0,0                                 ; add           %al,(%rax)
18232  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
18233  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18234  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18235  DB  63                                  ; (bad)
18236  DB  0,0                                 ; add           %al,(%rax)
18237  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18238  DB  0,200                               ; add           %cl,%al
18239  DB  66,0,0                              ; rex.X         add %al,(%rax)
18240  DB  200,66,0,0                          ; enterq        $0x42,$0x0
18241  DB  200,66,0,0                          ; enterq        $0x42,$0x0
18242  DB  200,66,0,0                          ; enterq        $0x42,$0x0
18243  DB  127,67                              ; jg            5bf7 <.literal16+0x9a7>
18244  DB  0,0                                 ; add           %al,(%rax)
18245  DB  127,67                              ; jg            5bfb <.literal16+0x9ab>
18246  DB  0,0                                 ; add           %al,(%rax)
18247  DB  127,67                              ; jg            5bff <.literal16+0x9af>
18248  DB  0,0                                 ; add           %al,(%rax)
18249  DB  127,67                              ; jg            5c03 <.literal16+0x9b3>
18250  DB  0,0                                 ; add           %al,(%rax)
18251  DB  0,195                               ; add           %al,%bl
18252  DB  0,0                                 ; add           %al,(%rax)
18253  DB  0,195                               ; add           %al,%bl
18254  DB  0,0                                 ; add           %al,(%rax)
18255  DB  0,195                               ; add           %al,%bl
18256  DB  0,0                                 ; add           %al,(%rax)
18257  DB  0,195                               ; add           %al,%bl
18258  DB  0,0                                 ; add           %al,(%rax)
18259  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
18260  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
18261  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
18262  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
18263  DB  13,60,203,61,13                     ; or            $0xd3dcb3c,%eax
18264  DB  60,203                              ; cmp           $0xcb,%al
18265  DB  61,13,60,203,61                     ; cmp           $0x3dcb3c0d,%eax
18266  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
18267  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
18268  DB  3,59                                ; add           (%rbx),%edi
18269  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
18270  DB  18,3                                ; adc           (%rbx),%al
18271  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
18272  DB  3,59                                ; add           (%rbx),%edi
18273  DB  10,215                              ; or            %bh,%dl
18274  DB  163,59,10,215,163,59,10,215,163     ; movabs        %eax,0xa3d70a3ba3d70a3b
18275  DB  59,10                               ; cmp           (%rdx),%ecx
18276  DB  215                                 ; xlat          %ds:(%rbx)
18277  DB  163,59,194,24,17,60,194,24,17       ; movabs        %eax,0x1118c23c1118c23b
18278  DB  60,194                              ; cmp           $0xc2,%al
18279  DB  24,17                               ; sbb           %dl,(%rcx)
18280  DB  60,194                              ; cmp           $0xc2,%al
18281  DB  24,17                               ; sbb           %dl,(%rcx)
18282  DB  60,203                              ; cmp           $0xcb,%al
18283  DB  61,13,190,203,61                    ; cmp           $0x3dcbbe0d,%eax
18284  DB  13,190,203,61,13                    ; or            $0xd3dcbbe,%eax
18285  DB  190,203,61,13,190                   ; mov           $0xbe0d3dcb,%esi
18286  DB  80                                  ; push          %rax
18287  DB  128,3,62                            ; addb          $0x3e,(%rbx)
18288  DB  80                                  ; push          %rax
18289  DB  128,3,62                            ; addb          $0x3e,(%rbx)
18290  DB  80                                  ; push          %rax
18291  DB  128,3,62                            ; addb          $0x3e,(%rbx)
18292  DB  80                                  ; push          %rax
18293  DB  128,3,62                            ; addb          $0x3e,(%rbx)
18294  DB  31                                  ; (bad)
18295  DB  215                                 ; xlat          %ds:(%rbx)
18296  DB  118,63                              ; jbe           5c83 <.literal16+0xa33>
18297  DB  31                                  ; (bad)
18298  DB  215                                 ; xlat          %ds:(%rbx)
18299  DB  118,63                              ; jbe           5c87 <.literal16+0xa37>
18300  DB  31                                  ; (bad)
18301  DB  215                                 ; xlat          %ds:(%rbx)
18302  DB  118,63                              ; jbe           5c8b <.literal16+0xa3b>
18303  DB  31                                  ; (bad)
18304  DB  215                                 ; xlat          %ds:(%rbx)
18305  DB  118,63                              ; jbe           5c8f <.literal16+0xa3f>
18306  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
18307  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
18308  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
18309  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
18310  DB  255,0                               ; incl          (%rax)
18311  DB  0,0                                 ; add           %al,(%rax)
18312  DB  255,0                               ; incl          (%rax)
18313  DB  0,0                                 ; add           %al,(%rax)
18314  DB  255,0                               ; incl          (%rax)
18315  DB  0,0                                 ; add           %al,(%rax)
18316  DB  255,0                               ; incl          (%rax)
18317  DB  0,0                                 ; add           %al,(%rax)
18318  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
18319  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
18320  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
18321  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
18322  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
18323  DB  0,127,67                            ; add           %bh,0x43(%rdi)
18324  DB  0,0                                 ; add           %al,(%rax)
18325  DB  127,67                              ; jg            5cdb <.literal16+0xa8b>
18326  DB  0,0                                 ; add           %al,(%rax)
18327  DB  127,67                              ; jg            5cdf <.literal16+0xa8f>
18328  DB  0,0                                 ; add           %al,(%rax)
18329  DB  127,67                              ; jg            5ce3 <.literal16+0xa93>
18330  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
18331  DB  0,0                                 ; add           %al,(%rax)
18332  DB  0,0                                 ; add           %al,(%rax)
18333  DB  0,0                                 ; add           %al,(%rax)
18334  DB  0,0                                 ; add           %al,(%rax)
18335  DB  0,0                                 ; add           %al,(%rax)
18336  DB  0,0                                 ; add           %al,(%rax)
18337  DB  0,255                               ; add           %bh,%bh
18338  DB  0,0                                 ; add           %al,(%rax)
18339  DB  0,255                               ; add           %bh,%bh
18340  DB  0,0                                 ; add           %al,(%rax)
18341  DB  0,255                               ; add           %bh,%bh
18342  DB  0,0                                 ; add           %al,(%rax)
18343  DB  0,255                               ; add           %bh,%bh
18344  DB  0,0                                 ; add           %al,(%rax)
18345  DB  0,129,128,128,59,129                ; add           %al,-0x7ec47f80(%rcx)
18346  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
18347  DB  129,128,128,59,0,0,128,63,0,0       ; addl          $0x3f80,0x3b80(%rax)
18348  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18349  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18350  DB  63                                  ; (bad)
18351  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
18352  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
18353  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
18354  DB  0,0                                 ; add           %al,(%rax)
18355  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18356  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18357  DB  63                                  ; (bad)
18358  DB  255,0                               ; incl          (%rax)
18359  DB  0,0                                 ; add           %al,(%rax)
18360  DB  255,0                               ; incl          (%rax)
18361  DB  0,0                                 ; add           %al,(%rax)
18362  DB  255,0                               ; incl          (%rax)
18363  DB  0,0                                 ; add           %al,(%rax)
18364  DB  255,0                               ; incl          (%rax)
18365  DB  0,0                                 ; add           %al,(%rax)
18366  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
18367  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
18368  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
18369  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
18370  DB  255                                 ; (bad)
18371  DB  255                                 ; (bad)
18372  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3005d30 <_sk_callback_sse41+0x3000bb0>
18373  DB  255                                 ; (bad)
18374  DB  255                                 ; (bad)
18375  DB  255,6                               ; incl          (%rsi)
18376  DB  255                                 ; (bad)
18377  DB  255                                 ; (bad)
18378  DB  255,10                              ; decl          (%rdx)
18379  DB  255                                 ; (bad)
18380  DB  255                                 ; (bad)
18381  DB  255,14                              ; decl          (%rsi)
18382  DB  255                                 ; (bad)
18383  DB  255                                 ; (bad)
18384  DB  255,0                               ; incl          (%rax)
18385  DB  248                                 ; clc
18386  DB  0,0                                 ; add           %al,(%rax)
18387  DB  0,248                               ; add           %bh,%al
18388  DB  0,0                                 ; add           %al,(%rax)
18389  DB  0,248                               ; add           %bh,%al
18390  DB  0,0                                 ; add           %al,(%rax)
18391  DB  0,248                               ; add           %bh,%al
18392  DB  0,0                                 ; add           %al,(%rax)
18393  DB  8,33                                ; or            %ah,(%rcx)
18394  DB  132,55                              ; test          %dh,(%rdi)
18395  DB  8,33                                ; or            %ah,(%rcx)
18396  DB  132,55                              ; test          %dh,(%rdi)
18397  DB  8,33                                ; or            %ah,(%rcx)
18398  DB  132,55                              ; test          %dh,(%rdi)
18399  DB  8,33                                ; or            %ah,(%rcx)
18400  DB  132,55                              ; test          %dh,(%rdi)
18401  DB  224,7                               ; loopne        5d69 <.literal16+0xb19>
18402  DB  0,0                                 ; add           %al,(%rax)
18403  DB  224,7                               ; loopne        5d6d <.literal16+0xb1d>
18404  DB  0,0                                 ; add           %al,(%rax)
18405  DB  224,7                               ; loopne        5d71 <.literal16+0xb21>
18406  DB  0,0                                 ; add           %al,(%rax)
18407  DB  224,7                               ; loopne        5d75 <.literal16+0xb25>
18408  DB  0,0                                 ; add           %al,(%rax)
18409  DB  33,8                                ; and           %ecx,(%rax)
18410  DB  2,58                                ; add           (%rdx),%bh
18411  DB  33,8                                ; and           %ecx,(%rax)
18412  DB  2,58                                ; add           (%rdx),%bh
18413  DB  33,8                                ; and           %ecx,(%rax)
18414  DB  2,58                                ; add           (%rdx),%bh
18415  DB  33,8                                ; and           %ecx,(%rax)
18416  DB  2,58                                ; add           (%rdx),%bh
18417  DB  31                                  ; (bad)
18418  DB  0,0                                 ; add           %al,(%rax)
18419  DB  0,31                                ; add           %bl,(%rdi)
18420  DB  0,0                                 ; add           %al,(%rax)
18421  DB  0,31                                ; add           %bl,(%rdi)
18422  DB  0,0                                 ; add           %al,(%rax)
18423  DB  0,31                                ; add           %bl,(%rdi)
18424  DB  0,0                                 ; add           %al,(%rax)
18425  DB  0,8                                 ; add           %cl,(%rax)
18426  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
18427  DB  8,33                                ; or            %ah,(%rcx)
18428  DB  4,61                                ; add           $0x3d,%al
18429  DB  8,33                                ; or            %ah,(%rcx)
18430  DB  4,61                                ; add           $0x3d,%al
18431  DB  0,0                                 ; add           %al,(%rax)
18432  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18433  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18434  DB  63                                  ; (bad)
18435  DB  0,0                                 ; add           %al,(%rax)
18436  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18437  DB  248                                 ; clc
18438  DB  0,0                                 ; add           %al,(%rax)
18439  DB  0,248                               ; add           %bh,%al
18440  DB  0,0                                 ; add           %al,(%rax)
18441  DB  0,248                               ; add           %bh,%al
18442  DB  0,0                                 ; add           %al,(%rax)
18443  DB  0,248                               ; add           %bh,%al
18444  DB  0,0                                 ; add           %al,(%rax)
18445  DB  8,33                                ; or            %ah,(%rcx)
18446  DB  132,55                              ; test          %dh,(%rdi)
18447  DB  8,33                                ; or            %ah,(%rcx)
18448  DB  132,55                              ; test          %dh,(%rdi)
18449  DB  8,33                                ; or            %ah,(%rcx)
18450  DB  132,55                              ; test          %dh,(%rdi)
18451  DB  8,33                                ; or            %ah,(%rcx)
18452  DB  132,55                              ; test          %dh,(%rdi)
18453  DB  224,7                               ; loopne        5dd9 <.literal16+0xb89>
18454  DB  0,0                                 ; add           %al,(%rax)
18455  DB  224,7                               ; loopne        5ddd <.literal16+0xb8d>
18456  DB  0,0                                 ; add           %al,(%rax)
18457  DB  224,7                               ; loopne        5de1 <.literal16+0xb91>
18458  DB  0,0                                 ; add           %al,(%rax)
18459  DB  224,7                               ; loopne        5de5 <.literal16+0xb95>
18460  DB  0,0                                 ; add           %al,(%rax)
18461  DB  33,8                                ; and           %ecx,(%rax)
18462  DB  2,58                                ; add           (%rdx),%bh
18463  DB  33,8                                ; and           %ecx,(%rax)
18464  DB  2,58                                ; add           (%rdx),%bh
18465  DB  33,8                                ; and           %ecx,(%rax)
18466  DB  2,58                                ; add           (%rdx),%bh
18467  DB  33,8                                ; and           %ecx,(%rax)
18468  DB  2,58                                ; add           (%rdx),%bh
18469  DB  31                                  ; (bad)
18470  DB  0,0                                 ; add           %al,(%rax)
18471  DB  0,31                                ; add           %bl,(%rdi)
18472  DB  0,0                                 ; add           %al,(%rax)
18473  DB  0,31                                ; add           %bl,(%rdi)
18474  DB  0,0                                 ; add           %al,(%rax)
18475  DB  0,31                                ; add           %bl,(%rdi)
18476  DB  0,0                                 ; add           %al,(%rax)
18477  DB  0,8                                 ; add           %cl,(%rax)
18478  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
18479  DB  8,33                                ; or            %ah,(%rcx)
18480  DB  4,61                                ; add           $0x3d,%al
18481  DB  8,33                                ; or            %ah,(%rcx)
18482  DB  4,61                                ; add           $0x3d,%al
18483  DB  0,0                                 ; add           %al,(%rax)
18484  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18485  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18486  DB  63                                  ; (bad)
18487  DB  0,0                                 ; add           %al,(%rax)
18488  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18489  DB  0,248                               ; add           %bh,%al
18490  DB  65,0,0                              ; add           %al,(%r8)
18491  DB  248                                 ; clc
18492  DB  65,0,0                              ; add           %al,(%r8)
18493  DB  248                                 ; clc
18494  DB  65,0,0                              ; add           %al,(%r8)
18495  DB  248                                 ; clc
18496  DB  65,0,0                              ; add           %al,(%r8)
18497  DB  124,66                              ; jl            5e76 <.literal16+0xc26>
18498  DB  0,0                                 ; add           %al,(%rax)
18499  DB  124,66                              ; jl            5e7a <.literal16+0xc2a>
18500  DB  0,0                                 ; add           %al,(%rax)
18501  DB  124,66                              ; jl            5e7e <.literal16+0xc2e>
18502  DB  0,0                                 ; add           %al,(%rax)
18503  DB  124,66                              ; jl            5e82 <.literal16+0xc32>
18504  DB  0,240                               ; add           %dh,%al
18505  DB  0,0                                 ; add           %al,(%rax)
18506  DB  0,240                               ; add           %dh,%al
18507  DB  0,0                                 ; add           %al,(%rax)
18508  DB  0,240                               ; add           %dh,%al
18509  DB  0,0                                 ; add           %al,(%rax)
18510  DB  0,240                               ; add           %dh,%al
18511  DB  0,0                                 ; add           %al,(%rax)
18512  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
18513  DB  136,55                              ; mov           %dh,(%rdi)
18514  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
18515  DB  136,55                              ; mov           %dh,(%rdi)
18516  DB  0,15                                ; add           %cl,(%rdi)
18517  DB  0,0                                 ; add           %al,(%rax)
18518  DB  0,15                                ; add           %cl,(%rdi)
18519  DB  0,0                                 ; add           %al,(%rax)
18520  DB  0,15                                ; add           %cl,(%rdi)
18521  DB  0,0                                 ; add           %al,(%rax)
18522  DB  0,15                                ; add           %cl,(%rdi)
18523  DB  0,0                                 ; add           %al,(%rax)
18524  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
18525  DB  136,57                              ; mov           %bh,(%rcx)
18526  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
18527  DB  136,57                              ; mov           %bh,(%rcx)
18528  DB  240,0,0                             ; lock          add %al,(%rax)
18529  DB  0,240                               ; add           %dh,%al
18530  DB  0,0                                 ; add           %al,(%rax)
18531  DB  0,240                               ; add           %dh,%al
18532  DB  0,0                                 ; add           %al,(%rax)
18533  DB  0,240                               ; add           %dh,%al
18534  DB  0,0                                 ; add           %al,(%rax)
18535  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
18536  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
18537  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
18538  DB  0,0                                 ; add           %al,(%rax)
18539  DB  0,15                                ; add           %cl,(%rdi)
18540  DB  0,0                                 ; add           %al,(%rax)
18541  DB  0,15                                ; add           %cl,(%rdi)
18542  DB  0,0                                 ; add           %al,(%rax)
18543  DB  0,15                                ; add           %cl,(%rdi)
18544  DB  0,0                                 ; add           %al,(%rax)
18545  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
18546  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
18547  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
18548  DB  0,240                               ; add           %dh,%al
18549  DB  0,0                                 ; add           %al,(%rax)
18550  DB  0,240                               ; add           %dh,%al
18551  DB  0,0                                 ; add           %al,(%rax)
18552  DB  0,240                               ; add           %dh,%al
18553  DB  0,0                                 ; add           %al,(%rax)
18554  DB  0,240                               ; add           %dh,%al
18555  DB  0,0                                 ; add           %al,(%rax)
18556  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
18557  DB  136,55                              ; mov           %dh,(%rdi)
18558  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
18559  DB  136,55                              ; mov           %dh,(%rdi)
18560  DB  0,15                                ; add           %cl,(%rdi)
18561  DB  0,0                                 ; add           %al,(%rax)
18562  DB  0,15                                ; add           %cl,(%rdi)
18563  DB  0,0                                 ; add           %al,(%rax)
18564  DB  0,15                                ; add           %cl,(%rdi)
18565  DB  0,0                                 ; add           %al,(%rax)
18566  DB  0,15                                ; add           %cl,(%rdi)
18567  DB  0,0                                 ; add           %al,(%rax)
18568  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
18569  DB  136,57                              ; mov           %bh,(%rcx)
18570  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
18571  DB  136,57                              ; mov           %bh,(%rcx)
18572  DB  240,0,0                             ; lock          add %al,(%rax)
18573  DB  0,240                               ; add           %dh,%al
18574  DB  0,0                                 ; add           %al,(%rax)
18575  DB  0,240                               ; add           %dh,%al
18576  DB  0,0                                 ; add           %al,(%rax)
18577  DB  0,240                               ; add           %dh,%al
18578  DB  0,0                                 ; add           %al,(%rax)
18579  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
18580  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
18581  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
18582  DB  0,0                                 ; add           %al,(%rax)
18583  DB  0,15                                ; add           %cl,(%rdi)
18584  DB  0,0                                 ; add           %al,(%rax)
18585  DB  0,15                                ; add           %cl,(%rdi)
18586  DB  0,0                                 ; add           %al,(%rax)
18587  DB  0,15                                ; add           %cl,(%rdi)
18588  DB  0,0                                 ; add           %al,(%rax)
18589  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
18590  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
18591  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
18592  DB  0,0                                 ; add           %al,(%rax)
18593  DB  112,65                              ; jo            5f85 <.literal16+0xd35>
18594  DB  0,0                                 ; add           %al,(%rax)
18595  DB  112,65                              ; jo            5f89 <.literal16+0xd39>
18596  DB  0,0                                 ; add           %al,(%rax)
18597  DB  112,65                              ; jo            5f8d <.literal16+0xd3d>
18598  DB  0,0                                 ; add           %al,(%rax)
18599  DB  112,65                              ; jo            5f91 <.literal16+0xd41>
18600  DB  255,0                               ; incl          (%rax)
18601  DB  0,0                                 ; add           %al,(%rax)
18602  DB  255,0                               ; incl          (%rax)
18603  DB  0,0                                 ; add           %al,(%rax)
18604  DB  255,0                               ; incl          (%rax)
18605  DB  0,0                                 ; add           %al,(%rax)
18606  DB  255,0                               ; incl          (%rax)
18607  DB  0,0                                 ; add           %al,(%rax)
18608  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
18609  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
18610  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
18611  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
18612  DB  255                                 ; (bad)
18613  DB  255                                 ; (bad)
18614  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3005f80 <_sk_callback_sse41+0x3000e00>
18615  DB  255                                 ; (bad)
18616  DB  255                                 ; (bad)
18617  DB  255,6                               ; incl          (%rsi)
18618  DB  255                                 ; (bad)
18619  DB  255                                 ; (bad)
18620  DB  255,10                              ; decl          (%rdx)
18621  DB  255                                 ; (bad)
18622  DB  255                                 ; (bad)
18623  DB  255,14                              ; decl          (%rsi)
18624  DB  255                                 ; (bad)
18625  DB  255                                 ; (bad)
18626  DB  255                                 ; (bad)
18627  DB  255,0                               ; incl          (%rax)
18628  DB  0,0                                 ; add           %al,(%rax)
18629  DB  255,0                               ; incl          (%rax)
18630  DB  0,0                                 ; add           %al,(%rax)
18631  DB  255,0                               ; incl          (%rax)
18632  DB  0,0                                 ; add           %al,(%rax)
18633  DB  255,0                               ; incl          (%rax)
18634  DB  0,0                                 ; add           %al,(%rax)
18635  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
18636  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
18637  DB  128,128,59,1,255,255,255            ; addb          $0xff,-0xfec5(%rax)
18638  DB  5,255,255,255,9                     ; add           $0x9ffffff,%eax
18639  DB  255                                 ; (bad)
18640  DB  255                                 ; (bad)
18641  DB  255,13,255,255,255,2                ; decl          0x2ffffff(%rip)        # 3005fc0 <_sk_callback_sse41+0x3000e40>
18642  DB  255                                 ; (bad)
18643  DB  255                                 ; (bad)
18644  DB  255,6                               ; incl          (%rsi)
18645  DB  255                                 ; (bad)
18646  DB  255                                 ; (bad)
18647  DB  255,10                              ; decl          (%rdx)
18648  DB  255                                 ; (bad)
18649  DB  255                                 ; (bad)
18650  DB  255,14                              ; decl          (%rsi)
18651  DB  255                                 ; (bad)
18652  DB  255                                 ; (bad)
18653  DB  255,0                               ; incl          (%rax)
18654  DB  0,127,67                            ; add           %bh,0x43(%rdi)
18655  DB  0,0                                 ; add           %al,(%rax)
18656  DB  127,67                              ; jg            601b <.literal16+0xdcb>
18657  DB  0,0                                 ; add           %al,(%rax)
18658  DB  127,67                              ; jg            601f <.literal16+0xdcf>
18659  DB  0,0                                 ; add           %al,(%rax)
18660  DB  127,67                              ; jg            6023 <.literal16+0xdd3>
18661  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
18662  DB  0,0                                 ; add           %al,(%rax)
18663  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
18664  DB  0,0                                 ; add           %al,(%rax)
18665  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
18666  DB  0,0                                 ; add           %al,(%rax)
18667  DB  4,0                                 ; add           $0x0,%al
18668  DB  0,0                                 ; add           %al,(%rax)
18669  DB  4,0                                 ; add           $0x0,%al
18670  DB  0,0                                 ; add           %al,(%rax)
18671  DB  4,0                                 ; add           $0x0,%al
18672  DB  0,0                                 ; add           %al,(%rax)
18673  DB  0,0                                 ; add           %al,(%rax)
18674  DB  56,0                                ; cmp           %al,(%rax)
18675  DB  0,0                                 ; add           %al,(%rax)
18676  DB  56,0                                ; cmp           %al,(%rax)
18677  DB  0,0                                 ; add           %al,(%rax)
18678  DB  56,0                                ; cmp           %al,(%rax)
18679  DB  0,0                                 ; add           %al,(%rax)
18680  DB  56,0                                ; cmp           %al,(%rax)
18681  DB  128,0,0                             ; addb          $0x0,(%rax)
18682  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
18683  DB  0,0                                 ; add           %al,(%rax)
18684  DB  0,128,0,0,0,4                       ; add           %al,0x4000000(%rax)
18685  DB  0,0                                 ; add           %al,(%rax)
18686  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
18687  DB  0,0                                 ; add           %al,(%rax)
18688  DB  4,0                                 ; add           $0x0,%al
18689  DB  0,0                                 ; add           %al,(%rax)
18690  DB  4,0                                 ; add           $0x0,%al
18691  DB  0,0                                 ; add           %al,(%rax)
18692  DB  0,0                                 ; add           %al,(%rax)
18693  DB  56,0                                ; cmp           %al,(%rax)
18694  DB  0,0                                 ; add           %al,(%rax)
18695  DB  56,0                                ; cmp           %al,(%rax)
18696  DB  0,0                                 ; add           %al,(%rax)
18697  DB  56,0                                ; cmp           %al,(%rax)
18698  DB  0,0                                 ; add           %al,(%rax)
18699  DB  56,0                                ; cmp           %al,(%rax)
18700  DB  0,0                                 ; add           %al,(%rax)
18701  DB  128,0,0                             ; addb          $0x0,(%rax)
18702  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
18703  DB  0,0                                 ; add           %al,(%rax)
18704  DB  0,128,0,0,128,56                    ; add           %al,0x38800000(%rax)
18705  DB  0,0                                 ; add           %al,(%rax)
18706  DB  128,56,0                            ; cmpb          $0x0,(%rax)
18707  DB  0,128,56,0,0,128                    ; add           %al,-0x7fffffc8(%rax)
18708  DB  56,0                                ; cmp           %al,(%rax)
18709  DB  64,254                              ; rex           (bad)
18710  DB  255,0                               ; incl          (%rax)
18711  DB  64,254                              ; rex           (bad)
18712  DB  255,0                               ; incl          (%rax)
18713  DB  64,254                              ; rex           (bad)
18714  DB  255,0                               ; incl          (%rax)
18715  DB  64,254                              ; rex           (bad)
18716  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
18717  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
18718  DB  55                                  ; (bad)
18719  DB  128,0,128                           ; addb          $0x80,(%rax)
18720  DB  55                                  ; (bad)
18721  DB  128,0,128                           ; addb          $0x80,(%rax)
18722  DB  55                                  ; (bad)
18723  DB  128,0,128                           ; addb          $0x80,(%rax)
18724  DB  55                                  ; (bad)
18725  DB  128,0,128                           ; addb          $0x80,(%rax)
18726  DB  55                                  ; (bad)
18727  DB  128,0,128                           ; addb          $0x80,(%rax)
18728  DB  55                                  ; (bad)
18729  DB  0,0                                 ; add           %al,(%rax)
18730  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18731  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18732  DB  63                                  ; (bad)
18733  DB  0,0                                 ; add           %al,(%rax)
18734  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18735  DB  255                                 ; (bad)
18736  DB  127,71                              ; jg            60eb <.literal16+0xe9b>
18737  DB  0,255                               ; add           %bh,%bh
18738  DB  127,71                              ; jg            60ef <.literal16+0xe9f>
18739  DB  0,255                               ; add           %bh,%bh
18740  DB  127,71                              ; jg            60f3 <.literal16+0xea3>
18741  DB  0,255                               ; add           %bh,%bh
18742  DB  127,71                              ; jg            60f7 <.literal16+0xea7>
18743  DB  0,0                                 ; add           %al,(%rax)
18744  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18745  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18746  DB  63                                  ; (bad)
18747  DB  0,0                                 ; add           %al,(%rax)
18748  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18749  DB  0,128,191,0,0,128                   ; add           %al,-0x7fffff41(%rax)
18750  DB  191,0,0,128,191                     ; mov           $0xbf800000,%edi
18751  DB  0,0                                 ; add           %al,(%rax)
18752  DB  128,191,0,0,0,63,0                  ; cmpb          $0x0,0x3f000000(%rdi)
18753  DB  0,0                                 ; add           %al,(%rax)
18754  DB  63                                  ; (bad)
18755  DB  0,0                                 ; add           %al,(%rax)
18756  DB  0,63                                ; add           %bh,(%rdi)
18757  DB  0,0                                 ; add           %al,(%rax)
18758  DB  0,63                                ; add           %bh,(%rdi)
18759  DB  208                                 ; (bad)
18760  DB  179,89                              ; mov           $0x59,%bl
18761  DB  62,208                              ; ds            (bad)
18762  DB  179,89                              ; mov           $0x59,%bl
18763  DB  62,208                              ; ds            (bad)
18764  DB  179,89                              ; mov           $0x59,%bl
18765  DB  62,208                              ; ds            (bad)
18766  DB  179,89                              ; mov           $0x59,%bl
18767  DB  62,89                               ; ds            pop %rcx
18768  DB  23                                  ; (bad)
18769  DB  55                                  ; (bad)
18770  DB  63                                  ; (bad)
18771  DB  89                                  ; pop           %rcx
18772  DB  23                                  ; (bad)
18773  DB  55                                  ; (bad)
18774  DB  63                                  ; (bad)
18775  DB  89                                  ; pop           %rcx
18776  DB  23                                  ; (bad)
18777  DB  55                                  ; (bad)
18778  DB  63                                  ; (bad)
18779  DB  89                                  ; pop           %rcx
18780  DB  23                                  ; (bad)
18781  DB  55                                  ; (bad)
18782  DB  63                                  ; (bad)
18783  DB  152                                 ; cwtl
18784  DB  221,147,61,152,221,147              ; fstl          -0x6c2267c3(%rbx)
18785  DB  61,152,221,147,61                   ; cmp           $0x3d93dd98,%eax
18786  DB  152                                 ; cwtl
18787  DB  221,147,61,45,16,17                 ; fstl          0x11102d3d(%rbx)
18788  DB  192,45,16,17,192,45,16              ; shrb          $0x10,0x2dc01110(%rip)        # 2dc0722a <_sk_callback_sse41+0x2dc020aa>
18789  DB  17,192                              ; adc           %eax,%eax
18790  DB  45,16,17,192,18                     ; sub           $0x12c01110,%eax
18791  DB  120,57                              ; js            615c <.literal16+0xf0c>
18792  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
18793  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
18794  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
18795  DB  64,32,148,90,62,32,148,90           ; and           %dl,0x5a94203e(%rdx,%rbx,2)
18796  DB  62,32,148,90,62,32,148,90           ; and           %dl,%ds:0x5a94203e(%rdx,%rbx,2)
18797  DB  62,4,157                            ; ds            add $0x9d,%al
18798  DB  30                                  ; (bad)
18799  DB  62,4,157                            ; ds            add $0x9d,%al
18800  DB  30                                  ; (bad)
18801  DB  62,4,157                            ; ds            add $0x9d,%al
18802  DB  30                                  ; (bad)
18803  DB  62,4,157                            ; ds            add $0x9d,%al
18804  DB  30                                  ; (bad)
18805  DB  62,0,24                             ; add           %bl,%ds:(%rax)
18806  DB  161,57,0,24,161,57,0,24,161         ; movabs        0xa1180039a1180039,%eax
18807  DB  57,0                                ; cmp           %eax,(%rax)
18808  DB  24,161,57,1,0,0                     ; sbb           %ah,0x139(%rcx)
18809  DB  0,1                                 ; add           %al,(%rcx)
18810  DB  0,0                                 ; add           %al,(%rax)
18811  DB  0,1                                 ; add           %al,(%rcx)
18812  DB  0,0                                 ; add           %al,(%rax)
18813  DB  0,1                                 ; add           %al,(%rcx)
18814  DB  0,0                                 ; add           %al,(%rax)
18815  DB  0,111,43                            ; add           %ch,0x2b(%rdi)
18816  DB  231,187                             ; out           %eax,$0xbb
18817  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
18818  DB  43,231                              ; sub           %edi,%esp
18819  DB  187,111,43,231,187                  ; mov           $0xbbe72b6f,%ebx
18820  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
18821  DB  43,231                              ; sub           %edi,%esp
18822  DB  187,159,215,202,60                  ; mov           $0x3ccad79f,%ebx
18823  DB  159                                 ; lahf
18824  DB  215                                 ; xlat          %ds:(%rbx)
18825  DB  202,60,159                          ; lret          $0x9f3c
18826  DB  215                                 ; xlat          %ds:(%rbx)
18827  DB  202,60,159                          ; lret          $0x9f3c
18828  DB  215                                 ; xlat          %ds:(%rbx)
18829  DB  202,60,212                          ; lret          $0xd43c
18830  DB  100,84                              ; fs            push %rsp
18831  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
18832  DB  212                                 ; (bad)
18833  DB  100,84                              ; fs            push %rsp
18834  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
18835  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
18836  DB  240,34,62                           ; lock          and (%rsi),%bh
18837  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
18838  DB  240,34,62                           ; lock          and (%rsi),%bh
18839  DB  0,0                                 ; add           %al,(%rax)
18840  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
18841  DB  0,128,62,0,0,128                    ; add           %al,-0x7fffffc2(%rax)
18842  DB  62,0,0                              ; add           %al,%ds:(%rax)
18843  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
18844  DB  0,0                                 ; add           %al,(%rax)
18845  DB  63                                  ; (bad)
18846  DB  0,0                                 ; add           %al,(%rax)
18847  DB  0,63                                ; add           %bh,(%rdi)
18848  DB  0,0                                 ; add           %al,(%rax)
18849  DB  0,63                                ; add           %bh,(%rdi)
18850  DB  0,0                                 ; add           %al,(%rax)
18851  DB  0,63                                ; add           %bh,(%rdi)
18852  DB  0,0                                 ; add           %al,(%rax)
18853  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18854  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18855  DB  63                                  ; (bad)
18856  DB  0,0                                 ; add           %al,(%rax)
18857  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18858  DB  0,0                                 ; add           %al,(%rax)
18859  DB  63                                  ; (bad)
18860  DB  0,0                                 ; add           %al,(%rax)
18861  DB  0,63                                ; add           %bh,(%rdi)
18862  DB  0,0                                 ; add           %al,(%rax)
18863  DB  0,63                                ; add           %bh,(%rdi)
18864  DB  0,0                                 ; add           %al,(%rax)
18865  DB  0,63                                ; add           %bh,(%rdi)
18866  DB  0,0                                 ; add           %al,(%rax)
18867  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18868  DB  0,0                                 ; add           %al,(%rax)
18869  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18870  DB  0,0                                 ; add           %al,(%rax)
18871  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18872  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18873  DB  63                                  ; (bad)
18874  DB  0,0                                 ; add           %al,(%rax)
18875  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18876  DB  0,0                                 ; add           %al,(%rax)
18877  DB  63                                  ; (bad)
18878  DB  0,0                                 ; add           %al,(%rax)
18879  DB  0,63                                ; add           %bh,(%rdi)
18880  DB  0,0                                 ; add           %al,(%rax)
18881  DB  0,63                                ; add           %bh,(%rdi)
18882  DB  0,0                                 ; add           %al,(%rax)
18883  DB  0,63                                ; add           %bh,(%rdi)
18884  DB  0,0                                 ; add           %al,(%rax)
18885  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18886  DB  0,0                                 ; add           %al,(%rax)
18887  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18888  DB  0,0                                 ; add           %al,(%rax)
18889  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18890  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18891  DB  63                                  ; (bad)
18892  DB  0,0                                 ; add           %al,(%rax)
18893  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18894  DB  0,0                                 ; add           %al,(%rax)
18895  DB  63                                  ; (bad)
18896  DB  0,0                                 ; add           %al,(%rax)
18897  DB  0,63                                ; add           %bh,(%rdi)
18898  DB  0,0                                 ; add           %al,(%rax)
18899  DB  0,63                                ; add           %bh,(%rdi)
18900  DB  0,0                                 ; add           %al,(%rax)
18901  DB  0,63                                ; add           %bh,(%rdi)
18902  DB  0,0                                 ; add           %al,(%rax)
18903  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
18904  DB  0,192                               ; add           %al,%al
18905  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
18906  DB  0,0                                 ; add           %al,(%rax)
18907  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18908  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18909  DB  63                                  ; (bad)
18910  DB  0,0                                 ; add           %al,(%rax)
18911  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
18912  DB  28,199                              ; sbb           $0xc7,%al
18913  DB  62,114,28                           ; jb,pt         6292 <.literal16+0x1042>
18914  DB  199                                 ; (bad)
18915  DB  62,114,28                           ; jb,pt         6296 <.literal16+0x1046>
18916  DB  199                                 ; (bad)
18917  DB  62,114,28                           ; jb,pt         629a <.literal16+0x104a>
18918  DB  199                                 ; (bad)
18919  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
18920  DB  170                                 ; stos          %al,%es:(%rdi)
18921  DB  170                                 ; stos          %al,%es:(%rdi)
18922  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
18923  DB  171                                 ; stos          %eax,%es:(%rdi)
18924  DB  170                                 ; stos          %al,%es:(%rdi)
18925  DB  170                                 ; stos          %al,%es:(%rdi)
18926  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
18927  DB  0,0                                 ; add           %al,(%rax)
18928  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18929  DB  0,0                                 ; add           %al,(%rax)
18930  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
18931  DB  0,0                                 ; add           %al,(%rax)
18932  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
18933  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
18934  DB  63                                  ; (bad)
18935  DB  0,0                                 ; add           %al,(%rax)
18936  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
18937  DB  85                                  ; push          %rbp
18938  DB  149                                 ; xchg          %eax,%ebp
18939  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18940  DB  85                                  ; push          %rbp
18941  DB  85                                  ; push          %rbp
18942  DB  149                                 ; xchg          %eax,%ebp
18943  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18944  DB  0,0                                 ; add           %al,(%rax)
18945  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18946  DB  0,192                               ; add           %al,%al
18947  DB  63                                  ; (bad)
18948  DB  0,0                                 ; add           %al,(%rax)
18949  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18950  DB  0,192                               ; add           %al,%al
18951  DB  63                                  ; (bad)
18952  DB  0,0                                 ; add           %al,(%rax)
18953  DB  0,63                                ; add           %bh,(%rdi)
18954  DB  0,0                                 ; add           %al,(%rax)
18955  DB  0,63                                ; add           %bh,(%rdi)
18956  DB  0,0                                 ; add           %al,(%rax)
18957  DB  0,63                                ; add           %bh,(%rdi)
18958  DB  0,0                                 ; add           %al,(%rax)
18959  DB  0,63                                ; add           %bh,(%rdi)
18960  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
18961  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f125 <_sk_callback_sse41+0x3d639fa5>
18962  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
18963  DB  0,63                                ; add           %bh,(%rdi)
18964  DB  0,0                                 ; add           %al,(%rax)
18965  DB  0,63                                ; add           %bh,(%rdi)
18966  DB  0,0                                 ; add           %al,(%rax)
18967  DB  0,63                                ; add           %bh,(%rdi)
18968  DB  0,0                                 ; add           %al,(%rax)
18969  DB  0,63                                ; add           %bh,(%rdi)
18970  DB  85                                  ; push          %rbp
18971  DB  85                                  ; push          %rbp
18972  DB  149                                 ; xchg          %eax,%ebp
18973  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18974  DB  85                                  ; push          %rbp
18975  DB  85                                  ; push          %rbp
18976  DB  149                                 ; xchg          %eax,%ebp
18977  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
18978  DB  0,0                                 ; add           %al,(%rax)
18979  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18980  DB  0,192                               ; add           %al,%al
18981  DB  63                                  ; (bad)
18982  DB  0,0                                 ; add           %al,(%rax)
18983  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18984  DB  0,192                               ; add           %al,%al
18985  DB  63                                  ; (bad)
18986  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
18987  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f165 <_sk_callback_sse41+0x3d639fe5>
18988  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
18989  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18990  DB  0,192                               ; add           %al,%al
18991  DB  63                                  ; (bad)
18992  DB  0,0                                 ; add           %al,(%rax)
18993  DB  192,63,0                            ; sarb          $0x0,(%rdi)
18994  DB  0,192                               ; add           %al,%al
18995  DB  63                                  ; (bad)
18996  DB  114,28                              ; jb            635e <.literal16+0x110e>
18997  DB  199                                 ; (bad)
18998  DB  62,114,28                           ; jb,pt         6362 <.literal16+0x1112>
18999  DB  199                                 ; (bad)
19000  DB  62,114,28                           ; jb,pt         6366 <.literal16+0x1116>
19001  DB  199                                 ; (bad)
19002  DB  62,114,28                           ; jb,pt         636a <.literal16+0x111a>
19003  DB  199                                 ; (bad)
19004  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
19005  DB  170                                 ; stos          %al,%es:(%rdi)
19006  DB  170                                 ; stos          %al,%es:(%rdi)
19007  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
19008  DB  171                                 ; stos          %eax,%es:(%rdi)
19009  DB  170                                 ; stos          %al,%es:(%rdi)
19010  DB  170                                 ; stos          %al,%es:(%rdi)
19011  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
19012  DB  0,0                                 ; add           %al,(%rax)
19013  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
19014  DB  0,192                               ; add           %al,%al
19015  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
19016  DB  0,0                                 ; add           %al,(%rax)
19017  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19018  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19019  DB  63                                  ; (bad)
19020  DB  0,0                                 ; add           %al,(%rax)
19021  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
19022  DB  28,199                              ; sbb           $0xc7,%al
19023  DB  62,114,28                           ; jb,pt         63a2 <.literal16+0x1152>
19024  DB  199                                 ; (bad)
19025  DB  62,114,28                           ; jb,pt         63a6 <.literal16+0x1156>
19026  DB  199                                 ; (bad)
19027  DB  62,114,28                           ; jb,pt         63aa <.literal16+0x115a>
19028  DB  199                                 ; (bad)
19029  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
19030  DB  170                                 ; stos          %al,%es:(%rdi)
19031  DB  170                                 ; stos          %al,%es:(%rdi)
19032  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
19033  DB  171                                 ; stos          %eax,%es:(%rdi)
19034  DB  170                                 ; stos          %al,%es:(%rdi)
19035  DB  170                                 ; stos          %al,%es:(%rdi)
19036  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
19037  DB  0,0                                 ; add           %al,(%rax)
19038  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
19039  DB  0,0                                 ; add           %al,(%rax)
19040  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
19041  DB  0,0                                 ; add           %al,(%rax)
19042  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
19043  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
19044  DB  63                                  ; (bad)
19045  DB  0,0                                 ; add           %al,(%rax)
19046  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
19047  DB  85                                  ; push          %rbp
19048  DB  149                                 ; xchg          %eax,%ebp
19049  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
19050  DB  85                                  ; push          %rbp
19051  DB  85                                  ; push          %rbp
19052  DB  149                                 ; xchg          %eax,%ebp
19053  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
19054  DB  0,0                                 ; add           %al,(%rax)
19055  DB  192,63,0                            ; sarb          $0x0,(%rdi)
19056  DB  0,192                               ; add           %al,%al
19057  DB  63                                  ; (bad)
19058  DB  0,0                                 ; add           %al,(%rax)
19059  DB  192,63,0                            ; sarb          $0x0,(%rdi)
19060  DB  0,192                               ; add           %al,%al
19061  DB  63                                  ; (bad)
19062  DB  0,0                                 ; add           %al,(%rax)
19063  DB  0,63                                ; add           %bh,(%rdi)
19064  DB  0,0                                 ; add           %al,(%rax)
19065  DB  0,63                                ; add           %bh,(%rdi)
19066  DB  0,0                                 ; add           %al,(%rax)
19067  DB  0,63                                ; add           %bh,(%rdi)
19068  DB  0,0                                 ; add           %al,(%rax)
19069  DB  0,63                                ; add           %bh,(%rdi)
19070  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
19071  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f235 <_sk_callback_sse41+0x3d63a0b5>
19072  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
19073  DB  0,63                                ; add           %bh,(%rdi)
19074  DB  0,0                                 ; add           %al,(%rax)
19075  DB  0,63                                ; add           %bh,(%rdi)
19076  DB  0,0                                 ; add           %al,(%rax)
19077  DB  0,63                                ; add           %bh,(%rdi)
19078  DB  0,0                                 ; add           %al,(%rax)
19079  DB  0,63                                ; add           %bh,(%rdi)
19080  DB  85                                  ; push          %rbp
19081  DB  85                                  ; push          %rbp
19082  DB  149                                 ; xchg          %eax,%ebp
19083  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
19084  DB  85                                  ; push          %rbp
19085  DB  85                                  ; push          %rbp
19086  DB  149                                 ; xchg          %eax,%ebp
19087  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
19088  DB  0,0                                 ; add           %al,(%rax)
19089  DB  192,63,0                            ; sarb          $0x0,(%rdi)
19090  DB  0,192                               ; add           %al,%al
19091  DB  63                                  ; (bad)
19092  DB  0,0                                 ; add           %al,(%rax)
19093  DB  192,63,0                            ; sarb          $0x0,(%rdi)
19094  DB  0,192                               ; add           %al,%al
19095  DB  63                                  ; (bad)
19096  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
19097  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f275 <_sk_callback_sse41+0x3d63a0f5>
19098  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
19099  DB  192,63,0                            ; sarb          $0x0,(%rdi)
19100  DB  0,192                               ; add           %al,%al
19101  DB  63                                  ; (bad)
19102  DB  0,0                                 ; add           %al,(%rax)
19103  DB  192,63,0                            ; sarb          $0x0,(%rdi)
19104  DB  0,192                               ; add           %al,%al
19105  DB  63                                  ; (bad)
19106  DB  114,28                              ; jb            646e <.literal16+0x121e>
19107  DB  199                                 ; (bad)
19108  DB  62,114,28                           ; jb,pt         6472 <_sk_callback_sse41+0x12f2>
19109  DB  199                                 ; (bad)
19110  DB  62,114,28                           ; jb,pt         6476 <_sk_callback_sse41+0x12f6>
19111  DB  199                                 ; (bad)
19112  DB  62,114,28                           ; jb,pt         647a <_sk_callback_sse41+0x12fa>
19113  DB  199                                 ; (bad)
19114  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
19115  DB  170                                 ; stos          %al,%es:(%rdi)
19116  DB  170                                 ; stos          %al,%es:(%rdi)
19117  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
19118  DB  171                                 ; stos          %eax,%es:(%rdi)
19119  DB  170                                 ; stos          %al,%es:(%rdi)
19120  DB  170                                 ; stos          %al,%es:(%rdi)
19121  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
19122
19123ALIGN 4
19124  DB  0,0                                 ; add           %al,(%rax)
19125  DB  0,63                                ; add           %bh,(%rdi)
19126  DB  0,0                                 ; add           %al,(%rax)
19127  DB  0,63                                ; add           %bh,(%rdi)
19128ALIGN 32
19129
19130PUBLIC _sk_start_pipeline_sse2
19131_sk_start_pipeline_sse2 LABEL PROC
19132  DB  85                                  ; push          %rbp
19133  DB  72,137,229                          ; mov           %rsp,%rbp
19134  DB  65,87                               ; push          %r15
19135  DB  65,86                               ; push          %r14
19136  DB  65,85                               ; push          %r13
19137  DB  65,84                               ; push          %r12
19138  DB  86                                  ; push          %rsi
19139  DB  87                                  ; push          %rdi
19140  DB  83                                  ; push          %rbx
19141  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
19142  DB  68,15,41,125,176                    ; movaps        %xmm15,-0x50(%rbp)
19143  DB  68,15,41,117,160                    ; movaps        %xmm14,-0x60(%rbp)
19144  DB  68,15,41,109,144                    ; movaps        %xmm13,-0x70(%rbp)
19145  DB  68,15,41,101,128                    ; movaps        %xmm12,-0x80(%rbp)
19146  DB  68,15,41,157,112,255,255,255        ; movaps        %xmm11,-0x90(%rbp)
19147  DB  68,15,41,149,96,255,255,255         ; movaps        %xmm10,-0xa0(%rbp)
19148  DB  68,15,41,141,80,255,255,255         ; movaps        %xmm9,-0xb0(%rbp)
19149  DB  68,15,41,133,64,255,255,255         ; movaps        %xmm8,-0xc0(%rbp)
19150  DB  15,41,189,48,255,255,255            ; movaps        %xmm7,-0xd0(%rbp)
19151  DB  15,41,181,32,255,255,255            ; movaps        %xmm6,-0xe0(%rbp)
19152  DB  72,137,211                          ; mov           %rdx,%rbx
19153  DB  73,137,207                          ; mov           %rcx,%r15
19154  DB  76,139,117,48                       ; mov           0x30(%rbp),%r14
19155  DB  76,137,206                          ; mov           %r9,%rsi
19156  DB  72,173                              ; lods          %ds:(%rsi),%rax
19157  DB  73,137,197                          ; mov           %rax,%r13
19158  DB  73,137,244                          ; mov           %rsi,%r12
19159  DB  73,141,79,4                         ; lea           0x4(%r15),%rcx
19160  DB  76,57,193                           ; cmp           %r8,%rcx
19161  DB  118,5                               ; jbe           7b <_sk_start_pipeline_sse2+0x7b>
19162  DB  76,137,250                          ; mov           %r15,%rdx
19163  DB  235,75                              ; jmp           c6 <_sk_start_pipeline_sse2+0xc6>
19164  DB  76,137,133,24,255,255,255           ; mov           %r8,-0xe8(%rbp)
19165  DB  65,184,0,0,0,0                      ; mov           $0x0,%r8d
19166  DB  15,87,192                           ; xorps         %xmm0,%xmm0
19167  DB  15,87,201                           ; xorps         %xmm1,%xmm1
19168  DB  15,87,210                           ; xorps         %xmm2,%xmm2
19169  DB  15,87,219                           ; xorps         %xmm3,%xmm3
19170  DB  15,87,228                           ; xorps         %xmm4,%xmm4
19171  DB  15,87,237                           ; xorps         %xmm5,%xmm5
19172  DB  15,87,246                           ; xorps         %xmm6,%xmm6
19173  DB  15,87,255                           ; xorps         %xmm7,%xmm7
19174  DB  76,137,247                          ; mov           %r14,%rdi
19175  DB  76,137,230                          ; mov           %r12,%rsi
19176  DB  76,137,250                          ; mov           %r15,%rdx
19177  DB  72,137,217                          ; mov           %rbx,%rcx
19178  DB  65,255,213                          ; callq         *%r13
19179  DB  76,139,133,24,255,255,255           ; mov           -0xe8(%rbp),%r8
19180  DB  73,141,87,4                         ; lea           0x4(%r15),%rdx
19181  DB  73,131,199,8                        ; add           $0x8,%r15
19182  DB  77,57,199                           ; cmp           %r8,%r15
19183  DB  73,137,215                          ; mov           %rdx,%r15
19184  DB  118,188                             ; jbe           82 <_sk_start_pipeline_sse2+0x82>
19185  DB  73,41,208                           ; sub           %rdx,%r8
19186  DB  116,36                              ; je            ef <_sk_start_pipeline_sse2+0xef>
19187  DB  15,87,192                           ; xorps         %xmm0,%xmm0
19188  DB  15,87,201                           ; xorps         %xmm1,%xmm1
19189  DB  15,87,210                           ; xorps         %xmm2,%xmm2
19190  DB  15,87,219                           ; xorps         %xmm3,%xmm3
19191  DB  15,87,228                           ; xorps         %xmm4,%xmm4
19192  DB  15,87,237                           ; xorps         %xmm5,%xmm5
19193  DB  15,87,246                           ; xorps         %xmm6,%xmm6
19194  DB  15,87,255                           ; xorps         %xmm7,%xmm7
19195  DB  76,137,247                          ; mov           %r14,%rdi
19196  DB  76,137,230                          ; mov           %r12,%rsi
19197  DB  72,137,217                          ; mov           %rbx,%rcx
19198  DB  65,255,213                          ; callq         *%r13
19199  DB  15,40,181,32,255,255,255            ; movaps        -0xe0(%rbp),%xmm6
19200  DB  15,40,189,48,255,255,255            ; movaps        -0xd0(%rbp),%xmm7
19201  DB  68,15,40,133,64,255,255,255         ; movaps        -0xc0(%rbp),%xmm8
19202  DB  68,15,40,141,80,255,255,255         ; movaps        -0xb0(%rbp),%xmm9
19203  DB  68,15,40,149,96,255,255,255         ; movaps        -0xa0(%rbp),%xmm10
19204  DB  68,15,40,157,112,255,255,255        ; movaps        -0x90(%rbp),%xmm11
19205  DB  68,15,40,101,128                    ; movaps        -0x80(%rbp),%xmm12
19206  DB  68,15,40,109,144                    ; movaps        -0x70(%rbp),%xmm13
19207  DB  68,15,40,117,160                    ; movaps        -0x60(%rbp),%xmm14
19208  DB  68,15,40,125,176                    ; movaps        -0x50(%rbp),%xmm15
19209  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
19210  DB  91                                  ; pop           %rbx
19211  DB  95                                  ; pop           %rdi
19212  DB  94                                  ; pop           %rsi
19213  DB  65,92                               ; pop           %r12
19214  DB  65,93                               ; pop           %r13
19215  DB  65,94                               ; pop           %r14
19216  DB  65,95                               ; pop           %r15
19217  DB  93                                  ; pop           %rbp
19218  DB  195                                 ; retq
19219
19220PUBLIC _sk_just_return_sse2
19221_sk_just_return_sse2 LABEL PROC
19222  DB  195                                 ; retq
19223
19224PUBLIC _sk_seed_shader_sse2
19225_sk_seed_shader_sse2 LABEL PROC
19226  DB  102,15,110,194                      ; movd          %edx,%xmm0
19227  DB  102,15,112,192,0                    ; pshufd        $0x0,%xmm0,%xmm0
19228  DB  15,91,200                           ; cvtdq2ps      %xmm0,%xmm1
19229  DB  15,40,21,167,85,0,0                 ; movaps        0x55a7(%rip),%xmm2        # 5700 <_sk_callback_sse2+0xd7>
19230  DB  15,88,202                           ; addps         %xmm2,%xmm1
19231  DB  15,16,7                             ; movups        (%rdi),%xmm0
19232  DB  15,88,193                           ; addps         %xmm1,%xmm0
19233  DB  102,15,110,201                      ; movd          %ecx,%xmm1
19234  DB  102,15,112,201,0                    ; pshufd        $0x0,%xmm1,%xmm1
19235  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
19236  DB  15,88,202                           ; addps         %xmm2,%xmm1
19237  DB  72,173                              ; lods          %ds:(%rsi),%rax
19238  DB  15,40,21,150,85,0,0                 ; movaps        0x5596(%rip),%xmm2        # 5710 <_sk_callback_sse2+0xe7>
19239  DB  15,87,219                           ; xorps         %xmm3,%xmm3
19240  DB  15,87,228                           ; xorps         %xmm4,%xmm4
19241  DB  15,87,237                           ; xorps         %xmm5,%xmm5
19242  DB  15,87,246                           ; xorps         %xmm6,%xmm6
19243  DB  15,87,255                           ; xorps         %xmm7,%xmm7
19244  DB  255,224                             ; jmpq          *%rax
19245
19246PUBLIC _sk_dither_sse2
19247_sk_dither_sse2 LABEL PROC
19248  DB  72,173                              ; lods          %ds:(%rsi),%rax
19249  DB  102,68,15,110,194                   ; movd          %edx,%xmm8
19250  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
19251  DB  243,68,15,111,79,32                 ; movdqu        0x20(%rdi),%xmm9
19252  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
19253  DB  102,68,15,110,193                   ; movd          %ecx,%xmm8
19254  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
19255  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
19256  DB  102,68,15,111,21,100,85,0,0         ; movdqa        0x5564(%rip),%xmm10        # 5720 <_sk_callback_sse2+0xf7>
19257  DB  102,69,15,111,216                   ; movdqa        %xmm8,%xmm11
19258  DB  102,69,15,219,218                   ; pand          %xmm10,%xmm11
19259  DB  102,65,15,114,243,5                 ; pslld         $0x5,%xmm11
19260  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
19261  DB  102,65,15,114,242,4                 ; pslld         $0x4,%xmm10
19262  DB  102,68,15,111,37,80,85,0,0          ; movdqa        0x5550(%rip),%xmm12        # 5730 <_sk_callback_sse2+0x107>
19263  DB  102,68,15,111,45,87,85,0,0          ; movdqa        0x5557(%rip),%xmm13        # 5740 <_sk_callback_sse2+0x117>
19264  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
19265  DB  102,69,15,219,245                   ; pand          %xmm13,%xmm14
19266  DB  102,65,15,114,246,2                 ; pslld         $0x2,%xmm14
19267  DB  102,69,15,219,233                   ; pand          %xmm9,%xmm13
19268  DB  102,69,15,254,237                   ; paddd         %xmm13,%xmm13
19269  DB  102,69,15,219,196                   ; pand          %xmm12,%xmm8
19270  DB  102,65,15,114,208,1                 ; psrld         $0x1,%xmm8
19271  DB  102,69,15,219,204                   ; pand          %xmm12,%xmm9
19272  DB  102,65,15,114,209,2                 ; psrld         $0x2,%xmm9
19273  DB  102,69,15,235,234                   ; por           %xmm10,%xmm13
19274  DB  102,69,15,235,233                   ; por           %xmm9,%xmm13
19275  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
19276  DB  102,69,15,235,245                   ; por           %xmm13,%xmm14
19277  DB  102,69,15,235,240                   ; por           %xmm8,%xmm14
19278  DB  69,15,91,198                        ; cvtdq2ps      %xmm14,%xmm8
19279  DB  68,15,89,5,18,85,0,0                ; mulps         0x5512(%rip),%xmm8        # 5750 <_sk_callback_sse2+0x127>
19280  DB  68,15,88,5,26,85,0,0                ; addps         0x551a(%rip),%xmm8        # 5760 <_sk_callback_sse2+0x137>
19281  DB  243,68,15,16,16                     ; movss         (%rax),%xmm10
19282  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
19283  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
19284  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
19285  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
19286  DB  68,15,88,210                        ; addps         %xmm2,%xmm10
19287  DB  15,93,195                           ; minps         %xmm3,%xmm0
19288  DB  15,87,210                           ; xorps         %xmm2,%xmm2
19289  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
19290  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
19291  DB  15,93,203                           ; minps         %xmm3,%xmm1
19292  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
19293  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
19294  DB  68,15,93,211                        ; minps         %xmm3,%xmm10
19295  DB  65,15,95,210                        ; maxps         %xmm10,%xmm2
19296  DB  72,173                              ; lods          %ds:(%rsi),%rax
19297  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
19298  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
19299  DB  255,224                             ; jmpq          *%rax
19300
19301PUBLIC _sk_constant_color_sse2
19302_sk_constant_color_sse2 LABEL PROC
19303  DB  72,173                              ; lods          %ds:(%rsi),%rax
19304  DB  243,15,16,0                         ; movss         (%rax),%xmm0
19305  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
19306  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
19307  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
19308  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
19309  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
19310  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
19311  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
19312  DB  72,173                              ; lods          %ds:(%rsi),%rax
19313  DB  255,224                             ; jmpq          *%rax
19314
19315PUBLIC _sk_load_rgba_sse2
19316_sk_load_rgba_sse2 LABEL PROC
19317  DB  72,173                              ; lods          %ds:(%rsi),%rax
19318  DB  15,16,0                             ; movups        (%rax),%xmm0
19319  DB  15,16,72,16                         ; movups        0x10(%rax),%xmm1
19320  DB  15,16,80,32                         ; movups        0x20(%rax),%xmm2
19321  DB  15,16,88,48                         ; movups        0x30(%rax),%xmm3
19322  DB  72,173                              ; lods          %ds:(%rsi),%rax
19323  DB  255,224                             ; jmpq          *%rax
19324
19325PUBLIC _sk_store_rgba_sse2
19326_sk_store_rgba_sse2 LABEL PROC
19327  DB  72,173                              ; lods          %ds:(%rsi),%rax
19328  DB  15,17,0                             ; movups        %xmm0,(%rax)
19329  DB  15,17,72,16                         ; movups        %xmm1,0x10(%rax)
19330  DB  15,17,80,32                         ; movups        %xmm2,0x20(%rax)
19331  DB  15,17,88,48                         ; movups        %xmm3,0x30(%rax)
19332  DB  72,173                              ; lods          %ds:(%rsi),%rax
19333  DB  255,224                             ; jmpq          *%rax
19334
19335PUBLIC _sk_clear_sse2
19336_sk_clear_sse2 LABEL PROC
19337  DB  72,173                              ; lods          %ds:(%rsi),%rax
19338  DB  15,87,192                           ; xorps         %xmm0,%xmm0
19339  DB  15,87,201                           ; xorps         %xmm1,%xmm1
19340  DB  15,87,210                           ; xorps         %xmm2,%xmm2
19341  DB  15,87,219                           ; xorps         %xmm3,%xmm3
19342  DB  255,224                             ; jmpq          *%rax
19343
19344PUBLIC _sk_srcatop_sse2
19345_sk_srcatop_sse2 LABEL PROC
19346  DB  15,89,199                           ; mulps         %xmm7,%xmm0
19347  DB  68,15,40,5,116,84,0,0               ; movaps        0x5474(%rip),%xmm8        # 5770 <_sk_callback_sse2+0x147>
19348  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
19349  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
19350  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
19351  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
19352  DB  15,89,207                           ; mulps         %xmm7,%xmm1
19353  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
19354  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19355  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
19356  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19357  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
19358  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
19359  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
19360  DB  15,89,223                           ; mulps         %xmm7,%xmm3
19361  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
19362  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
19363  DB  72,173                              ; lods          %ds:(%rsi),%rax
19364  DB  255,224                             ; jmpq          *%rax
19365
19366PUBLIC _sk_dstatop_sse2
19367_sk_dstatop_sse2 LABEL PROC
19368  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
19369  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
19370  DB  68,15,40,13,55,84,0,0               ; movaps        0x5437(%rip),%xmm9        # 5780 <_sk_callback_sse2+0x157>
19371  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
19372  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
19373  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
19374  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
19375  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
19376  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
19377  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
19378  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
19379  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
19380  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
19381  DB  65,15,88,208                        ; addps         %xmm8,%xmm2
19382  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
19383  DB  15,89,223                           ; mulps         %xmm7,%xmm3
19384  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
19385  DB  72,173                              ; lods          %ds:(%rsi),%rax
19386  DB  255,224                             ; jmpq          *%rax
19387
19388PUBLIC _sk_srcin_sse2
19389_sk_srcin_sse2 LABEL PROC
19390  DB  15,89,199                           ; mulps         %xmm7,%xmm0
19391  DB  15,89,207                           ; mulps         %xmm7,%xmm1
19392  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19393  DB  15,89,223                           ; mulps         %xmm7,%xmm3
19394  DB  72,173                              ; lods          %ds:(%rsi),%rax
19395  DB  255,224                             ; jmpq          *%rax
19396
19397PUBLIC _sk_dstin_sse2
19398_sk_dstin_sse2 LABEL PROC
19399  DB  15,40,195                           ; movaps        %xmm3,%xmm0
19400  DB  15,89,196                           ; mulps         %xmm4,%xmm0
19401  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19402  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19403  DB  15,40,211                           ; movaps        %xmm3,%xmm2
19404  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19405  DB  15,89,223                           ; mulps         %xmm7,%xmm3
19406  DB  72,173                              ; lods          %ds:(%rsi),%rax
19407  DB  255,224                             ; jmpq          *%rax
19408
19409PUBLIC _sk_srcout_sse2
19410_sk_srcout_sse2 LABEL PROC
19411  DB  68,15,40,5,219,83,0,0               ; movaps        0x53db(%rip),%xmm8        # 5790 <_sk_callback_sse2+0x167>
19412  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
19413  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
19414  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
19415  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
19416  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
19417  DB  72,173                              ; lods          %ds:(%rsi),%rax
19418  DB  255,224                             ; jmpq          *%rax
19419
19420PUBLIC _sk_dstout_sse2
19421_sk_dstout_sse2 LABEL PROC
19422  DB  68,15,40,5,203,83,0,0               ; movaps        0x53cb(%rip),%xmm8        # 57a0 <_sk_callback_sse2+0x177>
19423  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
19424  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
19425  DB  15,89,196                           ; mulps         %xmm4,%xmm0
19426  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19427  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19428  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19429  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19430  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
19431  DB  72,173                              ; lods          %ds:(%rsi),%rax
19432  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
19433  DB  255,224                             ; jmpq          *%rax
19434
19435PUBLIC _sk_srcover_sse2
19436_sk_srcover_sse2 LABEL PROC
19437  DB  68,15,40,5,174,83,0,0               ; movaps        0x53ae(%rip),%xmm8        # 57b0 <_sk_callback_sse2+0x187>
19438  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
19439  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
19440  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
19441  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
19442  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
19443  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19444  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
19445  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
19446  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
19447  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
19448  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
19449  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
19450  DB  72,173                              ; lods          %ds:(%rsi),%rax
19451  DB  255,224                             ; jmpq          *%rax
19452
19453PUBLIC _sk_dstover_sse2
19454_sk_dstover_sse2 LABEL PROC
19455  DB  68,15,40,5,130,83,0,0               ; movaps        0x5382(%rip),%xmm8        # 57c0 <_sk_callback_sse2+0x197>
19456  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
19457  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
19458  DB  15,88,196                           ; addps         %xmm4,%xmm0
19459  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
19460  DB  15,88,205                           ; addps         %xmm5,%xmm1
19461  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
19462  DB  15,88,214                           ; addps         %xmm6,%xmm2
19463  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
19464  DB  15,88,223                           ; addps         %xmm7,%xmm3
19465  DB  72,173                              ; lods          %ds:(%rsi),%rax
19466  DB  255,224                             ; jmpq          *%rax
19467
19468PUBLIC _sk_modulate_sse2
19469_sk_modulate_sse2 LABEL PROC
19470  DB  15,89,196                           ; mulps         %xmm4,%xmm0
19471  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19472  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19473  DB  15,89,223                           ; mulps         %xmm7,%xmm3
19474  DB  72,173                              ; lods          %ds:(%rsi),%rax
19475  DB  255,224                             ; jmpq          *%rax
19476
19477PUBLIC _sk_multiply_sse2
19478_sk_multiply_sse2 LABEL PROC
19479  DB  68,15,40,5,86,83,0,0                ; movaps        0x5356(%rip),%xmm8        # 57d0 <_sk_callback_sse2+0x1a7>
19480  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
19481  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
19482  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
19483  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
19484  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
19485  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
19486  DB  68,15,89,220                        ; mulps         %xmm4,%xmm11
19487  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
19488  DB  15,89,196                           ; mulps         %xmm4,%xmm0
19489  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
19490  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
19491  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
19492  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
19493  DB  68,15,89,221                        ; mulps         %xmm5,%xmm11
19494  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
19495  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19496  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
19497  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
19498  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
19499  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
19500  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
19501  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
19502  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19503  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
19504  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
19505  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
19506  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
19507  DB  15,89,223                           ; mulps         %xmm7,%xmm3
19508  DB  65,15,88,216                        ; addps         %xmm8,%xmm3
19509  DB  72,173                              ; lods          %ds:(%rsi),%rax
19510  DB  255,224                             ; jmpq          *%rax
19511
19512PUBLIC _sk_plus__sse2
19513_sk_plus__sse2 LABEL PROC
19514  DB  15,88,196                           ; addps         %xmm4,%xmm0
19515  DB  15,88,205                           ; addps         %xmm5,%xmm1
19516  DB  15,88,214                           ; addps         %xmm6,%xmm2
19517  DB  15,88,223                           ; addps         %xmm7,%xmm3
19518  DB  72,173                              ; lods          %ds:(%rsi),%rax
19519  DB  255,224                             ; jmpq          *%rax
19520
19521PUBLIC _sk_screen_sse2
19522_sk_screen_sse2 LABEL PROC
19523  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
19524  DB  15,88,196                           ; addps         %xmm4,%xmm0
19525  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
19526  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
19527  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
19528  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
19529  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19530  DB  68,15,92,193                        ; subps         %xmm1,%xmm8
19531  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
19532  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
19533  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19534  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
19535  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
19536  DB  68,15,88,215                        ; addps         %xmm7,%xmm10
19537  DB  15,89,223                           ; mulps         %xmm7,%xmm3
19538  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
19539  DB  72,173                              ; lods          %ds:(%rsi),%rax
19540  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19541  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
19542  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
19543  DB  255,224                             ; jmpq          *%rax
19544
19545PUBLIC _sk_xor__sse2
19546_sk_xor__sse2 LABEL PROC
19547  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
19548  DB  15,40,29,139,82,0,0                 ; movaps        0x528b(%rip),%xmm3        # 57e0 <_sk_callback_sse2+0x1b7>
19549  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19550  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
19551  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
19552  DB  65,15,92,216                        ; subps         %xmm8,%xmm3
19553  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
19554  DB  68,15,89,212                        ; mulps         %xmm4,%xmm10
19555  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
19556  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
19557  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
19558  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
19559  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
19560  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
19561  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
19562  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
19563  DB  65,15,88,210                        ; addps         %xmm10,%xmm2
19564  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
19565  DB  15,89,223                           ; mulps         %xmm7,%xmm3
19566  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
19567  DB  72,173                              ; lods          %ds:(%rsi),%rax
19568  DB  255,224                             ; jmpq          *%rax
19569
19570PUBLIC _sk_darken_sse2
19571_sk_darken_sse2 LABEL PROC
19572  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
19573  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
19574  DB  15,88,196                           ; addps         %xmm4,%xmm0
19575  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
19576  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19577  DB  15,89,204                           ; mulps         %xmm4,%xmm1
19578  DB  68,15,95,201                        ; maxps         %xmm1,%xmm9
19579  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
19580  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19581  DB  15,88,205                           ; addps         %xmm5,%xmm1
19582  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
19583  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19584  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19585  DB  69,15,95,193                        ; maxps         %xmm9,%xmm8
19586  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
19587  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
19588  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
19589  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19590  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19591  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
19592  DB  65,15,95,209                        ; maxps         %xmm9,%xmm2
19593  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
19594  DB  15,40,21,246,81,0,0                 ; movaps        0x51f6(%rip),%xmm2        # 57f0 <_sk_callback_sse2+0x1c7>
19595  DB  15,92,211                           ; subps         %xmm3,%xmm2
19596  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19597  DB  15,88,218                           ; addps         %xmm2,%xmm3
19598  DB  72,173                              ; lods          %ds:(%rsi),%rax
19599  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19600  DB  255,224                             ; jmpq          *%rax
19601
19602PUBLIC _sk_lighten_sse2
19603_sk_lighten_sse2 LABEL PROC
19604  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
19605  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
19606  DB  15,88,196                           ; addps         %xmm4,%xmm0
19607  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
19608  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19609  DB  15,89,204                           ; mulps         %xmm4,%xmm1
19610  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
19611  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
19612  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19613  DB  15,88,205                           ; addps         %xmm5,%xmm1
19614  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
19615  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19616  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19617  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
19618  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
19619  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
19620  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
19621  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19622  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19623  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
19624  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
19625  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
19626  DB  15,40,21,155,81,0,0                 ; movaps        0x519b(%rip),%xmm2        # 5800 <_sk_callback_sse2+0x1d7>
19627  DB  15,92,211                           ; subps         %xmm3,%xmm2
19628  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19629  DB  15,88,218                           ; addps         %xmm2,%xmm3
19630  DB  72,173                              ; lods          %ds:(%rsi),%rax
19631  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19632  DB  255,224                             ; jmpq          *%rax
19633
19634PUBLIC _sk_difference_sse2
19635_sk_difference_sse2 LABEL PROC
19636  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
19637  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
19638  DB  15,88,196                           ; addps         %xmm4,%xmm0
19639  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
19640  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19641  DB  15,89,204                           ; mulps         %xmm4,%xmm1
19642  DB  68,15,93,201                        ; minps         %xmm1,%xmm9
19643  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
19644  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
19645  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19646  DB  15,88,205                           ; addps         %xmm5,%xmm1
19647  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
19648  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19649  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19650  DB  69,15,93,193                        ; minps         %xmm9,%xmm8
19651  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
19652  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
19653  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
19654  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
19655  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19656  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19657  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
19658  DB  65,15,93,209                        ; minps         %xmm9,%xmm2
19659  DB  15,88,210                           ; addps         %xmm2,%xmm2
19660  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
19661  DB  15,40,21,53,81,0,0                  ; movaps        0x5135(%rip),%xmm2        # 5810 <_sk_callback_sse2+0x1e7>
19662  DB  15,92,211                           ; subps         %xmm3,%xmm2
19663  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19664  DB  15,88,218                           ; addps         %xmm2,%xmm3
19665  DB  72,173                              ; lods          %ds:(%rsi),%rax
19666  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19667  DB  255,224                             ; jmpq          *%rax
19668
19669PUBLIC _sk_exclusion_sse2
19670_sk_exclusion_sse2 LABEL PROC
19671  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
19672  DB  15,40,200                           ; movaps        %xmm0,%xmm1
19673  DB  15,88,196                           ; addps         %xmm4,%xmm0
19674  DB  15,89,204                           ; mulps         %xmm4,%xmm1
19675  DB  15,88,201                           ; addps         %xmm1,%xmm1
19676  DB  15,92,193                           ; subps         %xmm1,%xmm0
19677  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19678  DB  15,88,205                           ; addps         %xmm5,%xmm1
19679  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
19680  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
19681  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
19682  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
19683  DB  68,15,88,198                        ; addps         %xmm6,%xmm8
19684  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19685  DB  15,88,210                           ; addps         %xmm2,%xmm2
19686  DB  68,15,92,194                        ; subps         %xmm2,%xmm8
19687  DB  15,40,21,245,80,0,0                 ; movaps        0x50f5(%rip),%xmm2        # 5820 <_sk_callback_sse2+0x1f7>
19688  DB  15,92,211                           ; subps         %xmm3,%xmm2
19689  DB  15,89,215                           ; mulps         %xmm7,%xmm2
19690  DB  15,88,218                           ; addps         %xmm2,%xmm3
19691  DB  72,173                              ; lods          %ds:(%rsi),%rax
19692  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19693  DB  255,224                             ; jmpq          *%rax
19694
19695PUBLIC _sk_colorburn_sse2
19696_sk_colorburn_sse2 LABEL PROC
19697  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
19698  DB  68,15,40,21,232,80,0,0              ; movaps        0x50e8(%rip),%xmm10        # 5830 <_sk_callback_sse2+0x207>
19699  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
19700  DB  68,15,92,207                        ; subps         %xmm7,%xmm9
19701  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
19702  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
19703  DB  15,40,199                           ; movaps        %xmm7,%xmm0
19704  DB  15,92,196                           ; subps         %xmm4,%xmm0
19705  DB  15,89,195                           ; mulps         %xmm3,%xmm0
19706  DB  65,15,94,192                        ; divps         %xmm8,%xmm0
19707  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
19708  DB  68,15,93,224                        ; minps         %xmm0,%xmm12
19709  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19710  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
19711  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
19712  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
19713  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
19714  DB  15,88,196                           ; addps         %xmm4,%xmm0
19715  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
19716  DB  69,15,40,224                        ; movaps        %xmm8,%xmm12
19717  DB  69,15,194,227,0                     ; cmpeqps       %xmm11,%xmm12
19718  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
19719  DB  69,15,84,196                        ; andps         %xmm12,%xmm8
19720  DB  69,15,85,229                        ; andnps        %xmm13,%xmm12
19721  DB  69,15,40,234                        ; movaps        %xmm10,%xmm13
19722  DB  68,15,89,236                        ; mulps         %xmm4,%xmm13
19723  DB  69,15,86,224                        ; orps          %xmm8,%xmm12
19724  DB  68,15,40,196                        ; movaps        %xmm4,%xmm8
19725  DB  68,15,194,199,0                     ; cmpeqps       %xmm7,%xmm8
19726  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
19727  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
19728  DB  69,15,85,196                        ; andnps        %xmm12,%xmm8
19729  DB  65,15,86,192                        ; orps          %xmm8,%xmm0
19730  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
19731  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
19732  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
19733  DB  68,15,92,229                        ; subps         %xmm5,%xmm12
19734  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
19735  DB  68,15,94,225                        ; divps         %xmm1,%xmm12
19736  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19737  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
19738  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
19739  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
19740  DB  68,15,40,233                        ; movaps        %xmm1,%xmm13
19741  DB  69,15,194,235,0                     ; cmpeqps       %xmm11,%xmm13
19742  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
19743  DB  69,15,88,224                        ; addps         %xmm8,%xmm12
19744  DB  65,15,84,205                        ; andps         %xmm13,%xmm1
19745  DB  69,15,85,236                        ; andnps        %xmm12,%xmm13
19746  DB  68,15,88,197                        ; addps         %xmm5,%xmm8
19747  DB  68,15,86,233                        ; orps          %xmm1,%xmm13
19748  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
19749  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19750  DB  68,15,88,233                        ; addps         %xmm1,%xmm13
19751  DB  15,40,205                           ; movaps        %xmm5,%xmm1
19752  DB  15,194,207,0                        ; cmpeqps       %xmm7,%xmm1
19753  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
19754  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
19755  DB  68,15,86,193                        ; orps          %xmm1,%xmm8
19756  DB  15,40,207                           ; movaps        %xmm7,%xmm1
19757  DB  15,92,206                           ; subps         %xmm6,%xmm1
19758  DB  15,89,203                           ; mulps         %xmm3,%xmm1
19759  DB  15,94,202                           ; divps         %xmm2,%xmm1
19760  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
19761  DB  68,15,93,225                        ; minps         %xmm1,%xmm12
19762  DB  15,40,207                           ; movaps        %xmm7,%xmm1
19763  DB  65,15,92,204                        ; subps         %xmm12,%xmm1
19764  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
19765  DB  68,15,194,218,0                     ; cmpeqps       %xmm2,%xmm11
19766  DB  15,89,203                           ; mulps         %xmm3,%xmm1
19767  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
19768  DB  65,15,84,211                        ; andps         %xmm11,%xmm2
19769  DB  68,15,85,217                        ; andnps        %xmm1,%xmm11
19770  DB  68,15,88,206                        ; addps         %xmm6,%xmm9
19771  DB  68,15,86,218                        ; orps          %xmm2,%xmm11
19772  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
19773  DB  15,89,206                           ; mulps         %xmm6,%xmm1
19774  DB  68,15,88,217                        ; addps         %xmm1,%xmm11
19775  DB  15,40,206                           ; movaps        %xmm6,%xmm1
19776  DB  15,194,207,0                        ; cmpeqps       %xmm7,%xmm1
19777  DB  68,15,84,201                        ; andps         %xmm1,%xmm9
19778  DB  65,15,85,203                        ; andnps        %xmm11,%xmm1
19779  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
19780  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
19781  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
19782  DB  72,173                              ; lods          %ds:(%rsi),%rax
19783  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
19784  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
19785  DB  255,224                             ; jmpq          *%rax
19786
19787PUBLIC _sk_colordodge_sse2
19788_sk_colordodge_sse2 LABEL PROC
19789  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
19790  DB  68,15,40,21,158,79,0,0              ; movaps        0x4f9e(%rip),%xmm10        # 5840 <_sk_callback_sse2+0x217>
19791  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
19792  DB  68,15,92,223                        ; subps         %xmm7,%xmm11
19793  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
19794  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
19795  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
19796  DB  68,15,89,196                        ; mulps         %xmm4,%xmm8
19797  DB  15,40,195                           ; movaps        %xmm3,%xmm0
19798  DB  65,15,92,193                        ; subps         %xmm9,%xmm0
19799  DB  68,15,94,192                        ; divps         %xmm0,%xmm8
19800  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19801  DB  15,40,199                           ; movaps        %xmm7,%xmm0
19802  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
19803  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
19804  DB  68,15,194,243,0                     ; cmpeqps       %xmm3,%xmm14
19805  DB  15,89,195                           ; mulps         %xmm3,%xmm0
19806  DB  65,15,88,196                        ; addps         %xmm12,%xmm0
19807  DB  69,15,84,206                        ; andps         %xmm14,%xmm9
19808  DB  68,15,85,240                        ; andnps        %xmm0,%xmm14
19809  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
19810  DB  65,15,40,196                        ; movaps        %xmm12,%xmm0
19811  DB  15,88,196                           ; addps         %xmm4,%xmm0
19812  DB  68,15,92,211                        ; subps         %xmm3,%xmm10
19813  DB  69,15,86,241                        ; orps          %xmm9,%xmm14
19814  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
19815  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
19816  DB  69,15,88,241                        ; addps         %xmm9,%xmm14
19817  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
19818  DB  69,15,194,200,0                     ; cmpeqps       %xmm8,%xmm9
19819  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
19820  DB  69,15,85,206                        ; andnps        %xmm14,%xmm9
19821  DB  65,15,86,193                        ; orps          %xmm9,%xmm0
19822  DB  68,15,40,203                        ; movaps        %xmm3,%xmm9
19823  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19824  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
19825  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
19826  DB  69,15,94,204                        ; divps         %xmm12,%xmm9
19827  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
19828  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
19829  DB  69,15,93,233                        ; minps         %xmm9,%xmm13
19830  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
19831  DB  68,15,194,243,0                     ; cmpeqps       %xmm3,%xmm14
19832  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
19833  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
19834  DB  65,15,84,206                        ; andps         %xmm14,%xmm1
19835  DB  69,15,85,245                        ; andnps        %xmm13,%xmm14
19836  DB  69,15,40,204                        ; movaps        %xmm12,%xmm9
19837  DB  68,15,88,205                        ; addps         %xmm5,%xmm9
19838  DB  68,15,86,241                        ; orps          %xmm1,%xmm14
19839  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
19840  DB  15,89,205                           ; mulps         %xmm5,%xmm1
19841  DB  68,15,88,241                        ; addps         %xmm1,%xmm14
19842  DB  15,40,205                           ; movaps        %xmm5,%xmm1
19843  DB  65,15,194,200,0                     ; cmpeqps       %xmm8,%xmm1
19844  DB  68,15,84,201                        ; andps         %xmm1,%xmm9
19845  DB  65,15,85,206                        ; andnps        %xmm14,%xmm1
19846  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
19847  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
19848  DB  68,15,89,230                        ; mulps         %xmm6,%xmm12
19849  DB  15,40,203                           ; movaps        %xmm3,%xmm1
19850  DB  15,92,202                           ; subps         %xmm2,%xmm1
19851  DB  68,15,94,225                        ; divps         %xmm1,%xmm12
19852  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19853  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
19854  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
19855  DB  15,40,202                           ; movaps        %xmm2,%xmm1
19856  DB  15,194,203,0                        ; cmpeqps       %xmm3,%xmm1
19857  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
19858  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
19859  DB  15,84,209                           ; andps         %xmm1,%xmm2
19860  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
19861  DB  15,86,202                           ; orps          %xmm2,%xmm1
19862  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
19863  DB  15,89,214                           ; mulps         %xmm6,%xmm2
19864  DB  15,88,202                           ; addps         %xmm2,%xmm1
19865  DB  68,15,194,198,0                     ; cmpeqps       %xmm6,%xmm8
19866  DB  68,15,88,222                        ; addps         %xmm6,%xmm11
19867  DB  69,15,84,216                        ; andps         %xmm8,%xmm11
19868  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
19869  DB  69,15,86,195                        ; orps          %xmm11,%xmm8
19870  DB  68,15,89,215                        ; mulps         %xmm7,%xmm10
19871  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
19872  DB  72,173                              ; lods          %ds:(%rsi),%rax
19873  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
19874  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
19875  DB  255,224                             ; jmpq          *%rax
19876
19877PUBLIC _sk_hardlight_sse2
19878_sk_hardlight_sse2 LABEL PROC
19879  DB  72,131,236,24                       ; sub           $0x18,%rsp
19880  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
19881  DB  15,40,245                           ; movaps        %xmm5,%xmm6
19882  DB  15,40,236                           ; movaps        %xmm4,%xmm5
19883  DB  68,15,40,29,80,78,0,0               ; movaps        0x4e50(%rip),%xmm11        # 5850 <_sk_callback_sse2+0x227>
19884  DB  69,15,40,211                        ; movaps        %xmm11,%xmm10
19885  DB  68,15,92,215                        ; subps         %xmm7,%xmm10
19886  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
19887  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
19888  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
19889  DB  69,15,40,203                        ; movaps        %xmm11,%xmm9
19890  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
19891  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
19892  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
19893  DB  68,15,92,192                        ; subps         %xmm0,%xmm8
19894  DB  15,40,227                           ; movaps        %xmm3,%xmm4
19895  DB  15,89,231                           ; mulps         %xmm7,%xmm4
19896  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
19897  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
19898  DB  68,15,40,255                        ; movaps        %xmm7,%xmm15
19899  DB  68,15,92,253                        ; subps         %xmm5,%xmm15
19900  DB  69,15,89,248                        ; mulps         %xmm8,%xmm15
19901  DB  69,15,88,255                        ; addps         %xmm15,%xmm15
19902  DB  68,15,40,228                        ; movaps        %xmm4,%xmm12
19903  DB  69,15,92,231                        ; subps         %xmm15,%xmm12
19904  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
19905  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
19906  DB  68,15,194,195,2                     ; cmpleps       %xmm3,%xmm8
19907  DB  15,89,197                           ; mulps         %xmm5,%xmm0
19908  DB  15,88,192                           ; addps         %xmm0,%xmm0
19909  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
19910  DB  69,15,85,196                        ; andnps        %xmm12,%xmm8
19911  DB  68,15,86,192                        ; orps          %xmm0,%xmm8
19912  DB  69,15,40,251                        ; movaps        %xmm11,%xmm15
19913  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
19914  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
19915  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
19916  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
19917  DB  15,89,193                           ; mulps         %xmm1,%xmm0
19918  DB  68,15,89,254                        ; mulps         %xmm6,%xmm15
19919  DB  68,15,88,248                        ; addps         %xmm0,%xmm15
19920  DB  15,40,195                           ; movaps        %xmm3,%xmm0
19921  DB  15,92,193                           ; subps         %xmm1,%xmm0
19922  DB  68,15,92,238                        ; subps         %xmm6,%xmm13
19923  DB  68,15,89,232                        ; mulps         %xmm0,%xmm13
19924  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
19925  DB  15,40,196                           ; movaps        %xmm4,%xmm0
19926  DB  65,15,92,197                        ; subps         %xmm13,%xmm0
19927  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
19928  DB  69,15,88,201                        ; addps         %xmm9,%xmm9
19929  DB  68,15,194,203,2                     ; cmpleps       %xmm3,%xmm9
19930  DB  15,89,206                           ; mulps         %xmm6,%xmm1
19931  DB  15,88,201                           ; addps         %xmm1,%xmm1
19932  DB  65,15,84,201                        ; andps         %xmm9,%xmm1
19933  DB  68,15,85,200                        ; andnps        %xmm0,%xmm9
19934  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
19935  DB  69,15,88,207                        ; addps         %xmm15,%xmm9
19936  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
19937  DB  68,15,40,44,36                      ; movaps        (%rsp),%xmm13
19938  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
19939  DB  69,15,88,226                        ; addps         %xmm10,%xmm12
19940  DB  68,15,40,210                        ; movaps        %xmm2,%xmm10
19941  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
19942  DB  68,15,194,211,2                     ; cmpleps       %xmm3,%xmm10
19943  DB  15,40,195                           ; movaps        %xmm3,%xmm0
19944  DB  15,92,194                           ; subps         %xmm2,%xmm0
19945  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
19946  DB  15,88,210                           ; addps         %xmm2,%xmm2
19947  DB  69,15,92,245                        ; subps         %xmm13,%xmm14
19948  DB  68,15,89,240                        ; mulps         %xmm0,%xmm14
19949  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
19950  DB  65,15,92,230                        ; subps         %xmm14,%xmm4
19951  DB  65,15,84,210                        ; andps         %xmm10,%xmm2
19952  DB  68,15,85,212                        ; andnps        %xmm4,%xmm10
19953  DB  68,15,86,210                        ; orps          %xmm2,%xmm10
19954  DB  69,15,88,212                        ; addps         %xmm12,%xmm10
19955  DB  65,15,88,219                        ; addps         %xmm11,%xmm3
19956  DB  72,173                              ; lods          %ds:(%rsi),%rax
19957  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
19958  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
19959  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
19960  DB  15,40,229                           ; movaps        %xmm5,%xmm4
19961  DB  15,40,238                           ; movaps        %xmm6,%xmm5
19962  DB  65,15,40,245                        ; movaps        %xmm13,%xmm6
19963  DB  72,131,196,24                       ; add           $0x18,%rsp
19964  DB  255,224                             ; jmpq          *%rax
19965
19966PUBLIC _sk_overlay_sse2
19967_sk_overlay_sse2 LABEL PROC
19968  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
19969  DB  68,15,40,232                        ; movaps        %xmm0,%xmm13
19970  DB  68,15,40,13,27,77,0,0               ; movaps        0x4d1b(%rip),%xmm9        # 5860 <_sk_callback_sse2+0x237>
19971  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
19972  DB  68,15,92,215                        ; subps         %xmm7,%xmm10
19973  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
19974  DB  69,15,89,221                        ; mulps         %xmm13,%xmm11
19975  DB  68,15,92,203                        ; subps         %xmm3,%xmm9
19976  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
19977  DB  15,89,196                           ; mulps         %xmm4,%xmm0
19978  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
19979  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
19980  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
19981  DB  68,15,89,236                        ; mulps         %xmm4,%xmm13
19982  DB  68,15,40,247                        ; movaps        %xmm7,%xmm14
19983  DB  68,15,92,244                        ; subps         %xmm4,%xmm14
19984  DB  15,40,204                           ; movaps        %xmm4,%xmm1
19985  DB  15,88,201                           ; addps         %xmm1,%xmm1
19986  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
19987  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
19988  DB  68,15,40,219                        ; movaps        %xmm3,%xmm11
19989  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
19990  DB  69,15,89,244                        ; mulps         %xmm12,%xmm14
19991  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
19992  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
19993  DB  69,15,92,230                        ; subps         %xmm14,%xmm12
19994  DB  68,15,84,233                        ; andps         %xmm1,%xmm13
19995  DB  65,15,85,204                        ; andnps        %xmm12,%xmm1
19996  DB  65,15,86,205                        ; orps          %xmm13,%xmm1
19997  DB  15,88,193                           ; addps         %xmm1,%xmm0
19998  DB  69,15,40,226                        ; movaps        %xmm10,%xmm12
19999  DB  69,15,89,224                        ; mulps         %xmm8,%xmm12
20000  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
20001  DB  15,89,205                           ; mulps         %xmm5,%xmm1
20002  DB  65,15,88,204                        ; addps         %xmm12,%xmm1
20003  DB  68,15,40,227                        ; movaps        %xmm3,%xmm12
20004  DB  69,15,92,224                        ; subps         %xmm8,%xmm12
20005  DB  68,15,89,197                        ; mulps         %xmm5,%xmm8
20006  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
20007  DB  68,15,92,237                        ; subps         %xmm5,%xmm13
20008  DB  68,15,40,245                        ; movaps        %xmm5,%xmm14
20009  DB  69,15,88,246                        ; addps         %xmm14,%xmm14
20010  DB  68,15,194,247,2                     ; cmpleps       %xmm7,%xmm14
20011  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
20012  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
20013  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
20014  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
20015  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
20016  DB  69,15,84,198                        ; andps         %xmm14,%xmm8
20017  DB  69,15,85,244                        ; andnps        %xmm12,%xmm14
20018  DB  69,15,86,240                        ; orps          %xmm8,%xmm14
20019  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
20020  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
20021  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
20022  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
20023  DB  69,15,88,194                        ; addps         %xmm10,%xmm8
20024  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
20025  DB  68,15,92,210                        ; subps         %xmm2,%xmm10
20026  DB  15,89,214                           ; mulps         %xmm6,%xmm2
20027  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
20028  DB  68,15,92,230                        ; subps         %xmm6,%xmm12
20029  DB  68,15,40,238                        ; movaps        %xmm6,%xmm13
20030  DB  69,15,88,237                        ; addps         %xmm13,%xmm13
20031  DB  68,15,194,239,2                     ; cmpleps       %xmm7,%xmm13
20032  DB  15,88,210                           ; addps         %xmm2,%xmm2
20033  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
20034  DB  69,15,88,228                        ; addps         %xmm12,%xmm12
20035  DB  69,15,92,220                        ; subps         %xmm12,%xmm11
20036  DB  65,15,84,213                        ; andps         %xmm13,%xmm2
20037  DB  69,15,85,235                        ; andnps        %xmm11,%xmm13
20038  DB  68,15,86,234                        ; orps          %xmm2,%xmm13
20039  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
20040  DB  68,15,89,207                        ; mulps         %xmm7,%xmm9
20041  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
20042  DB  72,173                              ; lods          %ds:(%rsi),%rax
20043  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
20044  DB  255,224                             ; jmpq          *%rax
20045
20046PUBLIC _sk_softlight_sse2
20047_sk_softlight_sse2 LABEL PROC
20048  DB  72,131,236,40                       ; sub           $0x28,%rsp
20049  DB  15,41,52,36                         ; movaps        %xmm6,(%rsp)
20050  DB  15,40,245                           ; movaps        %xmm5,%xmm6
20051  DB  15,40,236                           ; movaps        %xmm4,%xmm5
20052  DB  15,41,84,36,16                      ; movaps        %xmm2,0x10(%rsp)
20053  DB  15,40,209                           ; movaps        %xmm1,%xmm2
20054  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
20055  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
20056  DB  68,15,194,231,1                     ; cmpltps       %xmm7,%xmm12
20057  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
20058  DB  68,15,94,215                        ; divps         %xmm7,%xmm10
20059  DB  69,15,84,212                        ; andps         %xmm12,%xmm10
20060  DB  68,15,40,13,213,75,0,0              ; movaps        0x4bd5(%rip),%xmm9        # 5870 <_sk_callback_sse2+0x247>
20061  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
20062  DB  69,15,92,250                        ; subps         %xmm10,%xmm15
20063  DB  69,15,40,218                        ; movaps        %xmm10,%xmm11
20064  DB  69,15,40,234                        ; movaps        %xmm10,%xmm13
20065  DB  65,15,82,194                        ; rsqrtps       %xmm10,%xmm0
20066  DB  15,83,200                           ; rcpps         %xmm0,%xmm1
20067  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
20068  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
20069  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
20070  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
20071  DB  15,89,192                           ; mulps         %xmm0,%xmm0
20072  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
20073  DB  68,15,40,53,175,75,0,0              ; movaps        0x4baf(%rip),%xmm14        # 5880 <_sk_callback_sse2+0x257>
20074  DB  69,15,88,222                        ; addps         %xmm14,%xmm11
20075  DB  68,15,89,216                        ; mulps         %xmm0,%xmm11
20076  DB  68,15,40,21,175,75,0,0              ; movaps        0x4baf(%rip),%xmm10        # 5890 <_sk_callback_sse2+0x267>
20077  DB  69,15,89,234                        ; mulps         %xmm10,%xmm13
20078  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
20079  DB  15,88,228                           ; addps         %xmm4,%xmm4
20080  DB  15,88,228                           ; addps         %xmm4,%xmm4
20081  DB  15,194,231,2                        ; cmpleps       %xmm7,%xmm4
20082  DB  68,15,84,236                        ; andps         %xmm4,%xmm13
20083  DB  15,85,225                           ; andnps        %xmm1,%xmm4
20084  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20085  DB  15,88,192                           ; addps         %xmm0,%xmm0
20086  DB  65,15,86,229                        ; orps          %xmm13,%xmm4
20087  DB  15,40,200                           ; movaps        %xmm0,%xmm1
20088  DB  15,92,203                           ; subps         %xmm3,%xmm1
20089  DB  68,15,89,249                        ; mulps         %xmm1,%xmm15
20090  DB  15,89,207                           ; mulps         %xmm7,%xmm1
20091  DB  15,89,225                           ; mulps         %xmm1,%xmm4
20092  DB  15,40,203                           ; movaps        %xmm3,%xmm1
20093  DB  15,89,205                           ; mulps         %xmm5,%xmm1
20094  DB  15,88,225                           ; addps         %xmm1,%xmm4
20095  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
20096  DB  68,15,92,219                        ; subps         %xmm3,%xmm11
20097  DB  65,15,40,203                        ; movaps        %xmm11,%xmm1
20098  DB  15,89,205                           ; mulps         %xmm5,%xmm1
20099  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
20100  DB  68,15,92,239                        ; subps         %xmm7,%xmm13
20101  DB  69,15,89,197                        ; mulps         %xmm13,%xmm8
20102  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
20103  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
20104  DB  68,15,89,253                        ; mulps         %xmm5,%xmm15
20105  DB  15,194,195,2                        ; cmpleps       %xmm3,%xmm0
20106  DB  68,15,84,248                        ; andps         %xmm0,%xmm15
20107  DB  15,85,196                           ; andnps        %xmm4,%xmm0
20108  DB  65,15,86,199                        ; orps          %xmm15,%xmm0
20109  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
20110  DB  68,15,40,198                        ; movaps        %xmm6,%xmm8
20111  DB  68,15,94,199                        ; divps         %xmm7,%xmm8
20112  DB  69,15,84,196                        ; andps         %xmm12,%xmm8
20113  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
20114  DB  15,88,201                           ; addps         %xmm1,%xmm1
20115  DB  15,88,201                           ; addps         %xmm1,%xmm1
20116  DB  15,40,225                           ; movaps        %xmm1,%xmm4
20117  DB  15,89,228                           ; mulps         %xmm4,%xmm4
20118  DB  15,88,225                           ; addps         %xmm1,%xmm4
20119  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
20120  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
20121  DB  15,89,204                           ; mulps         %xmm4,%xmm1
20122  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
20123  DB  69,15,92,248                        ; subps         %xmm8,%xmm15
20124  DB  65,15,82,224                        ; rsqrtps       %xmm8,%xmm4
20125  DB  15,83,228                           ; rcpps         %xmm4,%xmm4
20126  DB  65,15,92,224                        ; subps         %xmm8,%xmm4
20127  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
20128  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
20129  DB  15,40,206                           ; movaps        %xmm6,%xmm1
20130  DB  15,88,201                           ; addps         %xmm1,%xmm1
20131  DB  15,88,201                           ; addps         %xmm1,%xmm1
20132  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
20133  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
20134  DB  15,85,204                           ; andnps        %xmm4,%xmm1
20135  DB  65,15,86,200                        ; orps          %xmm8,%xmm1
20136  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
20137  DB  69,15,88,192                        ; addps         %xmm8,%xmm8
20138  DB  65,15,40,224                        ; movaps        %xmm8,%xmm4
20139  DB  15,92,227                           ; subps         %xmm3,%xmm4
20140  DB  68,15,89,252                        ; mulps         %xmm4,%xmm15
20141  DB  15,89,231                           ; mulps         %xmm7,%xmm4
20142  DB  15,89,204                           ; mulps         %xmm4,%xmm1
20143  DB  15,40,227                           ; movaps        %xmm3,%xmm4
20144  DB  15,89,230                           ; mulps         %xmm6,%xmm4
20145  DB  15,88,204                           ; addps         %xmm4,%xmm1
20146  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
20147  DB  15,89,230                           ; mulps         %xmm6,%xmm4
20148  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
20149  DB  15,88,212                           ; addps         %xmm4,%xmm2
20150  DB  68,15,88,251                        ; addps         %xmm3,%xmm15
20151  DB  68,15,89,254                        ; mulps         %xmm6,%xmm15
20152  DB  68,15,194,195,2                     ; cmpleps       %xmm3,%xmm8
20153  DB  69,15,84,248                        ; andps         %xmm8,%xmm15
20154  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
20155  DB  69,15,86,199                        ; orps          %xmm15,%xmm8
20156  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
20157  DB  68,15,40,60,36                      ; movaps        (%rsp),%xmm15
20158  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
20159  DB  15,94,207                           ; divps         %xmm7,%xmm1
20160  DB  65,15,84,204                        ; andps         %xmm12,%xmm1
20161  DB  68,15,92,201                        ; subps         %xmm1,%xmm9
20162  DB  68,15,88,241                        ; addps         %xmm1,%xmm14
20163  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
20164  DB  15,82,209                           ; rsqrtps       %xmm1,%xmm2
20165  DB  15,83,210                           ; rcpps         %xmm2,%xmm2
20166  DB  15,92,209                           ; subps         %xmm1,%xmm2
20167  DB  15,88,201                           ; addps         %xmm1,%xmm1
20168  DB  15,88,201                           ; addps         %xmm1,%xmm1
20169  DB  15,40,225                           ; movaps        %xmm1,%xmm4
20170  DB  15,89,228                           ; mulps         %xmm4,%xmm4
20171  DB  15,88,225                           ; addps         %xmm1,%xmm4
20172  DB  68,15,89,244                        ; mulps         %xmm4,%xmm14
20173  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
20174  DB  65,15,40,207                        ; movaps        %xmm15,%xmm1
20175  DB  15,88,201                           ; addps         %xmm1,%xmm1
20176  DB  15,88,201                           ; addps         %xmm1,%xmm1
20177  DB  15,194,207,2                        ; cmpleps       %xmm7,%xmm1
20178  DB  68,15,84,209                        ; andps         %xmm1,%xmm10
20179  DB  15,85,202                           ; andnps        %xmm2,%xmm1
20180  DB  15,40,84,36,16                      ; movaps        0x10(%rsp),%xmm2
20181  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
20182  DB  15,88,210                           ; addps         %xmm2,%xmm2
20183  DB  65,15,86,202                        ; orps          %xmm10,%xmm1
20184  DB  15,40,226                           ; movaps        %xmm2,%xmm4
20185  DB  15,92,227                           ; subps         %xmm3,%xmm4
20186  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
20187  DB  15,89,231                           ; mulps         %xmm7,%xmm4
20188  DB  15,89,204                           ; mulps         %xmm4,%xmm1
20189  DB  15,40,227                           ; movaps        %xmm3,%xmm4
20190  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
20191  DB  15,88,204                           ; addps         %xmm4,%xmm1
20192  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
20193  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
20194  DB  65,15,88,229                        ; addps         %xmm13,%xmm4
20195  DB  68,15,88,203                        ; addps         %xmm3,%xmm9
20196  DB  69,15,89,207                        ; mulps         %xmm15,%xmm9
20197  DB  69,15,40,215                        ; movaps        %xmm15,%xmm10
20198  DB  15,194,211,2                        ; cmpleps       %xmm3,%xmm2
20199  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
20200  DB  15,85,209                           ; andnps        %xmm1,%xmm2
20201  DB  65,15,86,209                        ; orps          %xmm9,%xmm2
20202  DB  15,88,212                           ; addps         %xmm4,%xmm2
20203  DB  68,15,89,223                        ; mulps         %xmm7,%xmm11
20204  DB  65,15,88,219                        ; addps         %xmm11,%xmm3
20205  DB  72,173                              ; lods          %ds:(%rsi),%rax
20206  DB  15,40,229                           ; movaps        %xmm5,%xmm4
20207  DB  15,40,238                           ; movaps        %xmm6,%xmm5
20208  DB  65,15,40,242                        ; movaps        %xmm10,%xmm6
20209  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
20210  DB  72,131,196,40                       ; add           $0x28,%rsp
20211  DB  255,224                             ; jmpq          *%rax
20212
20213PUBLIC _sk_hue_sse2
20214_sk_hue_sse2 LABEL PROC
20215  DB  72,131,236,88                       ; sub           $0x58,%rsp
20216  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
20217  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
20218  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
20219  DB  68,15,40,225                        ; movaps        %xmm1,%xmm12
20220  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
20221  DB  68,15,40,5,235,73,0,0               ; movaps        0x49eb(%rip),%xmm8        # 58d0 <_sk_callback_sse2+0x2a7>
20222  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
20223  DB  15,40,207                           ; movaps        %xmm7,%xmm1
20224  DB  68,15,92,217                        ; subps         %xmm1,%xmm11
20225  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
20226  DB  15,41,68,36,64                      ; movaps        %xmm0,0x40(%rsp)
20227  DB  69,15,89,227                        ; mulps         %xmm11,%xmm12
20228  DB  68,15,41,100,36,48                  ; movaps        %xmm12,0x30(%rsp)
20229  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
20230  DB  15,89,211                           ; mulps         %xmm3,%xmm2
20231  DB  68,15,40,229                        ; movaps        %xmm5,%xmm12
20232  DB  68,15,40,237                        ; movaps        %xmm5,%xmm13
20233  DB  15,40,197                           ; movaps        %xmm5,%xmm0
20234  DB  15,41,68,36,32                      ; movaps        %xmm0,0x20(%rsp)
20235  DB  15,40,254                           ; movaps        %xmm6,%xmm7
20236  DB  68,15,95,239                        ; maxps         %xmm7,%xmm13
20237  DB  15,40,236                           ; movaps        %xmm4,%xmm5
20238  DB  68,15,40,245                        ; movaps        %xmm5,%xmm14
20239  DB  68,15,40,253                        ; movaps        %xmm5,%xmm15
20240  DB  69,15,95,253                        ; maxps         %xmm13,%xmm15
20241  DB  68,15,93,231                        ; minps         %xmm7,%xmm12
20242  DB  69,15,93,244                        ; minps         %xmm12,%xmm14
20243  DB  69,15,92,254                        ; subps         %xmm14,%xmm15
20244  DB  69,15,40,226                        ; movaps        %xmm10,%xmm12
20245  DB  68,15,93,226                        ; minps         %xmm2,%xmm12
20246  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
20247  DB  69,15,93,236                        ; minps         %xmm12,%xmm13
20248  DB  69,15,40,226                        ; movaps        %xmm10,%xmm12
20249  DB  68,15,95,226                        ; maxps         %xmm2,%xmm12
20250  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
20251  DB  69,15,95,244                        ; maxps         %xmm12,%xmm14
20252  DB  69,15,92,245                        ; subps         %xmm13,%xmm14
20253  DB  69,15,92,205                        ; subps         %xmm13,%xmm9
20254  DB  69,15,92,213                        ; subps         %xmm13,%xmm10
20255  DB  65,15,92,213                        ; subps         %xmm13,%xmm2
20256  DB  15,40,240                           ; movaps        %xmm0,%xmm6
20257  DB  68,15,89,251                        ; mulps         %xmm3,%xmm15
20258  DB  69,15,89,207                        ; mulps         %xmm15,%xmm9
20259  DB  69,15,89,215                        ; mulps         %xmm15,%xmm10
20260  DB  65,15,89,215                        ; mulps         %xmm15,%xmm2
20261  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
20262  DB  69,15,94,206                        ; divps         %xmm14,%xmm9
20263  DB  69,15,94,214                        ; divps         %xmm14,%xmm10
20264  DB  65,15,94,214                        ; divps         %xmm14,%xmm2
20265  DB  69,15,194,244,4                     ; cmpneqps      %xmm12,%xmm14
20266  DB  69,15,84,206                        ; andps         %xmm14,%xmm9
20267  DB  69,15,84,214                        ; andps         %xmm14,%xmm10
20268  DB  65,15,84,214                        ; andps         %xmm14,%xmm2
20269  DB  68,15,40,61,248,72,0,0              ; movaps        0x48f8(%rip),%xmm15        # 58a0 <_sk_callback_sse2+0x277>
20270  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
20271  DB  15,40,5,253,72,0,0                  ; movaps        0x48fd(%rip),%xmm0        # 58b0 <_sk_callback_sse2+0x287>
20272  DB  15,89,240                           ; mulps         %xmm0,%xmm6
20273  DB  15,88,244                           ; addps         %xmm4,%xmm6
20274  DB  68,15,40,53,255,72,0,0              ; movaps        0x48ff(%rip),%xmm14        # 58c0 <_sk_callback_sse2+0x297>
20275  DB  68,15,40,239                        ; movaps        %xmm7,%xmm13
20276  DB  69,15,89,238                        ; mulps         %xmm14,%xmm13
20277  DB  68,15,88,238                        ; addps         %xmm6,%xmm13
20278  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
20279  DB  65,15,89,231                        ; mulps         %xmm15,%xmm4
20280  DB  65,15,40,242                        ; movaps        %xmm10,%xmm6
20281  DB  15,89,240                           ; mulps         %xmm0,%xmm6
20282  DB  15,88,244                           ; addps         %xmm4,%xmm6
20283  DB  15,40,226                           ; movaps        %xmm2,%xmm4
20284  DB  65,15,89,230                        ; mulps         %xmm14,%xmm4
20285  DB  15,88,230                           ; addps         %xmm6,%xmm4
20286  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
20287  DB  68,15,92,236                        ; subps         %xmm4,%xmm13
20288  DB  69,15,88,205                        ; addps         %xmm13,%xmm9
20289  DB  69,15,88,213                        ; addps         %xmm13,%xmm10
20290  DB  68,15,88,234                        ; addps         %xmm2,%xmm13
20291  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
20292  DB  65,15,93,213                        ; minps         %xmm13,%xmm2
20293  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
20294  DB  15,93,242                           ; minps         %xmm2,%xmm6
20295  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
20296  DB  65,15,95,213                        ; maxps         %xmm13,%xmm2
20297  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
20298  DB  15,95,226                           ; maxps         %xmm2,%xmm4
20299  DB  69,15,89,249                        ; mulps         %xmm9,%xmm15
20300  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
20301  DB  65,15,88,199                        ; addps         %xmm15,%xmm0
20302  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
20303  DB  68,15,88,240                        ; addps         %xmm0,%xmm14
20304  DB  15,87,210                           ; xorps         %xmm2,%xmm2
20305  DB  15,194,214,2                        ; cmpleps       %xmm6,%xmm2
20306  DB  69,15,40,254                        ; movaps        %xmm14,%xmm15
20307  DB  68,15,92,254                        ; subps         %xmm6,%xmm15
20308  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
20309  DB  65,15,92,246                        ; subps         %xmm14,%xmm6
20310  DB  65,15,89,246                        ; mulps         %xmm14,%xmm6
20311  DB  65,15,94,247                        ; divps         %xmm15,%xmm6
20312  DB  65,15,88,246                        ; addps         %xmm14,%xmm6
20313  DB  15,40,194                           ; movaps        %xmm2,%xmm0
20314  DB  15,85,198                           ; andnps        %xmm6,%xmm0
20315  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
20316  DB  68,15,86,200                        ; orps          %xmm0,%xmm9
20317  DB  15,40,195                           ; movaps        %xmm3,%xmm0
20318  DB  15,41,76,36,16                      ; movaps        %xmm1,0x10(%rsp)
20319  DB  15,89,193                           ; mulps         %xmm1,%xmm0
20320  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
20321  DB  15,88,217                           ; addps         %xmm1,%xmm3
20322  DB  15,92,216                           ; subps         %xmm0,%xmm3
20323  DB  15,41,28,36                         ; movaps        %xmm3,(%rsp)
20324  DB  15,40,240                           ; movaps        %xmm0,%xmm6
20325  DB  15,194,196,1                        ; cmpltps       %xmm4,%xmm0
20326  DB  15,40,200                           ; movaps        %xmm0,%xmm1
20327  DB  65,15,85,201                        ; andnps        %xmm9,%xmm1
20328  DB  69,15,92,206                        ; subps         %xmm14,%xmm9
20329  DB  65,15,92,246                        ; subps         %xmm14,%xmm6
20330  DB  68,15,89,206                        ; mulps         %xmm6,%xmm9
20331  DB  65,15,92,230                        ; subps         %xmm14,%xmm4
20332  DB  68,15,94,204                        ; divps         %xmm4,%xmm9
20333  DB  69,15,88,206                        ; addps         %xmm14,%xmm9
20334  DB  68,15,84,200                        ; andps         %xmm0,%xmm9
20335  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
20336  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
20337  DB  65,15,92,206                        ; subps         %xmm14,%xmm1
20338  DB  65,15,89,206                        ; mulps         %xmm14,%xmm1
20339  DB  65,15,94,207                        ; divps         %xmm15,%xmm1
20340  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
20341  DB  15,40,218                           ; movaps        %xmm2,%xmm3
20342  DB  15,85,217                           ; andnps        %xmm1,%xmm3
20343  DB  68,15,84,210                        ; andps         %xmm2,%xmm10
20344  DB  68,15,86,211                        ; orps          %xmm3,%xmm10
20345  DB  15,40,200                           ; movaps        %xmm0,%xmm1
20346  DB  65,15,85,202                        ; andnps        %xmm10,%xmm1
20347  DB  69,15,92,214                        ; subps         %xmm14,%xmm10
20348  DB  68,15,89,214                        ; mulps         %xmm6,%xmm10
20349  DB  68,15,94,212                        ; divps         %xmm4,%xmm10
20350  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
20351  DB  68,15,84,208                        ; andps         %xmm0,%xmm10
20352  DB  68,15,86,209                        ; orps          %xmm1,%xmm10
20353  DB  65,15,40,205                        ; movaps        %xmm13,%xmm1
20354  DB  65,15,92,206                        ; subps         %xmm14,%xmm1
20355  DB  65,15,89,206                        ; mulps         %xmm14,%xmm1
20356  DB  65,15,94,207                        ; divps         %xmm15,%xmm1
20357  DB  65,15,88,206                        ; addps         %xmm14,%xmm1
20358  DB  68,15,84,234                        ; andps         %xmm2,%xmm13
20359  DB  15,85,209                           ; andnps        %xmm1,%xmm2
20360  DB  65,15,86,213                        ; orps          %xmm13,%xmm2
20361  DB  15,40,200                           ; movaps        %xmm0,%xmm1
20362  DB  15,85,202                           ; andnps        %xmm2,%xmm1
20363  DB  65,15,92,214                        ; subps         %xmm14,%xmm2
20364  DB  15,89,214                           ; mulps         %xmm6,%xmm2
20365  DB  15,94,212                           ; divps         %xmm4,%xmm2
20366  DB  65,15,88,214                        ; addps         %xmm14,%xmm2
20367  DB  15,84,208                           ; andps         %xmm0,%xmm2
20368  DB  15,86,209                           ; orps          %xmm1,%xmm2
20369  DB  69,15,95,204                        ; maxps         %xmm12,%xmm9
20370  DB  69,15,95,212                        ; maxps         %xmm12,%xmm10
20371  DB  65,15,95,212                        ; maxps         %xmm12,%xmm2
20372  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20373  DB  15,89,197                           ; mulps         %xmm5,%xmm0
20374  DB  15,40,76,36,64                      ; movaps        0x40(%rsp),%xmm1
20375  DB  15,88,200                           ; addps         %xmm0,%xmm1
20376  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
20377  DB  15,40,193                           ; movaps        %xmm1,%xmm0
20378  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
20379  DB  15,40,116,36,32                     ; movaps        0x20(%rsp),%xmm6
20380  DB  15,89,222                           ; mulps         %xmm6,%xmm3
20381  DB  15,40,76,36,48                      ; movaps        0x30(%rsp),%xmm1
20382  DB  15,88,203                           ; addps         %xmm3,%xmm1
20383  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
20384  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
20385  DB  69,15,88,195                        ; addps         %xmm11,%xmm8
20386  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
20387  DB  72,173                              ; lods          %ds:(%rsi),%rax
20388  DB  15,40,229                           ; movaps        %xmm5,%xmm4
20389  DB  15,40,238                           ; movaps        %xmm6,%xmm5
20390  DB  15,40,247                           ; movaps        %xmm7,%xmm6
20391  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
20392  DB  15,40,28,36                         ; movaps        (%rsp),%xmm3
20393  DB  15,40,124,36,16                     ; movaps        0x10(%rsp),%xmm7
20394  DB  72,131,196,88                       ; add           $0x58,%rsp
20395  DB  255,224                             ; jmpq          *%rax
20396
20397PUBLIC _sk_saturation_sse2
20398_sk_saturation_sse2 LABEL PROC
20399  DB  72,131,236,88                       ; sub           $0x58,%rsp
20400  DB  68,15,40,231                        ; movaps        %xmm7,%xmm12
20401  DB  68,15,40,198                        ; movaps        %xmm6,%xmm8
20402  DB  15,40,251                           ; movaps        %xmm3,%xmm7
20403  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
20404  DB  68,15,40,215                        ; movaps        %xmm7,%xmm10
20405  DB  68,15,89,212                        ; mulps         %xmm4,%xmm10
20406  DB  15,40,244                           ; movaps        %xmm4,%xmm6
20407  DB  15,41,116,36,16                     ; movaps        %xmm6,0x10(%rsp)
20408  DB  68,15,40,207                        ; movaps        %xmm7,%xmm9
20409  DB  68,15,89,205                        ; mulps         %xmm5,%xmm9
20410  DB  15,41,108,36,32                     ; movaps        %xmm5,0x20(%rsp)
20411  DB  15,40,199                           ; movaps        %xmm7,%xmm0
20412  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
20413  DB  69,15,40,232                        ; movaps        %xmm8,%xmm13
20414  DB  68,15,41,44,36                      ; movaps        %xmm13,(%rsp)
20415  DB  15,40,225                           ; movaps        %xmm1,%xmm4
20416  DB  15,41,100,36,48                     ; movaps        %xmm4,0x30(%rsp)
20417  DB  15,40,220                           ; movaps        %xmm4,%xmm3
20418  DB  15,41,84,36,64                      ; movaps        %xmm2,0x40(%rsp)
20419  DB  15,95,218                           ; maxps         %xmm2,%xmm3
20420  DB  65,15,40,203                        ; movaps        %xmm11,%xmm1
20421  DB  15,95,203                           ; maxps         %xmm3,%xmm1
20422  DB  15,40,220                           ; movaps        %xmm4,%xmm3
20423  DB  15,93,218                           ; minps         %xmm2,%xmm3
20424  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
20425  DB  15,93,211                           ; minps         %xmm3,%xmm2
20426  DB  15,92,202                           ; subps         %xmm2,%xmm1
20427  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
20428  DB  65,15,40,228                        ; movaps        %xmm12,%xmm4
20429  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
20430  DB  15,93,208                           ; minps         %xmm0,%xmm2
20431  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
20432  DB  68,15,93,194                        ; minps         %xmm2,%xmm8
20433  DB  65,15,40,209                        ; movaps        %xmm9,%xmm2
20434  DB  15,95,208                           ; maxps         %xmm0,%xmm2
20435  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
20436  DB  15,95,218                           ; maxps         %xmm2,%xmm3
20437  DB  65,15,92,216                        ; subps         %xmm8,%xmm3
20438  DB  15,87,210                           ; xorps         %xmm2,%xmm2
20439  DB  69,15,92,208                        ; subps         %xmm8,%xmm10
20440  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
20441  DB  68,15,94,211                        ; divps         %xmm3,%xmm10
20442  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
20443  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
20444  DB  68,15,94,203                        ; divps         %xmm3,%xmm9
20445  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
20446  DB  15,89,193                           ; mulps         %xmm1,%xmm0
20447  DB  15,94,195                           ; divps         %xmm3,%xmm0
20448  DB  15,194,218,4                        ; cmpneqps      %xmm2,%xmm3
20449  DB  68,15,84,211                        ; andps         %xmm3,%xmm10
20450  DB  68,15,84,203                        ; andps         %xmm3,%xmm9
20451  DB  15,84,195                           ; andps         %xmm3,%xmm0
20452  DB  68,15,40,5,140,70,0,0               ; movaps        0x468c(%rip),%xmm8        # 58e0 <_sk_callback_sse2+0x2b7>
20453  DB  15,40,214                           ; movaps        %xmm6,%xmm2
20454  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
20455  DB  15,40,13,142,70,0,0                 ; movaps        0x468e(%rip),%xmm1        # 58f0 <_sk_callback_sse2+0x2c7>
20456  DB  15,40,221                           ; movaps        %xmm5,%xmm3
20457  DB  15,89,217                           ; mulps         %xmm1,%xmm3
20458  DB  15,88,218                           ; addps         %xmm2,%xmm3
20459  DB  68,15,40,37,141,70,0,0              ; movaps        0x468d(%rip),%xmm12        # 5900 <_sk_callback_sse2+0x2d7>
20460  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
20461  DB  68,15,88,235                        ; addps         %xmm3,%xmm13
20462  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
20463  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
20464  DB  65,15,40,217                        ; movaps        %xmm9,%xmm3
20465  DB  15,89,217                           ; mulps         %xmm1,%xmm3
20466  DB  15,88,218                           ; addps         %xmm2,%xmm3
20467  DB  15,40,208                           ; movaps        %xmm0,%xmm2
20468  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
20469  DB  15,88,211                           ; addps         %xmm3,%xmm2
20470  DB  68,15,89,239                        ; mulps         %xmm7,%xmm13
20471  DB  68,15,92,234                        ; subps         %xmm2,%xmm13
20472  DB  69,15,88,213                        ; addps         %xmm13,%xmm10
20473  DB  69,15,88,205                        ; addps         %xmm13,%xmm9
20474  DB  68,15,88,232                        ; addps         %xmm0,%xmm13
20475  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
20476  DB  65,15,93,197                        ; minps         %xmm13,%xmm0
20477  DB  65,15,40,218                        ; movaps        %xmm10,%xmm3
20478  DB  15,93,216                           ; minps         %xmm0,%xmm3
20479  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
20480  DB  65,15,95,197                        ; maxps         %xmm13,%xmm0
20481  DB  69,15,40,242                        ; movaps        %xmm10,%xmm14
20482  DB  68,15,95,240                        ; maxps         %xmm0,%xmm14
20483  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
20484  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
20485  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
20486  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
20487  DB  68,15,88,225                        ; addps         %xmm1,%xmm12
20488  DB  15,87,210                           ; xorps         %xmm2,%xmm2
20489  DB  15,194,211,2                        ; cmpleps       %xmm3,%xmm2
20490  DB  65,15,40,244                        ; movaps        %xmm12,%xmm6
20491  DB  15,92,243                           ; subps         %xmm3,%xmm6
20492  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
20493  DB  65,15,92,196                        ; subps         %xmm12,%xmm0
20494  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
20495  DB  15,94,198                           ; divps         %xmm6,%xmm0
20496  DB  65,15,88,196                        ; addps         %xmm12,%xmm0
20497  DB  15,40,202                           ; movaps        %xmm2,%xmm1
20498  DB  15,85,200                           ; andnps        %xmm0,%xmm1
20499  DB  68,15,84,210                        ; andps         %xmm2,%xmm10
20500  DB  68,15,86,209                        ; orps          %xmm1,%xmm10
20501  DB  15,40,223                           ; movaps        %xmm7,%xmm3
20502  DB  15,40,236                           ; movaps        %xmm4,%xmm5
20503  DB  15,89,221                           ; mulps         %xmm5,%xmm3
20504  DB  68,15,40,5,242,69,0,0               ; movaps        0x45f2(%rip),%xmm8        # 5910 <_sk_callback_sse2+0x2e7>
20505  DB  65,15,40,224                        ; movaps        %xmm8,%xmm4
20506  DB  68,15,92,199                        ; subps         %xmm7,%xmm8
20507  DB  15,88,253                           ; addps         %xmm5,%xmm7
20508  DB  15,92,251                           ; subps         %xmm3,%xmm7
20509  DB  15,40,203                           ; movaps        %xmm3,%xmm1
20510  DB  65,15,194,222,1                     ; cmpltps       %xmm14,%xmm3
20511  DB  15,40,195                           ; movaps        %xmm3,%xmm0
20512  DB  65,15,85,194                        ; andnps        %xmm10,%xmm0
20513  DB  69,15,92,212                        ; subps         %xmm12,%xmm10
20514  DB  65,15,92,204                        ; subps         %xmm12,%xmm1
20515  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
20516  DB  69,15,92,244                        ; subps         %xmm12,%xmm14
20517  DB  69,15,94,214                        ; divps         %xmm14,%xmm10
20518  DB  69,15,88,212                        ; addps         %xmm12,%xmm10
20519  DB  68,15,84,211                        ; andps         %xmm3,%xmm10
20520  DB  68,15,86,208                        ; orps          %xmm0,%xmm10
20521  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
20522  DB  65,15,92,196                        ; subps         %xmm12,%xmm0
20523  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
20524  DB  15,94,198                           ; divps         %xmm6,%xmm0
20525  DB  65,15,88,196                        ; addps         %xmm12,%xmm0
20526  DB  68,15,40,250                        ; movaps        %xmm2,%xmm15
20527  DB  68,15,85,248                        ; andnps        %xmm0,%xmm15
20528  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
20529  DB  69,15,86,207                        ; orps          %xmm15,%xmm9
20530  DB  15,40,195                           ; movaps        %xmm3,%xmm0
20531  DB  65,15,85,193                        ; andnps        %xmm9,%xmm0
20532  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
20533  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
20534  DB  69,15,94,206                        ; divps         %xmm14,%xmm9
20535  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
20536  DB  68,15,84,203                        ; andps         %xmm3,%xmm9
20537  DB  68,15,86,200                        ; orps          %xmm0,%xmm9
20538  DB  65,15,40,197                        ; movaps        %xmm13,%xmm0
20539  DB  65,15,92,196                        ; subps         %xmm12,%xmm0
20540  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
20541  DB  15,94,198                           ; divps         %xmm6,%xmm0
20542  DB  65,15,88,196                        ; addps         %xmm12,%xmm0
20543  DB  68,15,84,234                        ; andps         %xmm2,%xmm13
20544  DB  15,85,208                           ; andnps        %xmm0,%xmm2
20545  DB  65,15,86,213                        ; orps          %xmm13,%xmm2
20546  DB  15,40,195                           ; movaps        %xmm3,%xmm0
20547  DB  15,85,194                           ; andnps        %xmm2,%xmm0
20548  DB  65,15,92,212                        ; subps         %xmm12,%xmm2
20549  DB  15,89,209                           ; mulps         %xmm1,%xmm2
20550  DB  65,15,94,214                        ; divps         %xmm14,%xmm2
20551  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
20552  DB  15,84,211                           ; andps         %xmm3,%xmm2
20553  DB  15,86,208                           ; orps          %xmm0,%xmm2
20554  DB  15,87,192                           ; xorps         %xmm0,%xmm0
20555  DB  68,15,95,208                        ; maxps         %xmm0,%xmm10
20556  DB  68,15,95,200                        ; maxps         %xmm0,%xmm9
20557  DB  15,95,208                           ; maxps         %xmm0,%xmm2
20558  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20559  DB  15,40,92,36,16                      ; movaps        0x10(%rsp),%xmm3
20560  DB  15,89,195                           ; mulps         %xmm3,%xmm0
20561  DB  68,15,40,229                        ; movaps        %xmm5,%xmm12
20562  DB  65,15,92,228                        ; subps         %xmm12,%xmm4
20563  DB  68,15,89,220                        ; mulps         %xmm4,%xmm11
20564  DB  68,15,88,216                        ; addps         %xmm0,%xmm11
20565  DB  69,15,88,218                        ; addps         %xmm10,%xmm11
20566  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20567  DB  15,40,108,36,32                     ; movaps        0x20(%rsp),%xmm5
20568  DB  15,89,197                           ; mulps         %xmm5,%xmm0
20569  DB  15,40,76,36,48                      ; movaps        0x30(%rsp),%xmm1
20570  DB  15,89,204                           ; mulps         %xmm4,%xmm1
20571  DB  15,88,200                           ; addps         %xmm0,%xmm1
20572  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
20573  DB  15,89,100,36,64                     ; mulps         0x40(%rsp),%xmm4
20574  DB  15,40,4,36                          ; movaps        (%rsp),%xmm0
20575  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
20576  DB  68,15,88,196                        ; addps         %xmm4,%xmm8
20577  DB  68,15,88,194                        ; addps         %xmm2,%xmm8
20578  DB  72,173                              ; lods          %ds:(%rsi),%rax
20579  DB  15,40,227                           ; movaps        %xmm3,%xmm4
20580  DB  15,40,240                           ; movaps        %xmm0,%xmm6
20581  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
20582  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
20583  DB  15,40,223                           ; movaps        %xmm7,%xmm3
20584  DB  65,15,40,252                        ; movaps        %xmm12,%xmm7
20585  DB  72,131,196,88                       ; add           $0x58,%rsp
20586  DB  255,224                             ; jmpq          *%rax
20587
20588PUBLIC _sk_color_sse2
20589_sk_color_sse2 LABEL PROC
20590  DB  72,131,236,72                       ; sub           $0x48,%rsp
20591  DB  68,15,40,199                        ; movaps        %xmm7,%xmm8
20592  DB  68,15,40,230                        ; movaps        %xmm6,%xmm12
20593  DB  68,15,41,100,36,32                  ; movaps        %xmm12,0x20(%rsp)
20594  DB  68,15,40,221                        ; movaps        %xmm5,%xmm11
20595  DB  68,15,41,92,36,48                   ; movaps        %xmm11,0x30(%rsp)
20596  DB  15,40,244                           ; movaps        %xmm4,%xmm6
20597  DB  15,41,20,36                         ; movaps        %xmm2,(%rsp)
20598  DB  15,40,233                           ; movaps        %xmm1,%xmm5
20599  DB  15,40,248                           ; movaps        %xmm0,%xmm7
20600  DB  68,15,40,207                        ; movaps        %xmm7,%xmm9
20601  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
20602  DB  68,15,40,213                        ; movaps        %xmm5,%xmm10
20603  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
20604  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
20605  DB  68,15,40,45,138,68,0,0              ; movaps        0x448a(%rip),%xmm13        # 5920 <_sk_callback_sse2+0x2f7>
20606  DB  68,15,40,198                        ; movaps        %xmm6,%xmm8
20607  DB  69,15,89,197                        ; mulps         %xmm13,%xmm8
20608  DB  68,15,40,53,138,68,0,0              ; movaps        0x448a(%rip),%xmm14        # 5930 <_sk_callback_sse2+0x307>
20609  DB  65,15,40,195                        ; movaps        %xmm11,%xmm0
20610  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
20611  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
20612  DB  68,15,40,29,134,68,0,0              ; movaps        0x4486(%rip),%xmm11        # 5940 <_sk_callback_sse2+0x317>
20613  DB  69,15,89,227                        ; mulps         %xmm11,%xmm12
20614  DB  68,15,88,224                        ; addps         %xmm0,%xmm12
20615  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
20616  DB  65,15,89,197                        ; mulps         %xmm13,%xmm0
20617  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
20618  DB  69,15,89,254                        ; mulps         %xmm14,%xmm15
20619  DB  68,15,88,248                        ; addps         %xmm0,%xmm15
20620  DB  68,15,40,5,114,68,0,0               ; movaps        0x4472(%rip),%xmm8        # 5950 <_sk_callback_sse2+0x327>
20621  DB  65,15,40,224                        ; movaps        %xmm8,%xmm4
20622  DB  15,92,226                           ; subps         %xmm2,%xmm4
20623  DB  15,89,252                           ; mulps         %xmm4,%xmm7
20624  DB  15,89,236                           ; mulps         %xmm4,%xmm5
20625  DB  15,40,12,36                         ; movaps        (%rsp),%xmm1
20626  DB  15,89,225                           ; mulps         %xmm1,%xmm4
20627  DB  15,89,202                           ; mulps         %xmm2,%xmm1
20628  DB  15,40,193                           ; movaps        %xmm1,%xmm0
20629  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
20630  DB  65,15,88,199                        ; addps         %xmm15,%xmm0
20631  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
20632  DB  68,15,92,224                        ; subps         %xmm0,%xmm12
20633  DB  69,15,88,204                        ; addps         %xmm12,%xmm9
20634  DB  69,15,88,212                        ; addps         %xmm12,%xmm10
20635  DB  68,15,88,225                        ; addps         %xmm1,%xmm12
20636  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
20637  DB  65,15,93,196                        ; minps         %xmm12,%xmm0
20638  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
20639  DB  15,93,200                           ; minps         %xmm0,%xmm1
20640  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
20641  DB  65,15,95,196                        ; maxps         %xmm12,%xmm0
20642  DB  69,15,40,249                        ; movaps        %xmm9,%xmm15
20643  DB  68,15,95,248                        ; maxps         %xmm0,%xmm15
20644  DB  69,15,89,233                        ; mulps         %xmm9,%xmm13
20645  DB  69,15,89,242                        ; mulps         %xmm10,%xmm14
20646  DB  69,15,88,245                        ; addps         %xmm13,%xmm14
20647  DB  69,15,89,220                        ; mulps         %xmm12,%xmm11
20648  DB  69,15,88,222                        ; addps         %xmm14,%xmm11
20649  DB  69,15,87,237                        ; xorps         %xmm13,%xmm13
20650  DB  68,15,194,233,2                     ; cmpleps       %xmm1,%xmm13
20651  DB  69,15,40,243                        ; movaps        %xmm11,%xmm14
20652  DB  68,15,92,241                        ; subps         %xmm1,%xmm14
20653  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
20654  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
20655  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
20656  DB  65,15,94,206                        ; divps         %xmm14,%xmm1
20657  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
20658  DB  65,15,40,197                        ; movaps        %xmm13,%xmm0
20659  DB  15,85,193                           ; andnps        %xmm1,%xmm0
20660  DB  69,15,84,205                        ; andps         %xmm13,%xmm9
20661  DB  68,15,86,200                        ; orps          %xmm0,%xmm9
20662  DB  15,40,195                           ; movaps        %xmm3,%xmm0
20663  DB  15,41,84,36,16                      ; movaps        %xmm2,0x10(%rsp)
20664  DB  15,89,194                           ; mulps         %xmm2,%xmm0
20665  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
20666  DB  15,88,218                           ; addps         %xmm2,%xmm3
20667  DB  15,92,216                           ; subps         %xmm0,%xmm3
20668  DB  15,41,28,36                         ; movaps        %xmm3,(%rsp)
20669  DB  15,40,216                           ; movaps        %xmm0,%xmm3
20670  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
20671  DB  15,40,200                           ; movaps        %xmm0,%xmm1
20672  DB  65,15,85,201                        ; andnps        %xmm9,%xmm1
20673  DB  69,15,92,203                        ; subps         %xmm11,%xmm9
20674  DB  65,15,92,219                        ; subps         %xmm11,%xmm3
20675  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
20676  DB  69,15,92,251                        ; subps         %xmm11,%xmm15
20677  DB  69,15,94,207                        ; divps         %xmm15,%xmm9
20678  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
20679  DB  68,15,84,200                        ; andps         %xmm0,%xmm9
20680  DB  68,15,86,201                        ; orps          %xmm1,%xmm9
20681  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
20682  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
20683  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
20684  DB  65,15,94,206                        ; divps         %xmm14,%xmm1
20685  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
20686  DB  65,15,40,213                        ; movaps        %xmm13,%xmm2
20687  DB  15,85,209                           ; andnps        %xmm1,%xmm2
20688  DB  69,15,84,213                        ; andps         %xmm13,%xmm10
20689  DB  68,15,86,210                        ; orps          %xmm2,%xmm10
20690  DB  15,40,200                           ; movaps        %xmm0,%xmm1
20691  DB  65,15,85,202                        ; andnps        %xmm10,%xmm1
20692  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
20693  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
20694  DB  69,15,94,215                        ; divps         %xmm15,%xmm10
20695  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
20696  DB  68,15,84,208                        ; andps         %xmm0,%xmm10
20697  DB  68,15,86,209                        ; orps          %xmm1,%xmm10
20698  DB  65,15,40,204                        ; movaps        %xmm12,%xmm1
20699  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
20700  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
20701  DB  65,15,94,206                        ; divps         %xmm14,%xmm1
20702  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
20703  DB  69,15,84,229                        ; andps         %xmm13,%xmm12
20704  DB  68,15,85,233                        ; andnps        %xmm1,%xmm13
20705  DB  69,15,86,236                        ; orps          %xmm12,%xmm13
20706  DB  15,40,200                           ; movaps        %xmm0,%xmm1
20707  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
20708  DB  69,15,92,235                        ; subps         %xmm11,%xmm13
20709  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
20710  DB  69,15,94,239                        ; divps         %xmm15,%xmm13
20711  DB  69,15,88,235                        ; addps         %xmm11,%xmm13
20712  DB  68,15,84,232                        ; andps         %xmm0,%xmm13
20713  DB  68,15,86,233                        ; orps          %xmm1,%xmm13
20714  DB  15,87,192                           ; xorps         %xmm0,%xmm0
20715  DB  68,15,95,200                        ; maxps         %xmm0,%xmm9
20716  DB  68,15,95,208                        ; maxps         %xmm0,%xmm10
20717  DB  68,15,95,232                        ; maxps         %xmm0,%xmm13
20718  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20719  DB  15,89,198                           ; mulps         %xmm6,%xmm0
20720  DB  15,88,248                           ; addps         %xmm0,%xmm7
20721  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
20722  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20723  DB  15,40,84,36,48                      ; movaps        0x30(%rsp),%xmm2
20724  DB  15,89,194                           ; mulps         %xmm2,%xmm0
20725  DB  15,88,232                           ; addps         %xmm0,%xmm5
20726  DB  65,15,88,234                        ; addps         %xmm10,%xmm5
20727  DB  15,40,205                           ; movaps        %xmm5,%xmm1
20728  DB  15,40,68,36,32                      ; movaps        0x20(%rsp),%xmm0
20729  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
20730  DB  68,15,88,196                        ; addps         %xmm4,%xmm8
20731  DB  69,15,88,197                        ; addps         %xmm13,%xmm8
20732  DB  72,173                              ; lods          %ds:(%rsi),%rax
20733  DB  15,40,230                           ; movaps        %xmm6,%xmm4
20734  DB  15,40,234                           ; movaps        %xmm2,%xmm5
20735  DB  15,40,240                           ; movaps        %xmm0,%xmm6
20736  DB  15,40,199                           ; movaps        %xmm7,%xmm0
20737  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
20738  DB  15,40,28,36                         ; movaps        (%rsp),%xmm3
20739  DB  15,40,124,36,16                     ; movaps        0x10(%rsp),%xmm7
20740  DB  72,131,196,72                       ; add           $0x48,%rsp
20741  DB  255,224                             ; jmpq          *%rax
20742
20743PUBLIC _sk_luminosity_sse2
20744_sk_luminosity_sse2 LABEL PROC
20745  DB  72,131,236,88                       ; sub           $0x58,%rsp
20746  DB  68,15,40,215                        ; movaps        %xmm7,%xmm10
20747  DB  15,41,116,36,32                     ; movaps        %xmm6,0x20(%rsp)
20748  DB  15,40,245                           ; movaps        %xmm5,%xmm6
20749  DB  15,41,116,36,64                     ; movaps        %xmm6,0x40(%rsp)
20750  DB  15,41,100,36,48                     ; movaps        %xmm4,0x30(%rsp)
20751  DB  15,40,235                           ; movaps        %xmm3,%xmm5
20752  DB  15,40,248                           ; movaps        %xmm0,%xmm7
20753  DB  68,15,40,205                        ; movaps        %xmm5,%xmm9
20754  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
20755  DB  15,89,222                           ; mulps         %xmm6,%xmm3
20756  DB  68,15,40,37,132,66,0,0              ; movaps        0x4284(%rip),%xmm12        # 5960 <_sk_callback_sse2+0x337>
20757  DB  68,15,40,199                        ; movaps        %xmm7,%xmm8
20758  DB  69,15,89,196                        ; mulps         %xmm12,%xmm8
20759  DB  68,15,40,45,132,66,0,0              ; movaps        0x4284(%rip),%xmm13        # 5970 <_sk_callback_sse2+0x347>
20760  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
20761  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
20762  DB  69,15,88,240                        ; addps         %xmm8,%xmm14
20763  DB  68,15,40,29,128,66,0,0              ; movaps        0x4280(%rip),%xmm11        # 5980 <_sk_callback_sse2+0x357>
20764  DB  68,15,40,5,136,66,0,0               ; movaps        0x4288(%rip),%xmm8        # 5990 <_sk_callback_sse2+0x367>
20765  DB  69,15,40,248                        ; movaps        %xmm8,%xmm15
20766  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
20767  DB  68,15,92,248                        ; subps         %xmm0,%xmm15
20768  DB  65,15,89,255                        ; mulps         %xmm15,%xmm7
20769  DB  65,15,89,207                        ; mulps         %xmm15,%xmm1
20770  DB  15,41,76,36,16                      ; movaps        %xmm1,0x10(%rsp)
20771  DB  68,15,89,250                        ; mulps         %xmm2,%xmm15
20772  DB  65,15,89,211                        ; mulps         %xmm11,%xmm2
20773  DB  65,15,88,214                        ; addps         %xmm14,%xmm2
20774  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
20775  DB  69,15,89,244                        ; mulps         %xmm12,%xmm14
20776  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
20777  DB  69,15,89,213                        ; mulps         %xmm13,%xmm10
20778  DB  69,15,88,214                        ; addps         %xmm14,%xmm10
20779  DB  15,40,229                           ; movaps        %xmm5,%xmm4
20780  DB  15,40,116,36,32                     ; movaps        0x20(%rsp),%xmm6
20781  DB  15,89,230                           ; mulps         %xmm6,%xmm4
20782  DB  68,15,40,244                        ; movaps        %xmm4,%xmm14
20783  DB  69,15,89,243                        ; mulps         %xmm11,%xmm14
20784  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
20785  DB  15,89,208                           ; mulps         %xmm0,%xmm2
20786  DB  65,15,92,214                        ; subps         %xmm14,%xmm2
20787  DB  68,15,88,202                        ; addps         %xmm2,%xmm9
20788  DB  15,88,218                           ; addps         %xmm2,%xmm3
20789  DB  15,88,212                           ; addps         %xmm4,%xmm2
20790  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
20791  DB  68,15,93,210                        ; minps         %xmm2,%xmm10
20792  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
20793  DB  65,15,93,226                        ; minps         %xmm10,%xmm4
20794  DB  68,15,40,211                        ; movaps        %xmm3,%xmm10
20795  DB  68,15,95,210                        ; maxps         %xmm2,%xmm10
20796  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
20797  DB  69,15,95,242                        ; maxps         %xmm10,%xmm14
20798  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
20799  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
20800  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
20801  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
20802  DB  69,15,88,221                        ; addps         %xmm13,%xmm11
20803  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
20804  DB  68,15,194,228,2                     ; cmpleps       %xmm4,%xmm12
20805  DB  69,15,40,211                        ; movaps        %xmm11,%xmm10
20806  DB  68,15,92,212                        ; subps         %xmm4,%xmm10
20807  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
20808  DB  65,15,92,227                        ; subps         %xmm11,%xmm4
20809  DB  65,15,89,227                        ; mulps         %xmm11,%xmm4
20810  DB  65,15,94,226                        ; divps         %xmm10,%xmm4
20811  DB  65,15,88,227                        ; addps         %xmm11,%xmm4
20812  DB  69,15,40,236                        ; movaps        %xmm12,%xmm13
20813  DB  68,15,85,236                        ; andnps        %xmm4,%xmm13
20814  DB  69,15,84,204                        ; andps         %xmm12,%xmm9
20815  DB  69,15,86,205                        ; orps          %xmm13,%xmm9
20816  DB  15,40,229                           ; movaps        %xmm5,%xmm4
20817  DB  15,41,4,36                          ; movaps        %xmm0,(%rsp)
20818  DB  15,89,224                           ; mulps         %xmm0,%xmm4
20819  DB  68,15,92,197                        ; subps         %xmm5,%xmm8
20820  DB  15,88,232                           ; addps         %xmm0,%xmm5
20821  DB  15,92,236                           ; subps         %xmm4,%xmm5
20822  DB  68,15,40,236                        ; movaps        %xmm4,%xmm13
20823  DB  65,15,194,230,1                     ; cmpltps       %xmm14,%xmm4
20824  DB  15,40,196                           ; movaps        %xmm4,%xmm0
20825  DB  65,15,85,193                        ; andnps        %xmm9,%xmm0
20826  DB  69,15,92,203                        ; subps         %xmm11,%xmm9
20827  DB  69,15,92,235                        ; subps         %xmm11,%xmm13
20828  DB  69,15,89,205                        ; mulps         %xmm13,%xmm9
20829  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
20830  DB  69,15,94,206                        ; divps         %xmm14,%xmm9
20831  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
20832  DB  68,15,84,204                        ; andps         %xmm4,%xmm9
20833  DB  68,15,86,200                        ; orps          %xmm0,%xmm9
20834  DB  15,40,195                           ; movaps        %xmm3,%xmm0
20835  DB  65,15,92,195                        ; subps         %xmm11,%xmm0
20836  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
20837  DB  65,15,94,194                        ; divps         %xmm10,%xmm0
20838  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
20839  DB  65,15,40,204                        ; movaps        %xmm12,%xmm1
20840  DB  15,85,200                           ; andnps        %xmm0,%xmm1
20841  DB  65,15,84,220                        ; andps         %xmm12,%xmm3
20842  DB  15,86,217                           ; orps          %xmm1,%xmm3
20843  DB  15,40,196                           ; movaps        %xmm4,%xmm0
20844  DB  15,85,195                           ; andnps        %xmm3,%xmm0
20845  DB  65,15,92,219                        ; subps         %xmm11,%xmm3
20846  DB  65,15,89,221                        ; mulps         %xmm13,%xmm3
20847  DB  65,15,94,222                        ; divps         %xmm14,%xmm3
20848  DB  65,15,88,219                        ; addps         %xmm11,%xmm3
20849  DB  15,84,220                           ; andps         %xmm4,%xmm3
20850  DB  15,86,216                           ; orps          %xmm0,%xmm3
20851  DB  15,40,194                           ; movaps        %xmm2,%xmm0
20852  DB  65,15,92,195                        ; subps         %xmm11,%xmm0
20853  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
20854  DB  65,15,94,194                        ; divps         %xmm10,%xmm0
20855  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
20856  DB  65,15,84,212                        ; andps         %xmm12,%xmm2
20857  DB  68,15,85,224                        ; andnps        %xmm0,%xmm12
20858  DB  68,15,86,226                        ; orps          %xmm2,%xmm12
20859  DB  15,40,196                           ; movaps        %xmm4,%xmm0
20860  DB  65,15,85,196                        ; andnps        %xmm12,%xmm0
20861  DB  69,15,92,227                        ; subps         %xmm11,%xmm12
20862  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
20863  DB  69,15,94,230                        ; divps         %xmm14,%xmm12
20864  DB  69,15,88,227                        ; addps         %xmm11,%xmm12
20865  DB  68,15,84,228                        ; andps         %xmm4,%xmm12
20866  DB  68,15,86,224                        ; orps          %xmm0,%xmm12
20867  DB  15,87,192                           ; xorps         %xmm0,%xmm0
20868  DB  68,15,95,200                        ; maxps         %xmm0,%xmm9
20869  DB  15,95,216                           ; maxps         %xmm0,%xmm3
20870  DB  68,15,95,224                        ; maxps         %xmm0,%xmm12
20871  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20872  DB  15,40,100,36,48                     ; movaps        0x30(%rsp),%xmm4
20873  DB  15,89,196                           ; mulps         %xmm4,%xmm0
20874  DB  15,88,248                           ; addps         %xmm0,%xmm7
20875  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
20876  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
20877  DB  68,15,40,84,36,64                   ; movaps        0x40(%rsp),%xmm10
20878  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
20879  DB  15,40,76,36,16                      ; movaps        0x10(%rsp),%xmm1
20880  DB  15,88,200                           ; addps         %xmm0,%xmm1
20881  DB  15,88,203                           ; addps         %xmm3,%xmm1
20882  DB  68,15,89,198                        ; mulps         %xmm6,%xmm8
20883  DB  69,15,88,199                        ; addps         %xmm15,%xmm8
20884  DB  69,15,88,196                        ; addps         %xmm12,%xmm8
20885  DB  72,173                              ; lods          %ds:(%rsi),%rax
20886  DB  15,40,199                           ; movaps        %xmm7,%xmm0
20887  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
20888  DB  15,40,221                           ; movaps        %xmm5,%xmm3
20889  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
20890  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
20891  DB  72,131,196,88                       ; add           $0x58,%rsp
20892  DB  255,224                             ; jmpq          *%rax
20893
20894PUBLIC _sk_srcover_rgba_8888_sse2
20895_sk_srcover_rgba_8888_sse2 LABEL PROC
20896  DB  72,173                              ; lods          %ds:(%rsi),%rax
20897  DB  72,139,0                            ; mov           (%rax),%rax
20898  DB  77,133,192                          ; test          %r8,%r8
20899  DB  15,133,227,0,0,0                    ; jne           19e2 <_sk_srcover_rgba_8888_sse2+0xf1>
20900  DB  243,68,15,111,4,144                 ; movdqu        (%rax,%rdx,4),%xmm8
20901  DB  77,133,192                          ; test          %r8,%r8
20902  DB  102,15,111,53,144,64,0,0            ; movdqa        0x4090(%rip),%xmm6        # 59a0 <_sk_callback_sse2+0x377>
20903  DB  102,65,15,111,224                   ; movdqa        %xmm8,%xmm4
20904  DB  102,15,219,230                      ; pand          %xmm6,%xmm4
20905  DB  15,91,228                           ; cvtdq2ps      %xmm4,%xmm4
20906  DB  102,65,15,111,232                   ; movdqa        %xmm8,%xmm5
20907  DB  102,15,114,213,8                    ; psrld         $0x8,%xmm5
20908  DB  102,15,219,238                      ; pand          %xmm6,%xmm5
20909  DB  15,91,237                           ; cvtdq2ps      %xmm5,%xmm5
20910  DB  102,65,15,111,248                   ; movdqa        %xmm8,%xmm7
20911  DB  102,15,114,215,16                   ; psrld         $0x10,%xmm7
20912  DB  102,15,219,254                      ; pand          %xmm6,%xmm7
20913  DB  15,91,247                           ; cvtdq2ps      %xmm7,%xmm6
20914  DB  102,65,15,114,208,24                ; psrld         $0x18,%xmm8
20915  DB  65,15,91,248                        ; cvtdq2ps      %xmm8,%xmm7
20916  DB  68,15,40,5,96,64,0,0                ; movaps        0x4060(%rip),%xmm8        # 59b0 <_sk_callback_sse2+0x387>
20917  DB  68,15,92,195                        ; subps         %xmm3,%xmm8
20918  DB  68,15,40,37,100,64,0,0              ; movaps        0x4064(%rip),%xmm12        # 59c0 <_sk_callback_sse2+0x397>
20919  DB  65,15,89,196                        ; mulps         %xmm12,%xmm0
20920  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
20921  DB  68,15,89,204                        ; mulps         %xmm4,%xmm9
20922  DB  68,15,88,200                        ; addps         %xmm0,%xmm9
20923  DB  65,15,89,204                        ; mulps         %xmm12,%xmm1
20924  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
20925  DB  68,15,89,213                        ; mulps         %xmm5,%xmm10
20926  DB  68,15,88,209                        ; addps         %xmm1,%xmm10
20927  DB  65,15,89,212                        ; mulps         %xmm12,%xmm2
20928  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
20929  DB  68,15,89,222                        ; mulps         %xmm6,%xmm11
20930  DB  68,15,88,218                        ; addps         %xmm2,%xmm11
20931  DB  65,15,89,220                        ; mulps         %xmm12,%xmm3
20932  DB  68,15,89,199                        ; mulps         %xmm7,%xmm8
20933  DB  68,15,88,195                        ; addps         %xmm3,%xmm8
20934  DB  102,65,15,91,193                    ; cvtps2dq      %xmm9,%xmm0
20935  DB  102,65,15,91,202                    ; cvtps2dq      %xmm10,%xmm1
20936  DB  102,15,114,241,8                    ; pslld         $0x8,%xmm1
20937  DB  102,15,235,200                      ; por           %xmm0,%xmm1
20938  DB  102,65,15,91,211                    ; cvtps2dq      %xmm11,%xmm2
20939  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
20940  DB  102,65,15,91,192                    ; cvtps2dq      %xmm8,%xmm0
20941  DB  102,15,114,240,24                   ; pslld         $0x18,%xmm0
20942  DB  102,15,235,194                      ; por           %xmm2,%xmm0
20943  DB  102,15,235,193                      ; por           %xmm1,%xmm0
20944  DB  117,82                              ; jne           1a1b <_sk_srcover_rgba_8888_sse2+0x12a>
20945  DB  243,15,127,4,144                    ; movdqu        %xmm0,(%rax,%rdx,4)
20946  DB  72,173                              ; lods          %ds:(%rsi),%rax
20947  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
20948  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
20949  DB  65,15,40,211                        ; movaps        %xmm11,%xmm2
20950  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
20951  DB  255,224                             ; jmpq          *%rax
20952  DB  69,137,193                          ; mov           %r8d,%r9d
20953  DB  65,128,225,3                        ; and           $0x3,%r9b
20954  DB  65,128,249,1                        ; cmp           $0x1,%r9b
20955  DB  116,87                              ; je            1a46 <_sk_srcover_rgba_8888_sse2+0x155>
20956  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
20957  DB  65,128,249,2                        ; cmp           $0x2,%r9b
20958  DB  116,22                              ; je            1a10 <_sk_srcover_rgba_8888_sse2+0x11f>
20959  DB  65,128,249,3                        ; cmp           $0x3,%r9b
20960  DB  15,133,1,255,255,255                ; jne           1905 <_sk_srcover_rgba_8888_sse2+0x14>
20961  DB  102,15,110,100,144,8                ; movd          0x8(%rax,%rdx,4),%xmm4
20962  DB  102,68,15,112,196,69                ; pshufd        $0x45,%xmm4,%xmm8
20963  DB  102,68,15,18,4,144                  ; movlpd        (%rax,%rdx,4),%xmm8
20964  DB  233,234,254,255,255                 ; jmpq          1905 <_sk_srcover_rgba_8888_sse2+0x14>
20965  DB  69,137,193                          ; mov           %r8d,%r9d
20966  DB  65,128,225,3                        ; and           $0x3,%r9b
20967  DB  65,128,249,1                        ; cmp           $0x1,%r9b
20968  DB  116,41                              ; je            1a51 <_sk_srcover_rgba_8888_sse2+0x160>
20969  DB  65,128,249,2                        ; cmp           $0x2,%r9b
20970  DB  116,17                              ; je            1a3f <_sk_srcover_rgba_8888_sse2+0x14e>
20971  DB  65,128,249,3                        ; cmp           $0x3,%r9b
20972  DB  117,154                             ; jne           19ce <_sk_srcover_rgba_8888_sse2+0xdd>
20973  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
20974  DB  102,15,126,76,144,8                 ; movd          %xmm1,0x8(%rax,%rdx,4)
20975  DB  102,15,214,4,144                    ; movq          %xmm0,(%rax,%rdx,4)
20976  DB  235,136                             ; jmp           19ce <_sk_srcover_rgba_8888_sse2+0xdd>
20977  DB  102,68,15,110,4,144                 ; movd          (%rax,%rdx,4),%xmm8
20978  DB  233,180,254,255,255                 ; jmpq          1905 <_sk_srcover_rgba_8888_sse2+0x14>
20979  DB  102,15,126,4,144                    ; movd          %xmm0,(%rax,%rdx,4)
20980  DB  233,115,255,255,255                 ; jmpq          19ce <_sk_srcover_rgba_8888_sse2+0xdd>
20981
20982PUBLIC _sk_clamp_0_sse2
20983_sk_clamp_0_sse2 LABEL PROC
20984  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
20985  DB  65,15,95,192                        ; maxps         %xmm8,%xmm0
20986  DB  65,15,95,200                        ; maxps         %xmm8,%xmm1
20987  DB  65,15,95,208                        ; maxps         %xmm8,%xmm2
20988  DB  65,15,95,216                        ; maxps         %xmm8,%xmm3
20989  DB  72,173                              ; lods          %ds:(%rsi),%rax
20990  DB  255,224                             ; jmpq          *%rax
20991
20992PUBLIC _sk_clamp_1_sse2
20993_sk_clamp_1_sse2 LABEL PROC
20994  DB  68,15,40,5,85,63,0,0                ; movaps        0x3f55(%rip),%xmm8        # 59d0 <_sk_callback_sse2+0x3a7>
20995  DB  65,15,93,192                        ; minps         %xmm8,%xmm0
20996  DB  65,15,93,200                        ; minps         %xmm8,%xmm1
20997  DB  65,15,93,208                        ; minps         %xmm8,%xmm2
20998  DB  65,15,93,216                        ; minps         %xmm8,%xmm3
20999  DB  72,173                              ; lods          %ds:(%rsi),%rax
21000  DB  255,224                             ; jmpq          *%rax
21001
21002PUBLIC _sk_clamp_a_sse2
21003_sk_clamp_a_sse2 LABEL PROC
21004  DB  15,93,29,74,63,0,0                  ; minps         0x3f4a(%rip),%xmm3        # 59e0 <_sk_callback_sse2+0x3b7>
21005  DB  15,93,195                           ; minps         %xmm3,%xmm0
21006  DB  15,93,203                           ; minps         %xmm3,%xmm1
21007  DB  15,93,211                           ; minps         %xmm3,%xmm2
21008  DB  72,173                              ; lods          %ds:(%rsi),%rax
21009  DB  255,224                             ; jmpq          *%rax
21010
21011PUBLIC _sk_set_rgb_sse2
21012_sk_set_rgb_sse2 LABEL PROC
21013  DB  72,173                              ; lods          %ds:(%rsi),%rax
21014  DB  243,15,16,0                         ; movss         (%rax),%xmm0
21015  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
21016  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
21017  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
21018  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
21019  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
21020  DB  72,173                              ; lods          %ds:(%rsi),%rax
21021  DB  255,224                             ; jmpq          *%rax
21022
21023PUBLIC _sk_swap_rb_sse2
21024_sk_swap_rb_sse2 LABEL PROC
21025  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
21026  DB  72,173                              ; lods          %ds:(%rsi),%rax
21027  DB  15,40,194                           ; movaps        %xmm2,%xmm0
21028  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
21029  DB  255,224                             ; jmpq          *%rax
21030
21031PUBLIC _sk_swap_sse2
21032_sk_swap_sse2 LABEL PROC
21033  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
21034  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
21035  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
21036  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
21037  DB  72,173                              ; lods          %ds:(%rsi),%rax
21038  DB  15,40,196                           ; movaps        %xmm4,%xmm0
21039  DB  15,40,205                           ; movaps        %xmm5,%xmm1
21040  DB  15,40,214                           ; movaps        %xmm6,%xmm2
21041  DB  15,40,223                           ; movaps        %xmm7,%xmm3
21042  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
21043  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
21044  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
21045  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
21046  DB  255,224                             ; jmpq          *%rax
21047
21048PUBLIC _sk_move_src_dst_sse2
21049_sk_move_src_dst_sse2 LABEL PROC
21050  DB  72,173                              ; lods          %ds:(%rsi),%rax
21051  DB  15,40,224                           ; movaps        %xmm0,%xmm4
21052  DB  15,40,233                           ; movaps        %xmm1,%xmm5
21053  DB  15,40,242                           ; movaps        %xmm2,%xmm6
21054  DB  15,40,251                           ; movaps        %xmm3,%xmm7
21055  DB  255,224                             ; jmpq          *%rax
21056
21057PUBLIC _sk_move_dst_src_sse2
21058_sk_move_dst_src_sse2 LABEL PROC
21059  DB  72,173                              ; lods          %ds:(%rsi),%rax
21060  DB  15,40,196                           ; movaps        %xmm4,%xmm0
21061  DB  15,40,205                           ; movaps        %xmm5,%xmm1
21062  DB  15,40,214                           ; movaps        %xmm6,%xmm2
21063  DB  15,40,223                           ; movaps        %xmm7,%xmm3
21064  DB  255,224                             ; jmpq          *%rax
21065
21066PUBLIC _sk_premul_sse2
21067_sk_premul_sse2 LABEL PROC
21068  DB  15,89,195                           ; mulps         %xmm3,%xmm0
21069  DB  15,89,203                           ; mulps         %xmm3,%xmm1
21070  DB  15,89,211                           ; mulps         %xmm3,%xmm2
21071  DB  72,173                              ; lods          %ds:(%rsi),%rax
21072  DB  255,224                             ; jmpq          *%rax
21073
21074PUBLIC _sk_unpremul_sse2
21075_sk_unpremul_sse2 LABEL PROC
21076  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
21077  DB  68,15,40,13,181,62,0,0              ; movaps        0x3eb5(%rip),%xmm9        # 59f0 <_sk_callback_sse2+0x3c7>
21078  DB  68,15,94,203                        ; divps         %xmm3,%xmm9
21079  DB  68,15,194,195,4                     ; cmpneqps      %xmm3,%xmm8
21080  DB  69,15,84,193                        ; andps         %xmm9,%xmm8
21081  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
21082  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
21083  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
21084  DB  72,173                              ; lods          %ds:(%rsi),%rax
21085  DB  255,224                             ; jmpq          *%rax
21086
21087PUBLIC _sk_from_srgb_sse2
21088_sk_from_srgb_sse2 LABEL PROC
21089  DB  68,15,40,5,160,62,0,0               ; movaps        0x3ea0(%rip),%xmm8        # 5a00 <_sk_callback_sse2+0x3d7>
21090  DB  68,15,40,232                        ; movaps        %xmm0,%xmm13
21091  DB  69,15,89,232                        ; mulps         %xmm8,%xmm13
21092  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
21093  DB  69,15,89,219                        ; mulps         %xmm11,%xmm11
21094  DB  68,15,40,13,152,62,0,0              ; movaps        0x3e98(%rip),%xmm9        # 5a10 <_sk_callback_sse2+0x3e7>
21095  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
21096  DB  69,15,89,241                        ; mulps         %xmm9,%xmm14
21097  DB  68,15,40,21,152,62,0,0              ; movaps        0x3e98(%rip),%xmm10        # 5a20 <_sk_callback_sse2+0x3f7>
21098  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
21099  DB  69,15,89,243                        ; mulps         %xmm11,%xmm14
21100  DB  68,15,40,29,152,62,0,0              ; movaps        0x3e98(%rip),%xmm11        # 5a30 <_sk_callback_sse2+0x407>
21101  DB  69,15,88,243                        ; addps         %xmm11,%xmm14
21102  DB  68,15,40,37,156,62,0,0              ; movaps        0x3e9c(%rip),%xmm12        # 5a40 <_sk_callback_sse2+0x417>
21103  DB  65,15,194,196,1                     ; cmpltps       %xmm12,%xmm0
21104  DB  68,15,84,232                        ; andps         %xmm0,%xmm13
21105  DB  65,15,85,198                        ; andnps        %xmm14,%xmm0
21106  DB  65,15,86,197                        ; orps          %xmm13,%xmm0
21107  DB  68,15,40,233                        ; movaps        %xmm1,%xmm13
21108  DB  69,15,89,232                        ; mulps         %xmm8,%xmm13
21109  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
21110  DB  69,15,89,246                        ; mulps         %xmm14,%xmm14
21111  DB  68,15,40,249                        ; movaps        %xmm1,%xmm15
21112  DB  69,15,89,249                        ; mulps         %xmm9,%xmm15
21113  DB  69,15,88,250                        ; addps         %xmm10,%xmm15
21114  DB  69,15,89,254                        ; mulps         %xmm14,%xmm15
21115  DB  69,15,88,251                        ; addps         %xmm11,%xmm15
21116  DB  65,15,194,204,1                     ; cmpltps       %xmm12,%xmm1
21117  DB  68,15,84,233                        ; andps         %xmm1,%xmm13
21118  DB  65,15,85,207                        ; andnps        %xmm15,%xmm1
21119  DB  65,15,86,205                        ; orps          %xmm13,%xmm1
21120  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
21121  DB  68,15,40,234                        ; movaps        %xmm2,%xmm13
21122  DB  69,15,89,237                        ; mulps         %xmm13,%xmm13
21123  DB  68,15,89,202                        ; mulps         %xmm2,%xmm9
21124  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
21125  DB  69,15,89,205                        ; mulps         %xmm13,%xmm9
21126  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
21127  DB  65,15,194,212,1                     ; cmpltps       %xmm12,%xmm2
21128  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
21129  DB  65,15,85,209                        ; andnps        %xmm9,%xmm2
21130  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
21131  DB  72,173                              ; lods          %ds:(%rsi),%rax
21132  DB  255,224                             ; jmpq          *%rax
21133
21134PUBLIC _sk_to_srgb_sse2
21135_sk_to_srgb_sse2 LABEL PROC
21136  DB  68,15,82,232                        ; rsqrtps       %xmm0,%xmm13
21137  DB  68,15,40,5,41,62,0,0                ; movaps        0x3e29(%rip),%xmm8        # 5a50 <_sk_callback_sse2+0x427>
21138  DB  68,15,40,240                        ; movaps        %xmm0,%xmm14
21139  DB  69,15,89,240                        ; mulps         %xmm8,%xmm14
21140  DB  68,15,40,13,41,62,0,0               ; movaps        0x3e29(%rip),%xmm9        # 5a60 <_sk_callback_sse2+0x437>
21141  DB  69,15,40,253                        ; movaps        %xmm13,%xmm15
21142  DB  69,15,89,249                        ; mulps         %xmm9,%xmm15
21143  DB  68,15,40,21,41,62,0,0               ; movaps        0x3e29(%rip),%xmm10        # 5a70 <_sk_callback_sse2+0x447>
21144  DB  69,15,88,250                        ; addps         %xmm10,%xmm15
21145  DB  69,15,89,253                        ; mulps         %xmm13,%xmm15
21146  DB  68,15,40,29,41,62,0,0               ; movaps        0x3e29(%rip),%xmm11        # 5a80 <_sk_callback_sse2+0x457>
21147  DB  69,15,88,251                        ; addps         %xmm11,%xmm15
21148  DB  68,15,40,37,45,62,0,0               ; movaps        0x3e2d(%rip),%xmm12        # 5a90 <_sk_callback_sse2+0x467>
21149  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
21150  DB  69,15,83,237                        ; rcpps         %xmm13,%xmm13
21151  DB  69,15,89,239                        ; mulps         %xmm15,%xmm13
21152  DB  68,15,40,61,41,62,0,0               ; movaps        0x3e29(%rip),%xmm15        # 5aa0 <_sk_callback_sse2+0x477>
21153  DB  65,15,194,199,1                     ; cmpltps       %xmm15,%xmm0
21154  DB  68,15,84,240                        ; andps         %xmm0,%xmm14
21155  DB  65,15,85,197                        ; andnps        %xmm13,%xmm0
21156  DB  65,15,86,198                        ; orps          %xmm14,%xmm0
21157  DB  68,15,82,233                        ; rsqrtps       %xmm1,%xmm13
21158  DB  69,15,40,245                        ; movaps        %xmm13,%xmm14
21159  DB  69,15,89,241                        ; mulps         %xmm9,%xmm14
21160  DB  69,15,88,242                        ; addps         %xmm10,%xmm14
21161  DB  69,15,89,245                        ; mulps         %xmm13,%xmm14
21162  DB  69,15,88,243                        ; addps         %xmm11,%xmm14
21163  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
21164  DB  69,15,83,237                        ; rcpps         %xmm13,%xmm13
21165  DB  69,15,89,238                        ; mulps         %xmm14,%xmm13
21166  DB  68,15,40,241                        ; movaps        %xmm1,%xmm14
21167  DB  69,15,89,240                        ; mulps         %xmm8,%xmm14
21168  DB  65,15,194,207,1                     ; cmpltps       %xmm15,%xmm1
21169  DB  68,15,84,241                        ; andps         %xmm1,%xmm14
21170  DB  65,15,85,205                        ; andnps        %xmm13,%xmm1
21171  DB  65,15,86,206                        ; orps          %xmm14,%xmm1
21172  DB  68,15,82,234                        ; rsqrtps       %xmm2,%xmm13
21173  DB  69,15,89,205                        ; mulps         %xmm13,%xmm9
21174  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
21175  DB  69,15,89,205                        ; mulps         %xmm13,%xmm9
21176  DB  69,15,88,203                        ; addps         %xmm11,%xmm9
21177  DB  69,15,88,236                        ; addps         %xmm12,%xmm13
21178  DB  69,15,83,213                        ; rcpps         %xmm13,%xmm10
21179  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
21180  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
21181  DB  65,15,194,215,1                     ; cmpltps       %xmm15,%xmm2
21182  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
21183  DB  65,15,85,210                        ; andnps        %xmm10,%xmm2
21184  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
21185  DB  72,173                              ; lods          %ds:(%rsi),%rax
21186  DB  255,224                             ; jmpq          *%rax
21187
21188PUBLIC _sk_rgb_to_hsl_sse2
21189_sk_rgb_to_hsl_sse2 LABEL PROC
21190  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
21191  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
21192  DB  69,15,40,208                        ; movaps        %xmm8,%xmm10
21193  DB  69,15,95,209                        ; maxps         %xmm9,%xmm10
21194  DB  68,15,95,210                        ; maxps         %xmm2,%xmm10
21195  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
21196  DB  69,15,93,217                        ; minps         %xmm9,%xmm11
21197  DB  68,15,93,218                        ; minps         %xmm2,%xmm11
21198  DB  65,15,40,202                        ; movaps        %xmm10,%xmm1
21199  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
21200  DB  68,15,40,45,130,61,0,0              ; movaps        0x3d82(%rip),%xmm13        # 5ab0 <_sk_callback_sse2+0x487>
21201  DB  68,15,94,233                        ; divps         %xmm1,%xmm13
21202  DB  65,15,40,194                        ; movaps        %xmm10,%xmm0
21203  DB  65,15,194,192,0                     ; cmpeqps       %xmm8,%xmm0
21204  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
21205  DB  68,15,92,226                        ; subps         %xmm2,%xmm12
21206  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
21207  DB  69,15,40,241                        ; movaps        %xmm9,%xmm14
21208  DB  68,15,194,242,1                     ; cmpltps       %xmm2,%xmm14
21209  DB  68,15,84,53,104,61,0,0              ; andps         0x3d68(%rip),%xmm14        # 5ac0 <_sk_callback_sse2+0x497>
21210  DB  69,15,88,244                        ; addps         %xmm12,%xmm14
21211  DB  69,15,40,250                        ; movaps        %xmm10,%xmm15
21212  DB  69,15,194,249,0                     ; cmpeqps       %xmm9,%xmm15
21213  DB  65,15,92,208                        ; subps         %xmm8,%xmm2
21214  DB  65,15,89,213                        ; mulps         %xmm13,%xmm2
21215  DB  68,15,40,37,91,61,0,0               ; movaps        0x3d5b(%rip),%xmm12        # 5ad0 <_sk_callback_sse2+0x4a7>
21216  DB  65,15,88,212                        ; addps         %xmm12,%xmm2
21217  DB  69,15,92,193                        ; subps         %xmm9,%xmm8
21218  DB  69,15,89,197                        ; mulps         %xmm13,%xmm8
21219  DB  68,15,88,5,87,61,0,0                ; addps         0x3d57(%rip),%xmm8        # 5ae0 <_sk_callback_sse2+0x4b7>
21220  DB  65,15,84,215                        ; andps         %xmm15,%xmm2
21221  DB  69,15,85,248                        ; andnps        %xmm8,%xmm15
21222  DB  68,15,86,250                        ; orps          %xmm2,%xmm15
21223  DB  68,15,84,240                        ; andps         %xmm0,%xmm14
21224  DB  65,15,85,199                        ; andnps        %xmm15,%xmm0
21225  DB  65,15,86,198                        ; orps          %xmm14,%xmm0
21226  DB  15,89,5,72,61,0,0                   ; mulps         0x3d48(%rip),%xmm0        # 5af0 <_sk_callback_sse2+0x4c7>
21227  DB  69,15,40,194                        ; movaps        %xmm10,%xmm8
21228  DB  69,15,194,195,4                     ; cmpneqps      %xmm11,%xmm8
21229  DB  65,15,84,192                        ; andps         %xmm8,%xmm0
21230  DB  69,15,92,226                        ; subps         %xmm10,%xmm12
21231  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
21232  DB  68,15,40,13,59,61,0,0               ; movaps        0x3d3b(%rip),%xmm9        # 5b00 <_sk_callback_sse2+0x4d7>
21233  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
21234  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
21235  DB  68,15,194,202,1                     ; cmpltps       %xmm2,%xmm9
21236  DB  69,15,92,227                        ; subps         %xmm11,%xmm12
21237  DB  69,15,84,225                        ; andps         %xmm9,%xmm12
21238  DB  69,15,85,202                        ; andnps        %xmm10,%xmm9
21239  DB  69,15,86,204                        ; orps          %xmm12,%xmm9
21240  DB  65,15,94,201                        ; divps         %xmm9,%xmm1
21241  DB  65,15,84,200                        ; andps         %xmm8,%xmm1
21242  DB  72,173                              ; lods          %ds:(%rsi),%rax
21243  DB  255,224                             ; jmpq          *%rax
21244
21245PUBLIC _sk_hsl_to_rgb_sse2
21246_sk_hsl_to_rgb_sse2 LABEL PROC
21247  DB  72,131,236,120                      ; sub           $0x78,%rsp
21248  DB  15,41,124,36,96                     ; movaps        %xmm7,0x60(%rsp)
21249  DB  15,41,116,36,80                     ; movaps        %xmm6,0x50(%rsp)
21250  DB  15,41,108,36,64                     ; movaps        %xmm5,0x40(%rsp)
21251  DB  15,41,100,36,48                     ; movaps        %xmm4,0x30(%rsp)
21252  DB  15,41,92,36,32                      ; movaps        %xmm3,0x20(%rsp)
21253  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
21254  DB  15,40,240                           ; movaps        %xmm0,%xmm6
21255  DB  68,15,40,13,246,60,0,0              ; movaps        0x3cf6(%rip),%xmm9        # 5b10 <_sk_callback_sse2+0x4e7>
21256  DB  69,15,40,209                        ; movaps        %xmm9,%xmm10
21257  DB  69,15,194,211,2                     ; cmpleps       %xmm11,%xmm10
21258  DB  15,40,193                           ; movaps        %xmm1,%xmm0
21259  DB  15,87,219                           ; xorps         %xmm3,%xmm3
21260  DB  15,194,217,0                        ; cmpeqps       %xmm1,%xmm3
21261  DB  15,40,251                           ; movaps        %xmm3,%xmm7
21262  DB  15,41,60,36                         ; movaps        %xmm7,(%rsp)
21263  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
21264  DB  15,92,193                           ; subps         %xmm1,%xmm0
21265  DB  65,15,84,194                        ; andps         %xmm10,%xmm0
21266  DB  68,15,85,209                        ; andnps        %xmm1,%xmm10
21267  DB  68,15,86,208                        ; orps          %xmm0,%xmm10
21268  DB  68,15,41,92,36,16                   ; movaps        %xmm11,0x10(%rsp)
21269  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
21270  DB  69,15,88,219                        ; addps         %xmm11,%xmm11
21271  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
21272  DB  15,40,5,192,60,0,0                  ; movaps        0x3cc0(%rip),%xmm0        # 5b20 <_sk_callback_sse2+0x4f7>
21273  DB  15,88,198                           ; addps         %xmm6,%xmm0
21274  DB  243,15,91,200                       ; cvttps2dq     %xmm0,%xmm1
21275  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
21276  DB  15,40,216                           ; movaps        %xmm0,%xmm3
21277  DB  15,194,217,1                        ; cmpltps       %xmm1,%xmm3
21278  DB  15,84,29,184,60,0,0                 ; andps         0x3cb8(%rip),%xmm3        # 5b30 <_sk_callback_sse2+0x507>
21279  DB  15,92,203                           ; subps         %xmm3,%xmm1
21280  DB  15,92,193                           ; subps         %xmm1,%xmm0
21281  DB  68,15,40,45,186,60,0,0              ; movaps        0x3cba(%rip),%xmm13        # 5b40 <_sk_callback_sse2+0x517>
21282  DB  69,15,40,197                        ; movaps        %xmm13,%xmm8
21283  DB  68,15,194,192,2                     ; cmpleps       %xmm0,%xmm8
21284  DB  69,15,40,242                        ; movaps        %xmm10,%xmm14
21285  DB  69,15,92,243                        ; subps         %xmm11,%xmm14
21286  DB  65,15,40,217                        ; movaps        %xmm9,%xmm3
21287  DB  15,194,216,2                        ; cmpleps       %xmm0,%xmm3
21288  DB  15,40,21,202,60,0,0                 ; movaps        0x3cca(%rip),%xmm2        # 5b70 <_sk_callback_sse2+0x547>
21289  DB  68,15,40,250                        ; movaps        %xmm2,%xmm15
21290  DB  68,15,194,248,2                     ; cmpleps       %xmm0,%xmm15
21291  DB  15,40,13,154,60,0,0                 ; movaps        0x3c9a(%rip),%xmm1        # 5b50 <_sk_callback_sse2+0x527>
21292  DB  15,89,193                           ; mulps         %xmm1,%xmm0
21293  DB  15,40,45,160,60,0,0                 ; movaps        0x3ca0(%rip),%xmm5        # 5b60 <_sk_callback_sse2+0x537>
21294  DB  15,40,229                           ; movaps        %xmm5,%xmm4
21295  DB  15,92,224                           ; subps         %xmm0,%xmm4
21296  DB  65,15,89,230                        ; mulps         %xmm14,%xmm4
21297  DB  65,15,88,227                        ; addps         %xmm11,%xmm4
21298  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
21299  DB  69,15,84,224                        ; andps         %xmm8,%xmm12
21300  DB  68,15,85,196                        ; andnps        %xmm4,%xmm8
21301  DB  69,15,86,196                        ; orps          %xmm12,%xmm8
21302  DB  68,15,84,195                        ; andps         %xmm3,%xmm8
21303  DB  65,15,85,218                        ; andnps        %xmm10,%xmm3
21304  DB  65,15,86,216                        ; orps          %xmm8,%xmm3
21305  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
21306  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
21307  DB  65,15,84,223                        ; andps         %xmm15,%xmm3
21308  DB  68,15,85,248                        ; andnps        %xmm0,%xmm15
21309  DB  68,15,86,251                        ; orps          %xmm3,%xmm15
21310  DB  68,15,40,199                        ; movaps        %xmm7,%xmm8
21311  DB  69,15,85,199                        ; andnps        %xmm15,%xmm8
21312  DB  243,15,91,198                       ; cvttps2dq     %xmm6,%xmm0
21313  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
21314  DB  15,40,222                           ; movaps        %xmm6,%xmm3
21315  DB  15,194,216,1                        ; cmpltps       %xmm0,%xmm3
21316  DB  15,84,29,21,60,0,0                  ; andps         0x3c15(%rip),%xmm3        # 5b30 <_sk_callback_sse2+0x507>
21317  DB  15,92,195                           ; subps         %xmm3,%xmm0
21318  DB  68,15,40,230                        ; movaps        %xmm6,%xmm12
21319  DB  68,15,92,224                        ; subps         %xmm0,%xmm12
21320  DB  69,15,40,253                        ; movaps        %xmm13,%xmm15
21321  DB  69,15,194,252,2                     ; cmpleps       %xmm12,%xmm15
21322  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
21323  DB  65,15,194,228,2                     ; cmpleps       %xmm12,%xmm4
21324  DB  15,40,218                           ; movaps        %xmm2,%xmm3
21325  DB  65,15,194,220,2                     ; cmpleps       %xmm12,%xmm3
21326  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
21327  DB  15,40,197                           ; movaps        %xmm5,%xmm0
21328  DB  65,15,92,196                        ; subps         %xmm12,%xmm0
21329  DB  65,15,89,198                        ; mulps         %xmm14,%xmm0
21330  DB  65,15,88,195                        ; addps         %xmm11,%xmm0
21331  DB  65,15,40,251                        ; movaps        %xmm11,%xmm7
21332  DB  65,15,84,255                        ; andps         %xmm15,%xmm7
21333  DB  68,15,85,248                        ; andnps        %xmm0,%xmm15
21334  DB  68,15,86,255                        ; orps          %xmm7,%xmm15
21335  DB  68,15,84,252                        ; andps         %xmm4,%xmm15
21336  DB  65,15,85,226                        ; andnps        %xmm10,%xmm4
21337  DB  65,15,86,231                        ; orps          %xmm15,%xmm4
21338  DB  69,15,89,230                        ; mulps         %xmm14,%xmm12
21339  DB  69,15,88,227                        ; addps         %xmm11,%xmm12
21340  DB  15,84,227                           ; andps         %xmm3,%xmm4
21341  DB  65,15,85,220                        ; andnps        %xmm12,%xmm3
21342  DB  15,86,220                           ; orps          %xmm4,%xmm3
21343  DB  15,40,60,36                         ; movaps        (%rsp),%xmm7
21344  DB  15,40,231                           ; movaps        %xmm7,%xmm4
21345  DB  15,85,227                           ; andnps        %xmm3,%xmm4
21346  DB  15,88,53,238,59,0,0                 ; addps         0x3bee(%rip),%xmm6        # 5b80 <_sk_callback_sse2+0x557>
21347  DB  243,15,91,198                       ; cvttps2dq     %xmm6,%xmm0
21348  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
21349  DB  15,40,222                           ; movaps        %xmm6,%xmm3
21350  DB  15,194,216,1                        ; cmpltps       %xmm0,%xmm3
21351  DB  15,84,29,137,59,0,0                 ; andps         0x3b89(%rip),%xmm3        # 5b30 <_sk_callback_sse2+0x507>
21352  DB  15,92,195                           ; subps         %xmm3,%xmm0
21353  DB  15,92,240                           ; subps         %xmm0,%xmm6
21354  DB  15,89,206                           ; mulps         %xmm6,%xmm1
21355  DB  15,92,233                           ; subps         %xmm1,%xmm5
21356  DB  65,15,89,238                        ; mulps         %xmm14,%xmm5
21357  DB  65,15,89,206                        ; mulps         %xmm14,%xmm1
21358  DB  65,15,88,235                        ; addps         %xmm11,%xmm5
21359  DB  65,15,88,203                        ; addps         %xmm11,%xmm1
21360  DB  68,15,194,238,2                     ; cmpleps       %xmm6,%xmm13
21361  DB  69,15,84,221                        ; andps         %xmm13,%xmm11
21362  DB  68,15,85,237                        ; andnps        %xmm5,%xmm13
21363  DB  69,15,86,235                        ; orps          %xmm11,%xmm13
21364  DB  68,15,194,206,2                     ; cmpleps       %xmm6,%xmm9
21365  DB  69,15,84,233                        ; andps         %xmm9,%xmm13
21366  DB  69,15,85,202                        ; andnps        %xmm10,%xmm9
21367  DB  69,15,86,205                        ; orps          %xmm13,%xmm9
21368  DB  15,194,214,2                        ; cmpleps       %xmm6,%xmm2
21369  DB  68,15,84,202                        ; andps         %xmm2,%xmm9
21370  DB  15,85,209                           ; andnps        %xmm1,%xmm2
21371  DB  65,15,86,209                        ; orps          %xmm9,%xmm2
21372  DB  15,40,68,36,16                      ; movaps        0x10(%rsp),%xmm0
21373  DB  15,40,207                           ; movaps        %xmm7,%xmm1
21374  DB  15,84,193                           ; andps         %xmm1,%xmm0
21375  DB  15,85,202                           ; andnps        %xmm2,%xmm1
21376  DB  68,15,86,192                        ; orps          %xmm0,%xmm8
21377  DB  15,86,224                           ; orps          %xmm0,%xmm4
21378  DB  15,86,193                           ; orps          %xmm1,%xmm0
21379  DB  15,40,208                           ; movaps        %xmm0,%xmm2
21380  DB  72,173                              ; lods          %ds:(%rsi),%rax
21381  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
21382  DB  15,40,204                           ; movaps        %xmm4,%xmm1
21383  DB  15,40,92,36,32                      ; movaps        0x20(%rsp),%xmm3
21384  DB  15,40,100,36,48                     ; movaps        0x30(%rsp),%xmm4
21385  DB  15,40,108,36,64                     ; movaps        0x40(%rsp),%xmm5
21386  DB  15,40,116,36,80                     ; movaps        0x50(%rsp),%xmm6
21387  DB  15,40,124,36,96                     ; movaps        0x60(%rsp),%xmm7
21388  DB  72,131,196,120                      ; add           $0x78,%rsp
21389  DB  255,224                             ; jmpq          *%rax
21390
21391PUBLIC _sk_scale_1_float_sse2
21392_sk_scale_1_float_sse2 LABEL PROC
21393  DB  72,173                              ; lods          %ds:(%rsi),%rax
21394  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
21395  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
21396  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
21397  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
21398  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
21399  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
21400  DB  72,173                              ; lods          %ds:(%rsi),%rax
21401  DB  255,224                             ; jmpq          *%rax
21402
21403PUBLIC _sk_scale_u8_sse2
21404_sk_scale_u8_sse2 LABEL PROC
21405  DB  72,173                              ; lods          %ds:(%rsi),%rax
21406  DB  76,139,16                           ; mov           (%rax),%r10
21407  DB  77,133,192                          ; test          %r8,%r8
21408  DB  117,61                              ; jne           209e <_sk_scale_u8_sse2+0x47>
21409  DB  102,69,15,110,4,18                  ; movd          (%r10,%rdx,1),%xmm8
21410  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
21411  DB  102,68,15,97,192                    ; punpcklwd     %xmm0,%xmm8
21412  DB  102,68,15,219,5,22,59,0,0           ; pand          0x3b16(%rip),%xmm8        # 5b90 <_sk_callback_sse2+0x567>
21413  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
21414  DB  68,15,89,5,26,59,0,0                ; mulps         0x3b1a(%rip),%xmm8        # 5ba0 <_sk_callback_sse2+0x577>
21415  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
21416  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
21417  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
21418  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
21419  DB  72,173                              ; lods          %ds:(%rsi),%rax
21420  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
21421  DB  255,224                             ; jmpq          *%rax
21422  DB  69,137,193                          ; mov           %r8d,%r9d
21423  DB  65,128,225,3                        ; and           $0x3,%r9b
21424  DB  65,128,249,1                        ; cmp           $0x1,%r9b
21425  DB  116,61                              ; je            20e8 <_sk_scale_u8_sse2+0x91>
21426  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
21427  DB  65,128,249,2                        ; cmp           $0x2,%r9b
21428  DB  116,23                              ; je            20cd <_sk_scale_u8_sse2+0x76>
21429  DB  65,128,249,3                        ; cmp           $0x3,%r9b
21430  DB  117,181                             ; jne           2071 <_sk_scale_u8_sse2+0x1a>
21431  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
21432  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21433  DB  102,69,15,112,192,69                ; pshufd        $0x45,%xmm8,%xmm8
21434  DB  65,15,183,4,18                      ; movzwl        (%r10,%rdx,1),%eax
21435  DB  102,68,15,110,200                   ; movd          %eax,%xmm9
21436  DB  102,68,15,96,200                    ; punpcklbw     %xmm0,%xmm9
21437  DB  102,68,15,97,200                    ; punpcklwd     %xmm0,%xmm9
21438  DB  242,69,15,16,193                    ; movsd         %xmm9,%xmm8
21439  DB  235,137                             ; jmp           2071 <_sk_scale_u8_sse2+0x1a>
21440  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
21441  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21442  DB  233,122,255,255,255                 ; jmpq          2071 <_sk_scale_u8_sse2+0x1a>
21443
21444PUBLIC _sk_lerp_1_float_sse2
21445_sk_lerp_1_float_sse2 LABEL PROC
21446  DB  72,173                              ; lods          %ds:(%rsi),%rax
21447  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
21448  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
21449  DB  15,92,196                           ; subps         %xmm4,%xmm0
21450  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
21451  DB  15,88,196                           ; addps         %xmm4,%xmm0
21452  DB  15,92,205                           ; subps         %xmm5,%xmm1
21453  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
21454  DB  15,88,205                           ; addps         %xmm5,%xmm1
21455  DB  15,92,214                           ; subps         %xmm6,%xmm2
21456  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
21457  DB  15,88,214                           ; addps         %xmm6,%xmm2
21458  DB  15,92,223                           ; subps         %xmm7,%xmm3
21459  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
21460  DB  15,88,223                           ; addps         %xmm7,%xmm3
21461  DB  72,173                              ; lods          %ds:(%rsi),%rax
21462  DB  255,224                             ; jmpq          *%rax
21463
21464PUBLIC _sk_lerp_u8_sse2
21465_sk_lerp_u8_sse2 LABEL PROC
21466  DB  72,173                              ; lods          %ds:(%rsi),%rax
21467  DB  76,139,16                           ; mov           (%rax),%r10
21468  DB  77,133,192                          ; test          %r8,%r8
21469  DB  117,81                              ; jne           218a <_sk_lerp_u8_sse2+0x5b>
21470  DB  102,69,15,110,4,18                  ; movd          (%r10,%rdx,1),%xmm8
21471  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
21472  DB  102,68,15,97,192                    ; punpcklwd     %xmm0,%xmm8
21473  DB  102,68,15,219,5,94,58,0,0           ; pand          0x3a5e(%rip),%xmm8        # 5bb0 <_sk_callback_sse2+0x587>
21474  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
21475  DB  68,15,89,5,98,58,0,0                ; mulps         0x3a62(%rip),%xmm8        # 5bc0 <_sk_callback_sse2+0x597>
21476  DB  15,92,196                           ; subps         %xmm4,%xmm0
21477  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
21478  DB  15,88,196                           ; addps         %xmm4,%xmm0
21479  DB  15,92,205                           ; subps         %xmm5,%xmm1
21480  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
21481  DB  15,88,205                           ; addps         %xmm5,%xmm1
21482  DB  15,92,214                           ; subps         %xmm6,%xmm2
21483  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
21484  DB  15,88,214                           ; addps         %xmm6,%xmm2
21485  DB  15,92,223                           ; subps         %xmm7,%xmm3
21486  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
21487  DB  15,88,223                           ; addps         %xmm7,%xmm3
21488  DB  72,173                              ; lods          %ds:(%rsi),%rax
21489  DB  255,224                             ; jmpq          *%rax
21490  DB  69,137,193                          ; mov           %r8d,%r9d
21491  DB  65,128,225,3                        ; and           $0x3,%r9b
21492  DB  65,128,249,1                        ; cmp           $0x1,%r9b
21493  DB  116,64                              ; je            21d7 <_sk_lerp_u8_sse2+0xa8>
21494  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
21495  DB  65,128,249,2                        ; cmp           $0x2,%r9b
21496  DB  116,23                              ; je            21b9 <_sk_lerp_u8_sse2+0x8a>
21497  DB  65,128,249,3                        ; cmp           $0x3,%r9b
21498  DB  117,161                             ; jne           2149 <_sk_lerp_u8_sse2+0x1a>
21499  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
21500  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21501  DB  102,69,15,112,192,69                ; pshufd        $0x45,%xmm8,%xmm8
21502  DB  65,15,183,4,18                      ; movzwl        (%r10,%rdx,1),%eax
21503  DB  102,68,15,110,200                   ; movd          %eax,%xmm9
21504  DB  102,68,15,96,200                    ; punpcklbw     %xmm0,%xmm9
21505  DB  102,68,15,97,200                    ; punpcklwd     %xmm0,%xmm9
21506  DB  242,69,15,16,193                    ; movsd         %xmm9,%xmm8
21507  DB  233,114,255,255,255                 ; jmpq          2149 <_sk_lerp_u8_sse2+0x1a>
21508  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
21509  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21510  DB  233,99,255,255,255                  ; jmpq          2149 <_sk_lerp_u8_sse2+0x1a>
21511
21512PUBLIC _sk_lerp_565_sse2
21513_sk_lerp_565_sse2 LABEL PROC
21514  DB  72,173                              ; lods          %ds:(%rsi),%rax
21515  DB  76,139,16                           ; mov           (%rax),%r10
21516  DB  77,133,192                          ; test          %r8,%r8
21517  DB  15,133,156,0,0,0                    ; jne           2290 <_sk_lerp_565_sse2+0xaa>
21518  DB  243,69,15,126,12,82                 ; movq          (%r10,%rdx,2),%xmm9
21519  DB  102,68,15,97,200                    ; punpcklwd     %xmm0,%xmm9
21520  DB  102,68,15,111,5,200,57,0,0          ; movdqa        0x39c8(%rip),%xmm8        # 5bd0 <_sk_callback_sse2+0x5a7>
21521  DB  102,69,15,219,193                   ; pand          %xmm9,%xmm8
21522  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
21523  DB  68,15,89,5,199,57,0,0               ; mulps         0x39c7(%rip),%xmm8        # 5be0 <_sk_callback_sse2+0x5b7>
21524  DB  102,68,15,111,21,206,57,0,0         ; movdqa        0x39ce(%rip),%xmm10        # 5bf0 <_sk_callback_sse2+0x5c7>
21525  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
21526  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
21527  DB  68,15,89,21,205,57,0,0              ; mulps         0x39cd(%rip),%xmm10        # 5c00 <_sk_callback_sse2+0x5d7>
21528  DB  102,68,15,219,13,212,57,0,0         ; pand          0x39d4(%rip),%xmm9        # 5c10 <_sk_callback_sse2+0x5e7>
21529  DB  69,15,91,201                        ; cvtdq2ps      %xmm9,%xmm9
21530  DB  68,15,89,13,216,57,0,0              ; mulps         0x39d8(%rip),%xmm9        # 5c20 <_sk_callback_sse2+0x5f7>
21531  DB  15,92,196                           ; subps         %xmm4,%xmm0
21532  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
21533  DB  15,88,196                           ; addps         %xmm4,%xmm0
21534  DB  15,92,205                           ; subps         %xmm5,%xmm1
21535  DB  65,15,89,202                        ; mulps         %xmm10,%xmm1
21536  DB  15,88,205                           ; addps         %xmm5,%xmm1
21537  DB  15,92,214                           ; subps         %xmm6,%xmm2
21538  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
21539  DB  15,88,214                           ; addps         %xmm6,%xmm2
21540  DB  15,92,223                           ; subps         %xmm7,%xmm3
21541  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
21542  DB  68,15,88,199                        ; addps         %xmm7,%xmm8
21543  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
21544  DB  68,15,88,215                        ; addps         %xmm7,%xmm10
21545  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
21546  DB  15,88,223                           ; addps         %xmm7,%xmm3
21547  DB  68,15,95,211                        ; maxps         %xmm3,%xmm10
21548  DB  69,15,95,194                        ; maxps         %xmm10,%xmm8
21549  DB  72,173                              ; lods          %ds:(%rsi),%rax
21550  DB  65,15,40,216                        ; movaps        %xmm8,%xmm3
21551  DB  255,224                             ; jmpq          *%rax
21552  DB  69,137,193                          ; mov           %r8d,%r9d
21553  DB  65,128,225,3                        ; and           $0x3,%r9b
21554  DB  65,128,249,1                        ; cmp           $0x1,%r9b
21555  DB  116,59                              ; je            22d8 <_sk_lerp_565_sse2+0xf2>
21556  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
21557  DB  65,128,249,2                        ; cmp           $0x2,%r9b
21558  DB  116,27                              ; je            22c3 <_sk_lerp_565_sse2+0xdd>
21559  DB  65,128,249,3                        ; cmp           $0x3,%r9b
21560  DB  15,133,77,255,255,255               ; jne           21ff <_sk_lerp_565_sse2+0x19>
21561  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
21562  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
21563  DB  102,69,15,112,200,69                ; pshufd        $0x45,%xmm8,%xmm9
21564  DB  102,69,15,110,4,82                  ; movd          (%r10,%rdx,2),%xmm8
21565  DB  102,68,15,97,192                    ; punpcklwd     %xmm0,%xmm8
21566  DB  242,69,15,16,200                    ; movsd         %xmm8,%xmm9
21567  DB  233,39,255,255,255                  ; jmpq          21ff <_sk_lerp_565_sse2+0x19>
21568  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
21569  DB  102,68,15,110,200                   ; movd          %eax,%xmm9
21570  DB  233,24,255,255,255                  ; jmpq          21ff <_sk_lerp_565_sse2+0x19>
21571
21572PUBLIC _sk_load_tables_sse2
21573_sk_load_tables_sse2 LABEL PROC
21574  DB  72,173                              ; lods          %ds:(%rsi),%rax
21575  DB  76,139,8                            ; mov           (%rax),%r9
21576  DB  77,133,192                          ; test          %r8,%r8
21577  DB  15,133,36,1,0,0                     ; jne           2419 <_sk_load_tables_sse2+0x132>
21578  DB  243,69,15,111,12,145                ; movdqu        (%r9,%rdx,4),%xmm9
21579  DB  65,87                               ; push          %r15
21580  DB  65,86                               ; push          %r14
21581  DB  83                                  ; push          %rbx
21582  DB  102,68,15,111,5,39,57,0,0           ; movdqa        0x3927(%rip),%xmm8        # 5c30 <_sk_callback_sse2+0x607>
21583  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
21584  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
21585  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
21586  DB  102,73,15,126,201                   ; movq          %xmm1,%r9
21587  DB  102,73,15,126,194                   ; movq          %xmm0,%r10
21588  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
21589  DB  73,193,234,30                       ; shr           $0x1e,%r10
21590  DB  69,15,182,241                       ; movzbl        %r9b,%r14d
21591  DB  73,193,233,30                       ; shr           $0x1e,%r9
21592  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
21593  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
21594  DB  243,66,15,16,12,19                  ; movss         (%rbx,%r10,1),%xmm1
21595  DB  243,66,15,16,4,11                   ; movss         (%rbx,%r9,1),%xmm0
21596  DB  15,20,200                           ; unpcklps      %xmm0,%xmm1
21597  DB  243,66,15,16,4,155                  ; movss         (%rbx,%r11,4),%xmm0
21598  DB  243,66,15,16,20,179                 ; movss         (%rbx,%r14,4),%xmm2
21599  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
21600  DB  15,20,193                           ; unpcklps      %xmm1,%xmm0
21601  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
21602  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
21603  DB  102,65,15,219,200                   ; pand          %xmm8,%xmm1
21604  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
21605  DB  102,73,15,126,209                   ; movq          %xmm2,%r9
21606  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
21607  DB  68,15,182,211                       ; movzbl        %bl,%r10d
21608  DB  72,193,235,30                       ; shr           $0x1e,%rbx
21609  DB  69,15,182,217                       ; movzbl        %r9b,%r11d
21610  DB  73,193,233,30                       ; shr           $0x1e,%r9
21611  DB  243,65,15,16,20,31                  ; movss         (%r15,%rbx,1),%xmm2
21612  DB  243,67,15,16,12,15                  ; movss         (%r15,%r9,1),%xmm1
21613  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
21614  DB  243,67,15,16,12,151                 ; movss         (%r15,%r10,4),%xmm1
21615  DB  243,67,15,16,28,159                 ; movss         (%r15,%r11,4),%xmm3
21616  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
21617  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
21618  DB  76,139,72,24                        ; mov           0x18(%rax),%r9
21619  DB  102,65,15,111,209                   ; movdqa        %xmm9,%xmm2
21620  DB  102,15,114,210,16                   ; psrld         $0x10,%xmm2
21621  DB  102,65,15,219,208                   ; pand          %xmm8,%xmm2
21622  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
21623  DB  102,72,15,126,219                   ; movq          %xmm3,%rbx
21624  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
21625  DB  68,15,182,208                       ; movzbl        %al,%r10d
21626  DB  72,193,232,30                       ; shr           $0x1e,%rax
21627  DB  68,15,182,219                       ; movzbl        %bl,%r11d
21628  DB  72,193,235,30                       ; shr           $0x1e,%rbx
21629  DB  243,69,15,16,4,1                    ; movss         (%r9,%rax,1),%xmm8
21630  DB  243,65,15,16,20,25                  ; movss         (%r9,%rbx,1),%xmm2
21631  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
21632  DB  243,67,15,16,20,145                 ; movss         (%r9,%r10,4),%xmm2
21633  DB  243,67,15,16,28,153                 ; movss         (%r9,%r11,4),%xmm3
21634  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
21635  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
21636  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
21637  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
21638  DB  15,89,29,48,56,0,0                  ; mulps         0x3830(%rip),%xmm3        # 5c40 <_sk_callback_sse2+0x617>
21639  DB  72,173                              ; lods          %ds:(%rsi),%rax
21640  DB  91                                  ; pop           %rbx
21641  DB  65,94                               ; pop           %r14
21642  DB  65,95                               ; pop           %r15
21643  DB  255,224                             ; jmpq          *%rax
21644  DB  69,137,194                          ; mov           %r8d,%r10d
21645  DB  65,128,226,3                        ; and           $0x3,%r10b
21646  DB  65,128,250,1                        ; cmp           $0x1,%r10b
21647  DB  116,45                              ; je            2453 <_sk_load_tables_sse2+0x16c>
21648  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
21649  DB  65,128,250,2                        ; cmp           $0x2,%r10b
21650  DB  116,23                              ; je            2448 <_sk_load_tables_sse2+0x161>
21651  DB  65,128,250,3                        ; cmp           $0x3,%r10b
21652  DB  15,133,192,254,255,255              ; jne           22fb <_sk_load_tables_sse2+0x14>
21653  DB  102,65,15,110,68,145,8              ; movd          0x8(%r9,%rdx,4),%xmm0
21654  DB  102,68,15,112,200,69                ; pshufd        $0x45,%xmm0,%xmm9
21655  DB  102,69,15,18,12,145                 ; movlpd        (%r9,%rdx,4),%xmm9
21656  DB  233,168,254,255,255                 ; jmpq          22fb <_sk_load_tables_sse2+0x14>
21657  DB  102,69,15,110,12,145                ; movd          (%r9,%rdx,4),%xmm9
21658  DB  233,157,254,255,255                 ; jmpq          22fb <_sk_load_tables_sse2+0x14>
21659
21660PUBLIC _sk_load_tables_u16_be_sse2
21661_sk_load_tables_u16_be_sse2 LABEL PROC
21662  DB  72,173                              ; lods          %ds:(%rsi),%rax
21663  DB  76,139,8                            ; mov           (%rax),%r9
21664  DB  76,141,20,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r10
21665  DB  77,133,192                          ; test          %r8,%r8
21666  DB  15,133,101,1,0,0                    ; jne           25d9 <_sk_load_tables_u16_be_sse2+0x17b>
21667  DB  102,67,15,16,4,81                   ; movupd        (%r9,%r10,2),%xmm0
21668  DB  102,67,15,16,76,81,16               ; movupd        0x10(%r9,%r10,2),%xmm1
21669  DB  65,87                               ; push          %r15
21670  DB  65,86                               ; push          %r14
21671  DB  83                                  ; push          %rbx
21672  DB  102,68,15,40,200                    ; movapd        %xmm0,%xmm9
21673  DB  102,68,15,97,201                    ; punpcklwd     %xmm1,%xmm9
21674  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
21675  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
21676  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
21677  DB  102,68,15,105,200                   ; punpckhwd     %xmm0,%xmm9
21678  DB  102,68,15,111,21,165,55,0,0         ; movdqa        0x37a5(%rip),%xmm10        # 5c50 <_sk_callback_sse2+0x627>
21679  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
21680  DB  102,65,15,219,194                   ; pand          %xmm10,%xmm0
21681  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
21682  DB  102,65,15,97,192                    ; punpcklwd     %xmm8,%xmm0
21683  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
21684  DB  102,73,15,126,217                   ; movq          %xmm3,%r9
21685  DB  69,15,182,209                       ; movzbl        %r9b,%r10d
21686  DB  73,193,233,32                       ; shr           $0x20,%r9
21687  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
21688  DB  69,15,182,243                       ; movzbl        %r11b,%r14d
21689  DB  73,193,235,30                       ; shr           $0x1e,%r11
21690  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
21691  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
21692  DB  243,66,15,16,28,27                  ; movss         (%rbx,%r11,1),%xmm3
21693  DB  243,66,15,16,4,139                  ; movss         (%rbx,%r9,4),%xmm0
21694  DB  15,20,216                           ; unpcklps      %xmm0,%xmm3
21695  DB  243,66,15,16,4,179                  ; movss         (%rbx,%r14,4),%xmm0
21696  DB  243,66,15,16,20,147                 ; movss         (%rbx,%r10,4),%xmm2
21697  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
21698  DB  15,20,195                           ; unpcklps      %xmm3,%xmm0
21699  DB  102,15,115,217,8                    ; psrldq        $0x8,%xmm1
21700  DB  102,65,15,219,202                   ; pand          %xmm10,%xmm1
21701  DB  102,65,15,97,200                    ; punpcklwd     %xmm8,%xmm1
21702  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
21703  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
21704  DB  68,15,182,203                       ; movzbl        %bl,%r9d
21705  DB  72,193,235,32                       ; shr           $0x20,%rbx
21706  DB  102,73,15,126,202                   ; movq          %xmm1,%r10
21707  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
21708  DB  73,193,234,30                       ; shr           $0x1e,%r10
21709  DB  243,67,15,16,20,23                  ; movss         (%r15,%r10,1),%xmm2
21710  DB  243,65,15,16,12,159                 ; movss         (%r15,%rbx,4),%xmm1
21711  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
21712  DB  243,67,15,16,12,159                 ; movss         (%r15,%r11,4),%xmm1
21713  DB  243,67,15,16,28,143                 ; movss         (%r15,%r9,4),%xmm3
21714  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
21715  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
21716  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
21717  DB  102,69,15,219,209                   ; pand          %xmm9,%xmm10
21718  DB  102,69,15,97,208                    ; punpcklwd     %xmm8,%xmm10
21719  DB  102,65,15,112,210,78                ; pshufd        $0x4e,%xmm10,%xmm2
21720  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
21721  DB  68,15,182,203                       ; movzbl        %bl,%r9d
21722  DB  72,193,235,32                       ; shr           $0x20,%rbx
21723  DB  102,76,15,126,208                   ; movq          %xmm10,%rax
21724  DB  68,15,182,216                       ; movzbl        %al,%r11d
21725  DB  72,193,232,30                       ; shr           $0x1e,%rax
21726  DB  243,69,15,16,20,2                   ; movss         (%r10,%rax,1),%xmm10
21727  DB  243,65,15,16,20,154                 ; movss         (%r10,%rbx,4),%xmm2
21728  DB  68,15,20,210                        ; unpcklps      %xmm2,%xmm10
21729  DB  243,67,15,16,20,154                 ; movss         (%r10,%r11,4),%xmm2
21730  DB  243,67,15,16,28,138                 ; movss         (%r10,%r9,4),%xmm3
21731  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
21732  DB  65,15,20,210                        ; unpcklps      %xmm10,%xmm2
21733  DB  102,65,15,112,217,78                ; pshufd        $0x4e,%xmm9,%xmm3
21734  DB  102,68,15,111,203                   ; movdqa        %xmm3,%xmm9
21735  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
21736  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
21737  DB  102,65,15,235,217                   ; por           %xmm9,%xmm3
21738  DB  102,65,15,97,216                    ; punpcklwd     %xmm8,%xmm3
21739  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
21740  DB  15,89,29,144,54,0,0                 ; mulps         0x3690(%rip),%xmm3        # 5c60 <_sk_callback_sse2+0x637>
21741  DB  72,173                              ; lods          %ds:(%rsi),%rax
21742  DB  91                                  ; pop           %rbx
21743  DB  65,94                               ; pop           %r14
21744  DB  65,95                               ; pop           %r15
21745  DB  255,224                             ; jmpq          *%rax
21746  DB  242,67,15,16,4,81                   ; movsd         (%r9,%r10,2),%xmm0
21747  DB  73,131,248,1                        ; cmp           $0x1,%r8
21748  DB  117,17                              ; jne           25f6 <_sk_load_tables_u16_be_sse2+0x198>
21749  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
21750  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
21751  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
21752  DB  233,139,254,255,255                 ; jmpq          2481 <_sk_load_tables_u16_be_sse2+0x23>
21753  DB  102,67,15,22,68,81,8                ; movhpd        0x8(%r9,%r10,2),%xmm0
21754  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
21755  DB  73,131,248,3                        ; cmp           $0x3,%r8
21756  DB  15,130,118,254,255,255              ; jb            2481 <_sk_load_tables_u16_be_sse2+0x23>
21757  DB  242,67,15,16,76,81,16               ; movsd         0x10(%r9,%r10,2),%xmm1
21758  DB  233,106,254,255,255                 ; jmpq          2481 <_sk_load_tables_u16_be_sse2+0x23>
21759
21760PUBLIC _sk_load_tables_rgb_u16_be_sse2
21761_sk_load_tables_rgb_u16_be_sse2 LABEL PROC
21762  DB  72,173                              ; lods          %ds:(%rsi),%rax
21763  DB  76,139,8                            ; mov           (%rax),%r9
21764  DB  76,141,20,82                        ; lea           (%rdx,%rdx,2),%r10
21765  DB  77,133,192                          ; test          %r8,%r8
21766  DB  15,133,84,1,0,0                     ; jne           277d <_sk_load_tables_rgb_u16_be_sse2+0x166>
21767  DB  243,71,15,111,28,81                 ; movdqu        (%r9,%r10,2),%xmm11
21768  DB  243,67,15,111,76,81,8               ; movdqu        0x8(%r9,%r10,2),%xmm1
21769  DB  102,15,115,217,4                    ; psrldq        $0x4,%xmm1
21770  DB  102,69,15,111,211                   ; movdqa        %xmm11,%xmm10
21771  DB  102,65,15,115,218,6                 ; psrldq        $0x6,%xmm10
21772  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
21773  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
21774  DB  65,87                               ; push          %r15
21775  DB  65,86                               ; push          %r14
21776  DB  83                                  ; push          %rbx
21777  DB  102,68,15,97,217                    ; punpcklwd     %xmm1,%xmm11
21778  DB  102,68,15,97,208                    ; punpcklwd     %xmm0,%xmm10
21779  DB  102,65,15,111,195                   ; movdqa        %xmm11,%xmm0
21780  DB  102,65,15,97,194                    ; punpcklwd     %xmm10,%xmm0
21781  DB  102,68,15,111,5,255,53,0,0          ; movdqa        0x35ff(%rip),%xmm8        # 5c70 <_sk_callback_sse2+0x647>
21782  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
21783  DB  102,65,15,219,192                   ; pand          %xmm8,%xmm0
21784  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
21785  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
21786  DB  102,15,112,216,78                   ; pshufd        $0x4e,%xmm0,%xmm3
21787  DB  102,73,15,126,217                   ; movq          %xmm3,%r9
21788  DB  69,15,182,209                       ; movzbl        %r9b,%r10d
21789  DB  73,193,233,32                       ; shr           $0x20,%r9
21790  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
21791  DB  69,15,182,243                       ; movzbl        %r11b,%r14d
21792  DB  73,193,235,30                       ; shr           $0x1e,%r11
21793  DB  72,139,88,8                         ; mov           0x8(%rax),%rbx
21794  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
21795  DB  243,66,15,16,28,27                  ; movss         (%rbx,%r11,1),%xmm3
21796  DB  243,66,15,16,4,139                  ; movss         (%rbx,%r9,4),%xmm0
21797  DB  15,20,216                           ; unpcklps      %xmm0,%xmm3
21798  DB  243,66,15,16,4,179                  ; movss         (%rbx,%r14,4),%xmm0
21799  DB  243,66,15,16,20,147                 ; movss         (%rbx,%r10,4),%xmm2
21800  DB  15,20,194                           ; unpcklps      %xmm2,%xmm0
21801  DB  15,20,195                           ; unpcklps      %xmm3,%xmm0
21802  DB  102,65,15,219,200                   ; pand          %xmm8,%xmm1
21803  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
21804  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
21805  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
21806  DB  68,15,182,203                       ; movzbl        %bl,%r9d
21807  DB  72,193,235,32                       ; shr           $0x20,%rbx
21808  DB  102,73,15,126,202                   ; movq          %xmm1,%r10
21809  DB  69,15,182,218                       ; movzbl        %r10b,%r11d
21810  DB  73,193,234,30                       ; shr           $0x1e,%r10
21811  DB  243,67,15,16,20,23                  ; movss         (%r15,%r10,1),%xmm2
21812  DB  243,65,15,16,12,159                 ; movss         (%r15,%rbx,4),%xmm1
21813  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
21814  DB  243,67,15,16,12,159                 ; movss         (%r15,%r11,4),%xmm1
21815  DB  243,67,15,16,28,143                 ; movss         (%r15,%r9,4),%xmm3
21816  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
21817  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
21818  DB  76,139,80,24                        ; mov           0x18(%rax),%r10
21819  DB  102,69,15,105,218                   ; punpckhwd     %xmm10,%xmm11
21820  DB  102,69,15,219,216                   ; pand          %xmm8,%xmm11
21821  DB  102,69,15,97,217                    ; punpcklwd     %xmm9,%xmm11
21822  DB  102,65,15,112,211,78                ; pshufd        $0x4e,%xmm11,%xmm2
21823  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
21824  DB  68,15,182,203                       ; movzbl        %bl,%r9d
21825  DB  72,193,235,32                       ; shr           $0x20,%rbx
21826  DB  102,76,15,126,216                   ; movq          %xmm11,%rax
21827  DB  68,15,182,216                       ; movzbl        %al,%r11d
21828  DB  72,193,232,30                       ; shr           $0x1e,%rax
21829  DB  243,69,15,16,4,2                    ; movss         (%r10,%rax,1),%xmm8
21830  DB  243,65,15,16,20,154                 ; movss         (%r10,%rbx,4),%xmm2
21831  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
21832  DB  243,67,15,16,20,154                 ; movss         (%r10,%r11,4),%xmm2
21833  DB  243,67,15,16,28,138                 ; movss         (%r10,%r9,4),%xmm3
21834  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
21835  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
21836  DB  72,173                              ; lods          %ds:(%rsi),%rax
21837  DB  15,40,29,10,53,0,0                  ; movaps        0x350a(%rip),%xmm3        # 5c80 <_sk_callback_sse2+0x657>
21838  DB  91                                  ; pop           %rbx
21839  DB  65,94                               ; pop           %r14
21840  DB  65,95                               ; pop           %r15
21841  DB  255,224                             ; jmpq          *%rax
21842  DB  102,71,15,110,28,81                 ; movd          (%r9,%r10,2),%xmm11
21843  DB  102,71,15,196,92,81,4,2             ; pinsrw        $0x2,0x4(%r9,%r10,2),%xmm11
21844  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
21845  DB  73,131,248,1                        ; cmp           $0x1,%r8
21846  DB  117,14                              ; jne           27a3 <_sk_load_tables_rgb_u16_be_sse2+0x18c>
21847  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
21848  DB  102,69,15,239,210                   ; pxor          %xmm10,%xmm10
21849  DB  233,172,254,255,255                 ; jmpq          264f <_sk_load_tables_rgb_u16_be_sse2+0x38>
21850  DB  102,71,15,110,84,81,6               ; movd          0x6(%r9,%r10,2),%xmm10
21851  DB  102,71,15,196,84,81,10,2            ; pinsrw        $0x2,0xa(%r9,%r10,2),%xmm10
21852  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
21853  DB  73,131,248,3                        ; cmp           $0x3,%r8
21854  DB  114,24                              ; jb            27d4 <_sk_load_tables_rgb_u16_be_sse2+0x1bd>
21855  DB  102,67,15,110,76,81,12              ; movd          0xc(%r9,%r10,2),%xmm1
21856  DB  102,67,15,196,76,81,16,2            ; pinsrw        $0x2,0x10(%r9,%r10,2),%xmm1
21857  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
21858  DB  233,123,254,255,255                 ; jmpq          264f <_sk_load_tables_rgb_u16_be_sse2+0x38>
21859  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
21860  DB  233,114,254,255,255                 ; jmpq          264f <_sk_load_tables_rgb_u16_be_sse2+0x38>
21861
21862PUBLIC _sk_byte_tables_sse2
21863_sk_byte_tables_sse2 LABEL PROC
21864  DB  85                                  ; push          %rbp
21865  DB  65,87                               ; push          %r15
21866  DB  65,86                               ; push          %r14
21867  DB  83                                  ; push          %rbx
21868  DB  72,173                              ; lods          %ds:(%rsi),%rax
21869  DB  68,15,40,5,163,52,0,0               ; movaps        0x34a3(%rip),%xmm8        # 5c90 <_sk_callback_sse2+0x667>
21870  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
21871  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
21872  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
21873  DB  69,137,202                          ; mov           %r9d,%r10d
21874  DB  77,137,203                          ; mov           %r9,%r11
21875  DB  73,193,235,32                       ; shr           $0x20,%r11
21876  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
21877  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
21878  DB  69,137,206                          ; mov           %r9d,%r14d
21879  DB  77,137,207                          ; mov           %r9,%r15
21880  DB  73,193,239,32                       ; shr           $0x20,%r15
21881  DB  72,139,24                           ; mov           (%rax),%rbx
21882  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
21883  DB  70,15,182,52,51                     ; movzbl        (%rbx,%r14,1),%r14d
21884  DB  66,15,182,44,59                     ; movzbl        (%rbx,%r15,1),%ebp
21885  DB  193,229,8                           ; shl           $0x8,%ebp
21886  DB  68,9,245                            ; or            %r14d,%ebp
21887  DB  70,15,182,20,19                     ; movzbl        (%rbx,%r10,1),%r10d
21888  DB  66,15,182,28,27                     ; movzbl        (%rbx,%r11,1),%ebx
21889  DB  193,227,8                           ; shl           $0x8,%ebx
21890  DB  68,9,211                            ; or            %r10d,%ebx
21891  DB  102,15,196,195,0                    ; pinsrw        $0x0,%ebx,%xmm0
21892  DB  102,15,196,197,1                    ; pinsrw        $0x1,%ebp,%xmm0
21893  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
21894  DB  102,65,15,96,193                    ; punpcklbw     %xmm9,%xmm0
21895  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
21896  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
21897  DB  68,15,40,21,61,52,0,0               ; movaps        0x343d(%rip),%xmm10        # 5ca0 <_sk_callback_sse2+0x677>
21898  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
21899  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
21900  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
21901  DB  102,72,15,126,205                   ; movq          %xmm1,%rbp
21902  DB  65,137,234                          ; mov           %ebp,%r10d
21903  DB  72,193,237,32                       ; shr           $0x20,%rbp
21904  DB  102,15,112,201,78                   ; pshufd        $0x4e,%xmm1,%xmm1
21905  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
21906  DB  65,137,219                          ; mov           %ebx,%r11d
21907  DB  72,193,235,32                       ; shr           $0x20,%rbx
21908  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
21909  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
21910  DB  193,227,8                           ; shl           $0x8,%ebx
21911  DB  68,9,219                            ; or            %r11d,%ebx
21912  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
21913  DB  65,15,182,44,41                     ; movzbl        (%r9,%rbp,1),%ebp
21914  DB  193,229,8                           ; shl           $0x8,%ebp
21915  DB  68,9,213                            ; or            %r10d,%ebp
21916  DB  102,15,196,205,0                    ; pinsrw        $0x0,%ebp,%xmm1
21917  DB  102,15,196,203,1                    ; pinsrw        $0x1,%ebx,%xmm1
21918  DB  102,65,15,96,201                    ; punpcklbw     %xmm9,%xmm1
21919  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
21920  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
21921  DB  65,15,89,202                        ; mulps         %xmm10,%xmm1
21922  DB  76,139,80,16                        ; mov           0x10(%rax),%r10
21923  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
21924  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
21925  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
21926  DB  65,137,217                          ; mov           %ebx,%r9d
21927  DB  72,193,235,32                       ; shr           $0x20,%rbx
21928  DB  102,15,112,210,78                   ; pshufd        $0x4e,%xmm2,%xmm2
21929  DB  102,72,15,126,213                   ; movq          %xmm2,%rbp
21930  DB  65,137,235                          ; mov           %ebp,%r11d
21931  DB  72,193,237,32                       ; shr           $0x20,%rbp
21932  DB  71,15,182,28,26                     ; movzbl        (%r10,%r11,1),%r11d
21933  DB  65,15,182,44,42                     ; movzbl        (%r10,%rbp,1),%ebp
21934  DB  193,229,8                           ; shl           $0x8,%ebp
21935  DB  68,9,221                            ; or            %r11d,%ebp
21936  DB  71,15,182,12,10                     ; movzbl        (%r10,%r9,1),%r9d
21937  DB  65,15,182,28,26                     ; movzbl        (%r10,%rbx,1),%ebx
21938  DB  193,227,8                           ; shl           $0x8,%ebx
21939  DB  68,9,203                            ; or            %r9d,%ebx
21940  DB  102,15,196,211,0                    ; pinsrw        $0x0,%ebx,%xmm2
21941  DB  102,15,196,213,1                    ; pinsrw        $0x1,%ebp,%xmm2
21942  DB  102,65,15,96,209                    ; punpcklbw     %xmm9,%xmm2
21943  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
21944  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
21945  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
21946  DB  72,139,64,24                        ; mov           0x18(%rax),%rax
21947  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
21948  DB  102,15,91,219                       ; cvtps2dq      %xmm3,%xmm3
21949  DB  102,72,15,126,221                   ; movq          %xmm3,%rbp
21950  DB  65,137,233                          ; mov           %ebp,%r9d
21951  DB  72,193,237,32                       ; shr           $0x20,%rbp
21952  DB  102,15,112,219,78                   ; pshufd        $0x4e,%xmm3,%xmm3
21953  DB  102,72,15,126,219                   ; movq          %xmm3,%rbx
21954  DB  65,137,218                          ; mov           %ebx,%r10d
21955  DB  72,193,235,32                       ; shr           $0x20,%rbx
21956  DB  70,15,182,20,16                     ; movzbl        (%rax,%r10,1),%r10d
21957  DB  15,182,28,24                        ; movzbl        (%rax,%rbx,1),%ebx
21958  DB  193,227,8                           ; shl           $0x8,%ebx
21959  DB  68,9,211                            ; or            %r10d,%ebx
21960  DB  70,15,182,12,8                      ; movzbl        (%rax,%r9,1),%r9d
21961  DB  15,182,4,40                         ; movzbl        (%rax,%rbp,1),%eax
21962  DB  193,224,8                           ; shl           $0x8,%eax
21963  DB  68,9,200                            ; or            %r9d,%eax
21964  DB  102,15,196,216,0                    ; pinsrw        $0x0,%eax,%xmm3
21965  DB  102,15,196,219,1                    ; pinsrw        $0x1,%ebx,%xmm3
21966  DB  102,65,15,96,217                    ; punpcklbw     %xmm9,%xmm3
21967  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
21968  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
21969  DB  65,15,89,218                        ; mulps         %xmm10,%xmm3
21970  DB  72,173                              ; lods          %ds:(%rsi),%rax
21971  DB  91                                  ; pop           %rbx
21972  DB  65,94                               ; pop           %r14
21973  DB  65,95                               ; pop           %r15
21974  DB  93                                  ; pop           %rbp
21975  DB  255,224                             ; jmpq          *%rax
21976
21977PUBLIC _sk_byte_tables_rgb_sse2
21978_sk_byte_tables_rgb_sse2 LABEL PROC
21979  DB  85                                  ; push          %rbp
21980  DB  65,87                               ; push          %r15
21981  DB  65,86                               ; push          %r14
21982  DB  83                                  ; push          %rbx
21983  DB  72,173                              ; lods          %ds:(%rsi),%rax
21984  DB  68,139,72,24                        ; mov           0x18(%rax),%r9d
21985  DB  65,255,201                          ; dec           %r9d
21986  DB  102,69,15,110,193                   ; movd          %r9d,%xmm8
21987  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
21988  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
21989  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
21990  DB  102,15,91,192                       ; cvtps2dq      %xmm0,%xmm0
21991  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
21992  DB  69,137,202                          ; mov           %r9d,%r10d
21993  DB  77,137,203                          ; mov           %r9,%r11
21994  DB  73,193,235,32                       ; shr           $0x20,%r11
21995  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
21996  DB  102,73,15,126,193                   ; movq          %xmm0,%r9
21997  DB  69,137,206                          ; mov           %r9d,%r14d
21998  DB  77,137,207                          ; mov           %r9,%r15
21999  DB  73,193,239,32                       ; shr           $0x20,%r15
22000  DB  72,139,24                           ; mov           (%rax),%rbx
22001  DB  76,139,72,8                         ; mov           0x8(%rax),%r9
22002  DB  70,15,182,52,51                     ; movzbl        (%rbx,%r14,1),%r14d
22003  DB  66,15,182,44,59                     ; movzbl        (%rbx,%r15,1),%ebp
22004  DB  193,229,8                           ; shl           $0x8,%ebp
22005  DB  68,9,245                            ; or            %r14d,%ebp
22006  DB  70,15,182,20,19                     ; movzbl        (%rbx,%r10,1),%r10d
22007  DB  66,15,182,28,27                     ; movzbl        (%rbx,%r11,1),%ebx
22008  DB  193,227,8                           ; shl           $0x8,%ebx
22009  DB  68,9,211                            ; or            %r10d,%ebx
22010  DB  102,15,196,195,0                    ; pinsrw        $0x0,%ebx,%xmm0
22011  DB  102,15,196,197,1                    ; pinsrw        $0x1,%ebp,%xmm0
22012  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
22013  DB  102,65,15,96,193                    ; punpcklbw     %xmm9,%xmm0
22014  DB  102,65,15,97,193                    ; punpcklwd     %xmm9,%xmm0
22015  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22016  DB  68,15,40,21,133,50,0,0              ; movaps        0x3285(%rip),%xmm10        # 5cb0 <_sk_callback_sse2+0x687>
22017  DB  65,15,89,194                        ; mulps         %xmm10,%xmm0
22018  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
22019  DB  102,15,91,201                       ; cvtps2dq      %xmm1,%xmm1
22020  DB  102,72,15,126,205                   ; movq          %xmm1,%rbp
22021  DB  65,137,234                          ; mov           %ebp,%r10d
22022  DB  72,193,237,32                       ; shr           $0x20,%rbp
22023  DB  102,15,112,201,78                   ; pshufd        $0x4e,%xmm1,%xmm1
22024  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
22025  DB  65,137,219                          ; mov           %ebx,%r11d
22026  DB  72,193,235,32                       ; shr           $0x20,%rbx
22027  DB  71,15,182,28,25                     ; movzbl        (%r9,%r11,1),%r11d
22028  DB  65,15,182,28,25                     ; movzbl        (%r9,%rbx,1),%ebx
22029  DB  193,227,8                           ; shl           $0x8,%ebx
22030  DB  68,9,219                            ; or            %r11d,%ebx
22031  DB  71,15,182,20,17                     ; movzbl        (%r9,%r10,1),%r10d
22032  DB  65,15,182,44,41                     ; movzbl        (%r9,%rbp,1),%ebp
22033  DB  193,229,8                           ; shl           $0x8,%ebp
22034  DB  68,9,213                            ; or            %r10d,%ebp
22035  DB  102,15,196,205,0                    ; pinsrw        $0x0,%ebp,%xmm1
22036  DB  102,15,196,203,1                    ; pinsrw        $0x1,%ebx,%xmm1
22037  DB  102,65,15,96,201                    ; punpcklbw     %xmm9,%xmm1
22038  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
22039  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22040  DB  65,15,89,202                        ; mulps         %xmm10,%xmm1
22041  DB  72,139,64,16                        ; mov           0x10(%rax),%rax
22042  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
22043  DB  102,15,91,210                       ; cvtps2dq      %xmm2,%xmm2
22044  DB  102,72,15,126,213                   ; movq          %xmm2,%rbp
22045  DB  65,137,233                          ; mov           %ebp,%r9d
22046  DB  72,193,237,32                       ; shr           $0x20,%rbp
22047  DB  102,15,112,210,78                   ; pshufd        $0x4e,%xmm2,%xmm2
22048  DB  102,72,15,126,211                   ; movq          %xmm2,%rbx
22049  DB  65,137,218                          ; mov           %ebx,%r10d
22050  DB  72,193,235,32                       ; shr           $0x20,%rbx
22051  DB  70,15,182,20,16                     ; movzbl        (%rax,%r10,1),%r10d
22052  DB  15,182,28,24                        ; movzbl        (%rax,%rbx,1),%ebx
22053  DB  193,227,8                           ; shl           $0x8,%ebx
22054  DB  68,9,211                            ; or            %r10d,%ebx
22055  DB  70,15,182,12,8                      ; movzbl        (%rax,%r9,1),%r9d
22056  DB  15,182,4,40                         ; movzbl        (%rax,%rbp,1),%eax
22057  DB  193,224,8                           ; shl           $0x8,%eax
22058  DB  68,9,200                            ; or            %r9d,%eax
22059  DB  102,15,196,208,0                    ; pinsrw        $0x0,%eax,%xmm2
22060  DB  102,15,196,211,1                    ; pinsrw        $0x1,%ebx,%xmm2
22061  DB  102,65,15,96,209                    ; punpcklbw     %xmm9,%xmm2
22062  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
22063  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
22064  DB  65,15,89,210                        ; mulps         %xmm10,%xmm2
22065  DB  72,173                              ; lods          %ds:(%rsi),%rax
22066  DB  91                                  ; pop           %rbx
22067  DB  65,94                               ; pop           %r14
22068  DB  65,95                               ; pop           %r15
22069  DB  93                                  ; pop           %rbp
22070  DB  255,224                             ; jmpq          *%rax
22071
22072PUBLIC _sk_table_r_sse2
22073_sk_table_r_sse2 LABEL PROC
22074  DB  83                                  ; push          %rbx
22075  DB  72,173                              ; lods          %ds:(%rsi),%rax
22076  DB  76,139,8                            ; mov           (%rax),%r9
22077  DB  139,64,8                            ; mov           0x8(%rax),%eax
22078  DB  255,200                             ; dec           %eax
22079  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
22080  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
22081  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
22082  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
22083  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
22084  DB  102,65,15,112,192,78                ; pshufd        $0x4e,%xmm8,%xmm0
22085  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
22086  DB  65,137,194                          ; mov           %eax,%r10d
22087  DB  72,193,232,32                       ; shr           $0x20,%rax
22088  DB  102,77,15,126,195                   ; movq          %xmm8,%r11
22089  DB  68,137,219                          ; mov           %r11d,%ebx
22090  DB  73,193,235,32                       ; shr           $0x20,%r11
22091  DB  243,71,15,16,4,153                  ; movss         (%r9,%r11,4),%xmm8
22092  DB  243,65,15,16,4,129                  ; movss         (%r9,%rax,4),%xmm0
22093  DB  68,15,20,192                        ; unpcklps      %xmm0,%xmm8
22094  DB  243,65,15,16,4,153                  ; movss         (%r9,%rbx,4),%xmm0
22095  DB  243,71,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm9
22096  DB  65,15,20,193                        ; unpcklps      %xmm9,%xmm0
22097  DB  65,15,20,192                        ; unpcklps      %xmm8,%xmm0
22098  DB  72,173                              ; lods          %ds:(%rsi),%rax
22099  DB  91                                  ; pop           %rbx
22100  DB  255,224                             ; jmpq          *%rax
22101
22102PUBLIC _sk_table_g_sse2
22103_sk_table_g_sse2 LABEL PROC
22104  DB  83                                  ; push          %rbx
22105  DB  72,173                              ; lods          %ds:(%rsi),%rax
22106  DB  76,139,8                            ; mov           (%rax),%r9
22107  DB  139,64,8                            ; mov           0x8(%rax),%eax
22108  DB  255,200                             ; dec           %eax
22109  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
22110  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
22111  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
22112  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
22113  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
22114  DB  102,65,15,112,200,78                ; pshufd        $0x4e,%xmm8,%xmm1
22115  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
22116  DB  65,137,194                          ; mov           %eax,%r10d
22117  DB  72,193,232,32                       ; shr           $0x20,%rax
22118  DB  102,77,15,126,195                   ; movq          %xmm8,%r11
22119  DB  68,137,219                          ; mov           %r11d,%ebx
22120  DB  73,193,235,32                       ; shr           $0x20,%r11
22121  DB  243,71,15,16,4,153                  ; movss         (%r9,%r11,4),%xmm8
22122  DB  243,65,15,16,12,129                 ; movss         (%r9,%rax,4),%xmm1
22123  DB  68,15,20,193                        ; unpcklps      %xmm1,%xmm8
22124  DB  243,65,15,16,12,153                 ; movss         (%r9,%rbx,4),%xmm1
22125  DB  243,71,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm9
22126  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
22127  DB  65,15,20,200                        ; unpcklps      %xmm8,%xmm1
22128  DB  72,173                              ; lods          %ds:(%rsi),%rax
22129  DB  91                                  ; pop           %rbx
22130  DB  255,224                             ; jmpq          *%rax
22131
22132PUBLIC _sk_table_b_sse2
22133_sk_table_b_sse2 LABEL PROC
22134  DB  83                                  ; push          %rbx
22135  DB  72,173                              ; lods          %ds:(%rsi),%rax
22136  DB  76,139,8                            ; mov           (%rax),%r9
22137  DB  139,64,8                            ; mov           0x8(%rax),%eax
22138  DB  255,200                             ; dec           %eax
22139  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
22140  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
22141  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
22142  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
22143  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
22144  DB  102,65,15,112,208,78                ; pshufd        $0x4e,%xmm8,%xmm2
22145  DB  102,72,15,126,208                   ; movq          %xmm2,%rax
22146  DB  65,137,194                          ; mov           %eax,%r10d
22147  DB  72,193,232,32                       ; shr           $0x20,%rax
22148  DB  102,77,15,126,195                   ; movq          %xmm8,%r11
22149  DB  68,137,219                          ; mov           %r11d,%ebx
22150  DB  73,193,235,32                       ; shr           $0x20,%r11
22151  DB  243,71,15,16,4,153                  ; movss         (%r9,%r11,4),%xmm8
22152  DB  243,65,15,16,20,129                 ; movss         (%r9,%rax,4),%xmm2
22153  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
22154  DB  243,65,15,16,20,153                 ; movss         (%r9,%rbx,4),%xmm2
22155  DB  243,71,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm9
22156  DB  65,15,20,209                        ; unpcklps      %xmm9,%xmm2
22157  DB  65,15,20,208                        ; unpcklps      %xmm8,%xmm2
22158  DB  72,173                              ; lods          %ds:(%rsi),%rax
22159  DB  91                                  ; pop           %rbx
22160  DB  255,224                             ; jmpq          *%rax
22161
22162PUBLIC _sk_table_a_sse2
22163_sk_table_a_sse2 LABEL PROC
22164  DB  83                                  ; push          %rbx
22165  DB  72,173                              ; lods          %ds:(%rsi),%rax
22166  DB  76,139,8                            ; mov           (%rax),%r9
22167  DB  139,64,8                            ; mov           0x8(%rax),%eax
22168  DB  255,200                             ; dec           %eax
22169  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
22170  DB  102,69,15,112,192,0                 ; pshufd        $0x0,%xmm8,%xmm8
22171  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
22172  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
22173  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
22174  DB  102,65,15,112,216,78                ; pshufd        $0x4e,%xmm8,%xmm3
22175  DB  102,72,15,126,216                   ; movq          %xmm3,%rax
22176  DB  65,137,194                          ; mov           %eax,%r10d
22177  DB  72,193,232,32                       ; shr           $0x20,%rax
22178  DB  102,77,15,126,195                   ; movq          %xmm8,%r11
22179  DB  68,137,219                          ; mov           %r11d,%ebx
22180  DB  73,193,235,32                       ; shr           $0x20,%r11
22181  DB  243,71,15,16,4,153                  ; movss         (%r9,%r11,4),%xmm8
22182  DB  243,65,15,16,28,129                 ; movss         (%r9,%rax,4),%xmm3
22183  DB  68,15,20,195                        ; unpcklps      %xmm3,%xmm8
22184  DB  243,65,15,16,28,153                 ; movss         (%r9,%rbx,4),%xmm3
22185  DB  243,71,15,16,12,145                 ; movss         (%r9,%r10,4),%xmm9
22186  DB  65,15,20,217                        ; unpcklps      %xmm9,%xmm3
22187  DB  65,15,20,216                        ; unpcklps      %xmm8,%xmm3
22188  DB  72,173                              ; lods          %ds:(%rsi),%rax
22189  DB  91                                  ; pop           %rbx
22190  DB  255,224                             ; jmpq          *%rax
22191
22192PUBLIC _sk_parametric_r_sse2
22193_sk_parametric_r_sse2 LABEL PROC
22194  DB  72,173                              ; lods          %ds:(%rsi),%rax
22195  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
22196  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22197  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
22198  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
22199  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
22200  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
22201  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
22202  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
22203  DB  65,15,194,193,2                     ; cmpleps       %xmm9,%xmm0
22204  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
22205  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22206  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
22207  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
22208  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
22209  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22210  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
22211  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
22212  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
22213  DB  68,15,89,13,185,47,0,0              ; mulps         0x2fb9(%rip),%xmm9        # 5cc0 <_sk_callback_sse2+0x697>
22214  DB  68,15,84,21,193,47,0,0              ; andps         0x2fc1(%rip),%xmm10        # 5cd0 <_sk_callback_sse2+0x6a7>
22215  DB  68,15,86,21,201,47,0,0              ; orps          0x2fc9(%rip),%xmm10        # 5ce0 <_sk_callback_sse2+0x6b7>
22216  DB  68,15,88,13,209,47,0,0              ; addps         0x2fd1(%rip),%xmm9        # 5cf0 <_sk_callback_sse2+0x6c7>
22217  DB  68,15,40,37,217,47,0,0              ; movaps        0x2fd9(%rip),%xmm12        # 5d00 <_sk_callback_sse2+0x6d7>
22218  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
22219  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22220  DB  68,15,88,21,217,47,0,0              ; addps         0x2fd9(%rip),%xmm10        # 5d10 <_sk_callback_sse2+0x6e7>
22221  DB  68,15,40,37,225,47,0,0              ; movaps        0x2fe1(%rip),%xmm12        # 5d20 <_sk_callback_sse2+0x6f7>
22222  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
22223  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22224  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
22225  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
22226  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
22227  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
22228  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
22229  DB  68,15,40,21,203,47,0,0              ; movaps        0x2fcb(%rip),%xmm10        # 5d30 <_sk_callback_sse2+0x707>
22230  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
22231  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
22232  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
22233  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
22234  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
22235  DB  68,15,88,13,191,47,0,0              ; addps         0x2fbf(%rip),%xmm9        # 5d40 <_sk_callback_sse2+0x717>
22236  DB  68,15,40,37,199,47,0,0              ; movaps        0x2fc7(%rip),%xmm12        # 5d50 <_sk_callback_sse2+0x727>
22237  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
22238  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22239  DB  68,15,40,37,199,47,0,0              ; movaps        0x2fc7(%rip),%xmm12        # 5d60 <_sk_callback_sse2+0x737>
22240  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
22241  DB  68,15,40,45,203,47,0,0              ; movaps        0x2fcb(%rip),%xmm13        # 5d70 <_sk_callback_sse2+0x747>
22242  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
22243  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
22244  DB  68,15,89,45,203,47,0,0              ; mulps         0x2fcb(%rip),%xmm13        # 5d80 <_sk_callback_sse2+0x757>
22245  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
22246  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
22247  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
22248  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
22249  DB  68,15,84,192                        ; andps         %xmm0,%xmm8
22250  DB  65,15,85,196                        ; andnps        %xmm12,%xmm0
22251  DB  65,15,86,192                        ; orps          %xmm8,%xmm0
22252  DB  65,15,95,195                        ; maxps         %xmm11,%xmm0
22253  DB  65,15,93,194                        ; minps         %xmm10,%xmm0
22254  DB  72,173                              ; lods          %ds:(%rsi),%rax
22255  DB  255,224                             ; jmpq          *%rax
22256
22257PUBLIC _sk_parametric_g_sse2
22258_sk_parametric_g_sse2 LABEL PROC
22259  DB  72,173                              ; lods          %ds:(%rsi),%rax
22260  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
22261  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22262  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
22263  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
22264  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
22265  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
22266  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
22267  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
22268  DB  65,15,194,201,2                     ; cmpleps       %xmm9,%xmm1
22269  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
22270  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22271  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
22272  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
22273  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
22274  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22275  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
22276  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
22277  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
22278  DB  68,15,89,13,75,47,0,0               ; mulps         0x2f4b(%rip),%xmm9        # 5d90 <_sk_callback_sse2+0x767>
22279  DB  68,15,84,21,83,47,0,0               ; andps         0x2f53(%rip),%xmm10        # 5da0 <_sk_callback_sse2+0x777>
22280  DB  68,15,86,21,91,47,0,0               ; orps          0x2f5b(%rip),%xmm10        # 5db0 <_sk_callback_sse2+0x787>
22281  DB  68,15,88,13,99,47,0,0               ; addps         0x2f63(%rip),%xmm9        # 5dc0 <_sk_callback_sse2+0x797>
22282  DB  68,15,40,37,107,47,0,0              ; movaps        0x2f6b(%rip),%xmm12        # 5dd0 <_sk_callback_sse2+0x7a7>
22283  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
22284  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22285  DB  68,15,88,21,107,47,0,0              ; addps         0x2f6b(%rip),%xmm10        # 5de0 <_sk_callback_sse2+0x7b7>
22286  DB  68,15,40,37,115,47,0,0              ; movaps        0x2f73(%rip),%xmm12        # 5df0 <_sk_callback_sse2+0x7c7>
22287  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
22288  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22289  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
22290  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
22291  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
22292  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
22293  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
22294  DB  68,15,40,21,93,47,0,0               ; movaps        0x2f5d(%rip),%xmm10        # 5e00 <_sk_callback_sse2+0x7d7>
22295  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
22296  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
22297  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
22298  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
22299  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
22300  DB  68,15,88,13,81,47,0,0               ; addps         0x2f51(%rip),%xmm9        # 5e10 <_sk_callback_sse2+0x7e7>
22301  DB  68,15,40,37,89,47,0,0               ; movaps        0x2f59(%rip),%xmm12        # 5e20 <_sk_callback_sse2+0x7f7>
22302  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
22303  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22304  DB  68,15,40,37,89,47,0,0               ; movaps        0x2f59(%rip),%xmm12        # 5e30 <_sk_callback_sse2+0x807>
22305  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
22306  DB  68,15,40,45,93,47,0,0               ; movaps        0x2f5d(%rip),%xmm13        # 5e40 <_sk_callback_sse2+0x817>
22307  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
22308  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
22309  DB  68,15,89,45,93,47,0,0               ; mulps         0x2f5d(%rip),%xmm13        # 5e50 <_sk_callback_sse2+0x827>
22310  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
22311  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
22312  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
22313  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
22314  DB  68,15,84,193                        ; andps         %xmm1,%xmm8
22315  DB  65,15,85,204                        ; andnps        %xmm12,%xmm1
22316  DB  65,15,86,200                        ; orps          %xmm8,%xmm1
22317  DB  65,15,95,203                        ; maxps         %xmm11,%xmm1
22318  DB  65,15,93,202                        ; minps         %xmm10,%xmm1
22319  DB  72,173                              ; lods          %ds:(%rsi),%rax
22320  DB  255,224                             ; jmpq          *%rax
22321
22322PUBLIC _sk_parametric_b_sse2
22323_sk_parametric_b_sse2 LABEL PROC
22324  DB  72,173                              ; lods          %ds:(%rsi),%rax
22325  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
22326  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22327  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
22328  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
22329  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
22330  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
22331  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
22332  DB  68,15,89,210                        ; mulps         %xmm2,%xmm10
22333  DB  65,15,194,209,2                     ; cmpleps       %xmm9,%xmm2
22334  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
22335  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22336  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
22337  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
22338  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
22339  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22340  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
22341  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
22342  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
22343  DB  68,15,89,13,221,46,0,0              ; mulps         0x2edd(%rip),%xmm9        # 5e60 <_sk_callback_sse2+0x837>
22344  DB  68,15,84,21,229,46,0,0              ; andps         0x2ee5(%rip),%xmm10        # 5e70 <_sk_callback_sse2+0x847>
22345  DB  68,15,86,21,237,46,0,0              ; orps          0x2eed(%rip),%xmm10        # 5e80 <_sk_callback_sse2+0x857>
22346  DB  68,15,88,13,245,46,0,0              ; addps         0x2ef5(%rip),%xmm9        # 5e90 <_sk_callback_sse2+0x867>
22347  DB  68,15,40,37,253,46,0,0              ; movaps        0x2efd(%rip),%xmm12        # 5ea0 <_sk_callback_sse2+0x877>
22348  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
22349  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22350  DB  68,15,88,21,253,46,0,0              ; addps         0x2efd(%rip),%xmm10        # 5eb0 <_sk_callback_sse2+0x887>
22351  DB  68,15,40,37,5,47,0,0                ; movaps        0x2f05(%rip),%xmm12        # 5ec0 <_sk_callback_sse2+0x897>
22352  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
22353  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22354  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
22355  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
22356  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
22357  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
22358  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
22359  DB  68,15,40,21,239,46,0,0              ; movaps        0x2eef(%rip),%xmm10        # 5ed0 <_sk_callback_sse2+0x8a7>
22360  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
22361  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
22362  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
22363  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
22364  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
22365  DB  68,15,88,13,227,46,0,0              ; addps         0x2ee3(%rip),%xmm9        # 5ee0 <_sk_callback_sse2+0x8b7>
22366  DB  68,15,40,37,235,46,0,0              ; movaps        0x2eeb(%rip),%xmm12        # 5ef0 <_sk_callback_sse2+0x8c7>
22367  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
22368  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22369  DB  68,15,40,37,235,46,0,0              ; movaps        0x2eeb(%rip),%xmm12        # 5f00 <_sk_callback_sse2+0x8d7>
22370  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
22371  DB  68,15,40,45,239,46,0,0              ; movaps        0x2eef(%rip),%xmm13        # 5f10 <_sk_callback_sse2+0x8e7>
22372  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
22373  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
22374  DB  68,15,89,45,239,46,0,0              ; mulps         0x2eef(%rip),%xmm13        # 5f20 <_sk_callback_sse2+0x8f7>
22375  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
22376  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
22377  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
22378  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
22379  DB  68,15,84,194                        ; andps         %xmm2,%xmm8
22380  DB  65,15,85,212                        ; andnps        %xmm12,%xmm2
22381  DB  65,15,86,208                        ; orps          %xmm8,%xmm2
22382  DB  65,15,95,211                        ; maxps         %xmm11,%xmm2
22383  DB  65,15,93,210                        ; minps         %xmm10,%xmm2
22384  DB  72,173                              ; lods          %ds:(%rsi),%rax
22385  DB  255,224                             ; jmpq          *%rax
22386
22387PUBLIC _sk_parametric_a_sse2
22388_sk_parametric_a_sse2 LABEL PROC
22389  DB  72,173                              ; lods          %ds:(%rsi),%rax
22390  DB  243,68,15,16,72,16                  ; movss         0x10(%rax),%xmm9
22391  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22392  DB  243,68,15,16,64,12                  ; movss         0xc(%rax),%xmm8
22393  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
22394  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
22395  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
22396  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
22397  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
22398  DB  65,15,194,217,2                     ; cmpleps       %xmm9,%xmm3
22399  DB  243,68,15,16,72,24                  ; movss         0x18(%rax),%xmm9
22400  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22401  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
22402  DB  243,68,15,16,24                     ; movss         (%rax),%xmm11
22403  DB  243,68,15,16,72,8                   ; movss         0x8(%rax),%xmm9
22404  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
22405  DB  69,15,88,209                        ; addps         %xmm9,%xmm10
22406  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
22407  DB  69,15,91,202                        ; cvtdq2ps      %xmm10,%xmm9
22408  DB  68,15,89,13,111,46,0,0              ; mulps         0x2e6f(%rip),%xmm9        # 5f30 <_sk_callback_sse2+0x907>
22409  DB  68,15,84,21,119,46,0,0              ; andps         0x2e77(%rip),%xmm10        # 5f40 <_sk_callback_sse2+0x917>
22410  DB  68,15,86,21,127,46,0,0              ; orps          0x2e7f(%rip),%xmm10        # 5f50 <_sk_callback_sse2+0x927>
22411  DB  68,15,88,13,135,46,0,0              ; addps         0x2e87(%rip),%xmm9        # 5f60 <_sk_callback_sse2+0x937>
22412  DB  68,15,40,37,143,46,0,0              ; movaps        0x2e8f(%rip),%xmm12        # 5f70 <_sk_callback_sse2+0x947>
22413  DB  69,15,89,226                        ; mulps         %xmm10,%xmm12
22414  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22415  DB  68,15,88,21,143,46,0,0              ; addps         0x2e8f(%rip),%xmm10        # 5f80 <_sk_callback_sse2+0x957>
22416  DB  68,15,40,37,151,46,0,0              ; movaps        0x2e97(%rip),%xmm12        # 5f90 <_sk_callback_sse2+0x967>
22417  DB  69,15,94,226                        ; divps         %xmm10,%xmm12
22418  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22419  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
22420  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
22421  DB  69,15,91,226                        ; cvtdq2ps      %xmm10,%xmm12
22422  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
22423  DB  69,15,194,236,1                     ; cmpltps       %xmm12,%xmm13
22424  DB  68,15,40,21,129,46,0,0              ; movaps        0x2e81(%rip),%xmm10        # 5fa0 <_sk_callback_sse2+0x977>
22425  DB  69,15,84,234                        ; andps         %xmm10,%xmm13
22426  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
22427  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
22428  DB  69,15,40,233                        ; movaps        %xmm9,%xmm13
22429  DB  69,15,92,236                        ; subps         %xmm12,%xmm13
22430  DB  68,15,88,13,117,46,0,0              ; addps         0x2e75(%rip),%xmm9        # 5fb0 <_sk_callback_sse2+0x987>
22431  DB  68,15,40,37,125,46,0,0              ; movaps        0x2e7d(%rip),%xmm12        # 5fc0 <_sk_callback_sse2+0x997>
22432  DB  69,15,89,229                        ; mulps         %xmm13,%xmm12
22433  DB  69,15,92,204                        ; subps         %xmm12,%xmm9
22434  DB  68,15,40,37,125,46,0,0              ; movaps        0x2e7d(%rip),%xmm12        # 5fd0 <_sk_callback_sse2+0x9a7>
22435  DB  69,15,92,229                        ; subps         %xmm13,%xmm12
22436  DB  68,15,40,45,129,46,0,0              ; movaps        0x2e81(%rip),%xmm13        # 5fe0 <_sk_callback_sse2+0x9b7>
22437  DB  69,15,94,236                        ; divps         %xmm12,%xmm13
22438  DB  69,15,88,233                        ; addps         %xmm9,%xmm13
22439  DB  68,15,89,45,129,46,0,0              ; mulps         0x2e81(%rip),%xmm13        # 5ff0 <_sk_callback_sse2+0x9c7>
22440  DB  102,69,15,91,205                    ; cvtps2dq      %xmm13,%xmm9
22441  DB  243,68,15,16,96,20                  ; movss         0x14(%rax),%xmm12
22442  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
22443  DB  69,15,88,225                        ; addps         %xmm9,%xmm12
22444  DB  68,15,84,195                        ; andps         %xmm3,%xmm8
22445  DB  65,15,85,220                        ; andnps        %xmm12,%xmm3
22446  DB  65,15,86,216                        ; orps          %xmm8,%xmm3
22447  DB  65,15,95,219                        ; maxps         %xmm11,%xmm3
22448  DB  65,15,93,218                        ; minps         %xmm10,%xmm3
22449  DB  72,173                              ; lods          %ds:(%rsi),%rax
22450  DB  255,224                             ; jmpq          *%rax
22451
22452PUBLIC _sk_lab_to_xyz_sse2
22453_sk_lab_to_xyz_sse2 LABEL PROC
22454  DB  15,89,5,94,46,0,0                   ; mulps         0x2e5e(%rip),%xmm0        # 6000 <_sk_callback_sse2+0x9d7>
22455  DB  68,15,40,5,102,46,0,0               ; movaps        0x2e66(%rip),%xmm8        # 6010 <_sk_callback_sse2+0x9e7>
22456  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
22457  DB  68,15,40,13,106,46,0,0              ; movaps        0x2e6a(%rip),%xmm9        # 6020 <_sk_callback_sse2+0x9f7>
22458  DB  65,15,88,201                        ; addps         %xmm9,%xmm1
22459  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
22460  DB  65,15,88,209                        ; addps         %xmm9,%xmm2
22461  DB  15,88,5,103,46,0,0                  ; addps         0x2e67(%rip),%xmm0        # 6030 <_sk_callback_sse2+0xa07>
22462  DB  15,89,5,112,46,0,0                  ; mulps         0x2e70(%rip),%xmm0        # 6040 <_sk_callback_sse2+0xa17>
22463  DB  15,89,13,121,46,0,0                 ; mulps         0x2e79(%rip),%xmm1        # 6050 <_sk_callback_sse2+0xa27>
22464  DB  15,88,200                           ; addps         %xmm0,%xmm1
22465  DB  15,89,21,127,46,0,0                 ; mulps         0x2e7f(%rip),%xmm2        # 6060 <_sk_callback_sse2+0xa37>
22466  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
22467  DB  68,15,92,202                        ; subps         %xmm2,%xmm9
22468  DB  68,15,40,225                        ; movaps        %xmm1,%xmm12
22469  DB  69,15,89,228                        ; mulps         %xmm12,%xmm12
22470  DB  68,15,89,225                        ; mulps         %xmm1,%xmm12
22471  DB  15,40,21,116,46,0,0                 ; movaps        0x2e74(%rip),%xmm2        # 6070 <_sk_callback_sse2+0xa47>
22472  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
22473  DB  69,15,194,196,1                     ; cmpltps       %xmm12,%xmm8
22474  DB  68,15,40,21,115,46,0,0              ; movaps        0x2e73(%rip),%xmm10        # 6080 <_sk_callback_sse2+0xa57>
22475  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
22476  DB  68,15,40,29,119,46,0,0              ; movaps        0x2e77(%rip),%xmm11        # 6090 <_sk_callback_sse2+0xa67>
22477  DB  65,15,89,203                        ; mulps         %xmm11,%xmm1
22478  DB  69,15,84,224                        ; andps         %xmm8,%xmm12
22479  DB  68,15,85,193                        ; andnps        %xmm1,%xmm8
22480  DB  69,15,86,196                        ; orps          %xmm12,%xmm8
22481  DB  68,15,40,224                        ; movaps        %xmm0,%xmm12
22482  DB  69,15,89,228                        ; mulps         %xmm12,%xmm12
22483  DB  68,15,89,224                        ; mulps         %xmm0,%xmm12
22484  DB  15,40,202                           ; movaps        %xmm2,%xmm1
22485  DB  65,15,194,204,1                     ; cmpltps       %xmm12,%xmm1
22486  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
22487  DB  65,15,89,195                        ; mulps         %xmm11,%xmm0
22488  DB  68,15,84,225                        ; andps         %xmm1,%xmm12
22489  DB  15,85,200                           ; andnps        %xmm0,%xmm1
22490  DB  65,15,86,204                        ; orps          %xmm12,%xmm1
22491  DB  65,15,40,193                        ; movaps        %xmm9,%xmm0
22492  DB  15,89,192                           ; mulps         %xmm0,%xmm0
22493  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
22494  DB  15,194,208,1                        ; cmpltps       %xmm0,%xmm2
22495  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
22496  DB  69,15,89,203                        ; mulps         %xmm11,%xmm9
22497  DB  15,84,194                           ; andps         %xmm2,%xmm0
22498  DB  65,15,85,209                        ; andnps        %xmm9,%xmm2
22499  DB  15,86,208                           ; orps          %xmm0,%xmm2
22500  DB  68,15,89,5,39,46,0,0                ; mulps         0x2e27(%rip),%xmm8        # 60a0 <_sk_callback_sse2+0xa77>
22501  DB  15,89,21,48,46,0,0                  ; mulps         0x2e30(%rip),%xmm2        # 60b0 <_sk_callback_sse2+0xa87>
22502  DB  72,173                              ; lods          %ds:(%rsi),%rax
22503  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
22504  DB  255,224                             ; jmpq          *%rax
22505
22506PUBLIC _sk_load_a8_sse2
22507_sk_load_a8_sse2 LABEL PROC
22508  DB  72,173                              ; lods          %ds:(%rsi),%rax
22509  DB  76,139,16                           ; mov           (%rax),%r10
22510  DB  77,133,192                          ; test          %r8,%r8
22511  DB  117,46                              ; jne           32c0 <_sk_load_a8_sse2+0x38>
22512  DB  102,65,15,110,4,18                  ; movd          (%r10,%rdx,1),%xmm0
22513  DB  102,15,96,192                       ; punpcklbw     %xmm0,%xmm0
22514  DB  102,15,97,192                       ; punpcklwd     %xmm0,%xmm0
22515  DB  102,15,219,5,24,46,0,0              ; pand          0x2e18(%rip),%xmm0        # 60c0 <_sk_callback_sse2+0xa97>
22516  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
22517  DB  15,89,29,30,46,0,0                  ; mulps         0x2e1e(%rip),%xmm3        # 60d0 <_sk_callback_sse2+0xaa7>
22518  DB  72,173                              ; lods          %ds:(%rsi),%rax
22519  DB  15,87,192                           ; xorps         %xmm0,%xmm0
22520  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
22521  DB  15,87,210                           ; xorps         %xmm2,%xmm2
22522  DB  255,224                             ; jmpq          *%rax
22523  DB  69,137,193                          ; mov           %r8d,%r9d
22524  DB  65,128,225,3                        ; and           $0x3,%r9b
22525  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22526  DB  116,54                              ; je            3303 <_sk_load_a8_sse2+0x7b>
22527  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
22528  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22529  DB  116,21                              ; je            32ec <_sk_load_a8_sse2+0x64>
22530  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22531  DB  117,195                             ; jne           32a0 <_sk_load_a8_sse2+0x18>
22532  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
22533  DB  102,15,110,192                      ; movd          %eax,%xmm0
22534  DB  102,15,112,192,69                   ; pshufd        $0x45,%xmm0,%xmm0
22535  DB  65,15,183,4,18                      ; movzwl        (%r10,%rdx,1),%eax
22536  DB  102,15,110,200                      ; movd          %eax,%xmm1
22537  DB  102,15,96,200                       ; punpcklbw     %xmm0,%xmm1
22538  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
22539  DB  242,15,16,193                       ; movsd         %xmm1,%xmm0
22540  DB  235,157                             ; jmp           32a0 <_sk_load_a8_sse2+0x18>
22541  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
22542  DB  102,15,110,192                      ; movd          %eax,%xmm0
22543  DB  235,146                             ; jmp           32a0 <_sk_load_a8_sse2+0x18>
22544
22545PUBLIC _sk_gather_a8_sse2
22546_sk_gather_a8_sse2 LABEL PROC
22547  DB  85                                  ; push          %rbp
22548  DB  83                                  ; push          %rbx
22549  DB  72,173                              ; lods          %ds:(%rsi),%rax
22550  DB  76,139,8                            ; mov           (%rax),%r9
22551  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22552  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22553  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22554  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22555  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22556  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22557  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22558  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22559  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22560  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22561  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22562  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
22563  DB  65,137,194                          ; mov           %eax,%r10d
22564  DB  72,193,232,32                       ; shr           $0x20,%rax
22565  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
22566  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
22567  DB  68,137,219                          ; mov           %r11d,%ebx
22568  DB  73,193,235,32                       ; shr           $0x20,%r11
22569  DB  65,15,182,44,25                     ; movzbl        (%r9,%rbx,1),%ebp
22570  DB  67,15,182,28,25                     ; movzbl        (%r9,%r11,1),%ebx
22571  DB  193,227,8                           ; shl           $0x8,%ebx
22572  DB  9,235                               ; or            %ebp,%ebx
22573  DB  67,15,182,44,17                     ; movzbl        (%r9,%r10,1),%ebp
22574  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
22575  DB  193,224,8                           ; shl           $0x8,%eax
22576  DB  9,232                               ; or            %ebp,%eax
22577  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
22578  DB  102,15,196,195,1                    ; pinsrw        $0x1,%ebx,%xmm0
22579  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
22580  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
22581  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
22582  DB  15,91,216                           ; cvtdq2ps      %xmm0,%xmm3
22583  DB  15,89,29,63,45,0,0                  ; mulps         0x2d3f(%rip),%xmm3        # 60e0 <_sk_callback_sse2+0xab7>
22584  DB  72,173                              ; lods          %ds:(%rsi),%rax
22585  DB  15,87,192                           ; xorps         %xmm0,%xmm0
22586  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
22587  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
22588  DB  91                                  ; pop           %rbx
22589  DB  93                                  ; pop           %rbp
22590  DB  255,224                             ; jmpq          *%rax
22591
22592PUBLIC _sk_store_a8_sse2
22593_sk_store_a8_sse2 LABEL PROC
22594  DB  72,131,236,40                       ; sub           $0x28,%rsp
22595  DB  72,173                              ; lods          %ds:(%rsi),%rax
22596  DB  76,139,16                           ; mov           (%rax),%r10
22597  DB  68,15,40,5,45,45,0,0                ; movaps        0x2d2d(%rip),%xmm8        # 60f0 <_sk_callback_sse2+0xac7>
22598  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
22599  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
22600  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
22601  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
22602  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
22603  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
22604  DB  77,133,192                          ; test          %r8,%r8
22605  DB  117,17                              ; jne           33f8 <_sk_store_a8_sse2+0x46>
22606  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
22607  DB  65,137,4,18                         ; mov           %eax,(%r10,%rdx,1)
22608  DB  72,173                              ; lods          %ds:(%rsi),%rax
22609  DB  72,131,196,40                       ; add           $0x28,%rsp
22610  DB  255,224                             ; jmpq          *%rax
22611  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
22612  DB  102,68,15,97,192                    ; punpcklwd     %xmm0,%xmm8
22613  DB  69,137,193                          ; mov           %r8d,%r9d
22614  DB  65,128,225,3                        ; and           $0x3,%r9b
22615  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22616  DB  116,59                              ; je            344a <_sk_store_a8_sse2+0x98>
22617  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22618  DB  116,22                              ; je            342b <_sk_store_a8_sse2+0x79>
22619  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22620  DB  117,213                             ; jne           33f0 <_sk_store_a8_sse2+0x3e>
22621  DB  102,68,15,127,68,36,16              ; movdqa        %xmm8,0x10(%rsp)
22622  DB  138,68,36,24                        ; mov           0x18(%rsp),%al
22623  DB  65,136,68,18,2                      ; mov           %al,0x2(%r10,%rdx,1)
22624  DB  102,68,15,219,5,204,44,0,0          ; pand          0x2ccc(%rip),%xmm8        # 6100 <_sk_callback_sse2+0xad7>
22625  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
22626  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
22627  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
22628  DB  102,65,137,4,18                     ; mov           %ax,(%r10,%rdx,1)
22629  DB  235,166                             ; jmp           33f0 <_sk_store_a8_sse2+0x3e>
22630  DB  102,68,15,127,4,36                  ; movdqa        %xmm8,(%rsp)
22631  DB  138,4,36                            ; mov           (%rsp),%al
22632  DB  65,136,4,18                         ; mov           %al,(%r10,%rdx,1)
22633  DB  235,151                             ; jmp           33f0 <_sk_store_a8_sse2+0x3e>
22634
22635PUBLIC _sk_load_g8_sse2
22636_sk_load_g8_sse2 LABEL PROC
22637  DB  72,173                              ; lods          %ds:(%rsi),%rax
22638  DB  76,139,16                           ; mov           (%rax),%r10
22639  DB  77,133,192                          ; test          %r8,%r8
22640  DB  117,49                              ; jne           3494 <_sk_load_g8_sse2+0x3b>
22641  DB  102,65,15,110,4,18                  ; movd          (%r10,%rdx,1),%xmm0
22642  DB  102,15,96,192                       ; punpcklbw     %xmm0,%xmm0
22643  DB  102,15,97,192                       ; punpcklwd     %xmm0,%xmm0
22644  DB  102,15,219,5,151,44,0,0             ; pand          0x2c97(%rip),%xmm0        # 6110 <_sk_callback_sse2+0xae7>
22645  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22646  DB  15,89,5,157,44,0,0                  ; mulps         0x2c9d(%rip),%xmm0        # 6120 <_sk_callback_sse2+0xaf7>
22647  DB  72,173                              ; lods          %ds:(%rsi),%rax
22648  DB  15,40,29,164,44,0,0                 ; movaps        0x2ca4(%rip),%xmm3        # 6130 <_sk_callback_sse2+0xb07>
22649  DB  15,40,200                           ; movaps        %xmm0,%xmm1
22650  DB  15,40,208                           ; movaps        %xmm0,%xmm2
22651  DB  255,224                             ; jmpq          *%rax
22652  DB  69,137,193                          ; mov           %r8d,%r9d
22653  DB  65,128,225,3                        ; and           $0x3,%r9b
22654  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22655  DB  116,54                              ; je            34d7 <_sk_load_g8_sse2+0x7e>
22656  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
22657  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22658  DB  116,21                              ; je            34c0 <_sk_load_g8_sse2+0x67>
22659  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22660  DB  117,192                             ; jne           3471 <_sk_load_g8_sse2+0x18>
22661  DB  65,15,182,68,18,2                   ; movzbl        0x2(%r10,%rdx,1),%eax
22662  DB  102,15,110,192                      ; movd          %eax,%xmm0
22663  DB  102,15,112,192,69                   ; pshufd        $0x45,%xmm0,%xmm0
22664  DB  65,15,183,4,18                      ; movzwl        (%r10,%rdx,1),%eax
22665  DB  102,15,110,200                      ; movd          %eax,%xmm1
22666  DB  102,15,96,200                       ; punpcklbw     %xmm0,%xmm1
22667  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
22668  DB  242,15,16,193                       ; movsd         %xmm1,%xmm0
22669  DB  235,154                             ; jmp           3471 <_sk_load_g8_sse2+0x18>
22670  DB  65,15,182,4,18                      ; movzbl        (%r10,%rdx,1),%eax
22671  DB  102,15,110,192                      ; movd          %eax,%xmm0
22672  DB  235,143                             ; jmp           3471 <_sk_load_g8_sse2+0x18>
22673
22674PUBLIC _sk_gather_g8_sse2
22675_sk_gather_g8_sse2 LABEL PROC
22676  DB  85                                  ; push          %rbp
22677  DB  83                                  ; push          %rbx
22678  DB  72,173                              ; lods          %ds:(%rsi),%rax
22679  DB  76,139,8                            ; mov           (%rax),%r9
22680  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22681  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22682  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22683  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22684  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22685  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22686  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22687  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22688  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22689  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22690  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22691  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
22692  DB  65,137,194                          ; mov           %eax,%r10d
22693  DB  72,193,232,32                       ; shr           $0x20,%rax
22694  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
22695  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
22696  DB  68,137,219                          ; mov           %r11d,%ebx
22697  DB  73,193,235,32                       ; shr           $0x20,%r11
22698  DB  65,15,182,44,25                     ; movzbl        (%r9,%rbx,1),%ebp
22699  DB  67,15,182,28,25                     ; movzbl        (%r9,%r11,1),%ebx
22700  DB  193,227,8                           ; shl           $0x8,%ebx
22701  DB  9,235                               ; or            %ebp,%ebx
22702  DB  67,15,182,44,17                     ; movzbl        (%r9,%r10,1),%ebp
22703  DB  65,15,182,4,1                       ; movzbl        (%r9,%rax,1),%eax
22704  DB  193,224,8                           ; shl           $0x8,%eax
22705  DB  9,232                               ; or            %ebp,%eax
22706  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
22707  DB  102,15,196,195,1                    ; pinsrw        $0x1,%ebx,%xmm0
22708  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
22709  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
22710  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
22711  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22712  DB  15,89,5,203,43,0,0                  ; mulps         0x2bcb(%rip),%xmm0        # 6140 <_sk_callback_sse2+0xb17>
22713  DB  72,173                              ; lods          %ds:(%rsi),%rax
22714  DB  15,40,29,210,43,0,0                 ; movaps        0x2bd2(%rip),%xmm3        # 6150 <_sk_callback_sse2+0xb27>
22715  DB  15,40,200                           ; movaps        %xmm0,%xmm1
22716  DB  15,40,208                           ; movaps        %xmm0,%xmm2
22717  DB  91                                  ; pop           %rbx
22718  DB  93                                  ; pop           %rbp
22719  DB  255,224                             ; jmpq          *%rax
22720
22721PUBLIC _sk_gather_i8_sse2
22722_sk_gather_i8_sse2 LABEL PROC
22723  DB  72,173                              ; lods          %ds:(%rsi),%rax
22724  DB  73,137,193                          ; mov           %rax,%r9
22725  DB  77,133,201                          ; test          %r9,%r9
22726  DB  116,5                               ; je            3597 <_sk_gather_i8_sse2+0xf>
22727  DB  76,137,200                          ; mov           %r9,%rax
22728  DB  235,2                               ; jmp           3599 <_sk_gather_i8_sse2+0x11>
22729  DB  72,173                              ; lods          %ds:(%rsi),%rax
22730  DB  85                                  ; push          %rbp
22731  DB  65,86                               ; push          %r14
22732  DB  83                                  ; push          %rbx
22733  DB  76,139,16                           ; mov           (%rax),%r10
22734  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22735  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22736  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22737  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22738  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22739  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22740  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22741  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22742  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22743  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22744  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22745  DB  102,72,15,126,192                   ; movq          %xmm0,%rax
22746  DB  65,137,195                          ; mov           %eax,%r11d
22747  DB  72,193,232,32                       ; shr           $0x20,%rax
22748  DB  102,15,112,192,78                   ; pshufd        $0x4e,%xmm0,%xmm0
22749  DB  102,72,15,126,195                   ; movq          %xmm0,%rbx
22750  DB  65,137,222                          ; mov           %ebx,%r14d
22751  DB  72,193,235,32                       ; shr           $0x20,%rbx
22752  DB  67,15,182,44,50                     ; movzbl        (%r10,%r14,1),%ebp
22753  DB  65,15,182,28,26                     ; movzbl        (%r10,%rbx,1),%ebx
22754  DB  193,227,8                           ; shl           $0x8,%ebx
22755  DB  9,235                               ; or            %ebp,%ebx
22756  DB  67,15,182,44,26                     ; movzbl        (%r10,%r11,1),%ebp
22757  DB  65,15,182,4,2                       ; movzbl        (%r10,%rax,1),%eax
22758  DB  193,224,8                           ; shl           $0x8,%eax
22759  DB  9,232                               ; or            %ebp,%eax
22760  DB  102,15,196,192,0                    ; pinsrw        $0x0,%eax,%xmm0
22761  DB  102,15,196,195,1                    ; pinsrw        $0x1,%ebx,%xmm0
22762  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
22763  DB  102,15,96,193                       ; punpcklbw     %xmm1,%xmm0
22764  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
22765  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
22766  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
22767  DB  68,15,182,208                       ; movzbl        %al,%r10d
22768  DB  72,193,232,32                       ; shr           $0x20,%rax
22769  DB  102,72,15,126,195                   ; movq          %xmm0,%rbx
22770  DB  73,139,105,8                        ; mov           0x8(%r9),%rbp
22771  DB  68,15,182,203                       ; movzbl        %bl,%r9d
22772  DB  72,193,235,30                       ; shr           $0x1e,%rbx
22773  DB  102,15,110,68,29,0                  ; movd          0x0(%rbp,%rbx,1),%xmm0
22774  DB  102,15,110,76,133,0                 ; movd          0x0(%rbp,%rax,4),%xmm1
22775  DB  102,15,98,193                       ; punpckldq     %xmm1,%xmm0
22776  DB  102,70,15,110,76,141,0              ; movd          0x0(%rbp,%r9,4),%xmm9
22777  DB  102,66,15,110,76,149,0              ; movd          0x0(%rbp,%r10,4),%xmm1
22778  DB  102,68,15,98,201                    ; punpckldq     %xmm1,%xmm9
22779  DB  102,68,15,98,200                    ; punpckldq     %xmm0,%xmm9
22780  DB  102,15,111,21,235,42,0,0            ; movdqa        0x2aeb(%rip),%xmm2        # 6160 <_sk_callback_sse2+0xb37>
22781  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
22782  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
22783  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22784  DB  68,15,40,5,231,42,0,0               ; movaps        0x2ae7(%rip),%xmm8        # 6170 <_sk_callback_sse2+0xb47>
22785  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
22786  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
22787  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
22788  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
22789  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22790  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
22791  DB  102,65,15,111,217                   ; movdqa        %xmm9,%xmm3
22792  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
22793  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
22794  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
22795  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
22796  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
22797  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
22798  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
22799  DB  72,173                              ; lods          %ds:(%rsi),%rax
22800  DB  91                                  ; pop           %rbx
22801  DB  65,94                               ; pop           %r14
22802  DB  93                                  ; pop           %rbp
22803  DB  255,224                             ; jmpq          *%rax
22804
22805PUBLIC _sk_load_565_sse2
22806_sk_load_565_sse2 LABEL PROC
22807  DB  72,173                              ; lods          %ds:(%rsi),%rax
22808  DB  76,139,16                           ; mov           (%rax),%r10
22809  DB  77,133,192                          ; test          %r8,%r8
22810  DB  117,83                              ; jne           372a <_sk_load_565_sse2+0x5d>
22811  DB  243,65,15,126,20,82                 ; movq          (%r10,%rdx,2),%xmm2
22812  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
22813  DB  102,15,111,5,151,42,0,0             ; movdqa        0x2a97(%rip),%xmm0        # 6180 <_sk_callback_sse2+0xb57>
22814  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
22815  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22816  DB  15,89,5,153,42,0,0                  ; mulps         0x2a99(%rip),%xmm0        # 6190 <_sk_callback_sse2+0xb67>
22817  DB  102,15,111,13,161,42,0,0            ; movdqa        0x2aa1(%rip),%xmm1        # 61a0 <_sk_callback_sse2+0xb77>
22818  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
22819  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22820  DB  15,89,13,163,42,0,0                 ; mulps         0x2aa3(%rip),%xmm1        # 61b0 <_sk_callback_sse2+0xb87>
22821  DB  102,15,219,21,171,42,0,0            ; pand          0x2aab(%rip),%xmm2        # 61c0 <_sk_callback_sse2+0xb97>
22822  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
22823  DB  15,89,21,177,42,0,0                 ; mulps         0x2ab1(%rip),%xmm2        # 61d0 <_sk_callback_sse2+0xba7>
22824  DB  72,173                              ; lods          %ds:(%rsi),%rax
22825  DB  15,40,29,184,42,0,0                 ; movaps        0x2ab8(%rip),%xmm3        # 61e0 <_sk_callback_sse2+0xbb7>
22826  DB  255,224                             ; jmpq          *%rax
22827  DB  69,137,193                          ; mov           %r8d,%r9d
22828  DB  65,128,225,3                        ; and           $0x3,%r9b
22829  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22830  DB  116,50                              ; je            3769 <_sk_load_565_sse2+0x9c>
22831  DB  102,15,239,210                      ; pxor          %xmm2,%xmm2
22832  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22833  DB  116,21                              ; je            3756 <_sk_load_565_sse2+0x89>
22834  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22835  DB  117,154                             ; jne           36e1 <_sk_load_565_sse2+0x14>
22836  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
22837  DB  102,15,110,192                      ; movd          %eax,%xmm0
22838  DB  102,15,112,208,69                   ; pshufd        $0x45,%xmm0,%xmm2
22839  DB  102,65,15,110,4,82                  ; movd          (%r10,%rdx,2),%xmm0
22840  DB  102,15,97,192                       ; punpcklwd     %xmm0,%xmm0
22841  DB  242,15,16,208                       ; movsd         %xmm0,%xmm2
22842  DB  233,120,255,255,255                 ; jmpq          36e1 <_sk_load_565_sse2+0x14>
22843  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
22844  DB  102,15,110,208                      ; movd          %eax,%xmm2
22845  DB  233,106,255,255,255                 ; jmpq          36e1 <_sk_load_565_sse2+0x14>
22846
22847PUBLIC _sk_gather_565_sse2
22848_sk_gather_565_sse2 LABEL PROC
22849  DB  83                                  ; push          %rbx
22850  DB  72,173                              ; lods          %ds:(%rsi),%rax
22851  DB  76,139,8                            ; mov           (%rax),%r9
22852  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22853  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22854  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22855  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22856  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22857  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22858  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22859  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22860  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22861  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22862  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22863  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
22864  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
22865  DB  65,137,194                          ; mov           %eax,%r10d
22866  DB  72,193,232,32                       ; shr           $0x20,%rax
22867  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
22868  DB  68,137,219                          ; mov           %r11d,%ebx
22869  DB  73,193,235,32                       ; shr           $0x20,%r11
22870  DB  102,65,15,196,20,89,0               ; pinsrw        $0x0,(%r9,%rbx,2),%xmm2
22871  DB  102,67,15,196,20,89,1               ; pinsrw        $0x1,(%r9,%r11,2),%xmm2
22872  DB  67,15,183,28,81                     ; movzwl        (%r9,%r10,2),%ebx
22873  DB  102,15,196,211,2                    ; pinsrw        $0x2,%ebx,%xmm2
22874  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
22875  DB  102,15,196,208,3                    ; pinsrw        $0x3,%eax,%xmm2
22876  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
22877  DB  102,15,97,208                       ; punpcklwd     %xmm0,%xmm2
22878  DB  102,15,111,5,243,41,0,0             ; movdqa        0x29f3(%rip),%xmm0        # 61f0 <_sk_callback_sse2+0xbc7>
22879  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
22880  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22881  DB  15,89,5,245,41,0,0                  ; mulps         0x29f5(%rip),%xmm0        # 6200 <_sk_callback_sse2+0xbd7>
22882  DB  102,15,111,13,253,41,0,0            ; movdqa        0x29fd(%rip),%xmm1        # 6210 <_sk_callback_sse2+0xbe7>
22883  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
22884  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22885  DB  15,89,13,255,41,0,0                 ; mulps         0x29ff(%rip),%xmm1        # 6220 <_sk_callback_sse2+0xbf7>
22886  DB  102,15,219,21,7,42,0,0              ; pand          0x2a07(%rip),%xmm2        # 6230 <_sk_callback_sse2+0xc07>
22887  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
22888  DB  15,89,21,13,42,0,0                  ; mulps         0x2a0d(%rip),%xmm2        # 6240 <_sk_callback_sse2+0xc17>
22889  DB  72,173                              ; lods          %ds:(%rsi),%rax
22890  DB  15,40,29,20,42,0,0                  ; movaps        0x2a14(%rip),%xmm3        # 6250 <_sk_callback_sse2+0xc27>
22891  DB  91                                  ; pop           %rbx
22892  DB  255,224                             ; jmpq          *%rax
22893
22894PUBLIC _sk_store_565_sse2
22895_sk_store_565_sse2 LABEL PROC
22896  DB  72,173                              ; lods          %ds:(%rsi),%rax
22897  DB  76,139,16                           ; mov           (%rax),%r10
22898  DB  68,15,40,5,20,42,0,0                ; movaps        0x2a14(%rip),%xmm8        # 6260 <_sk_callback_sse2+0xc37>
22899  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
22900  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
22901  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
22902  DB  102,65,15,114,241,11                ; pslld         $0xb,%xmm9
22903  DB  68,15,40,21,9,42,0,0                ; movaps        0x2a09(%rip),%xmm10        # 6270 <_sk_callback_sse2+0xc47>
22904  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
22905  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
22906  DB  102,65,15,114,242,5                 ; pslld         $0x5,%xmm10
22907  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
22908  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
22909  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
22910  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
22911  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
22912  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
22913  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
22914  DB  77,133,192                          ; test          %r8,%r8
22915  DB  117,10                              ; jne           38a9 <_sk_store_565_sse2+0x6a>
22916  DB  242,69,15,17,4,82                   ; movsd         %xmm8,(%r10,%rdx,2)
22917  DB  72,173                              ; lods          %ds:(%rsi),%rax
22918  DB  255,224                             ; jmpq          *%rax
22919  DB  102,68,15,97,192                    ; punpcklwd     %xmm0,%xmm8
22920  DB  69,137,193                          ; mov           %r8d,%r9d
22921  DB  65,128,225,3                        ; and           $0x3,%r9b
22922  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22923  DB  116,38                              ; je            38e1 <_sk_store_565_sse2+0xa2>
22924  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22925  DB  116,18                              ; je            38d3 <_sk_store_565_sse2+0x94>
22926  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22927  DB  117,222                             ; jne           38a5 <_sk_store_565_sse2+0x66>
22928  DB  102,65,15,197,192,4                 ; pextrw        $0x4,%xmm8,%eax
22929  DB  102,65,137,68,82,4                  ; mov           %ax,0x4(%r10,%rdx,2)
22930  DB  242,69,15,112,192,232               ; pshuflw       $0xe8,%xmm8,%xmm8
22931  DB  102,69,15,126,4,82                  ; movd          %xmm8,(%r10,%rdx,2)
22932  DB  235,196                             ; jmp           38a5 <_sk_store_565_sse2+0x66>
22933  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
22934  DB  102,65,137,4,82                     ; mov           %ax,(%r10,%rdx,2)
22935  DB  235,184                             ; jmp           38a5 <_sk_store_565_sse2+0x66>
22936
22937PUBLIC _sk_load_4444_sse2
22938_sk_load_4444_sse2 LABEL PROC
22939  DB  72,173                              ; lods          %ds:(%rsi),%rax
22940  DB  76,139,16                           ; mov           (%rax),%r10
22941  DB  77,133,192                          ; test          %r8,%r8
22942  DB  117,98                              ; jne           3959 <_sk_load_4444_sse2+0x6c>
22943  DB  243,65,15,126,28,82                 ; movq          (%r10,%rdx,2),%xmm3
22944  DB  102,15,97,216                       ; punpcklwd     %xmm0,%xmm3
22945  DB  102,15,111,5,119,41,0,0             ; movdqa        0x2977(%rip),%xmm0        # 6280 <_sk_callback_sse2+0xc57>
22946  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
22947  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
22948  DB  15,89,5,121,41,0,0                  ; mulps         0x2979(%rip),%xmm0        # 6290 <_sk_callback_sse2+0xc67>
22949  DB  102,15,111,13,129,41,0,0            ; movdqa        0x2981(%rip),%xmm1        # 62a0 <_sk_callback_sse2+0xc77>
22950  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
22951  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
22952  DB  15,89,13,131,41,0,0                 ; mulps         0x2983(%rip),%xmm1        # 62b0 <_sk_callback_sse2+0xc87>
22953  DB  102,15,111,21,139,41,0,0            ; movdqa        0x298b(%rip),%xmm2        # 62c0 <_sk_callback_sse2+0xc97>
22954  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
22955  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
22956  DB  15,89,21,141,41,0,0                 ; mulps         0x298d(%rip),%xmm2        # 62d0 <_sk_callback_sse2+0xca7>
22957  DB  102,15,219,29,149,41,0,0            ; pand          0x2995(%rip),%xmm3        # 62e0 <_sk_callback_sse2+0xcb7>
22958  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
22959  DB  15,89,29,155,41,0,0                 ; mulps         0x299b(%rip),%xmm3        # 62f0 <_sk_callback_sse2+0xcc7>
22960  DB  72,173                              ; lods          %ds:(%rsi),%rax
22961  DB  255,224                             ; jmpq          *%rax
22962  DB  69,137,193                          ; mov           %r8d,%r9d
22963  DB  65,128,225,3                        ; and           $0x3,%r9b
22964  DB  65,128,249,1                        ; cmp           $0x1,%r9b
22965  DB  116,50                              ; je            3998 <_sk_load_4444_sse2+0xab>
22966  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
22967  DB  65,128,249,2                        ; cmp           $0x2,%r9b
22968  DB  116,21                              ; je            3985 <_sk_load_4444_sse2+0x98>
22969  DB  65,128,249,3                        ; cmp           $0x3,%r9b
22970  DB  117,139                             ; jne           3901 <_sk_load_4444_sse2+0x14>
22971  DB  65,15,183,68,82,4                   ; movzwl        0x4(%r10,%rdx,2),%eax
22972  DB  102,15,110,192                      ; movd          %eax,%xmm0
22973  DB  102,15,112,216,69                   ; pshufd        $0x45,%xmm0,%xmm3
22974  DB  102,65,15,110,4,82                  ; movd          (%r10,%rdx,2),%xmm0
22975  DB  102,15,97,192                       ; punpcklwd     %xmm0,%xmm0
22976  DB  242,15,16,216                       ; movsd         %xmm0,%xmm3
22977  DB  233,105,255,255,255                 ; jmpq          3901 <_sk_load_4444_sse2+0x14>
22978  DB  65,15,183,4,82                      ; movzwl        (%r10,%rdx,2),%eax
22979  DB  102,15,110,216                      ; movd          %eax,%xmm3
22980  DB  233,91,255,255,255                  ; jmpq          3901 <_sk_load_4444_sse2+0x14>
22981
22982PUBLIC _sk_gather_4444_sse2
22983_sk_gather_4444_sse2 LABEL PROC
22984  DB  83                                  ; push          %rbx
22985  DB  72,173                              ; lods          %ds:(%rsi),%rax
22986  DB  76,139,8                            ; mov           (%rax),%r9
22987  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
22988  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
22989  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
22990  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
22991  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
22992  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
22993  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
22994  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
22995  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
22996  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
22997  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
22998  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
22999  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
23000  DB  65,137,194                          ; mov           %eax,%r10d
23001  DB  72,193,232,32                       ; shr           $0x20,%rax
23002  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
23003  DB  68,137,219                          ; mov           %r11d,%ebx
23004  DB  73,193,235,32                       ; shr           $0x20,%r11
23005  DB  102,65,15,196,28,89,0               ; pinsrw        $0x0,(%r9,%rbx,2),%xmm3
23006  DB  102,67,15,196,28,89,1               ; pinsrw        $0x1,(%r9,%r11,2),%xmm3
23007  DB  67,15,183,28,81                     ; movzwl        (%r9,%r10,2),%ebx
23008  DB  102,15,196,219,2                    ; pinsrw        $0x2,%ebx,%xmm3
23009  DB  65,15,183,4,65                      ; movzwl        (%r9,%rax,2),%eax
23010  DB  102,15,196,216,3                    ; pinsrw        $0x3,%eax,%xmm3
23011  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
23012  DB  102,15,97,216                       ; punpcklwd     %xmm0,%xmm3
23013  DB  102,15,111,5,212,40,0,0             ; movdqa        0x28d4(%rip),%xmm0        # 6300 <_sk_callback_sse2+0xcd7>
23014  DB  102,15,219,195                      ; pand          %xmm3,%xmm0
23015  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
23016  DB  15,89,5,214,40,0,0                  ; mulps         0x28d6(%rip),%xmm0        # 6310 <_sk_callback_sse2+0xce7>
23017  DB  102,15,111,13,222,40,0,0            ; movdqa        0x28de(%rip),%xmm1        # 6320 <_sk_callback_sse2+0xcf7>
23018  DB  102,15,219,203                      ; pand          %xmm3,%xmm1
23019  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
23020  DB  15,89,13,224,40,0,0                 ; mulps         0x28e0(%rip),%xmm1        # 6330 <_sk_callback_sse2+0xd07>
23021  DB  102,15,111,21,232,40,0,0            ; movdqa        0x28e8(%rip),%xmm2        # 6340 <_sk_callback_sse2+0xd17>
23022  DB  102,15,219,211                      ; pand          %xmm3,%xmm2
23023  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
23024  DB  15,89,21,234,40,0,0                 ; mulps         0x28ea(%rip),%xmm2        # 6350 <_sk_callback_sse2+0xd27>
23025  DB  102,15,219,29,242,40,0,0            ; pand          0x28f2(%rip),%xmm3        # 6360 <_sk_callback_sse2+0xd37>
23026  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
23027  DB  15,89,29,248,40,0,0                 ; mulps         0x28f8(%rip),%xmm3        # 6370 <_sk_callback_sse2+0xd47>
23028  DB  72,173                              ; lods          %ds:(%rsi),%rax
23029  DB  91                                  ; pop           %rbx
23030  DB  255,224                             ; jmpq          *%rax
23031
23032PUBLIC _sk_store_4444_sse2
23033_sk_store_4444_sse2 LABEL PROC
23034  DB  72,173                              ; lods          %ds:(%rsi),%rax
23035  DB  76,139,16                           ; mov           (%rax),%r10
23036  DB  68,15,40,5,246,40,0,0               ; movaps        0x28f6(%rip),%xmm8        # 6380 <_sk_callback_sse2+0xd57>
23037  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
23038  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
23039  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
23040  DB  102,65,15,114,241,12                ; pslld         $0xc,%xmm9
23041  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
23042  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
23043  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
23044  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
23045  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
23046  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
23047  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
23048  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
23049  DB  102,65,15,114,241,4                 ; pslld         $0x4,%xmm9
23050  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
23051  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
23052  DB  102,69,15,86,193                    ; orpd          %xmm9,%xmm8
23053  DB  102,69,15,86,194                    ; orpd          %xmm10,%xmm8
23054  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
23055  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
23056  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
23057  DB  77,133,192                          ; test          %r8,%r8
23058  DB  117,10                              ; jne           3afb <_sk_store_4444_sse2+0x7e>
23059  DB  242,69,15,17,4,82                   ; movsd         %xmm8,(%r10,%rdx,2)
23060  DB  72,173                              ; lods          %ds:(%rsi),%rax
23061  DB  255,224                             ; jmpq          *%rax
23062  DB  102,68,15,97,192                    ; punpcklwd     %xmm0,%xmm8
23063  DB  69,137,193                          ; mov           %r8d,%r9d
23064  DB  65,128,225,3                        ; and           $0x3,%r9b
23065  DB  65,128,249,1                        ; cmp           $0x1,%r9b
23066  DB  116,38                              ; je            3b33 <_sk_store_4444_sse2+0xb6>
23067  DB  65,128,249,2                        ; cmp           $0x2,%r9b
23068  DB  116,18                              ; je            3b25 <_sk_store_4444_sse2+0xa8>
23069  DB  65,128,249,3                        ; cmp           $0x3,%r9b
23070  DB  117,222                             ; jne           3af7 <_sk_store_4444_sse2+0x7a>
23071  DB  102,65,15,197,192,4                 ; pextrw        $0x4,%xmm8,%eax
23072  DB  102,65,137,68,82,4                  ; mov           %ax,0x4(%r10,%rdx,2)
23073  DB  242,69,15,112,192,232               ; pshuflw       $0xe8,%xmm8,%xmm8
23074  DB  102,69,15,126,4,82                  ; movd          %xmm8,(%r10,%rdx,2)
23075  DB  235,196                             ; jmp           3af7 <_sk_store_4444_sse2+0x7a>
23076  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
23077  DB  102,65,137,4,82                     ; mov           %ax,(%r10,%rdx,2)
23078  DB  235,184                             ; jmp           3af7 <_sk_store_4444_sse2+0x7a>
23079
23080PUBLIC _sk_load_8888_sse2
23081_sk_load_8888_sse2 LABEL PROC
23082  DB  72,173                              ; lods          %ds:(%rsi),%rax
23083  DB  72,139,0                            ; mov           (%rax),%rax
23084  DB  77,133,192                          ; test          %r8,%r8
23085  DB  117,98                              ; jne           3bab <_sk_load_8888_sse2+0x6c>
23086  DB  243,68,15,111,12,144                ; movdqu        (%rax,%rdx,4),%xmm9
23087  DB  102,15,111,21,57,40,0,0             ; movdqa        0x2839(%rip),%xmm2        # 6390 <_sk_callback_sse2+0xd67>
23088  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
23089  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
23090  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
23091  DB  68,15,40,5,53,40,0,0                ; movaps        0x2835(%rip),%xmm8        # 63a0 <_sk_callback_sse2+0xd77>
23092  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
23093  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
23094  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
23095  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
23096  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
23097  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
23098  DB  102,65,15,111,217                   ; movdqa        %xmm9,%xmm3
23099  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
23100  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
23101  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
23102  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
23103  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
23104  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
23105  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
23106  DB  72,173                              ; lods          %ds:(%rsi),%rax
23107  DB  255,224                             ; jmpq          *%rax
23108  DB  69,137,193                          ; mov           %r8d,%r9d
23109  DB  65,128,225,3                        ; and           $0x3,%r9b
23110  DB  65,128,249,1                        ; cmp           $0x1,%r9b
23111  DB  116,40                              ; je            3be0 <_sk_load_8888_sse2+0xa1>
23112  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
23113  DB  65,128,249,2                        ; cmp           $0x2,%r9b
23114  DB  116,18                              ; je            3bd5 <_sk_load_8888_sse2+0x96>
23115  DB  65,128,249,3                        ; cmp           $0x3,%r9b
23116  DB  117,134                             ; jne           3b4f <_sk_load_8888_sse2+0x10>
23117  DB  102,15,110,68,144,8                 ; movd          0x8(%rax,%rdx,4),%xmm0
23118  DB  102,68,15,112,200,69                ; pshufd        $0x45,%xmm0,%xmm9
23119  DB  102,68,15,18,12,144                 ; movlpd        (%rax,%rdx,4),%xmm9
23120  DB  233,111,255,255,255                 ; jmpq          3b4f <_sk_load_8888_sse2+0x10>
23121  DB  102,68,15,110,12,144                ; movd          (%rax,%rdx,4),%xmm9
23122  DB  233,100,255,255,255                 ; jmpq          3b4f <_sk_load_8888_sse2+0x10>
23123
23124PUBLIC _sk_gather_8888_sse2
23125_sk_gather_8888_sse2 LABEL PROC
23126  DB  83                                  ; push          %rbx
23127  DB  72,173                              ; lods          %ds:(%rsi),%rax
23128  DB  76,139,8                            ; mov           (%rax),%r9
23129  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
23130  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
23131  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
23132  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
23133  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
23134  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
23135  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
23136  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
23137  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
23138  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
23139  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
23140  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
23141  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
23142  DB  65,137,194                          ; mov           %eax,%r10d
23143  DB  72,193,232,32                       ; shr           $0x20,%rax
23144  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
23145  DB  68,137,219                          ; mov           %r11d,%ebx
23146  DB  73,193,235,32                       ; shr           $0x20,%r11
23147  DB  102,67,15,110,4,153                 ; movd          (%r9,%r11,4),%xmm0
23148  DB  102,65,15,110,12,129                ; movd          (%r9,%rax,4),%xmm1
23149  DB  102,15,98,193                       ; punpckldq     %xmm1,%xmm0
23150  DB  102,69,15,110,12,153                ; movd          (%r9,%rbx,4),%xmm9
23151  DB  102,67,15,110,12,145                ; movd          (%r9,%r10,4),%xmm1
23152  DB  102,68,15,98,201                    ; punpckldq     %xmm1,%xmm9
23153  DB  102,68,15,98,200                    ; punpckldq     %xmm0,%xmm9
23154  DB  102,15,111,21,67,39,0,0             ; movdqa        0x2743(%rip),%xmm2        # 63b0 <_sk_callback_sse2+0xd87>
23155  DB  102,65,15,111,193                   ; movdqa        %xmm9,%xmm0
23156  DB  102,15,219,194                      ; pand          %xmm2,%xmm0
23157  DB  15,91,192                           ; cvtdq2ps      %xmm0,%xmm0
23158  DB  68,15,40,5,63,39,0,0                ; movaps        0x273f(%rip),%xmm8        # 63c0 <_sk_callback_sse2+0xd97>
23159  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
23160  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
23161  DB  102,15,114,209,8                    ; psrld         $0x8,%xmm1
23162  DB  102,15,219,202                      ; pand          %xmm2,%xmm1
23163  DB  15,91,201                           ; cvtdq2ps      %xmm1,%xmm1
23164  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
23165  DB  102,65,15,111,217                   ; movdqa        %xmm9,%xmm3
23166  DB  102,15,114,211,16                   ; psrld         $0x10,%xmm3
23167  DB  102,15,219,218                      ; pand          %xmm2,%xmm3
23168  DB  15,91,211                           ; cvtdq2ps      %xmm3,%xmm2
23169  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
23170  DB  102,65,15,114,209,24                ; psrld         $0x18,%xmm9
23171  DB  65,15,91,217                        ; cvtdq2ps      %xmm9,%xmm3
23172  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
23173  DB  72,173                              ; lods          %ds:(%rsi),%rax
23174  DB  91                                  ; pop           %rbx
23175  DB  255,224                             ; jmpq          *%rax
23176
23177PUBLIC _sk_store_8888_sse2
23178_sk_store_8888_sse2 LABEL PROC
23179  DB  72,173                              ; lods          %ds:(%rsi),%rax
23180  DB  72,139,0                            ; mov           (%rax),%rax
23181  DB  68,15,40,5,1,39,0,0                 ; movaps        0x2701(%rip),%xmm8        # 63d0 <_sk_callback_sse2+0xda7>
23182  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
23183  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
23184  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
23185  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
23186  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
23187  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
23188  DB  102,65,15,114,242,8                 ; pslld         $0x8,%xmm10
23189  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
23190  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
23191  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
23192  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
23193  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
23194  DB  68,15,89,195                        ; mulps         %xmm3,%xmm8
23195  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
23196  DB  102,65,15,114,240,24                ; pslld         $0x18,%xmm8
23197  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
23198  DB  102,69,15,235,194                   ; por           %xmm10,%xmm8
23199  DB  77,133,192                          ; test          %r8,%r8
23200  DB  117,10                              ; jne           3d2f <_sk_store_8888_sse2+0x6d>
23201  DB  243,68,15,127,4,144                 ; movdqu        %xmm8,(%rax,%rdx,4)
23202  DB  72,173                              ; lods          %ds:(%rsi),%rax
23203  DB  255,224                             ; jmpq          *%rax
23204  DB  69,137,193                          ; mov           %r8d,%r9d
23205  DB  65,128,225,3                        ; and           $0x3,%r9b
23206  DB  65,128,249,1                        ; cmp           $0x1,%r9b
23207  DB  116,33                              ; je            3d5d <_sk_store_8888_sse2+0x9b>
23208  DB  65,128,249,2                        ; cmp           $0x2,%r9b
23209  DB  116,19                              ; je            3d55 <_sk_store_8888_sse2+0x93>
23210  DB  65,128,249,3                        ; cmp           $0x3,%r9b
23211  DB  117,227                             ; jne           3d2b <_sk_store_8888_sse2+0x69>
23212  DB  102,69,15,112,200,78                ; pshufd        $0x4e,%xmm8,%xmm9
23213  DB  102,68,15,126,76,144,8              ; movd          %xmm9,0x8(%rax,%rdx,4)
23214  DB  102,68,15,214,4,144                 ; movq          %xmm8,(%rax,%rdx,4)
23215  DB  235,206                             ; jmp           3d2b <_sk_store_8888_sse2+0x69>
23216  DB  102,68,15,126,4,144                 ; movd          %xmm8,(%rax,%rdx,4)
23217  DB  235,198                             ; jmp           3d2b <_sk_store_8888_sse2+0x69>
23218
23219PUBLIC _sk_load_f16_sse2
23220_sk_load_f16_sse2 LABEL PROC
23221  DB  72,173                              ; lods          %ds:(%rsi),%rax
23222  DB  72,139,0                            ; mov           (%rax),%rax
23223  DB  77,133,192                          ; test          %r8,%r8
23224  DB  15,133,96,1,0,0                     ; jne           3ed3 <_sk_load_f16_sse2+0x16e>
23225  DB  102,15,16,4,208                     ; movupd        (%rax,%rdx,8),%xmm0
23226  DB  102,15,16,76,208,16                 ; movupd        0x10(%rax,%rdx,8),%xmm1
23227  DB  102,68,15,40,192                    ; movapd        %xmm0,%xmm8
23228  DB  102,68,15,97,193                    ; punpcklwd     %xmm1,%xmm8
23229  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
23230  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
23231  DB  102,68,15,97,240                    ; punpcklwd     %xmm0,%xmm14
23232  DB  102,68,15,105,192                   ; punpckhwd     %xmm0,%xmm8
23233  DB  102,69,15,239,210                   ; pxor          %xmm10,%xmm10
23234  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
23235  DB  102,65,15,97,202                    ; punpcklwd     %xmm10,%xmm1
23236  DB  102,68,15,111,13,45,38,0,0          ; movdqa        0x262d(%rip),%xmm9        # 63e0 <_sk_callback_sse2+0xdb7>
23237  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
23238  DB  102,65,15,219,193                   ; pand          %xmm9,%xmm0
23239  DB  102,15,239,200                      ; pxor          %xmm0,%xmm1
23240  DB  102,15,114,240,16                   ; pslld         $0x10,%xmm0
23241  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
23242  DB  102,65,15,114,245,13                ; pslld         $0xd,%xmm13
23243  DB  102,68,15,235,232                   ; por           %xmm0,%xmm13
23244  DB  102,68,15,111,29,18,38,0,0          ; movdqa        0x2612(%rip),%xmm11        # 63f0 <_sk_callback_sse2+0xdc7>
23245  DB  102,69,15,254,235                   ; paddd         %xmm11,%xmm13
23246  DB  102,68,15,111,37,20,38,0,0          ; movdqa        0x2614(%rip),%xmm12        # 6400 <_sk_callback_sse2+0xdd7>
23247  DB  102,65,15,239,204                   ; pxor          %xmm12,%xmm1
23248  DB  102,15,111,29,23,38,0,0             ; movdqa        0x2617(%rip),%xmm3        # 6410 <_sk_callback_sse2+0xde7>
23249  DB  102,15,111,195                      ; movdqa        %xmm3,%xmm0
23250  DB  102,15,102,193                      ; pcmpgtd       %xmm1,%xmm0
23251  DB  102,65,15,223,197                   ; pandn         %xmm13,%xmm0
23252  DB  102,65,15,115,222,8                 ; psrldq        $0x8,%xmm14
23253  DB  102,69,15,97,242                    ; punpcklwd     %xmm10,%xmm14
23254  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
23255  DB  102,65,15,219,201                   ; pand          %xmm9,%xmm1
23256  DB  102,68,15,239,241                   ; pxor          %xmm1,%xmm14
23257  DB  102,15,114,241,16                   ; pslld         $0x10,%xmm1
23258  DB  102,65,15,111,214                   ; movdqa        %xmm14,%xmm2
23259  DB  102,15,114,242,13                   ; pslld         $0xd,%xmm2
23260  DB  102,15,235,209                      ; por           %xmm1,%xmm2
23261  DB  102,65,15,254,211                   ; paddd         %xmm11,%xmm2
23262  DB  102,69,15,239,244                   ; pxor          %xmm12,%xmm14
23263  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
23264  DB  102,65,15,102,206                   ; pcmpgtd       %xmm14,%xmm1
23265  DB  102,15,223,202                      ; pandn         %xmm2,%xmm1
23266  DB  102,69,15,111,232                   ; movdqa        %xmm8,%xmm13
23267  DB  102,69,15,97,234                    ; punpcklwd     %xmm10,%xmm13
23268  DB  102,65,15,111,213                   ; movdqa        %xmm13,%xmm2
23269  DB  102,65,15,219,209                   ; pand          %xmm9,%xmm2
23270  DB  102,68,15,239,234                   ; pxor          %xmm2,%xmm13
23271  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
23272  DB  102,69,15,111,245                   ; movdqa        %xmm13,%xmm14
23273  DB  102,65,15,114,246,13                ; pslld         $0xd,%xmm14
23274  DB  102,68,15,235,242                   ; por           %xmm2,%xmm14
23275  DB  102,69,15,254,243                   ; paddd         %xmm11,%xmm14
23276  DB  102,69,15,239,236                   ; pxor          %xmm12,%xmm13
23277  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
23278  DB  102,65,15,102,213                   ; pcmpgtd       %xmm13,%xmm2
23279  DB  102,65,15,223,214                   ; pandn         %xmm14,%xmm2
23280  DB  102,65,15,115,216,8                 ; psrldq        $0x8,%xmm8
23281  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
23282  DB  102,69,15,219,200                   ; pand          %xmm8,%xmm9
23283  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
23284  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
23285  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
23286  DB  102,65,15,114,242,13                ; pslld         $0xd,%xmm10
23287  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
23288  DB  102,69,15,254,211                   ; paddd         %xmm11,%xmm10
23289  DB  102,69,15,239,196                   ; pxor          %xmm12,%xmm8
23290  DB  102,65,15,102,216                   ; pcmpgtd       %xmm8,%xmm3
23291  DB  102,65,15,223,218                   ; pandn         %xmm10,%xmm3
23292  DB  72,173                              ; lods          %ds:(%rsi),%rax
23293  DB  255,224                             ; jmpq          *%rax
23294  DB  242,15,16,4,208                     ; movsd         (%rax,%rdx,8),%xmm0
23295  DB  73,131,248,1                        ; cmp           $0x1,%r8
23296  DB  117,17                              ; jne           3eef <_sk_load_f16_sse2+0x18a>
23297  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
23298  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
23299  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
23300  DB  233,143,254,255,255                 ; jmpq          3d7e <_sk_load_f16_sse2+0x19>
23301  DB  102,15,22,68,208,8                  ; movhpd        0x8(%rax,%rdx,8),%xmm0
23302  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
23303  DB  73,131,248,3                        ; cmp           $0x3,%r8
23304  DB  15,130,123,254,255,255              ; jb            3d7e <_sk_load_f16_sse2+0x19>
23305  DB  242,15,16,76,208,16                 ; movsd         0x10(%rax,%rdx,8),%xmm1
23306  DB  233,112,254,255,255                 ; jmpq          3d7e <_sk_load_f16_sse2+0x19>
23307
23308PUBLIC _sk_gather_f16_sse2
23309_sk_gather_f16_sse2 LABEL PROC
23310  DB  83                                  ; push          %rbx
23311  DB  72,173                              ; lods          %ds:(%rsi),%rax
23312  DB  76,139,8                            ; mov           (%rax),%r9
23313  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
23314  DB  102,15,110,80,16                    ; movd          0x10(%rax),%xmm2
23315  DB  102,15,112,210,0                    ; pshufd        $0x0,%xmm2,%xmm2
23316  DB  102,15,112,217,245                  ; pshufd        $0xf5,%xmm1,%xmm3
23317  DB  102,15,244,218                      ; pmuludq       %xmm2,%xmm3
23318  DB  102,15,112,219,232                  ; pshufd        $0xe8,%xmm3,%xmm3
23319  DB  102,15,244,209                      ; pmuludq       %xmm1,%xmm2
23320  DB  102,15,112,202,232                  ; pshufd        $0xe8,%xmm2,%xmm1
23321  DB  102,15,98,203                       ; punpckldq     %xmm3,%xmm1
23322  DB  243,15,91,192                       ; cvttps2dq     %xmm0,%xmm0
23323  DB  102,15,254,193                      ; paddd         %xmm1,%xmm0
23324  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
23325  DB  102,72,15,126,200                   ; movq          %xmm1,%rax
23326  DB  65,137,194                          ; mov           %eax,%r10d
23327  DB  72,193,232,32                       ; shr           $0x20,%rax
23328  DB  102,73,15,126,195                   ; movq          %xmm0,%r11
23329  DB  68,137,219                          ; mov           %r11d,%ebx
23330  DB  73,193,235,32                       ; shr           $0x20,%r11
23331  DB  243,67,15,126,4,217                 ; movq          (%r9,%r11,8),%xmm0
23332  DB  243,65,15,126,12,217                ; movq          (%r9,%rbx,8),%xmm1
23333  DB  102,15,108,200                      ; punpcklqdq    %xmm0,%xmm1
23334  DB  243,65,15,126,4,193                 ; movq          (%r9,%rax,8),%xmm0
23335  DB  243,67,15,126,20,209                ; movq          (%r9,%r10,8),%xmm2
23336  DB  102,15,108,208                      ; punpcklqdq    %xmm0,%xmm2
23337  DB  102,68,15,111,193                   ; movdqa        %xmm1,%xmm8
23338  DB  102,68,15,97,194                    ; punpcklwd     %xmm2,%xmm8
23339  DB  102,15,105,202                      ; punpckhwd     %xmm2,%xmm1
23340  DB  102,69,15,111,240                   ; movdqa        %xmm8,%xmm14
23341  DB  102,68,15,97,241                    ; punpcklwd     %xmm1,%xmm14
23342  DB  102,68,15,105,193                   ; punpckhwd     %xmm1,%xmm8
23343  DB  102,69,15,239,210                   ; pxor          %xmm10,%xmm10
23344  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
23345  DB  102,65,15,97,202                    ; punpcklwd     %xmm10,%xmm1
23346  DB  102,68,15,111,13,105,36,0,0         ; movdqa        0x2469(%rip),%xmm9        # 6420 <_sk_callback_sse2+0xdf7>
23347  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
23348  DB  102,65,15,219,193                   ; pand          %xmm9,%xmm0
23349  DB  102,15,239,200                      ; pxor          %xmm0,%xmm1
23350  DB  102,15,114,240,16                   ; pslld         $0x10,%xmm0
23351  DB  102,68,15,111,233                   ; movdqa        %xmm1,%xmm13
23352  DB  102,65,15,114,245,13                ; pslld         $0xd,%xmm13
23353  DB  102,68,15,235,232                   ; por           %xmm0,%xmm13
23354  DB  102,68,15,111,29,78,36,0,0          ; movdqa        0x244e(%rip),%xmm11        # 6430 <_sk_callback_sse2+0xe07>
23355  DB  102,69,15,254,235                   ; paddd         %xmm11,%xmm13
23356  DB  102,68,15,111,37,80,36,0,0          ; movdqa        0x2450(%rip),%xmm12        # 6440 <_sk_callback_sse2+0xe17>
23357  DB  102,65,15,239,204                   ; pxor          %xmm12,%xmm1
23358  DB  102,15,111,29,83,36,0,0             ; movdqa        0x2453(%rip),%xmm3        # 6450 <_sk_callback_sse2+0xe27>
23359  DB  102,15,111,195                      ; movdqa        %xmm3,%xmm0
23360  DB  102,15,102,193                      ; pcmpgtd       %xmm1,%xmm0
23361  DB  102,65,15,223,197                   ; pandn         %xmm13,%xmm0
23362  DB  102,65,15,115,222,8                 ; psrldq        $0x8,%xmm14
23363  DB  102,69,15,97,242                    ; punpcklwd     %xmm10,%xmm14
23364  DB  102,65,15,111,206                   ; movdqa        %xmm14,%xmm1
23365  DB  102,65,15,219,201                   ; pand          %xmm9,%xmm1
23366  DB  102,68,15,239,241                   ; pxor          %xmm1,%xmm14
23367  DB  102,15,114,241,16                   ; pslld         $0x10,%xmm1
23368  DB  102,65,15,111,214                   ; movdqa        %xmm14,%xmm2
23369  DB  102,15,114,242,13                   ; pslld         $0xd,%xmm2
23370  DB  102,15,235,209                      ; por           %xmm1,%xmm2
23371  DB  102,65,15,254,211                   ; paddd         %xmm11,%xmm2
23372  DB  102,69,15,239,244                   ; pxor          %xmm12,%xmm14
23373  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
23374  DB  102,65,15,102,206                   ; pcmpgtd       %xmm14,%xmm1
23375  DB  102,15,223,202                      ; pandn         %xmm2,%xmm1
23376  DB  102,69,15,111,232                   ; movdqa        %xmm8,%xmm13
23377  DB  102,69,15,97,234                    ; punpcklwd     %xmm10,%xmm13
23378  DB  102,65,15,111,213                   ; movdqa        %xmm13,%xmm2
23379  DB  102,65,15,219,209                   ; pand          %xmm9,%xmm2
23380  DB  102,68,15,239,234                   ; pxor          %xmm2,%xmm13
23381  DB  102,15,114,242,16                   ; pslld         $0x10,%xmm2
23382  DB  102,69,15,111,245                   ; movdqa        %xmm13,%xmm14
23383  DB  102,65,15,114,246,13                ; pslld         $0xd,%xmm14
23384  DB  102,68,15,235,242                   ; por           %xmm2,%xmm14
23385  DB  102,69,15,254,243                   ; paddd         %xmm11,%xmm14
23386  DB  102,69,15,239,236                   ; pxor          %xmm12,%xmm13
23387  DB  102,15,111,211                      ; movdqa        %xmm3,%xmm2
23388  DB  102,65,15,102,213                   ; pcmpgtd       %xmm13,%xmm2
23389  DB  102,65,15,223,214                   ; pandn         %xmm14,%xmm2
23390  DB  102,65,15,115,216,8                 ; psrldq        $0x8,%xmm8
23391  DB  102,69,15,97,194                    ; punpcklwd     %xmm10,%xmm8
23392  DB  102,69,15,219,200                   ; pand          %xmm8,%xmm9
23393  DB  102,69,15,239,193                   ; pxor          %xmm9,%xmm8
23394  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
23395  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
23396  DB  102,65,15,114,242,13                ; pslld         $0xd,%xmm10
23397  DB  102,69,15,235,209                   ; por           %xmm9,%xmm10
23398  DB  102,69,15,254,211                   ; paddd         %xmm11,%xmm10
23399  DB  102,69,15,239,196                   ; pxor          %xmm12,%xmm8
23400  DB  102,65,15,102,216                   ; pcmpgtd       %xmm8,%xmm3
23401  DB  102,65,15,223,218                   ; pandn         %xmm10,%xmm3
23402  DB  72,173                              ; lods          %ds:(%rsi),%rax
23403  DB  91                                  ; pop           %rbx
23404  DB  255,224                             ; jmpq          *%rax
23405
23406PUBLIC _sk_store_f16_sse2
23407_sk_store_f16_sse2 LABEL PROC
23408  DB  72,173                              ; lods          %ds:(%rsi),%rax
23409  DB  72,139,0                            ; mov           (%rax),%rax
23410  DB  102,68,15,111,21,122,35,0,0         ; movdqa        0x237a(%rip),%xmm10        # 6460 <_sk_callback_sse2+0xe37>
23411  DB  102,68,15,111,224                   ; movdqa        %xmm0,%xmm12
23412  DB  102,69,15,219,226                   ; pand          %xmm10,%xmm12
23413  DB  102,68,15,111,232                   ; movdqa        %xmm0,%xmm13
23414  DB  102,69,15,239,236                   ; pxor          %xmm12,%xmm13
23415  DB  102,68,15,111,13,109,35,0,0         ; movdqa        0x236d(%rip),%xmm9        # 6470 <_sk_callback_sse2+0xe47>
23416  DB  102,65,15,114,212,16                ; psrld         $0x10,%xmm12
23417  DB  102,69,15,111,193                   ; movdqa        %xmm9,%xmm8
23418  DB  102,69,15,102,197                   ; pcmpgtd       %xmm13,%xmm8
23419  DB  102,65,15,114,213,13                ; psrld         $0xd,%xmm13
23420  DB  102,68,15,111,29,94,35,0,0          ; movdqa        0x235e(%rip),%xmm11        # 6480 <_sk_callback_sse2+0xe57>
23421  DB  102,69,15,235,227                   ; por           %xmm11,%xmm12
23422  DB  102,69,15,254,229                   ; paddd         %xmm13,%xmm12
23423  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
23424  DB  102,65,15,114,228,16                ; psrad         $0x10,%xmm12
23425  DB  102,69,15,223,196                   ; pandn         %xmm12,%xmm8
23426  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
23427  DB  102,68,15,111,225                   ; movdqa        %xmm1,%xmm12
23428  DB  102,69,15,219,226                   ; pand          %xmm10,%xmm12
23429  DB  102,68,15,111,241                   ; movdqa        %xmm1,%xmm14
23430  DB  102,69,15,239,244                   ; pxor          %xmm12,%xmm14
23431  DB  102,65,15,114,212,16                ; psrld         $0x10,%xmm12
23432  DB  102,69,15,111,233                   ; movdqa        %xmm9,%xmm13
23433  DB  102,69,15,102,238                   ; pcmpgtd       %xmm14,%xmm13
23434  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
23435  DB  102,69,15,235,227                   ; por           %xmm11,%xmm12
23436  DB  102,69,15,254,230                   ; paddd         %xmm14,%xmm12
23437  DB  102,65,15,114,244,16                ; pslld         $0x10,%xmm12
23438  DB  102,65,15,114,228,16                ; psrad         $0x10,%xmm12
23439  DB  102,69,15,223,236                   ; pandn         %xmm12,%xmm13
23440  DB  102,69,15,107,237                   ; packssdw      %xmm13,%xmm13
23441  DB  102,68,15,111,242                   ; movdqa        %xmm2,%xmm14
23442  DB  102,69,15,219,242                   ; pand          %xmm10,%xmm14
23443  DB  102,68,15,111,250                   ; movdqa        %xmm2,%xmm15
23444  DB  102,69,15,239,254                   ; pxor          %xmm14,%xmm15
23445  DB  102,65,15,114,214,16                ; psrld         $0x10,%xmm14
23446  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
23447  DB  102,69,15,102,231                   ; pcmpgtd       %xmm15,%xmm12
23448  DB  102,65,15,114,215,13                ; psrld         $0xd,%xmm15
23449  DB  102,69,15,235,243                   ; por           %xmm11,%xmm14
23450  DB  102,69,15,254,247                   ; paddd         %xmm15,%xmm14
23451  DB  102,65,15,114,246,16                ; pslld         $0x10,%xmm14
23452  DB  102,65,15,114,230,16                ; psrad         $0x10,%xmm14
23453  DB  102,69,15,223,230                   ; pandn         %xmm14,%xmm12
23454  DB  102,69,15,107,228                   ; packssdw      %xmm12,%xmm12
23455  DB  102,68,15,219,211                   ; pand          %xmm3,%xmm10
23456  DB  102,68,15,111,243                   ; movdqa        %xmm3,%xmm14
23457  DB  102,69,15,239,242                   ; pxor          %xmm10,%xmm14
23458  DB  102,65,15,114,210,16                ; psrld         $0x10,%xmm10
23459  DB  102,69,15,102,206                   ; pcmpgtd       %xmm14,%xmm9
23460  DB  102,65,15,114,214,13                ; psrld         $0xd,%xmm14
23461  DB  102,69,15,235,211                   ; por           %xmm11,%xmm10
23462  DB  102,69,15,254,214                   ; paddd         %xmm14,%xmm10
23463  DB  102,65,15,114,242,16                ; pslld         $0x10,%xmm10
23464  DB  102,65,15,114,226,16                ; psrad         $0x10,%xmm10
23465  DB  102,69,15,223,202                   ; pandn         %xmm10,%xmm9
23466  DB  102,69,15,107,201                   ; packssdw      %xmm9,%xmm9
23467  DB  102,69,15,97,197                    ; punpcklwd     %xmm13,%xmm8
23468  DB  102,69,15,97,225                    ; punpcklwd     %xmm9,%xmm12
23469  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
23470  DB  102,69,15,98,204                    ; punpckldq     %xmm12,%xmm9
23471  DB  77,133,192                          ; test          %r8,%r8
23472  DB  117,21                              ; jne           4244 <_sk_store_f16_sse2+0x16c>
23473  DB  68,15,17,12,208                     ; movups        %xmm9,(%rax,%rdx,8)
23474  DB  102,69,15,106,196                   ; punpckhdq     %xmm12,%xmm8
23475  DB  243,68,15,127,68,208,16             ; movdqu        %xmm8,0x10(%rax,%rdx,8)
23476  DB  72,173                              ; lods          %ds:(%rsi),%rax
23477  DB  255,224                             ; jmpq          *%rax
23478  DB  102,68,15,214,12,208                ; movq          %xmm9,(%rax,%rdx,8)
23479  DB  73,131,248,1                        ; cmp           $0x1,%r8
23480  DB  116,240                             ; je            4240 <_sk_store_f16_sse2+0x168>
23481  DB  102,68,15,23,76,208,8               ; movhpd        %xmm9,0x8(%rax,%rdx,8)
23482  DB  73,131,248,3                        ; cmp           $0x3,%r8
23483  DB  114,227                             ; jb            4240 <_sk_store_f16_sse2+0x168>
23484  DB  102,69,15,106,196                   ; punpckhdq     %xmm12,%xmm8
23485  DB  102,68,15,214,68,208,16             ; movq          %xmm8,0x10(%rax,%rdx,8)
23486  DB  235,213                             ; jmp           4240 <_sk_store_f16_sse2+0x168>
23487
23488PUBLIC _sk_load_u16_be_sse2
23489_sk_load_u16_be_sse2 LABEL PROC
23490  DB  72,173                              ; lods          %ds:(%rsi),%rax
23491  DB  76,139,8                            ; mov           (%rax),%r9
23492  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
23493  DB  77,133,192                          ; test          %r8,%r8
23494  DB  15,133,190,0,0,0                    ; jne           433f <_sk_load_u16_be_sse2+0xd4>
23495  DB  102,65,15,16,4,65                   ; movupd        (%r9,%rax,2),%xmm0
23496  DB  102,65,15,16,76,65,16               ; movupd        0x10(%r9,%rax,2),%xmm1
23497  DB  102,15,40,208                       ; movapd        %xmm0,%xmm2
23498  DB  102,15,97,209                       ; punpcklwd     %xmm1,%xmm2
23499  DB  102,15,105,193                      ; punpckhwd     %xmm1,%xmm0
23500  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
23501  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
23502  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
23503  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
23504  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
23505  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
23506  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
23507  DB  102,15,235,200                      ; por           %xmm0,%xmm1
23508  DB  102,69,15,239,201                   ; pxor          %xmm9,%xmm9
23509  DB  102,65,15,97,201                    ; punpcklwd     %xmm9,%xmm1
23510  DB  15,91,193                           ; cvtdq2ps      %xmm1,%xmm0
23511  DB  68,15,40,5,190,33,0,0               ; movaps        0x21be(%rip),%xmm8        # 6490 <_sk_callback_sse2+0xe67>
23512  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
23513  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
23514  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
23515  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
23516  DB  102,15,235,217                      ; por           %xmm1,%xmm3
23517  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
23518  DB  15,91,203                           ; cvtdq2ps      %xmm3,%xmm1
23519  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
23520  DB  102,68,15,111,210                   ; movdqa        %xmm2,%xmm10
23521  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
23522  DB  102,15,112,218,78                   ; pshufd        $0x4e,%xmm2,%xmm3
23523  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
23524  DB  102,65,15,235,210                   ; por           %xmm10,%xmm2
23525  DB  102,65,15,97,209                    ; punpcklwd     %xmm9,%xmm2
23526  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
23527  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
23528  DB  102,68,15,111,211                   ; movdqa        %xmm3,%xmm10
23529  DB  102,65,15,113,242,8                 ; psllw         $0x8,%xmm10
23530  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
23531  DB  102,65,15,235,218                   ; por           %xmm10,%xmm3
23532  DB  102,65,15,97,217                    ; punpcklwd     %xmm9,%xmm3
23533  DB  15,91,219                           ; cvtdq2ps      %xmm3,%xmm3
23534  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
23535  DB  72,173                              ; lods          %ds:(%rsi),%rax
23536  DB  255,224                             ; jmpq          *%rax
23537  DB  242,65,15,16,4,65                   ; movsd         (%r9,%rax,2),%xmm0
23538  DB  73,131,248,1                        ; cmp           $0x1,%r8
23539  DB  117,17                              ; jne           435c <_sk_load_u16_be_sse2+0xf1>
23540  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
23541  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
23542  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
23543  DB  233,50,255,255,255                  ; jmpq          428e <_sk_load_u16_be_sse2+0x23>
23544  DB  102,65,15,22,68,65,8                ; movhpd        0x8(%r9,%rax,2),%xmm0
23545  DB  102,15,87,201                       ; xorpd         %xmm1,%xmm1
23546  DB  73,131,248,3                        ; cmp           $0x3,%r8
23547  DB  15,130,29,255,255,255               ; jb            428e <_sk_load_u16_be_sse2+0x23>
23548  DB  242,65,15,16,76,65,16               ; movsd         0x10(%r9,%rax,2),%xmm1
23549  DB  233,17,255,255,255                  ; jmpq          428e <_sk_load_u16_be_sse2+0x23>
23550
23551PUBLIC _sk_load_rgb_u16_be_sse2
23552_sk_load_rgb_u16_be_sse2 LABEL PROC
23553  DB  72,173                              ; lods          %ds:(%rsi),%rax
23554  DB  76,139,8                            ; mov           (%rax),%r9
23555  DB  72,141,4,82                         ; lea           (%rdx,%rdx,2),%rax
23556  DB  77,133,192                          ; test          %r8,%r8
23557  DB  15,133,175,0,0,0                    ; jne           443e <_sk_load_rgb_u16_be_sse2+0xc1>
23558  DB  243,65,15,111,20,65                 ; movdqu        (%r9,%rax,2),%xmm2
23559  DB  243,65,15,111,92,65,8               ; movdqu        0x8(%r9,%rax,2),%xmm3
23560  DB  102,15,115,219,4                    ; psrldq        $0x4,%xmm3
23561  DB  102,15,111,194                      ; movdqa        %xmm2,%xmm0
23562  DB  102,15,115,216,6                    ; psrldq        $0x6,%xmm0
23563  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
23564  DB  102,15,115,217,6                    ; psrldq        $0x6,%xmm1
23565  DB  102,15,97,211                       ; punpcklwd     %xmm3,%xmm2
23566  DB  102,15,97,193                       ; punpcklwd     %xmm1,%xmm0
23567  DB  102,15,111,202                      ; movdqa        %xmm2,%xmm1
23568  DB  102,15,97,200                       ; punpcklwd     %xmm0,%xmm1
23569  DB  102,15,112,217,78                   ; pshufd        $0x4e,%xmm1,%xmm3
23570  DB  102,15,105,208                      ; punpckhwd     %xmm0,%xmm2
23571  DB  102,15,111,193                      ; movdqa        %xmm1,%xmm0
23572  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
23573  DB  102,15,113,209,8                    ; psrlw         $0x8,%xmm1
23574  DB  102,15,235,200                      ; por           %xmm0,%xmm1
23575  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
23576  DB  102,65,15,97,200                    ; punpcklwd     %xmm8,%xmm1
23577  DB  15,91,193                           ; cvtdq2ps      %xmm1,%xmm0
23578  DB  68,15,40,13,173,32,0,0              ; movaps        0x20ad(%rip),%xmm9        # 64a0 <_sk_callback_sse2+0xe77>
23579  DB  65,15,89,193                        ; mulps         %xmm9,%xmm0
23580  DB  102,15,111,203                      ; movdqa        %xmm3,%xmm1
23581  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
23582  DB  102,15,113,211,8                    ; psrlw         $0x8,%xmm3
23583  DB  102,15,235,217                      ; por           %xmm1,%xmm3
23584  DB  102,65,15,97,216                    ; punpcklwd     %xmm8,%xmm3
23585  DB  15,91,203                           ; cvtdq2ps      %xmm3,%xmm1
23586  DB  65,15,89,201                        ; mulps         %xmm9,%xmm1
23587  DB  102,15,111,218                      ; movdqa        %xmm2,%xmm3
23588  DB  102,15,113,243,8                    ; psllw         $0x8,%xmm3
23589  DB  102,15,113,210,8                    ; psrlw         $0x8,%xmm2
23590  DB  102,15,235,211                      ; por           %xmm3,%xmm2
23591  DB  102,65,15,97,208                    ; punpcklwd     %xmm8,%xmm2
23592  DB  15,91,210                           ; cvtdq2ps      %xmm2,%xmm2
23593  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
23594  DB  72,173                              ; lods          %ds:(%rsi),%rax
23595  DB  15,40,29,116,32,0,0                 ; movaps        0x2074(%rip),%xmm3        # 64b0 <_sk_callback_sse2+0xe87>
23596  DB  255,224                             ; jmpq          *%rax
23597  DB  102,65,15,110,20,65                 ; movd          (%r9,%rax,2),%xmm2
23598  DB  102,65,15,196,84,65,4,2             ; pinsrw        $0x2,0x4(%r9,%rax,2),%xmm2
23599  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
23600  DB  73,131,248,1                        ; cmp           $0x1,%r8
23601  DB  117,13                              ; jne           4463 <_sk_load_rgb_u16_be_sse2+0xe6>
23602  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
23603  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
23604  DB  233,80,255,255,255                  ; jmpq          43b3 <_sk_load_rgb_u16_be_sse2+0x36>
23605  DB  102,65,15,110,68,65,6               ; movd          0x6(%r9,%rax,2),%xmm0
23606  DB  102,65,15,196,68,65,10,2            ; pinsrw        $0x2,0xa(%r9,%rax,2),%xmm0
23607  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
23608  DB  73,131,248,3                        ; cmp           $0x3,%r8
23609  DB  114,24                              ; jb            4494 <_sk_load_rgb_u16_be_sse2+0x117>
23610  DB  102,65,15,110,92,65,12              ; movd          0xc(%r9,%rax,2),%xmm3
23611  DB  102,65,15,196,92,65,16,2            ; pinsrw        $0x2,0x10(%r9,%rax,2),%xmm3
23612  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
23613  DB  233,31,255,255,255                  ; jmpq          43b3 <_sk_load_rgb_u16_be_sse2+0x36>
23614  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
23615  DB  233,22,255,255,255                  ; jmpq          43b3 <_sk_load_rgb_u16_be_sse2+0x36>
23616
23617PUBLIC _sk_store_u16_be_sse2
23618_sk_store_u16_be_sse2 LABEL PROC
23619  DB  72,173                              ; lods          %ds:(%rsi),%rax
23620  DB  76,139,8                            ; mov           (%rax),%r9
23621  DB  72,141,4,149,0,0,0,0                ; lea           0x0(,%rdx,4),%rax
23622  DB  68,15,40,21,14,32,0,0               ; movaps        0x200e(%rip),%xmm10        # 64c0 <_sk_callback_sse2+0xe97>
23623  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
23624  DB  69,15,89,194                        ; mulps         %xmm10,%xmm8
23625  DB  102,69,15,91,192                    ; cvtps2dq      %xmm8,%xmm8
23626  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
23627  DB  102,65,15,114,224,16                ; psrad         $0x10,%xmm8
23628  DB  102,69,15,107,192                   ; packssdw      %xmm8,%xmm8
23629  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
23630  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
23631  DB  102,65,15,113,208,8                 ; psrlw         $0x8,%xmm8
23632  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
23633  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
23634  DB  69,15,89,202                        ; mulps         %xmm10,%xmm9
23635  DB  102,69,15,91,217                    ; cvtps2dq      %xmm9,%xmm11
23636  DB  102,65,15,114,243,16                ; pslld         $0x10,%xmm11
23637  DB  102,65,15,114,227,16                ; psrad         $0x10,%xmm11
23638  DB  102,69,15,107,219                   ; packssdw      %xmm11,%xmm11
23639  DB  102,69,15,111,203                   ; movdqa        %xmm11,%xmm9
23640  DB  102,65,15,113,241,8                 ; psllw         $0x8,%xmm9
23641  DB  102,65,15,113,211,8                 ; psrlw         $0x8,%xmm11
23642  DB  102,69,15,235,217                   ; por           %xmm9,%xmm11
23643  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
23644  DB  69,15,89,202                        ; mulps         %xmm10,%xmm9
23645  DB  102,69,15,91,201                    ; cvtps2dq      %xmm9,%xmm9
23646  DB  102,65,15,114,241,16                ; pslld         $0x10,%xmm9
23647  DB  102,65,15,114,225,16                ; psrad         $0x10,%xmm9
23648  DB  102,69,15,107,201                   ; packssdw      %xmm9,%xmm9
23649  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
23650  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
23651  DB  102,65,15,113,209,8                 ; psrlw         $0x8,%xmm9
23652  DB  102,69,15,235,204                   ; por           %xmm12,%xmm9
23653  DB  68,15,89,211                        ; mulps         %xmm3,%xmm10
23654  DB  102,69,15,91,210                    ; cvtps2dq      %xmm10,%xmm10
23655  DB  102,65,15,114,242,16                ; pslld         $0x10,%xmm10
23656  DB  102,65,15,114,226,16                ; psrad         $0x10,%xmm10
23657  DB  102,69,15,107,210                   ; packssdw      %xmm10,%xmm10
23658  DB  102,69,15,111,226                   ; movdqa        %xmm10,%xmm12
23659  DB  102,65,15,113,244,8                 ; psllw         $0x8,%xmm12
23660  DB  102,65,15,113,210,8                 ; psrlw         $0x8,%xmm10
23661  DB  102,69,15,235,212                   ; por           %xmm12,%xmm10
23662  DB  102,69,15,97,195                    ; punpcklwd     %xmm11,%xmm8
23663  DB  102,69,15,97,202                    ; punpcklwd     %xmm10,%xmm9
23664  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
23665  DB  102,69,15,98,209                    ; punpckldq     %xmm9,%xmm10
23666  DB  77,133,192                          ; test          %r8,%r8
23667  DB  117,21                              ; jne           45ac <_sk_store_u16_be_sse2+0x10f>
23668  DB  69,15,17,20,65                      ; movups        %xmm10,(%r9,%rax,2)
23669  DB  102,69,15,106,193                   ; punpckhdq     %xmm9,%xmm8
23670  DB  243,69,15,127,68,65,16              ; movdqu        %xmm8,0x10(%r9,%rax,2)
23671  DB  72,173                              ; lods          %ds:(%rsi),%rax
23672  DB  255,224                             ; jmpq          *%rax
23673  DB  102,69,15,214,20,65                 ; movq          %xmm10,(%r9,%rax,2)
23674  DB  73,131,248,1                        ; cmp           $0x1,%r8
23675  DB  116,240                             ; je            45a8 <_sk_store_u16_be_sse2+0x10b>
23676  DB  102,69,15,23,84,65,8                ; movhpd        %xmm10,0x8(%r9,%rax,2)
23677  DB  73,131,248,3                        ; cmp           $0x3,%r8
23678  DB  114,227                             ; jb            45a8 <_sk_store_u16_be_sse2+0x10b>
23679  DB  102,69,15,106,193                   ; punpckhdq     %xmm9,%xmm8
23680  DB  102,69,15,214,68,65,16              ; movq          %xmm8,0x10(%r9,%rax,2)
23681  DB  235,213                             ; jmp           45a8 <_sk_store_u16_be_sse2+0x10b>
23682
23683PUBLIC _sk_load_f32_sse2
23684_sk_load_f32_sse2 LABEL PROC
23685  DB  72,173                              ; lods          %ds:(%rsi),%rax
23686  DB  76,139,16                           ; mov           (%rax),%r10
23687  DB  76,141,12,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r9
23688  DB  72,137,208                          ; mov           %rdx,%rax
23689  DB  72,193,224,4                        ; shl           $0x4,%rax
23690  DB  69,15,16,4,2                        ; movups        (%r10,%rax,1),%xmm8
23691  DB  77,133,192                          ; test          %r8,%r8
23692  DB  117,66                              ; jne           4633 <_sk_load_f32_sse2+0x60>
23693  DB  67,15,16,68,138,16                  ; movups        0x10(%r10,%r9,4),%xmm0
23694  DB  67,15,16,92,138,32                  ; movups        0x20(%r10,%r9,4),%xmm3
23695  DB  71,15,16,76,138,48                  ; movups        0x30(%r10,%r9,4),%xmm9
23696  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
23697  DB  15,20,208                           ; unpcklps      %xmm0,%xmm2
23698  DB  15,40,203                           ; movaps        %xmm3,%xmm1
23699  DB  65,15,20,201                        ; unpcklps      %xmm9,%xmm1
23700  DB  68,15,21,192                        ; unpckhps      %xmm0,%xmm8
23701  DB  65,15,21,217                        ; unpckhps      %xmm9,%xmm3
23702  DB  15,40,194                           ; movaps        %xmm2,%xmm0
23703  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
23704  DB  15,18,202                           ; movhlps       %xmm2,%xmm1
23705  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
23706  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
23707  DB  65,15,18,216                        ; movhlps       %xmm8,%xmm3
23708  DB  72,173                              ; lods          %ds:(%rsi),%rax
23709  DB  255,224                             ; jmpq          *%rax
23710  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
23711  DB  73,131,248,1                        ; cmp           $0x1,%r8
23712  DB  117,8                               ; jne           4645 <_sk_load_f32_sse2+0x72>
23713  DB  15,87,219                           ; xorps         %xmm3,%xmm3
23714  DB  15,87,192                           ; xorps         %xmm0,%xmm0
23715  DB  235,190                             ; jmp           4603 <_sk_load_f32_sse2+0x30>
23716  DB  67,15,16,68,138,16                  ; movups        0x10(%r10,%r9,4),%xmm0
23717  DB  73,131,248,3                        ; cmp           $0x3,%r8
23718  DB  114,8                               ; jb            4659 <_sk_load_f32_sse2+0x86>
23719  DB  67,15,16,92,138,32                  ; movups        0x20(%r10,%r9,4),%xmm3
23720  DB  235,170                             ; jmp           4603 <_sk_load_f32_sse2+0x30>
23721  DB  15,87,219                           ; xorps         %xmm3,%xmm3
23722  DB  235,165                             ; jmp           4603 <_sk_load_f32_sse2+0x30>
23723
23724PUBLIC _sk_store_f32_sse2
23725_sk_store_f32_sse2 LABEL PROC
23726  DB  72,173                              ; lods          %ds:(%rsi),%rax
23727  DB  76,139,16                           ; mov           (%rax),%r10
23728  DB  76,141,12,149,0,0,0,0               ; lea           0x0(,%rdx,4),%r9
23729  DB  72,137,208                          ; mov           %rdx,%rax
23730  DB  72,193,224,4                        ; shl           $0x4,%rax
23731  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
23732  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
23733  DB  68,15,40,194                        ; movaps        %xmm2,%xmm8
23734  DB  68,15,20,195                        ; unpcklps      %xmm3,%xmm8
23735  DB  68,15,40,208                        ; movaps        %xmm0,%xmm10
23736  DB  68,15,21,209                        ; unpckhps      %xmm1,%xmm10
23737  DB  68,15,40,218                        ; movaps        %xmm2,%xmm11
23738  DB  68,15,21,219                        ; unpckhps      %xmm3,%xmm11
23739  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
23740  DB  102,69,15,20,224                    ; unpcklpd      %xmm8,%xmm12
23741  DB  69,15,18,193                        ; movhlps       %xmm9,%xmm8
23742  DB  69,15,40,202                        ; movaps        %xmm10,%xmm9
23743  DB  102,69,15,20,203                    ; unpcklpd      %xmm11,%xmm9
23744  DB  102,69,15,17,36,2                   ; movupd        %xmm12,(%r10,%rax,1)
23745  DB  77,133,192                          ; test          %r8,%r8
23746  DB  117,29                              ; jne           46d0 <_sk_store_f32_sse2+0x72>
23747  DB  102,69,15,21,211                    ; unpckhpd      %xmm11,%xmm10
23748  DB  71,15,17,68,138,16                  ; movups        %xmm8,0x10(%r10,%r9,4)
23749  DB  102,71,15,17,76,138,32              ; movupd        %xmm9,0x20(%r10,%r9,4)
23750  DB  102,71,15,17,84,138,48              ; movupd        %xmm10,0x30(%r10,%r9,4)
23751  DB  72,173                              ; lods          %ds:(%rsi),%rax
23752  DB  255,224                             ; jmpq          *%rax
23753  DB  73,131,248,1                        ; cmp           $0x1,%r8
23754  DB  116,246                             ; je            46cc <_sk_store_f32_sse2+0x6e>
23755  DB  71,15,17,68,138,16                  ; movups        %xmm8,0x10(%r10,%r9,4)
23756  DB  73,131,248,3                        ; cmp           $0x3,%r8
23757  DB  114,234                             ; jb            46cc <_sk_store_f32_sse2+0x6e>
23758  DB  102,71,15,17,76,138,32              ; movupd        %xmm9,0x20(%r10,%r9,4)
23759  DB  235,225                             ; jmp           46cc <_sk_store_f32_sse2+0x6e>
23760
23761PUBLIC _sk_clamp_x_sse2
23762_sk_clamp_x_sse2 LABEL PROC
23763  DB  72,173                              ; lods          %ds:(%rsi),%rax
23764  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
23765  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
23766  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
23767  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
23768  DB  102,15,118,192                      ; pcmpeqd       %xmm0,%xmm0
23769  DB  102,65,15,254,193                   ; paddd         %xmm9,%xmm0
23770  DB  68,15,93,192                        ; minps         %xmm0,%xmm8
23771  DB  72,173                              ; lods          %ds:(%rsi),%rax
23772  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
23773  DB  255,224                             ; jmpq          *%rax
23774
23775PUBLIC _sk_clamp_y_sse2
23776_sk_clamp_y_sse2 LABEL PROC
23777  DB  72,173                              ; lods          %ds:(%rsi),%rax
23778  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
23779  DB  68,15,95,193                        ; maxps         %xmm1,%xmm8
23780  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
23781  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
23782  DB  102,15,118,201                      ; pcmpeqd       %xmm1,%xmm1
23783  DB  102,65,15,254,201                   ; paddd         %xmm9,%xmm1
23784  DB  68,15,93,193                        ; minps         %xmm1,%xmm8
23785  DB  72,173                              ; lods          %ds:(%rsi),%rax
23786  DB  65,15,40,200                        ; movaps        %xmm8,%xmm1
23787  DB  255,224                             ; jmpq          *%rax
23788
23789PUBLIC _sk_repeat_x_sse2
23790_sk_repeat_x_sse2 LABEL PROC
23791  DB  72,173                              ; lods          %ds:(%rsi),%rax
23792  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
23793  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
23794  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
23795  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
23796  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
23797  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
23798  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
23799  DB  68,15,84,13,103,29,0,0              ; andps         0x1d67(%rip),%xmm9        # 64d0 <_sk_callback_sse2+0xea7>
23800  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
23801  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
23802  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
23803  DB  65,15,92,194                        ; subps         %xmm10,%xmm0
23804  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
23805  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
23806  DB  65,15,93,193                        ; minps         %xmm9,%xmm0
23807  DB  72,173                              ; lods          %ds:(%rsi),%rax
23808  DB  255,224                             ; jmpq          *%rax
23809
23810PUBLIC _sk_repeat_y_sse2
23811_sk_repeat_y_sse2 LABEL PROC
23812  DB  72,173                              ; lods          %ds:(%rsi),%rax
23813  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
23814  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
23815  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
23816  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
23817  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
23818  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
23819  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
23820  DB  68,15,84,13,40,29,0,0               ; andps         0x1d28(%rip),%xmm9        # 64e0 <_sk_callback_sse2+0xeb7>
23821  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
23822  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
23823  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
23824  DB  65,15,92,202                        ; subps         %xmm10,%xmm1
23825  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
23826  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
23827  DB  65,15,93,201                        ; minps         %xmm9,%xmm1
23828  DB  72,173                              ; lods          %ds:(%rsi),%rax
23829  DB  255,224                             ; jmpq          *%rax
23830
23831PUBLIC _sk_mirror_x_sse2
23832_sk_mirror_x_sse2 LABEL PROC
23833  DB  72,173                              ; lods          %ds:(%rsi),%rax
23834  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
23835  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
23836  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
23837  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
23838  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
23839  DB  243,69,15,88,201                    ; addss         %xmm9,%xmm9
23840  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
23841  DB  243,68,15,89,21,248,32,0,0          ; mulss         0x20f8(%rip),%xmm10        # 6900 <_sk_callback_sse2+0x12d7>
23842  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23843  DB  68,15,89,208                        ; mulps         %xmm0,%xmm10
23844  DB  243,69,15,91,218                    ; cvttps2dq     %xmm10,%xmm11
23845  DB  69,15,91,219                        ; cvtdq2ps      %xmm11,%xmm11
23846  DB  69,15,194,211,1                     ; cmpltps       %xmm11,%xmm10
23847  DB  68,15,84,21,201,28,0,0              ; andps         0x1cc9(%rip),%xmm10        # 64f0 <_sk_callback_sse2+0xec7>
23848  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
23849  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
23850  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
23851  DB  65,15,92,195                        ; subps         %xmm11,%xmm0
23852  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
23853  DB  68,15,92,224                        ; subps         %xmm0,%xmm12
23854  DB  65,15,84,196                        ; andps         %xmm12,%xmm0
23855  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
23856  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
23857  DB  65,15,93,193                        ; minps         %xmm9,%xmm0
23858  DB  72,173                              ; lods          %ds:(%rsi),%rax
23859  DB  255,224                             ; jmpq          *%rax
23860
23861PUBLIC _sk_mirror_y_sse2
23862_sk_mirror_y_sse2 LABEL PROC
23863  DB  72,173                              ; lods          %ds:(%rsi),%rax
23864  DB  243,68,15,16,8                      ; movss         (%rax),%xmm9
23865  DB  243,68,15,16,80,4                   ; movss         0x4(%rax),%xmm10
23866  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
23867  DB  69,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm8
23868  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
23869  DB  243,69,15,88,201                    ; addss         %xmm9,%xmm9
23870  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
23871  DB  243,68,15,89,21,130,32,0,0          ; mulss         0x2082(%rip),%xmm10        # 6904 <_sk_callback_sse2+0x12db>
23872  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23873  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
23874  DB  243,69,15,91,218                    ; cvttps2dq     %xmm10,%xmm11
23875  DB  69,15,91,219                        ; cvtdq2ps      %xmm11,%xmm11
23876  DB  69,15,194,211,1                     ; cmpltps       %xmm11,%xmm10
23877  DB  68,15,84,21,95,28,0,0               ; andps         0x1c5f(%rip),%xmm10        # 6500 <_sk_callback_sse2+0xed7>
23878  DB  69,15,87,228                        ; xorps         %xmm12,%xmm12
23879  DB  69,15,92,218                        ; subps         %xmm10,%xmm11
23880  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
23881  DB  65,15,92,203                        ; subps         %xmm11,%xmm1
23882  DB  65,15,92,200                        ; subps         %xmm8,%xmm1
23883  DB  68,15,92,225                        ; subps         %xmm1,%xmm12
23884  DB  65,15,84,204                        ; andps         %xmm12,%xmm1
23885  DB  102,69,15,118,201                   ; pcmpeqd       %xmm9,%xmm9
23886  DB  102,69,15,254,200                   ; paddd         %xmm8,%xmm9
23887  DB  65,15,93,201                        ; minps         %xmm9,%xmm1
23888  DB  72,173                              ; lods          %ds:(%rsi),%rax
23889  DB  255,224                             ; jmpq          *%rax
23890
23891PUBLIC _sk_clamp_x_1_sse2
23892_sk_clamp_x_1_sse2 LABEL PROC
23893  DB  69,15,87,192                        ; xorps         %xmm8,%xmm8
23894  DB  68,15,95,192                        ; maxps         %xmm0,%xmm8
23895  DB  68,15,93,5,49,28,0,0                ; minps         0x1c31(%rip),%xmm8        # 6510 <_sk_callback_sse2+0xee7>
23896  DB  72,173                              ; lods          %ds:(%rsi),%rax
23897  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
23898  DB  255,224                             ; jmpq          *%rax
23899
23900PUBLIC _sk_repeat_x_1_sse2
23901_sk_repeat_x_1_sse2 LABEL PROC
23902  DB  243,68,15,91,192                    ; cvttps2dq     %xmm0,%xmm8
23903  DB  69,15,91,192                        ; cvtdq2ps      %xmm8,%xmm8
23904  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
23905  DB  69,15,194,200,1                     ; cmpltps       %xmm8,%xmm9
23906  DB  68,15,84,13,31,28,0,0               ; andps         0x1c1f(%rip),%xmm9        # 6520 <_sk_callback_sse2+0xef7>
23907  DB  69,15,92,193                        ; subps         %xmm9,%xmm8
23908  DB  65,15,92,192                        ; subps         %xmm8,%xmm0
23909  DB  72,173                              ; lods          %ds:(%rsi),%rax
23910  DB  255,224                             ; jmpq          *%rax
23911
23912PUBLIC _sk_mirror_x_1_sse2
23913_sk_mirror_x_1_sse2 LABEL PROC
23914  DB  68,15,40,5,27,28,0,0                ; movaps        0x1c1b(%rip),%xmm8        # 6530 <_sk_callback_sse2+0xf07>
23915  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
23916  DB  68,15,40,13,31,28,0,0               ; movaps        0x1c1f(%rip),%xmm9        # 6540 <_sk_callback_sse2+0xf17>
23917  DB  68,15,89,200                        ; mulps         %xmm0,%xmm9
23918  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
23919  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
23920  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
23921  DB  68,15,84,13,21,28,0,0               ; andps         0x1c15(%rip),%xmm9        # 6550 <_sk_callback_sse2+0xf27>
23922  DB  69,15,87,219                        ; xorps         %xmm11,%xmm11
23923  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
23924  DB  69,15,88,210                        ; addps         %xmm10,%xmm10
23925  DB  65,15,92,194                        ; subps         %xmm10,%xmm0
23926  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
23927  DB  68,15,92,216                        ; subps         %xmm0,%xmm11
23928  DB  65,15,84,195                        ; andps         %xmm11,%xmm0
23929  DB  72,173                              ; lods          %ds:(%rsi),%rax
23930  DB  255,224                             ; jmpq          *%rax
23931
23932PUBLIC _sk_luminance_to_alpha_sse2
23933_sk_luminance_to_alpha_sse2 LABEL PROC
23934  DB  15,40,218                           ; movaps        %xmm2,%xmm3
23935  DB  15,89,5,251,27,0,0                  ; mulps         0x1bfb(%rip),%xmm0        # 6560 <_sk_callback_sse2+0xf37>
23936  DB  15,89,13,4,28,0,0                   ; mulps         0x1c04(%rip),%xmm1        # 6570 <_sk_callback_sse2+0xf47>
23937  DB  15,88,200                           ; addps         %xmm0,%xmm1
23938  DB  15,89,29,10,28,0,0                  ; mulps         0x1c0a(%rip),%xmm3        # 6580 <_sk_callback_sse2+0xf57>
23939  DB  15,88,217                           ; addps         %xmm1,%xmm3
23940  DB  72,173                              ; lods          %ds:(%rsi),%rax
23941  DB  15,87,192                           ; xorps         %xmm0,%xmm0
23942  DB  15,87,201                           ; xorps         %xmm1,%xmm1
23943  DB  15,87,210                           ; xorps         %xmm2,%xmm2
23944  DB  255,224                             ; jmpq          *%rax
23945
23946PUBLIC _sk_matrix_2x3_sse2
23947_sk_matrix_2x3_sse2 LABEL PROC
23948  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
23949  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
23950  DB  72,173                              ; lods          %ds:(%rsi),%rax
23951  DB  243,15,16,0                         ; movss         (%rax),%xmm0
23952  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
23953  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
23954  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
23955  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23956  DB  243,68,15,16,88,16                  ; movss         0x10(%rax),%xmm11
23957  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23958  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
23959  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23960  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
23961  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
23962  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
23963  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
23964  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23965  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
23966  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23967  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
23968  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23969  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
23970  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
23971  DB  72,173                              ; lods          %ds:(%rsi),%rax
23972  DB  255,224                             ; jmpq          *%rax
23973
23974PUBLIC _sk_matrix_3x4_sse2
23975_sk_matrix_3x4_sse2 LABEL PROC
23976  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
23977  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
23978  DB  72,173                              ; lods          %ds:(%rsi),%rax
23979  DB  243,15,16,0                         ; movss         (%rax),%xmm0
23980  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
23981  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
23982  DB  243,68,15,16,80,12                  ; movss         0xc(%rax),%xmm10
23983  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23984  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
23985  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23986  DB  243,68,15,16,96,36                  ; movss         0x24(%rax),%xmm12
23987  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
23988  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
23989  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
23990  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
23991  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
23992  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
23993  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
23994  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
23995  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
23996  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
23997  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
23998  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
23999  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
24000  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
24001  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
24002  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
24003  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24004  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
24005  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
24006  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
24007  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
24008  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
24009  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
24010  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
24011  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
24012  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
24013  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
24014  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
24015  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
24016  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
24017  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
24018  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
24019  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
24020  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
24021  DB  72,173                              ; lods          %ds:(%rsi),%rax
24022  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
24023  DB  255,224                             ; jmpq          *%rax
24024
24025PUBLIC _sk_matrix_4x5_sse2
24026_sk_matrix_4x5_sse2 LABEL PROC
24027  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
24028  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
24029  DB  72,173                              ; lods          %ds:(%rsi),%rax
24030  DB  243,15,16,0                         ; movss         (%rax),%xmm0
24031  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
24032  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
24033  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
24034  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
24035  DB  243,68,15,16,88,32                  ; movss         0x20(%rax),%xmm11
24036  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
24037  DB  243,68,15,16,96,48                  ; movss         0x30(%rax),%xmm12
24038  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
24039  DB  243,68,15,16,104,64                 ; movss         0x40(%rax),%xmm13
24040  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
24041  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
24042  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
24043  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
24044  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
24045  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24046  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
24047  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
24048  DB  65,15,88,194                        ; addps         %xmm10,%xmm0
24049  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
24050  DB  243,68,15,16,80,20                  ; movss         0x14(%rax),%xmm10
24051  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
24052  DB  243,68,15,16,88,36                  ; movss         0x24(%rax),%xmm11
24053  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
24054  DB  243,68,15,16,96,52                  ; movss         0x34(%rax),%xmm12
24055  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
24056  DB  243,68,15,16,104,68                 ; movss         0x44(%rax),%xmm13
24057  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
24058  DB  68,15,89,227                        ; mulps         %xmm3,%xmm12
24059  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
24060  DB  68,15,89,218                        ; mulps         %xmm2,%xmm11
24061  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
24062  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24063  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
24064  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
24065  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
24066  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
24067  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
24068  DB  243,68,15,16,88,24                  ; movss         0x18(%rax),%xmm11
24069  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
24070  DB  243,68,15,16,96,40                  ; movss         0x28(%rax),%xmm12
24071  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
24072  DB  243,68,15,16,104,56                 ; movss         0x38(%rax),%xmm13
24073  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
24074  DB  243,68,15,16,112,72                 ; movss         0x48(%rax),%xmm14
24075  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
24076  DB  68,15,89,235                        ; mulps         %xmm3,%xmm13
24077  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
24078  DB  68,15,89,226                        ; mulps         %xmm2,%xmm12
24079  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
24080  DB  69,15,89,217                        ; mulps         %xmm9,%xmm11
24081  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
24082  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
24083  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
24084  DB  243,68,15,16,88,12                  ; movss         0xc(%rax),%xmm11
24085  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
24086  DB  243,68,15,16,96,28                  ; movss         0x1c(%rax),%xmm12
24087  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
24088  DB  243,68,15,16,104,44                 ; movss         0x2c(%rax),%xmm13
24089  DB  69,15,198,237,0                     ; shufps        $0x0,%xmm13,%xmm13
24090  DB  243,68,15,16,112,60                 ; movss         0x3c(%rax),%xmm14
24091  DB  69,15,198,246,0                     ; shufps        $0x0,%xmm14,%xmm14
24092  DB  243,68,15,16,120,76                 ; movss         0x4c(%rax),%xmm15
24093  DB  69,15,198,255,0                     ; shufps        $0x0,%xmm15,%xmm15
24094  DB  68,15,89,243                        ; mulps         %xmm3,%xmm14
24095  DB  69,15,88,247                        ; addps         %xmm15,%xmm14
24096  DB  68,15,89,234                        ; mulps         %xmm2,%xmm13
24097  DB  69,15,88,238                        ; addps         %xmm14,%xmm13
24098  DB  69,15,89,225                        ; mulps         %xmm9,%xmm12
24099  DB  69,15,88,229                        ; addps         %xmm13,%xmm12
24100  DB  69,15,89,216                        ; mulps         %xmm8,%xmm11
24101  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
24102  DB  72,173                              ; lods          %ds:(%rsi),%rax
24103  DB  65,15,40,210                        ; movaps        %xmm10,%xmm2
24104  DB  65,15,40,219                        ; movaps        %xmm11,%xmm3
24105  DB  255,224                             ; jmpq          *%rax
24106
24107PUBLIC _sk_matrix_4x3_sse2
24108_sk_matrix_4x3_sse2 LABEL PROC
24109  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
24110  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
24111  DB  72,173                              ; lods          %ds:(%rsi),%rax
24112  DB  243,15,16,0                         ; movss         (%rax),%xmm0
24113  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
24114  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
24115  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
24116  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
24117  DB  243,15,16,88,32                     ; movss         0x20(%rax),%xmm3
24118  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
24119  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
24120  DB  15,88,211                           ; addps         %xmm3,%xmm2
24121  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
24122  DB  15,88,194                           ; addps         %xmm2,%xmm0
24123  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
24124  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
24125  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
24126  DB  243,15,16,88,36                     ; movss         0x24(%rax),%xmm3
24127  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
24128  DB  65,15,89,209                        ; mulps         %xmm9,%xmm2
24129  DB  15,88,211                           ; addps         %xmm3,%xmm2
24130  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
24131  DB  15,88,202                           ; addps         %xmm2,%xmm1
24132  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
24133  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
24134  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
24135  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
24136  DB  243,68,15,16,80,40                  ; movss         0x28(%rax),%xmm10
24137  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
24138  DB  65,15,89,217                        ; mulps         %xmm9,%xmm3
24139  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
24140  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
24141  DB  15,88,211                           ; addps         %xmm3,%xmm2
24142  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
24143  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
24144  DB  243,68,15,16,80,28                  ; movss         0x1c(%rax),%xmm10
24145  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
24146  DB  243,68,15,16,88,44                  ; movss         0x2c(%rax),%xmm11
24147  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
24148  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24149  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
24150  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
24151  DB  65,15,88,218                        ; addps         %xmm10,%xmm3
24152  DB  72,173                              ; lods          %ds:(%rsi),%rax
24153  DB  255,224                             ; jmpq          *%rax
24154
24155PUBLIC _sk_matrix_perspective_sse2
24156_sk_matrix_perspective_sse2 LABEL PROC
24157  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
24158  DB  72,173                              ; lods          %ds:(%rsi),%rax
24159  DB  243,15,16,0                         ; movss         (%rax),%xmm0
24160  DB  243,68,15,16,72,4                   ; movss         0x4(%rax),%xmm9
24161  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
24162  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
24163  DB  243,68,15,16,80,8                   ; movss         0x8(%rax),%xmm10
24164  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
24165  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
24166  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
24167  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
24168  DB  65,15,88,193                        ; addps         %xmm9,%xmm0
24169  DB  243,68,15,16,72,12                  ; movss         0xc(%rax),%xmm9
24170  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
24171  DB  243,68,15,16,80,16                  ; movss         0x10(%rax),%xmm10
24172  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
24173  DB  243,68,15,16,88,20                  ; movss         0x14(%rax),%xmm11
24174  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
24175  DB  68,15,89,209                        ; mulps         %xmm1,%xmm10
24176  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
24177  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
24178  DB  69,15,88,202                        ; addps         %xmm10,%xmm9
24179  DB  243,68,15,16,80,24                  ; movss         0x18(%rax),%xmm10
24180  DB  69,15,198,210,0                     ; shufps        $0x0,%xmm10,%xmm10
24181  DB  243,68,15,16,88,28                  ; movss         0x1c(%rax),%xmm11
24182  DB  69,15,198,219,0                     ; shufps        $0x0,%xmm11,%xmm11
24183  DB  243,68,15,16,96,32                  ; movss         0x20(%rax),%xmm12
24184  DB  69,15,198,228,0                     ; shufps        $0x0,%xmm12,%xmm12
24185  DB  68,15,89,217                        ; mulps         %xmm1,%xmm11
24186  DB  69,15,88,220                        ; addps         %xmm12,%xmm11
24187  DB  69,15,89,208                        ; mulps         %xmm8,%xmm10
24188  DB  69,15,88,211                        ; addps         %xmm11,%xmm10
24189  DB  65,15,83,202                        ; rcpps         %xmm10,%xmm1
24190  DB  15,89,193                           ; mulps         %xmm1,%xmm0
24191  DB  68,15,89,201                        ; mulps         %xmm1,%xmm9
24192  DB  72,173                              ; lods          %ds:(%rsi),%rax
24193  DB  65,15,40,201                        ; movaps        %xmm9,%xmm1
24194  DB  255,224                             ; jmpq          *%rax
24195
24196PUBLIC _sk_evenly_spaced_gradient_sse2
24197_sk_evenly_spaced_gradient_sse2 LABEL PROC
24198  DB  65,86                               ; push          %r14
24199  DB  83                                  ; push          %rbx
24200  DB  72,173                              ; lods          %ds:(%rsi),%rax
24201  DB  72,139,24                           ; mov           (%rax),%rbx
24202  DB  76,139,112,8                        ; mov           0x8(%rax),%r14
24203  DB  72,255,203                          ; dec           %rbx
24204  DB  120,7                               ; js            4db2 <_sk_evenly_spaced_gradient_sse2+0x18>
24205  DB  243,72,15,42,203                    ; cvtsi2ss      %rbx,%xmm1
24206  DB  235,21                              ; jmp           4dc7 <_sk_evenly_spaced_gradient_sse2+0x2d>
24207  DB  73,137,217                          ; mov           %rbx,%r9
24208  DB  73,209,233                          ; shr           %r9
24209  DB  131,227,1                           ; and           $0x1,%ebx
24210  DB  76,9,203                            ; or            %r9,%rbx
24211  DB  243,72,15,42,203                    ; cvtsi2ss      %rbx,%xmm1
24212  DB  243,15,88,201                       ; addss         %xmm1,%xmm1
24213  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
24214  DB  15,89,200                           ; mulps         %xmm0,%xmm1
24215  DB  243,15,91,201                       ; cvttps2dq     %xmm1,%xmm1
24216  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
24217  DB  102,73,15,126,211                   ; movq          %xmm2,%r11
24218  DB  69,137,217                          ; mov           %r11d,%r9d
24219  DB  73,193,235,32                       ; shr           $0x20,%r11
24220  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
24221  DB  65,137,218                          ; mov           %ebx,%r10d
24222  DB  72,193,235,32                       ; shr           $0x20,%rbx
24223  DB  243,65,15,16,12,158                 ; movss         (%r14,%rbx,4),%xmm1
24224  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
24225  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
24226  DB  243,71,15,16,4,150                  ; movss         (%r14,%r10,4),%xmm8
24227  DB  243,67,15,16,20,142                 ; movss         (%r14,%r9,4),%xmm2
24228  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
24229  DB  68,15,20,193                        ; unpcklps      %xmm1,%xmm8
24230  DB  76,139,112,40                       ; mov           0x28(%rax),%r14
24231  DB  243,65,15,16,12,158                 ; movss         (%r14,%rbx,4),%xmm1
24232  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
24233  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
24234  DB  243,71,15,16,12,150                 ; movss         (%r14,%r10,4),%xmm9
24235  DB  243,67,15,16,20,142                 ; movss         (%r14,%r9,4),%xmm2
24236  DB  68,15,20,202                        ; unpcklps      %xmm2,%xmm9
24237  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
24238  DB  76,139,112,16                       ; mov           0x10(%rax),%r14
24239  DB  243,65,15,16,20,158                 ; movss         (%r14,%rbx,4),%xmm2
24240  DB  243,67,15,16,12,158                 ; movss         (%r14,%r11,4),%xmm1
24241  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
24242  DB  243,67,15,16,12,150                 ; movss         (%r14,%r10,4),%xmm1
24243  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
24244  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
24245  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
24246  DB  76,139,112,48                       ; mov           0x30(%rax),%r14
24247  DB  243,65,15,16,20,158                 ; movss         (%r14,%rbx,4),%xmm2
24248  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
24249  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
24250  DB  243,71,15,16,20,150                 ; movss         (%r14,%r10,4),%xmm10
24251  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
24252  DB  68,15,20,211                        ; unpcklps      %xmm3,%xmm10
24253  DB  68,15,20,210                        ; unpcklps      %xmm2,%xmm10
24254  DB  76,139,112,24                       ; mov           0x18(%rax),%r14
24255  DB  243,69,15,16,28,158                 ; movss         (%r14,%rbx,4),%xmm11
24256  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
24257  DB  68,15,20,218                        ; unpcklps      %xmm2,%xmm11
24258  DB  243,67,15,16,20,150                 ; movss         (%r14,%r10,4),%xmm2
24259  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
24260  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
24261  DB  65,15,20,211                        ; unpcklps      %xmm11,%xmm2
24262  DB  76,139,112,56                       ; mov           0x38(%rax),%r14
24263  DB  243,69,15,16,36,158                 ; movss         (%r14,%rbx,4),%xmm12
24264  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
24265  DB  68,15,20,227                        ; unpcklps      %xmm3,%xmm12
24266  DB  243,71,15,16,28,150                 ; movss         (%r14,%r10,4),%xmm11
24267  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
24268  DB  68,15,20,219                        ; unpcklps      %xmm3,%xmm11
24269  DB  69,15,20,220                        ; unpcklps      %xmm12,%xmm11
24270  DB  76,139,112,32                       ; mov           0x20(%rax),%r14
24271  DB  243,69,15,16,36,158                 ; movss         (%r14,%rbx,4),%xmm12
24272  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
24273  DB  68,15,20,227                        ; unpcklps      %xmm3,%xmm12
24274  DB  243,67,15,16,28,150                 ; movss         (%r14,%r10,4),%xmm3
24275  DB  243,71,15,16,44,142                 ; movss         (%r14,%r9,4),%xmm13
24276  DB  65,15,20,221                        ; unpcklps      %xmm13,%xmm3
24277  DB  65,15,20,220                        ; unpcklps      %xmm12,%xmm3
24278  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
24279  DB  243,68,15,16,36,152                 ; movss         (%rax,%rbx,4),%xmm12
24280  DB  243,70,15,16,44,152                 ; movss         (%rax,%r11,4),%xmm13
24281  DB  69,15,20,229                        ; unpcklps      %xmm13,%xmm12
24282  DB  243,70,15,16,44,144                 ; movss         (%rax,%r10,4),%xmm13
24283  DB  243,70,15,16,52,136                 ; movss         (%rax,%r9,4),%xmm14
24284  DB  69,15,20,238                        ; unpcklps      %xmm14,%xmm13
24285  DB  69,15,20,236                        ; unpcklps      %xmm12,%xmm13
24286  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
24287  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
24288  DB  15,89,200                           ; mulps         %xmm0,%xmm1
24289  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
24290  DB  15,89,208                           ; mulps         %xmm0,%xmm2
24291  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
24292  DB  15,89,216                           ; mulps         %xmm0,%xmm3
24293  DB  65,15,88,221                        ; addps         %xmm13,%xmm3
24294  DB  72,173                              ; lods          %ds:(%rsi),%rax
24295  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
24296  DB  91                                  ; pop           %rbx
24297  DB  65,94                               ; pop           %r14
24298  DB  255,224                             ; jmpq          *%rax
24299
24300PUBLIC _sk_gauss_a_to_rgba_sse2
24301_sk_gauss_a_to_rgba_sse2 LABEL PROC
24302  DB  15,40,5,61,22,0,0                   ; movaps        0x163d(%rip),%xmm0        # 6590 <_sk_callback_sse2+0xf67>
24303  DB  15,89,195                           ; mulps         %xmm3,%xmm0
24304  DB  15,88,5,67,22,0,0                   ; addps         0x1643(%rip),%xmm0        # 65a0 <_sk_callback_sse2+0xf77>
24305  DB  15,89,195                           ; mulps         %xmm3,%xmm0
24306  DB  15,88,5,73,22,0,0                   ; addps         0x1649(%rip),%xmm0        # 65b0 <_sk_callback_sse2+0xf87>
24307  DB  15,89,195                           ; mulps         %xmm3,%xmm0
24308  DB  15,88,5,79,22,0,0                   ; addps         0x164f(%rip),%xmm0        # 65c0 <_sk_callback_sse2+0xf97>
24309  DB  15,89,195                           ; mulps         %xmm3,%xmm0
24310  DB  15,88,5,85,22,0,0                   ; addps         0x1655(%rip),%xmm0        # 65d0 <_sk_callback_sse2+0xfa7>
24311  DB  72,173                              ; lods          %ds:(%rsi),%rax
24312  DB  15,40,200                           ; movaps        %xmm0,%xmm1
24313  DB  15,40,208                           ; movaps        %xmm0,%xmm2
24314  DB  15,40,216                           ; movaps        %xmm0,%xmm3
24315  DB  255,224                             ; jmpq          *%rax
24316
24317PUBLIC _sk_gradient_sse2
24318_sk_gradient_sse2 LABEL PROC
24319  DB  65,87                               ; push          %r15
24320  DB  65,86                               ; push          %r14
24321  DB  83                                  ; push          %rbx
24322  DB  72,173                              ; lods          %ds:(%rsi),%rax
24323  DB  76,139,8                            ; mov           (%rax),%r9
24324  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
24325  DB  73,131,249,2                        ; cmp           $0x2,%r9
24326  DB  114,50                              ; jb            4fce <_sk_gradient_sse2+0x46>
24327  DB  72,139,88,72                        ; mov           0x48(%rax),%rbx
24328  DB  73,255,201                          ; dec           %r9
24329  DB  72,131,195,4                        ; add           $0x4,%rbx
24330  DB  102,15,239,201                      ; pxor          %xmm1,%xmm1
24331  DB  15,40,21,46,22,0,0                  ; movaps        0x162e(%rip),%xmm2        # 65e0 <_sk_callback_sse2+0xfb7>
24332  DB  243,15,16,27                        ; movss         (%rbx),%xmm3
24333  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
24334  DB  15,194,216,2                        ; cmpleps       %xmm0,%xmm3
24335  DB  15,84,218                           ; andps         %xmm2,%xmm3
24336  DB  102,15,254,203                      ; paddd         %xmm3,%xmm1
24337  DB  72,131,195,4                        ; add           $0x4,%rbx
24338  DB  73,255,201                          ; dec           %r9
24339  DB  117,228                             ; jne           4fb2 <_sk_gradient_sse2+0x2a>
24340  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
24341  DB  102,73,15,126,211                   ; movq          %xmm2,%r11
24342  DB  69,137,217                          ; mov           %r11d,%r9d
24343  DB  73,193,235,32                       ; shr           $0x20,%r11
24344  DB  102,72,15,126,203                   ; movq          %xmm1,%rbx
24345  DB  65,137,218                          ; mov           %ebx,%r10d
24346  DB  72,193,235,32                       ; shr           $0x20,%rbx
24347  DB  76,139,112,8                        ; mov           0x8(%rax),%r14
24348  DB  76,139,120,16                       ; mov           0x10(%rax),%r15
24349  DB  243,65,15,16,12,158                 ; movss         (%r14,%rbx,4),%xmm1
24350  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
24351  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
24352  DB  243,71,15,16,4,150                  ; movss         (%r14,%r10,4),%xmm8
24353  DB  243,67,15,16,20,142                 ; movss         (%r14,%r9,4),%xmm2
24354  DB  68,15,20,194                        ; unpcklps      %xmm2,%xmm8
24355  DB  68,15,20,193                        ; unpcklps      %xmm1,%xmm8
24356  DB  76,139,112,40                       ; mov           0x28(%rax),%r14
24357  DB  243,65,15,16,12,158                 ; movss         (%r14,%rbx,4),%xmm1
24358  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
24359  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
24360  DB  243,71,15,16,12,150                 ; movss         (%r14,%r10,4),%xmm9
24361  DB  243,67,15,16,20,142                 ; movss         (%r14,%r9,4),%xmm2
24362  DB  68,15,20,202                        ; unpcklps      %xmm2,%xmm9
24363  DB  68,15,20,201                        ; unpcklps      %xmm1,%xmm9
24364  DB  243,65,15,16,20,159                 ; movss         (%r15,%rbx,4),%xmm2
24365  DB  243,67,15,16,12,159                 ; movss         (%r15,%r11,4),%xmm1
24366  DB  15,20,209                           ; unpcklps      %xmm1,%xmm2
24367  DB  243,67,15,16,12,151                 ; movss         (%r15,%r10,4),%xmm1
24368  DB  243,67,15,16,28,143                 ; movss         (%r15,%r9,4),%xmm3
24369  DB  15,20,203                           ; unpcklps      %xmm3,%xmm1
24370  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
24371  DB  76,139,112,48                       ; mov           0x30(%rax),%r14
24372  DB  243,65,15,16,20,158                 ; movss         (%r14,%rbx,4),%xmm2
24373  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
24374  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
24375  DB  243,71,15,16,20,150                 ; movss         (%r14,%r10,4),%xmm10
24376  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
24377  DB  68,15,20,211                        ; unpcklps      %xmm3,%xmm10
24378  DB  68,15,20,210                        ; unpcklps      %xmm2,%xmm10
24379  DB  76,139,112,24                       ; mov           0x18(%rax),%r14
24380  DB  243,69,15,16,28,158                 ; movss         (%r14,%rbx,4),%xmm11
24381  DB  243,67,15,16,20,158                 ; movss         (%r14,%r11,4),%xmm2
24382  DB  68,15,20,218                        ; unpcklps      %xmm2,%xmm11
24383  DB  243,67,15,16,20,150                 ; movss         (%r14,%r10,4),%xmm2
24384  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
24385  DB  15,20,211                           ; unpcklps      %xmm3,%xmm2
24386  DB  65,15,20,211                        ; unpcklps      %xmm11,%xmm2
24387  DB  76,139,112,56                       ; mov           0x38(%rax),%r14
24388  DB  243,69,15,16,36,158                 ; movss         (%r14,%rbx,4),%xmm12
24389  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
24390  DB  68,15,20,227                        ; unpcklps      %xmm3,%xmm12
24391  DB  243,71,15,16,28,150                 ; movss         (%r14,%r10,4),%xmm11
24392  DB  243,67,15,16,28,142                 ; movss         (%r14,%r9,4),%xmm3
24393  DB  68,15,20,219                        ; unpcklps      %xmm3,%xmm11
24394  DB  69,15,20,220                        ; unpcklps      %xmm12,%xmm11
24395  DB  76,139,112,32                       ; mov           0x20(%rax),%r14
24396  DB  243,69,15,16,36,158                 ; movss         (%r14,%rbx,4),%xmm12
24397  DB  243,67,15,16,28,158                 ; movss         (%r14,%r11,4),%xmm3
24398  DB  68,15,20,227                        ; unpcklps      %xmm3,%xmm12
24399  DB  243,67,15,16,28,150                 ; movss         (%r14,%r10,4),%xmm3
24400  DB  243,71,15,16,44,142                 ; movss         (%r14,%r9,4),%xmm13
24401  DB  65,15,20,221                        ; unpcklps      %xmm13,%xmm3
24402  DB  65,15,20,220                        ; unpcklps      %xmm12,%xmm3
24403  DB  72,139,64,64                        ; mov           0x40(%rax),%rax
24404  DB  243,68,15,16,36,152                 ; movss         (%rax,%rbx,4),%xmm12
24405  DB  243,70,15,16,44,152                 ; movss         (%rax,%r11,4),%xmm13
24406  DB  69,15,20,229                        ; unpcklps      %xmm13,%xmm12
24407  DB  243,70,15,16,44,144                 ; movss         (%rax,%r10,4),%xmm13
24408  DB  243,70,15,16,52,136                 ; movss         (%rax,%r9,4),%xmm14
24409  DB  69,15,20,238                        ; unpcklps      %xmm14,%xmm13
24410  DB  69,15,20,236                        ; unpcklps      %xmm12,%xmm13
24411  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
24412  DB  69,15,88,193                        ; addps         %xmm9,%xmm8
24413  DB  15,89,200                           ; mulps         %xmm0,%xmm1
24414  DB  65,15,88,202                        ; addps         %xmm10,%xmm1
24415  DB  15,89,208                           ; mulps         %xmm0,%xmm2
24416  DB  65,15,88,211                        ; addps         %xmm11,%xmm2
24417  DB  15,89,216                           ; mulps         %xmm0,%xmm3
24418  DB  65,15,88,221                        ; addps         %xmm13,%xmm3
24419  DB  72,173                              ; lods          %ds:(%rsi),%rax
24420  DB  65,15,40,192                        ; movaps        %xmm8,%xmm0
24421  DB  91                                  ; pop           %rbx
24422  DB  65,94                               ; pop           %r14
24423  DB  65,95                               ; pop           %r15
24424  DB  255,224                             ; jmpq          *%rax
24425
24426PUBLIC _sk_evenly_spaced_2_stop_gradient_sse2
24427_sk_evenly_spaced_2_stop_gradient_sse2 LABEL PROC
24428  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
24429  DB  72,173                              ; lods          %ds:(%rsi),%rax
24430  DB  243,15,16,0                         ; movss         (%rax),%xmm0
24431  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
24432  DB  15,198,192,0                        ; shufps        $0x0,%xmm0,%xmm0
24433  DB  243,15,16,80,16                     ; movss         0x10(%rax),%xmm2
24434  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
24435  DB  65,15,89,192                        ; mulps         %xmm8,%xmm0
24436  DB  15,88,194                           ; addps         %xmm2,%xmm0
24437  DB  15,198,201,0                        ; shufps        $0x0,%xmm1,%xmm1
24438  DB  243,15,16,80,20                     ; movss         0x14(%rax),%xmm2
24439  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
24440  DB  65,15,89,200                        ; mulps         %xmm8,%xmm1
24441  DB  15,88,202                           ; addps         %xmm2,%xmm1
24442  DB  243,15,16,80,8                      ; movss         0x8(%rax),%xmm2
24443  DB  15,198,210,0                        ; shufps        $0x0,%xmm2,%xmm2
24444  DB  243,15,16,88,24                     ; movss         0x18(%rax),%xmm3
24445  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
24446  DB  65,15,89,208                        ; mulps         %xmm8,%xmm2
24447  DB  15,88,211                           ; addps         %xmm3,%xmm2
24448  DB  243,15,16,88,12                     ; movss         0xc(%rax),%xmm3
24449  DB  15,198,219,0                        ; shufps        $0x0,%xmm3,%xmm3
24450  DB  243,68,15,16,72,28                  ; movss         0x1c(%rax),%xmm9
24451  DB  69,15,198,201,0                     ; shufps        $0x0,%xmm9,%xmm9
24452  DB  65,15,89,216                        ; mulps         %xmm8,%xmm3
24453  DB  65,15,88,217                        ; addps         %xmm9,%xmm3
24454  DB  72,173                              ; lods          %ds:(%rsi),%rax
24455  DB  255,224                             ; jmpq          *%rax
24456
24457PUBLIC _sk_xy_to_unit_angle_sse2
24458_sk_xy_to_unit_angle_sse2 LABEL PROC
24459  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
24460  DB  15,87,192                           ; xorps         %xmm0,%xmm0
24461  DB  69,15,87,201                        ; xorps         %xmm9,%xmm9
24462  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24463  DB  69,15,84,200                        ; andps         %xmm8,%xmm9
24464  DB  69,15,87,210                        ; xorps         %xmm10,%xmm10
24465  DB  68,15,92,209                        ; subps         %xmm1,%xmm10
24466  DB  68,15,84,209                        ; andps         %xmm1,%xmm10
24467  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
24468  DB  69,15,93,218                        ; minps         %xmm10,%xmm11
24469  DB  69,15,40,225                        ; movaps        %xmm9,%xmm12
24470  DB  69,15,95,226                        ; maxps         %xmm10,%xmm12
24471  DB  69,15,94,220                        ; divps         %xmm12,%xmm11
24472  DB  69,15,40,227                        ; movaps        %xmm11,%xmm12
24473  DB  69,15,89,228                        ; mulps         %xmm12,%xmm12
24474  DB  68,15,40,45,239,19,0,0              ; movaps        0x13ef(%rip),%xmm13        # 65f0 <_sk_callback_sse2+0xfc7>
24475  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
24476  DB  68,15,88,45,243,19,0,0              ; addps         0x13f3(%rip),%xmm13        # 6600 <_sk_callback_sse2+0xfd7>
24477  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
24478  DB  68,15,88,45,247,19,0,0              ; addps         0x13f7(%rip),%xmm13        # 6610 <_sk_callback_sse2+0xfe7>
24479  DB  69,15,89,236                        ; mulps         %xmm12,%xmm13
24480  DB  68,15,88,45,251,19,0,0              ; addps         0x13fb(%rip),%xmm13        # 6620 <_sk_callback_sse2+0xff7>
24481  DB  69,15,89,235                        ; mulps         %xmm11,%xmm13
24482  DB  69,15,194,202,1                     ; cmpltps       %xmm10,%xmm9
24483  DB  68,15,40,21,250,19,0,0              ; movaps        0x13fa(%rip),%xmm10        # 6630 <_sk_callback_sse2+0x1007>
24484  DB  69,15,92,213                        ; subps         %xmm13,%xmm10
24485  DB  69,15,84,209                        ; andps         %xmm9,%xmm10
24486  DB  69,15,85,205                        ; andnps        %xmm13,%xmm9
24487  DB  69,15,86,202                        ; orps          %xmm10,%xmm9
24488  DB  68,15,194,192,1                     ; cmpltps       %xmm0,%xmm8
24489  DB  68,15,40,21,237,19,0,0              ; movaps        0x13ed(%rip),%xmm10        # 6640 <_sk_callback_sse2+0x1017>
24490  DB  69,15,92,209                        ; subps         %xmm9,%xmm10
24491  DB  69,15,84,208                        ; andps         %xmm8,%xmm10
24492  DB  69,15,85,193                        ; andnps        %xmm9,%xmm8
24493  DB  69,15,86,194                        ; orps          %xmm10,%xmm8
24494  DB  68,15,40,201                        ; movaps        %xmm1,%xmm9
24495  DB  68,15,194,200,1                     ; cmpltps       %xmm0,%xmm9
24496  DB  68,15,40,21,220,19,0,0              ; movaps        0x13dc(%rip),%xmm10        # 6650 <_sk_callback_sse2+0x1027>
24497  DB  69,15,92,208                        ; subps         %xmm8,%xmm10
24498  DB  69,15,84,209                        ; andps         %xmm9,%xmm10
24499  DB  69,15,85,200                        ; andnps        %xmm8,%xmm9
24500  DB  69,15,86,202                        ; orps          %xmm10,%xmm9
24501  DB  65,15,194,193,7                     ; cmpordps      %xmm9,%xmm0
24502  DB  65,15,84,193                        ; andps         %xmm9,%xmm0
24503  DB  72,173                              ; lods          %ds:(%rsi),%rax
24504  DB  255,224                             ; jmpq          *%rax
24505
24506PUBLIC _sk_xy_to_radius_sse2
24507_sk_xy_to_radius_sse2 LABEL PROC
24508  DB  15,89,192                           ; mulps         %xmm0,%xmm0
24509  DB  68,15,40,193                        ; movaps        %xmm1,%xmm8
24510  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
24511  DB  68,15,88,192                        ; addps         %xmm0,%xmm8
24512  DB  65,15,81,192                        ; sqrtps        %xmm8,%xmm0
24513  DB  72,173                              ; lods          %ds:(%rsi),%rax
24514  DB  255,224                             ; jmpq          *%rax
24515
24516PUBLIC _sk_save_xy_sse2
24517_sk_save_xy_sse2 LABEL PROC
24518  DB  72,173                              ; lods          %ds:(%rsi),%rax
24519  DB  68,15,40,5,174,19,0,0               ; movaps        0x13ae(%rip),%xmm8        # 6660 <_sk_callback_sse2+0x1037>
24520  DB  15,17,0                             ; movups        %xmm0,(%rax)
24521  DB  68,15,40,200                        ; movaps        %xmm0,%xmm9
24522  DB  69,15,88,200                        ; addps         %xmm8,%xmm9
24523  DB  243,69,15,91,209                    ; cvttps2dq     %xmm9,%xmm10
24524  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
24525  DB  69,15,40,217                        ; movaps        %xmm9,%xmm11
24526  DB  69,15,194,218,1                     ; cmpltps       %xmm10,%xmm11
24527  DB  68,15,40,37,153,19,0,0              ; movaps        0x1399(%rip),%xmm12        # 6670 <_sk_callback_sse2+0x1047>
24528  DB  69,15,84,220                        ; andps         %xmm12,%xmm11
24529  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
24530  DB  69,15,92,202                        ; subps         %xmm10,%xmm9
24531  DB  68,15,88,193                        ; addps         %xmm1,%xmm8
24532  DB  243,69,15,91,208                    ; cvttps2dq     %xmm8,%xmm10
24533  DB  69,15,91,210                        ; cvtdq2ps      %xmm10,%xmm10
24534  DB  69,15,40,216                        ; movaps        %xmm8,%xmm11
24535  DB  69,15,194,218,1                     ; cmpltps       %xmm10,%xmm11
24536  DB  69,15,84,220                        ; andps         %xmm12,%xmm11
24537  DB  69,15,92,211                        ; subps         %xmm11,%xmm10
24538  DB  69,15,92,194                        ; subps         %xmm10,%xmm8
24539  DB  15,17,72,32                         ; movups        %xmm1,0x20(%rax)
24540  DB  68,15,17,72,64                      ; movups        %xmm9,0x40(%rax)
24541  DB  68,15,17,64,96                      ; movups        %xmm8,0x60(%rax)
24542  DB  72,173                              ; lods          %ds:(%rsi),%rax
24543  DB  255,224                             ; jmpq          *%rax
24544
24545PUBLIC _sk_accumulate_sse2
24546_sk_accumulate_sse2 LABEL PROC
24547  DB  72,173                              ; lods          %ds:(%rsi),%rax
24548  DB  68,15,16,128,128,0,0,0              ; movups        0x80(%rax),%xmm8
24549  DB  68,15,16,136,160,0,0,0              ; movups        0xa0(%rax),%xmm9
24550  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
24551  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
24552  DB  68,15,89,192                        ; mulps         %xmm0,%xmm8
24553  DB  65,15,88,224                        ; addps         %xmm8,%xmm4
24554  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
24555  DB  68,15,89,193                        ; mulps         %xmm1,%xmm8
24556  DB  65,15,88,232                        ; addps         %xmm8,%xmm5
24557  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
24558  DB  68,15,89,194                        ; mulps         %xmm2,%xmm8
24559  DB  65,15,88,240                        ; addps         %xmm8,%xmm6
24560  DB  68,15,89,203                        ; mulps         %xmm3,%xmm9
24561  DB  65,15,88,249                        ; addps         %xmm9,%xmm7
24562  DB  72,173                              ; lods          %ds:(%rsi),%rax
24563  DB  255,224                             ; jmpq          *%rax
24564
24565PUBLIC _sk_bilinear_nx_sse2
24566_sk_bilinear_nx_sse2 LABEL PROC
24567  DB  72,173                              ; lods          %ds:(%rsi),%rax
24568  DB  15,16,0                             ; movups        (%rax),%xmm0
24569  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
24570  DB  15,88,5,18,19,0,0                   ; addps         0x1312(%rip),%xmm0        # 6680 <_sk_callback_sse2+0x1057>
24571  DB  68,15,40,13,26,19,0,0               ; movaps        0x131a(%rip),%xmm9        # 6690 <_sk_callback_sse2+0x1067>
24572  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24573  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
24574  DB  72,173                              ; lods          %ds:(%rsi),%rax
24575  DB  255,224                             ; jmpq          *%rax
24576
24577PUBLIC _sk_bilinear_px_sse2
24578_sk_bilinear_px_sse2 LABEL PROC
24579  DB  72,173                              ; lods          %ds:(%rsi),%rax
24580  DB  15,16,0                             ; movups        (%rax),%xmm0
24581  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
24582  DB  15,88,5,9,19,0,0                    ; addps         0x1309(%rip),%xmm0        # 66a0 <_sk_callback_sse2+0x1077>
24583  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
24584  DB  72,173                              ; lods          %ds:(%rsi),%rax
24585  DB  255,224                             ; jmpq          *%rax
24586
24587PUBLIC _sk_bilinear_ny_sse2
24588_sk_bilinear_ny_sse2 LABEL PROC
24589  DB  72,173                              ; lods          %ds:(%rsi),%rax
24590  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24591  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
24592  DB  15,88,13,251,18,0,0                 ; addps         0x12fb(%rip),%xmm1        # 66b0 <_sk_callback_sse2+0x1087>
24593  DB  68,15,40,13,3,19,0,0                ; movaps        0x1303(%rip),%xmm9        # 66c0 <_sk_callback_sse2+0x1097>
24594  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24595  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
24596  DB  72,173                              ; lods          %ds:(%rsi),%rax
24597  DB  255,224                             ; jmpq          *%rax
24598
24599PUBLIC _sk_bilinear_py_sse2
24600_sk_bilinear_py_sse2 LABEL PROC
24601  DB  72,173                              ; lods          %ds:(%rsi),%rax
24602  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24603  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
24604  DB  15,88,13,241,18,0,0                 ; addps         0x12f1(%rip),%xmm1        # 66d0 <_sk_callback_sse2+0x10a7>
24605  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
24606  DB  72,173                              ; lods          %ds:(%rsi),%rax
24607  DB  255,224                             ; jmpq          *%rax
24608
24609PUBLIC _sk_bicubic_n3x_sse2
24610_sk_bicubic_n3x_sse2 LABEL PROC
24611  DB  72,173                              ; lods          %ds:(%rsi),%rax
24612  DB  15,16,0                             ; movups        (%rax),%xmm0
24613  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
24614  DB  15,88,5,228,18,0,0                  ; addps         0x12e4(%rip),%xmm0        # 66e0 <_sk_callback_sse2+0x10b7>
24615  DB  68,15,40,13,236,18,0,0              ; movaps        0x12ec(%rip),%xmm9        # 66f0 <_sk_callback_sse2+0x10c7>
24616  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24617  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
24618  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
24619  DB  68,15,89,13,232,18,0,0              ; mulps         0x12e8(%rip),%xmm9        # 6700 <_sk_callback_sse2+0x10d7>
24620  DB  68,15,88,13,240,18,0,0              ; addps         0x12f0(%rip),%xmm9        # 6710 <_sk_callback_sse2+0x10e7>
24621  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
24622  DB  68,15,17,136,128,0,0,0              ; movups        %xmm9,0x80(%rax)
24623  DB  72,173                              ; lods          %ds:(%rsi),%rax
24624  DB  255,224                             ; jmpq          *%rax
24625
24626PUBLIC _sk_bicubic_n1x_sse2
24627_sk_bicubic_n1x_sse2 LABEL PROC
24628  DB  72,173                              ; lods          %ds:(%rsi),%rax
24629  DB  15,16,0                             ; movups        (%rax),%xmm0
24630  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
24631  DB  15,88,5,223,18,0,0                  ; addps         0x12df(%rip),%xmm0        # 6720 <_sk_callback_sse2+0x10f7>
24632  DB  68,15,40,13,231,18,0,0              ; movaps        0x12e7(%rip),%xmm9        # 6730 <_sk_callback_sse2+0x1107>
24633  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24634  DB  68,15,40,5,235,18,0,0               ; movaps        0x12eb(%rip),%xmm8        # 6740 <_sk_callback_sse2+0x1117>
24635  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24636  DB  68,15,88,5,239,18,0,0               ; addps         0x12ef(%rip),%xmm8        # 6750 <_sk_callback_sse2+0x1127>
24637  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24638  DB  68,15,88,5,243,18,0,0               ; addps         0x12f3(%rip),%xmm8        # 6760 <_sk_callback_sse2+0x1137>
24639  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24640  DB  68,15,88,5,247,18,0,0               ; addps         0x12f7(%rip),%xmm8        # 6770 <_sk_callback_sse2+0x1147>
24641  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
24642  DB  72,173                              ; lods          %ds:(%rsi),%rax
24643  DB  255,224                             ; jmpq          *%rax
24644
24645PUBLIC _sk_bicubic_p1x_sse2
24646_sk_bicubic_p1x_sse2 LABEL PROC
24647  DB  72,173                              ; lods          %ds:(%rsi),%rax
24648  DB  68,15,40,5,241,18,0,0               ; movaps        0x12f1(%rip),%xmm8        # 6780 <_sk_callback_sse2+0x1157>
24649  DB  15,16,0                             ; movups        (%rax),%xmm0
24650  DB  68,15,16,72,64                      ; movups        0x40(%rax),%xmm9
24651  DB  65,15,88,192                        ; addps         %xmm8,%xmm0
24652  DB  68,15,40,21,237,18,0,0              ; movaps        0x12ed(%rip),%xmm10        # 6790 <_sk_callback_sse2+0x1167>
24653  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24654  DB  68,15,88,21,241,18,0,0              ; addps         0x12f1(%rip),%xmm10        # 67a0 <_sk_callback_sse2+0x1177>
24655  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24656  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
24657  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24658  DB  68,15,88,21,237,18,0,0              ; addps         0x12ed(%rip),%xmm10        # 67b0 <_sk_callback_sse2+0x1187>
24659  DB  68,15,17,144,128,0,0,0              ; movups        %xmm10,0x80(%rax)
24660  DB  72,173                              ; lods          %ds:(%rsi),%rax
24661  DB  255,224                             ; jmpq          *%rax
24662
24663PUBLIC _sk_bicubic_p3x_sse2
24664_sk_bicubic_p3x_sse2 LABEL PROC
24665  DB  72,173                              ; lods          %ds:(%rsi),%rax
24666  DB  15,16,0                             ; movups        (%rax),%xmm0
24667  DB  68,15,16,64,64                      ; movups        0x40(%rax),%xmm8
24668  DB  15,88,5,224,18,0,0                  ; addps         0x12e0(%rip),%xmm0        # 67c0 <_sk_callback_sse2+0x1197>
24669  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
24670  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
24671  DB  68,15,89,5,224,18,0,0               ; mulps         0x12e0(%rip),%xmm8        # 67d0 <_sk_callback_sse2+0x11a7>
24672  DB  68,15,88,5,232,18,0,0               ; addps         0x12e8(%rip),%xmm8        # 67e0 <_sk_callback_sse2+0x11b7>
24673  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24674  DB  68,15,17,128,128,0,0,0              ; movups        %xmm8,0x80(%rax)
24675  DB  72,173                              ; lods          %ds:(%rsi),%rax
24676  DB  255,224                             ; jmpq          *%rax
24677
24678PUBLIC _sk_bicubic_n3y_sse2
24679_sk_bicubic_n3y_sse2 LABEL PROC
24680  DB  72,173                              ; lods          %ds:(%rsi),%rax
24681  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24682  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
24683  DB  15,88,13,214,18,0,0                 ; addps         0x12d6(%rip),%xmm1        # 67f0 <_sk_callback_sse2+0x11c7>
24684  DB  68,15,40,13,222,18,0,0              ; movaps        0x12de(%rip),%xmm9        # 6800 <_sk_callback_sse2+0x11d7>
24685  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24686  DB  69,15,40,193                        ; movaps        %xmm9,%xmm8
24687  DB  69,15,89,192                        ; mulps         %xmm8,%xmm8
24688  DB  68,15,89,13,218,18,0,0              ; mulps         0x12da(%rip),%xmm9        # 6810 <_sk_callback_sse2+0x11e7>
24689  DB  68,15,88,13,226,18,0,0              ; addps         0x12e2(%rip),%xmm9        # 6820 <_sk_callback_sse2+0x11f7>
24690  DB  69,15,89,200                        ; mulps         %xmm8,%xmm9
24691  DB  68,15,17,136,160,0,0,0              ; movups        %xmm9,0xa0(%rax)
24692  DB  72,173                              ; lods          %ds:(%rsi),%rax
24693  DB  255,224                             ; jmpq          *%rax
24694
24695PUBLIC _sk_bicubic_n1y_sse2
24696_sk_bicubic_n1y_sse2 LABEL PROC
24697  DB  72,173                              ; lods          %ds:(%rsi),%rax
24698  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24699  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
24700  DB  15,88,13,208,18,0,0                 ; addps         0x12d0(%rip),%xmm1        # 6830 <_sk_callback_sse2+0x1207>
24701  DB  68,15,40,13,216,18,0,0              ; movaps        0x12d8(%rip),%xmm9        # 6840 <_sk_callback_sse2+0x1217>
24702  DB  69,15,92,200                        ; subps         %xmm8,%xmm9
24703  DB  68,15,40,5,220,18,0,0               ; movaps        0x12dc(%rip),%xmm8        # 6850 <_sk_callback_sse2+0x1227>
24704  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24705  DB  68,15,88,5,224,18,0,0               ; addps         0x12e0(%rip),%xmm8        # 6860 <_sk_callback_sse2+0x1237>
24706  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24707  DB  68,15,88,5,228,18,0,0               ; addps         0x12e4(%rip),%xmm8        # 6870 <_sk_callback_sse2+0x1247>
24708  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24709  DB  68,15,88,5,232,18,0,0               ; addps         0x12e8(%rip),%xmm8        # 6880 <_sk_callback_sse2+0x1257>
24710  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
24711  DB  72,173                              ; lods          %ds:(%rsi),%rax
24712  DB  255,224                             ; jmpq          *%rax
24713
24714PUBLIC _sk_bicubic_p1y_sse2
24715_sk_bicubic_p1y_sse2 LABEL PROC
24716  DB  72,173                              ; lods          %ds:(%rsi),%rax
24717  DB  68,15,40,5,226,18,0,0               ; movaps        0x12e2(%rip),%xmm8        # 6890 <_sk_callback_sse2+0x1267>
24718  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24719  DB  68,15,16,72,96                      ; movups        0x60(%rax),%xmm9
24720  DB  65,15,88,200                        ; addps         %xmm8,%xmm1
24721  DB  68,15,40,21,221,18,0,0              ; movaps        0x12dd(%rip),%xmm10        # 68a0 <_sk_callback_sse2+0x1277>
24722  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24723  DB  68,15,88,21,225,18,0,0              ; addps         0x12e1(%rip),%xmm10        # 68b0 <_sk_callback_sse2+0x1287>
24724  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24725  DB  69,15,88,208                        ; addps         %xmm8,%xmm10
24726  DB  69,15,89,209                        ; mulps         %xmm9,%xmm10
24727  DB  68,15,88,21,221,18,0,0              ; addps         0x12dd(%rip),%xmm10        # 68c0 <_sk_callback_sse2+0x1297>
24728  DB  68,15,17,144,160,0,0,0              ; movups        %xmm10,0xa0(%rax)
24729  DB  72,173                              ; lods          %ds:(%rsi),%rax
24730  DB  255,224                             ; jmpq          *%rax
24731
24732PUBLIC _sk_bicubic_p3y_sse2
24733_sk_bicubic_p3y_sse2 LABEL PROC
24734  DB  72,173                              ; lods          %ds:(%rsi),%rax
24735  DB  15,16,72,32                         ; movups        0x20(%rax),%xmm1
24736  DB  68,15,16,64,96                      ; movups        0x60(%rax),%xmm8
24737  DB  15,88,13,207,18,0,0                 ; addps         0x12cf(%rip),%xmm1        # 68d0 <_sk_callback_sse2+0x12a7>
24738  DB  69,15,40,200                        ; movaps        %xmm8,%xmm9
24739  DB  69,15,89,201                        ; mulps         %xmm9,%xmm9
24740  DB  68,15,89,5,207,18,0,0               ; mulps         0x12cf(%rip),%xmm8        # 68e0 <_sk_callback_sse2+0x12b7>
24741  DB  68,15,88,5,215,18,0,0               ; addps         0x12d7(%rip),%xmm8        # 68f0 <_sk_callback_sse2+0x12c7>
24742  DB  69,15,89,193                        ; mulps         %xmm9,%xmm8
24743  DB  68,15,17,128,160,0,0,0              ; movups        %xmm8,0xa0(%rax)
24744  DB  72,173                              ; lods          %ds:(%rsi),%rax
24745  DB  255,224                             ; jmpq          *%rax
24746
24747PUBLIC _sk_callback_sse2
24748_sk_callback_sse2 LABEL PROC
24749  DB  85                                  ; push          %rbp
24750  DB  72,137,229                          ; mov           %rsp,%rbp
24751  DB  65,87                               ; push          %r15
24752  DB  65,86                               ; push          %r14
24753  DB  65,84                               ; push          %r12
24754  DB  83                                  ; push          %rbx
24755  DB  72,131,236,32                       ; sub           $0x20,%rsp
24756  DB  68,15,40,197                        ; movaps        %xmm5,%xmm8
24757  DB  68,15,40,204                        ; movaps        %xmm4,%xmm9
24758  DB  77,137,196                          ; mov           %r8,%r12
24759  DB  73,137,206                          ; mov           %rcx,%r14
24760  DB  73,137,215                          ; mov           %rdx,%r15
24761  DB  72,173                              ; lods          %ds:(%rsi),%rax
24762  DB  72,137,195                          ; mov           %rax,%rbx
24763  DB  15,40,224                           ; movaps        %xmm0,%xmm4
24764  DB  15,20,225                           ; unpcklps      %xmm1,%xmm4
24765  DB  15,40,234                           ; movaps        %xmm2,%xmm5
24766  DB  15,20,235                           ; unpcklps      %xmm3,%xmm5
24767  DB  15,21,193                           ; unpckhps      %xmm1,%xmm0
24768  DB  15,21,211                           ; unpckhps      %xmm3,%xmm2
24769  DB  15,40,204                           ; movaps        %xmm4,%xmm1
24770  DB  102,15,20,205                       ; unpcklpd      %xmm5,%xmm1
24771  DB  15,18,236                           ; movhlps       %xmm4,%xmm5
24772  DB  15,40,216                           ; movaps        %xmm0,%xmm3
24773  DB  102,15,20,218                       ; unpcklpd      %xmm2,%xmm3
24774  DB  102,15,17,75,8                      ; movupd        %xmm1,0x8(%rbx)
24775  DB  15,18,208                           ; movhlps       %xmm0,%xmm2
24776  DB  15,17,107,24                        ; movups        %xmm5,0x18(%rbx)
24777  DB  102,15,17,91,40                     ; movupd        %xmm3,0x28(%rbx)
24778  DB  15,17,83,56                         ; movups        %xmm2,0x38(%rbx)
24779  DB  77,133,228                          ; test          %r12,%r12
24780  DB  186,4,0,0,0                         ; mov           $0x4,%edx
24781  DB  65,15,69,212                        ; cmovne        %r12d,%edx
24782  DB  72,137,217                          ; mov           %rbx,%rcx
24783  DB  255,19                              ; callq         *(%rbx)
24784  DB  72,139,131,136,0,0,0                ; mov           0x88(%rbx),%rax
24785  DB  15,16,32                            ; movups        (%rax),%xmm4
24786  DB  15,16,64,16                         ; movups        0x10(%rax),%xmm0
24787  DB  15,16,88,32                         ; movups        0x20(%rax),%xmm3
24788  DB  15,16,80,48                         ; movups        0x30(%rax),%xmm2
24789  DB  15,40,236                           ; movaps        %xmm4,%xmm5
24790  DB  15,20,232                           ; unpcklps      %xmm0,%xmm5
24791  DB  15,40,203                           ; movaps        %xmm3,%xmm1
24792  DB  15,20,202                           ; unpcklps      %xmm2,%xmm1
24793  DB  15,21,224                           ; unpckhps      %xmm0,%xmm4
24794  DB  15,21,218                           ; unpckhps      %xmm2,%xmm3
24795  DB  15,40,197                           ; movaps        %xmm5,%xmm0
24796  DB  102,15,20,193                       ; unpcklpd      %xmm1,%xmm0
24797  DB  15,18,205                           ; movhlps       %xmm5,%xmm1
24798  DB  15,40,212                           ; movaps        %xmm4,%xmm2
24799  DB  102,15,20,211                       ; unpcklpd      %xmm3,%xmm2
24800  DB  15,18,220                           ; movhlps       %xmm4,%xmm3
24801  DB  72,173                              ; lods          %ds:(%rsi),%rax
24802  DB  76,137,250                          ; mov           %r15,%rdx
24803  DB  76,137,241                          ; mov           %r14,%rcx
24804  DB  77,137,224                          ; mov           %r12,%r8
24805  DB  65,15,40,225                        ; movaps        %xmm9,%xmm4
24806  DB  65,15,40,232                        ; movaps        %xmm8,%xmm5
24807  DB  72,131,196,32                       ; add           $0x20,%rsp
24808  DB  91                                  ; pop           %rbx
24809  DB  65,92                               ; pop           %r12
24810  DB  65,94                               ; pop           %r14
24811  DB  65,95                               ; pop           %r15
24812  DB  93                                  ; pop           %rbp
24813  DB  255,224                             ; jmpq          *%rax
24814
24815ALIGN 16
24816  DB  0,0                                 ; add           %al,(%rax)
24817  DB  0,63                                ; add           %bh,(%rdi)
24818  DB  0,0                                 ; add           %al,(%rax)
24819  DB  0,63                                ; add           %bh,(%rdi)
24820  DB  0,0                                 ; add           %al,(%rax)
24821  DB  0,63                                ; add           %bh,(%rdi)
24822  DB  0,0                                 ; add           %al,(%rax)
24823  DB  0,63                                ; add           %bh,(%rdi)
24824  DB  0,0                                 ; add           %al,(%rax)
24825  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24826  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24827  DB  63                                  ; (bad)
24828  DB  0,0                                 ; add           %al,(%rax)
24829  DB  128,63,1                            ; cmpb          $0x1,(%rdi)
24830  DB  0,0                                 ; add           %al,(%rax)
24831  DB  0,1                                 ; add           %al,(%rcx)
24832  DB  0,0                                 ; add           %al,(%rax)
24833  DB  0,1                                 ; add           %al,(%rcx)
24834  DB  0,0                                 ; add           %al,(%rax)
24835  DB  0,1                                 ; add           %al,(%rcx)
24836  DB  0,0                                 ; add           %al,(%rax)
24837  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
24838  DB  0,0                                 ; add           %al,(%rax)
24839  DB  4,0                                 ; add           $0x0,%al
24840  DB  0,0                                 ; add           %al,(%rax)
24841  DB  4,0                                 ; add           $0x0,%al
24842  DB  0,0                                 ; add           %al,(%rax)
24843  DB  4,0                                 ; add           $0x0,%al
24844  DB  0,0                                 ; add           %al,(%rax)
24845  DB  2,0                                 ; add           (%rax),%al
24846  DB  0,0                                 ; add           %al,(%rax)
24847  DB  2,0                                 ; add           (%rax),%al
24848  DB  0,0                                 ; add           %al,(%rax)
24849  DB  2,0                                 ; add           (%rax),%al
24850  DB  0,0                                 ; add           %al,(%rax)
24851  DB  2,0                                 ; add           (%rax),%al
24852  DB  0,0                                 ; add           %al,(%rax)
24853  DB  0,0                                 ; add           %al,(%rax)
24854  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
24855  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
24856  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
24857  DB  128,60,0,0                          ; cmpb          $0x0,(%rax,%rax,1)
24858  DB  252                                 ; cld
24859  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
24860  DB  0,0                                 ; add           %al,(%rax)
24861  DB  252                                 ; cld
24862  DB  190,0,0,252,190                     ; mov           $0xbefc0000,%esi
24863  DB  0,0                                 ; add           %al,(%rax)
24864  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24865  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24866  DB  63                                  ; (bad)
24867  DB  0,0                                 ; add           %al,(%rax)
24868  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24869  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24870  DB  63                                  ; (bad)
24871  DB  0,0                                 ; add           %al,(%rax)
24872  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24873  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24874  DB  63                                  ; (bad)
24875  DB  0,0                                 ; add           %al,(%rax)
24876  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24877  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24878  DB  63                                  ; (bad)
24879  DB  0,0                                 ; add           %al,(%rax)
24880  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24881  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24882  DB  63                                  ; (bad)
24883  DB  0,0                                 ; add           %al,(%rax)
24884  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24885  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24886  DB  63                                  ; (bad)
24887  DB  0,0                                 ; add           %al,(%rax)
24888  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24889  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24890  DB  63                                  ; (bad)
24891  DB  0,0                                 ; add           %al,(%rax)
24892  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24893  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24894  DB  63                                  ; (bad)
24895  DB  0,0                                 ; add           %al,(%rax)
24896  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24897  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24898  DB  63                                  ; (bad)
24899  DB  0,0                                 ; add           %al,(%rax)
24900  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24901  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24902  DB  63                                  ; (bad)
24903  DB  0,0                                 ; add           %al,(%rax)
24904  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24905  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24906  DB  63                                  ; (bad)
24907  DB  0,0                                 ; add           %al,(%rax)
24908  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24909  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24910  DB  63                                  ; (bad)
24911  DB  0,0                                 ; add           %al,(%rax)
24912  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24913  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24914  DB  63                                  ; (bad)
24915  DB  0,0                                 ; add           %al,(%rax)
24916  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24917  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24918  DB  63                                  ; (bad)
24919  DB  0,0                                 ; add           %al,(%rax)
24920  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24921  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24922  DB  63                                  ; (bad)
24923  DB  0,0                                 ; add           %al,(%rax)
24924  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24925  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24926  DB  63                                  ; (bad)
24927  DB  0,0                                 ; add           %al,(%rax)
24928  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24929  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24930  DB  63                                  ; (bad)
24931  DB  0,0                                 ; add           %al,(%rax)
24932  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24933  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24934  DB  63                                  ; (bad)
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,0                            ; cmpb          $0x0,(%rdi)
24941  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24942  DB  63                                  ; (bad)
24943  DB  0,0                                 ; add           %al,(%rax)
24944  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24945  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24946  DB  63                                  ; (bad)
24947  DB  0,0                                 ; add           %al,(%rax)
24948  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24949  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24950  DB  63                                  ; (bad)
24951  DB  0,0                                 ; add           %al,(%rax)
24952  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24953  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24954  DB  191,0,0,128,191                     ; mov           $0xbf800000,%edi
24955  DB  0,0                                 ; add           %al,(%rax)
24956  DB  128,191,0,0,128,191,0               ; cmpb          $0x0,-0x40800000(%rdi)
24957  DB  0,224                               ; add           %ah,%al
24958  DB  64,0,0                              ; add           %al,(%rax)
24959  DB  224,64                              ; loopne        58d8 <.literal16+0x1d8>
24960  DB  0,0                                 ; add           %al,(%rax)
24961  DB  224,64                              ; loopne        58dc <.literal16+0x1dc>
24962  DB  0,0                                 ; add           %al,(%rax)
24963  DB  224,64                              ; loopne        58e0 <.literal16+0x1e0>
24964  DB  154                                 ; (bad)
24965  DB  153                                 ; cltd
24966  DB  153                                 ; cltd
24967  DB  62,154                              ; ds            (bad)
24968  DB  153                                 ; cltd
24969  DB  153                                 ; cltd
24970  DB  62,154                              ; ds            (bad)
24971  DB  153                                 ; cltd
24972  DB  153                                 ; cltd
24973  DB  62,154                              ; ds            (bad)
24974  DB  153                                 ; cltd
24975  DB  153                                 ; cltd
24976  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
24977  DB  10,23                               ; or            (%rdi),%dl
24978  DB  63                                  ; (bad)
24979  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
24980  DB  10,23                               ; or            (%rdi),%dl
24981  DB  63                                  ; (bad)
24982  DB  174                                 ; scas          %es:(%rdi),%al
24983  DB  71,225,61                           ; rex.RXB       loope 5901 <.literal16+0x201>
24984  DB  174                                 ; scas          %es:(%rdi),%al
24985  DB  71,225,61                           ; rex.RXB       loope 5905 <.literal16+0x205>
24986  DB  174                                 ; scas          %es:(%rdi),%al
24987  DB  71,225,61                           ; rex.RXB       loope 5909 <.literal16+0x209>
24988  DB  174                                 ; scas          %es:(%rdi),%al
24989  DB  71,225,61                           ; rex.RXB       loope 590d <.literal16+0x20d>
24990  DB  0,0                                 ; add           %al,(%rax)
24991  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
24992  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
24993  DB  63                                  ; (bad)
24994  DB  0,0                                 ; add           %al,(%rax)
24995  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
24996  DB  153                                 ; cltd
24997  DB  153                                 ; cltd
24998  DB  62,154                              ; ds            (bad)
24999  DB  153                                 ; cltd
25000  DB  153                                 ; cltd
25001  DB  62,154                              ; ds            (bad)
25002  DB  153                                 ; cltd
25003  DB  153                                 ; cltd
25004  DB  62,154                              ; ds            (bad)
25005  DB  153                                 ; cltd
25006  DB  153                                 ; cltd
25007  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
25008  DB  10,23                               ; or            (%rdi),%dl
25009  DB  63                                  ; (bad)
25010  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
25011  DB  10,23                               ; or            (%rdi),%dl
25012  DB  63                                  ; (bad)
25013  DB  174                                 ; scas          %es:(%rdi),%al
25014  DB  71,225,61                           ; rex.RXB       loope 5941 <.literal16+0x241>
25015  DB  174                                 ; scas          %es:(%rdi),%al
25016  DB  71,225,61                           ; rex.RXB       loope 5945 <.literal16+0x245>
25017  DB  174                                 ; scas          %es:(%rdi),%al
25018  DB  71,225,61                           ; rex.RXB       loope 5949 <.literal16+0x249>
25019  DB  174                                 ; scas          %es:(%rdi),%al
25020  DB  71,225,61                           ; rex.RXB       loope 594d <.literal16+0x24d>
25021  DB  0,0                                 ; add           %al,(%rax)
25022  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25023  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25024  DB  63                                  ; (bad)
25025  DB  0,0                                 ; add           %al,(%rax)
25026  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
25027  DB  153                                 ; cltd
25028  DB  153                                 ; cltd
25029  DB  62,154                              ; ds            (bad)
25030  DB  153                                 ; cltd
25031  DB  153                                 ; cltd
25032  DB  62,154                              ; ds            (bad)
25033  DB  153                                 ; cltd
25034  DB  153                                 ; cltd
25035  DB  62,154                              ; ds            (bad)
25036  DB  153                                 ; cltd
25037  DB  153                                 ; cltd
25038  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
25039  DB  10,23                               ; or            (%rdi),%dl
25040  DB  63                                  ; (bad)
25041  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
25042  DB  10,23                               ; or            (%rdi),%dl
25043  DB  63                                  ; (bad)
25044  DB  174                                 ; scas          %es:(%rdi),%al
25045  DB  71,225,61                           ; rex.RXB       loope 5981 <.literal16+0x281>
25046  DB  174                                 ; scas          %es:(%rdi),%al
25047  DB  71,225,61                           ; rex.RXB       loope 5985 <.literal16+0x285>
25048  DB  174                                 ; scas          %es:(%rdi),%al
25049  DB  71,225,61                           ; rex.RXB       loope 5989 <.literal16+0x289>
25050  DB  174                                 ; scas          %es:(%rdi),%al
25051  DB  71,225,61                           ; rex.RXB       loope 598d <.literal16+0x28d>
25052  DB  0,0                                 ; add           %al,(%rax)
25053  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25054  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25055  DB  63                                  ; (bad)
25056  DB  0,0                                 ; add           %al,(%rax)
25057  DB  128,63,154                          ; cmpb          $0x9a,(%rdi)
25058  DB  153                                 ; cltd
25059  DB  153                                 ; cltd
25060  DB  62,154                              ; ds            (bad)
25061  DB  153                                 ; cltd
25062  DB  153                                 ; cltd
25063  DB  62,154                              ; ds            (bad)
25064  DB  153                                 ; cltd
25065  DB  153                                 ; cltd
25066  DB  62,154                              ; ds            (bad)
25067  DB  153                                 ; cltd
25068  DB  153                                 ; cltd
25069  DB  62,61,10,23,63,61                   ; ds            cmp $0x3d3f170a,%eax
25070  DB  10,23                               ; or            (%rdi),%dl
25071  DB  63                                  ; (bad)
25072  DB  61,10,23,63,61                      ; cmp           $0x3d3f170a,%eax
25073  DB  10,23                               ; or            (%rdi),%dl
25074  DB  63                                  ; (bad)
25075  DB  174                                 ; scas          %es:(%rdi),%al
25076  DB  71,225,61                           ; rex.RXB       loope 59c1 <.literal16+0x2c1>
25077  DB  174                                 ; scas          %es:(%rdi),%al
25078  DB  71,225,61                           ; rex.RXB       loope 59c5 <.literal16+0x2c5>
25079  DB  174                                 ; scas          %es:(%rdi),%al
25080  DB  71,225,61                           ; rex.RXB       loope 59c9 <.literal16+0x2c9>
25081  DB  174                                 ; scas          %es:(%rdi),%al
25082  DB  71,225,61                           ; rex.RXB       loope 59cd <.literal16+0x2cd>
25083  DB  0,0                                 ; add           %al,(%rax)
25084  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25085  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25086  DB  63                                  ; (bad)
25087  DB  0,0                                 ; add           %al,(%rax)
25088  DB  128,63,255                          ; cmpb          $0xff,(%rdi)
25089  DB  0,0                                 ; add           %al,(%rax)
25090  DB  0,255                               ; add           %bh,%bh
25091  DB  0,0                                 ; add           %al,(%rax)
25092  DB  0,255                               ; add           %bh,%bh
25093  DB  0,0                                 ; add           %al,(%rax)
25094  DB  0,255                               ; add           %bh,%bh
25095  DB  0,0                                 ; add           %al,(%rax)
25096  DB  0,0                                 ; add           %al,(%rax)
25097  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25098  DB  63                                  ; (bad)
25099  DB  0,0                                 ; add           %al,(%rax)
25100  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25101  DB  0,128,63,0,0,127                    ; add           %al,0x7f00003f(%rax)
25102  DB  67,0,0                              ; rex.XB        add %al,(%r8)
25103  DB  127,67                              ; jg            5a0b <.literal16+0x30b>
25104  DB  0,0                                 ; add           %al,(%rax)
25105  DB  127,67                              ; jg            5a0f <.literal16+0x30f>
25106  DB  0,0                                 ; add           %al,(%rax)
25107  DB  127,67                              ; jg            5a13 <.literal16+0x313>
25108  DB  0,0                                 ; add           %al,(%rax)
25109  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25110  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25111  DB  63                                  ; (bad)
25112  DB  0,0                                 ; add           %al,(%rax)
25113  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25114  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25115  DB  63                                  ; (bad)
25116  DB  0,0                                 ; add           %al,(%rax)
25117  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25118  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25119  DB  63                                  ; (bad)
25120  DB  0,0                                 ; add           %al,(%rax)
25121  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25122  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25123  DB  63                                  ; (bad)
25124  DB  145                                 ; xchg          %eax,%ecx
25125  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
25126  DB  145                                 ; xchg          %eax,%ecx
25127  DB  131,158,61,145,131,158,61           ; sbbl          $0x3d,-0x617c6ec3(%rsi)
25128  DB  154                                 ; (bad)
25129  DB  153                                 ; cltd
25130  DB  153                                 ; cltd
25131  DB  62,154                              ; ds            (bad)
25132  DB  153                                 ; cltd
25133  DB  153                                 ; cltd
25134  DB  62,154                              ; ds            (bad)
25135  DB  153                                 ; cltd
25136  DB  153                                 ; cltd
25137  DB  62,154                              ; ds            (bad)
25138  DB  153                                 ; cltd
25139  DB  153                                 ; cltd
25140  DB  62,92                               ; ds            pop %rsp
25141  DB  143                                 ; (bad)
25142  DB  50,63                               ; xor           (%rdi),%bh
25143  DB  92                                  ; pop           %rsp
25144  DB  143                                 ; (bad)
25145  DB  50,63                               ; xor           (%rdi),%bh
25146  DB  92                                  ; pop           %rsp
25147  DB  143                                 ; (bad)
25148  DB  50,63                               ; xor           (%rdi),%bh
25149  DB  92                                  ; pop           %rsp
25150  DB  143                                 ; (bad)
25151  DB  50,63                               ; xor           (%rdi),%bh
25152  DB  10,215                              ; or            %bh,%dl
25153  DB  35,59                               ; and           (%rbx),%edi
25154  DB  10,215                              ; or            %bh,%dl
25155  DB  35,59                               ; and           (%rbx),%edi
25156  DB  10,215                              ; or            %bh,%dl
25157  DB  35,59                               ; and           (%rbx),%edi
25158  DB  10,215                              ; or            %bh,%dl
25159  DB  35,59                               ; and           (%rbx),%edi
25160  DB  174                                 ; scas          %es:(%rdi),%al
25161  DB  71,97                               ; rex.RXB       (bad)
25162  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
25163  DB  174                                 ; scas          %es:(%rdi),%al
25164  DB  71,97                               ; rex.RXB       (bad)
25165  DB  61,174,71,97,61                     ; cmp           $0x3d6147ae,%eax
25166  DB  82                                  ; push          %rdx
25167  DB  184,78,65,82,184                    ; mov           $0xb852414e,%eax
25168  DB  78                                  ; rex.WRX
25169  DB  65,82                               ; push          %r10
25170  DB  184,78,65,82,184                    ; mov           $0xb852414e,%eax
25171  DB  78                                  ; rex.WRX
25172  DB  65,57,215                           ; cmp           %edx,%r15d
25173  DB  32,187,57,215,32,187                ; and           %bh,-0x44df28c7(%rbx)
25174  DB  57,215                              ; cmp           %edx,%edi
25175  DB  32,187,57,215,32,187                ; and           %bh,-0x44df28c7(%rbx)
25176  DB  186,159,98,60,186                   ; mov           $0xba3c629f,%edx
25177  DB  159                                 ; lahf
25178  DB  98                                  ; (bad)
25179  DB  60,186                              ; cmp           $0xba,%al
25180  DB  159                                 ; lahf
25181  DB  98                                  ; (bad)
25182  DB  60,186                              ; cmp           $0xba,%al
25183  DB  159                                 ; lahf
25184  DB  98                                  ; (bad)
25185  DB  60,109                              ; cmp           $0x6d,%al
25186  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
25187  DB  144                                 ; nop
25188  DB  63                                  ; (bad)
25189  DB  109                                 ; insl          (%dx),%es:(%rdi)
25190  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
25191  DB  144                                 ; nop
25192  DB  63                                  ; (bad)
25193  DB  109                                 ; insl          (%dx),%es:(%rdi)
25194  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
25195  DB  144                                 ; nop
25196  DB  63                                  ; (bad)
25197  DB  109                                 ; insl          (%dx),%es:(%rdi)
25198  DB  165                                 ; movsl         %ds:(%rsi),%es:(%rdi)
25199  DB  144                                 ; nop
25200  DB  63                                  ; (bad)
25201  DB  252                                 ; cld
25202  DB  191,16,62,252,191                   ; mov           $0xbffc3e10,%edi
25203  DB  16,62                               ; adc           %bh,(%rsi)
25204  DB  252                                 ; cld
25205  DB  191,16,62,252,191                   ; mov           $0xbffc3e10,%edi
25206  DB  16,62                               ; adc           %bh,(%rsi)
25207  DB  168,177                             ; test          $0xb1,%al
25208  DB  152                                 ; cwtl
25209  DB  59,168,177,152,59,168               ; cmp           -0x57c4674f(%rax),%ebp
25210  DB  177,152                             ; mov           $0x98,%cl
25211  DB  59,168,177,152,59,0                 ; cmp           0x3b98b1(%rax),%ebp
25212  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25213  DB  63                                  ; (bad)
25214  DB  0,0                                 ; add           %al,(%rax)
25215  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25216  DB  0,128,63,0,0,192                    ; add           %al,-0x3fffffc1(%rax)
25217  DB  64,0,0                              ; add           %al,(%rax)
25218  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
25219  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
25220  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
25221  DB  0,64,0                              ; add           %al,0x0(%rax)
25222  DB  0,0                                 ; add           %al,(%rax)
25223  DB  64,0,0                              ; add           %al,(%rax)
25224  DB  0,64,0                              ; add           %al,0x0(%rax)
25225  DB  0,0                                 ; add           %al,(%rax)
25226  DB  64,0,0                              ; add           %al,(%rax)
25227  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
25228  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
25229  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
25230  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
25231  DB  42,62                               ; sub           (%rsi),%bh
25232  DB  171                                 ; stos          %eax,%es:(%rdi)
25233  DB  170                                 ; stos          %al,%es:(%rdi)
25234  DB  42,62                               ; sub           (%rsi),%bh
25235  DB  171                                 ; stos          %eax,%es:(%rdi)
25236  DB  170                                 ; stos          %al,%es:(%rdi)
25237  DB  42,62                               ; sub           (%rsi),%bh
25238  DB  171                                 ; stos          %eax,%es:(%rdi)
25239  DB  170                                 ; stos          %al,%es:(%rdi)
25240  DB  42,62                               ; sub           (%rsi),%bh
25241  DB  0,0                                 ; add           %al,(%rax)
25242  DB  0,63                                ; add           %bh,(%rdi)
25243  DB  0,0                                 ; add           %al,(%rax)
25244  DB  0,63                                ; add           %bh,(%rdi)
25245  DB  0,0                                 ; add           %al,(%rax)
25246  DB  0,63                                ; add           %bh,(%rdi)
25247  DB  0,0                                 ; add           %al,(%rax)
25248  DB  0,63                                ; add           %bh,(%rdi)
25249  DB  0,0                                 ; add           %al,(%rax)
25250  DB  0,63                                ; add           %bh,(%rdi)
25251  DB  0,0                                 ; add           %al,(%rax)
25252  DB  0,63                                ; add           %bh,(%rdi)
25253  DB  0,0                                 ; add           %al,(%rax)
25254  DB  0,63                                ; add           %bh,(%rdi)
25255  DB  0,0                                 ; add           %al,(%rax)
25256  DB  0,63                                ; add           %bh,(%rdi)
25257  DB  171                                 ; stos          %eax,%es:(%rdi)
25258  DB  170                                 ; stos          %al,%es:(%rdi)
25259  DB  170                                 ; stos          %al,%es:(%rdi)
25260  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
25261  DB  170                                 ; stos          %al,%es:(%rdi)
25262  DB  170                                 ; stos          %al,%es:(%rdi)
25263  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
25264  DB  170                                 ; stos          %al,%es:(%rdi)
25265  DB  170                                 ; stos          %al,%es:(%rdi)
25266  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
25267  DB  170                                 ; stos          %al,%es:(%rdi)
25268  DB  170                                 ; stos          %al,%es:(%rdi)
25269  DB  62,0,0                              ; add           %al,%ds:(%rax)
25270  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25271  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25272  DB  63                                  ; (bad)
25273  DB  0,0                                 ; add           %al,(%rax)
25274  DB  128,63,171                          ; cmpb          $0xab,(%rdi)
25275  DB  170                                 ; stos          %al,%es:(%rdi)
25276  DB  42,63                               ; sub           (%rdi),%bh
25277  DB  171                                 ; stos          %eax,%es:(%rdi)
25278  DB  170                                 ; stos          %al,%es:(%rdi)
25279  DB  42,63                               ; sub           (%rdi),%bh
25280  DB  171                                 ; stos          %eax,%es:(%rdi)
25281  DB  170                                 ; stos          %al,%es:(%rdi)
25282  DB  42,63                               ; sub           (%rdi),%bh
25283  DB  171                                 ; stos          %eax,%es:(%rdi)
25284  DB  170                                 ; stos          %al,%es:(%rdi)
25285  DB  42,63                               ; sub           (%rdi),%bh
25286  DB  0,0                                 ; add           %al,(%rax)
25287  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
25288  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
25289  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
25290  DB  192,64,0,0                          ; rolb          $0x0,0x0(%rax)
25291  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
25292  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
25293  DB  128,64,0,0                          ; addb          $0x0,0x0(%rax)
25294  DB  128,64,171,170                      ; addb          $0xaa,-0x55(%rax)
25295  DB  42,62                               ; sub           (%rsi),%bh
25296  DB  171                                 ; stos          %eax,%es:(%rdi)
25297  DB  170                                 ; stos          %al,%es:(%rdi)
25298  DB  42,62                               ; sub           (%rsi),%bh
25299  DB  171                                 ; stos          %eax,%es:(%rdi)
25300  DB  170                                 ; stos          %al,%es:(%rdi)
25301  DB  42,62                               ; sub           (%rsi),%bh
25302  DB  171                                 ; stos          %eax,%es:(%rdi)
25303  DB  170                                 ; stos          %al,%es:(%rdi)
25304  DB  42,62                               ; sub           (%rsi),%bh
25305  DB  171                                 ; stos          %eax,%es:(%rdi)
25306  DB  170                                 ; stos          %al,%es:(%rdi)
25307  DB  170                                 ; stos          %al,%es:(%rdi)
25308  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
25309  DB  171                                 ; stos          %eax,%es:(%rdi)
25310  DB  170                                 ; stos          %al,%es:(%rdi)
25311  DB  170                                 ; stos          %al,%es:(%rdi)
25312  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
25313  DB  255,0                               ; incl          (%rax)
25314  DB  0,0                                 ; add           %al,(%rax)
25315  DB  255,0                               ; incl          (%rax)
25316  DB  0,0                                 ; add           %al,(%rax)
25317  DB  255,0                               ; incl          (%rax)
25318  DB  0,0                                 ; add           %al,(%rax)
25319  DB  255,0                               ; incl          (%rax)
25320  DB  0,0                                 ; add           %al,(%rax)
25321  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25322  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25323  DB  128,128,59,255,0,0,0                ; addb          $0x0,0xff3b(%rax)
25324  DB  255,0                               ; incl          (%rax)
25325  DB  0,0                                 ; add           %al,(%rax)
25326  DB  255,0                               ; incl          (%rax)
25327  DB  0,0                                 ; add           %al,(%rax)
25328  DB  255,0                               ; incl          (%rax)
25329  DB  0,0                                 ; add           %al,(%rax)
25330  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25331  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25332  DB  128,128,59,0,248,0,0                ; addb          $0x0,0xf8003b(%rax)
25333  DB  0,248                               ; add           %bh,%al
25334  DB  0,0                                 ; add           %al,(%rax)
25335  DB  0,248                               ; add           %bh,%al
25336  DB  0,0                                 ; add           %al,(%rax)
25337  DB  0,248                               ; add           %bh,%al
25338  DB  0,0                                 ; add           %al,(%rax)
25339  DB  8,33                                ; or            %ah,(%rcx)
25340  DB  132,55                              ; test          %dh,(%rdi)
25341  DB  8,33                                ; or            %ah,(%rcx)
25342  DB  132,55                              ; test          %dh,(%rdi)
25343  DB  8,33                                ; or            %ah,(%rcx)
25344  DB  132,55                              ; test          %dh,(%rdi)
25345  DB  8,33                                ; or            %ah,(%rcx)
25346  DB  132,55                              ; test          %dh,(%rdi)
25347  DB  224,7                               ; loopne        5bf9 <.literal16+0x4f9>
25348  DB  0,0                                 ; add           %al,(%rax)
25349  DB  224,7                               ; loopne        5bfd <.literal16+0x4fd>
25350  DB  0,0                                 ; add           %al,(%rax)
25351  DB  224,7                               ; loopne        5c01 <.literal16+0x501>
25352  DB  0,0                                 ; add           %al,(%rax)
25353  DB  224,7                               ; loopne        5c05 <.literal16+0x505>
25354  DB  0,0                                 ; add           %al,(%rax)
25355  DB  33,8                                ; and           %ecx,(%rax)
25356  DB  2,58                                ; add           (%rdx),%bh
25357  DB  33,8                                ; and           %ecx,(%rax)
25358  DB  2,58                                ; add           (%rdx),%bh
25359  DB  33,8                                ; and           %ecx,(%rax)
25360  DB  2,58                                ; add           (%rdx),%bh
25361  DB  33,8                                ; and           %ecx,(%rax)
25362  DB  2,58                                ; add           (%rdx),%bh
25363  DB  31                                  ; (bad)
25364  DB  0,0                                 ; add           %al,(%rax)
25365  DB  0,31                                ; add           %bl,(%rdi)
25366  DB  0,0                                 ; add           %al,(%rax)
25367  DB  0,31                                ; add           %bl,(%rdi)
25368  DB  0,0                                 ; add           %al,(%rax)
25369  DB  0,31                                ; add           %bl,(%rdi)
25370  DB  0,0                                 ; add           %al,(%rax)
25371  DB  0,8                                 ; add           %cl,(%rax)
25372  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
25373  DB  8,33                                ; or            %ah,(%rcx)
25374  DB  4,61                                ; add           $0x3d,%al
25375  DB  8,33                                ; or            %ah,(%rcx)
25376  DB  4,61                                ; add           $0x3d,%al
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,255,0,255,0              ; addb          $0x0,-0xff00c5(%rax)
25388  DB  255,0                               ; incl          (%rax)
25389  DB  255,0                               ; incl          (%rax)
25390  DB  0,0                                 ; add           %al,(%rax)
25391  DB  0,0                                 ; add           %al,(%rax)
25392  DB  0,0                                 ; add           %al,(%rax)
25393  DB  0,0                                 ; add           %al,(%rax)
25394  DB  128,0,128                           ; addb          $0x80,(%rax)
25395  DB  55                                  ; (bad)
25396  DB  128,0,128                           ; addb          $0x80,(%rax)
25397  DB  55                                  ; (bad)
25398  DB  128,0,128                           ; addb          $0x80,(%rax)
25399  DB  55                                  ; (bad)
25400  DB  128,0,128                           ; addb          $0x80,(%rax)
25401  DB  55                                  ; (bad)
25402  DB  255,0                               ; incl          (%rax)
25403  DB  255,0                               ; incl          (%rax)
25404  DB  255,0                               ; incl          (%rax)
25405  DB  255,0                               ; incl          (%rax)
25406  DB  0,0                                 ; add           %al,(%rax)
25407  DB  0,0                                 ; add           %al,(%rax)
25408  DB  0,0                                 ; add           %al,(%rax)
25409  DB  0,0                                 ; add           %al,(%rax)
25410  DB  0,0                                 ; add           %al,(%rax)
25411  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25412  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25413  DB  63                                  ; (bad)
25414  DB  0,0                                 ; add           %al,(%rax)
25415  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25416  DB  0,127,67                            ; add           %bh,0x43(%rdi)
25417  DB  0,0                                 ; add           %al,(%rax)
25418  DB  127,67                              ; jg            5cdb <.literal16+0x5db>
25419  DB  0,0                                 ; add           %al,(%rax)
25420  DB  127,67                              ; jg            5cdf <.literal16+0x5df>
25421  DB  0,0                                 ; add           %al,(%rax)
25422  DB  127,67                              ; jg            5ce3 <.literal16+0x5e3>
25423  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25424  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25425  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
25426  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25427  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
25428  DB  0,0                                 ; add           %al,(%rax)
25429  DB  52,0                                ; xor           $0x0,%al
25430  DB  0,0                                 ; add           %al,(%rax)
25431  DB  52,0                                ; xor           $0x0,%al
25432  DB  0,0                                 ; add           %al,(%rax)
25433  DB  52,0                                ; xor           $0x0,%al
25434  DB  0,0                                 ; add           %al,(%rax)
25435  DB  52,255                              ; xor           $0xff,%al
25436  DB  255                                 ; (bad)
25437  DB  127,0                               ; jg            5cd4 <.literal16+0x5d4>
25438  DB  255                                 ; (bad)
25439  DB  255                                 ; (bad)
25440  DB  127,0                               ; jg            5cd8 <.literal16+0x5d8>
25441  DB  255                                 ; (bad)
25442  DB  255                                 ; (bad)
25443  DB  127,0                               ; jg            5cdc <.literal16+0x5dc>
25444  DB  255                                 ; (bad)
25445  DB  255                                 ; (bad)
25446  DB  127,0                               ; jg            5ce0 <.literal16+0x5e0>
25447  DB  0,0                                 ; add           %al,(%rax)
25448  DB  0,63                                ; add           %bh,(%rdi)
25449  DB  0,0                                 ; add           %al,(%rax)
25450  DB  0,63                                ; add           %bh,(%rdi)
25451  DB  0,0                                 ; add           %al,(%rax)
25452  DB  0,63                                ; add           %bh,(%rdi)
25453  DB  0,0                                 ; add           %al,(%rax)
25454  DB  0,63                                ; add           %bh,(%rdi)
25455  DB  119,115                             ; ja            5d65 <.literal16+0x665>
25456  DB  248                                 ; clc
25457  DB  194,119,115                         ; retq          $0x7377
25458  DB  248                                 ; clc
25459  DB  194,119,115                         ; retq          $0x7377
25460  DB  248                                 ; clc
25461  DB  194,119,115                         ; retq          $0x7377
25462  DB  248                                 ; clc
25463  DB  194,117,191                         ; retq          $0xbf75
25464  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25465  DB  63                                  ; (bad)
25466  DB  117,191                             ; jne           5cc9 <.literal16+0x5c9>
25467  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25468  DB  63                                  ; (bad)
25469  DB  249                                 ; stc
25470  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25471  DB  249                                 ; stc
25472  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25473  DB  249                                 ; stc
25474  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25475  DB  249                                 ; stc
25476  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25477  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
25478  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a39d0a <_sk_callback_sse2+0xffffffffe9a346e1>
25479  DB  220,63                              ; fdivrl        (%rdi)
25480  DB  0,0                                 ; add           %al,(%rax)
25481  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25482  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25483  DB  63                                  ; (bad)
25484  DB  0,0                                 ; add           %al,(%rax)
25485  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
25486  DB  140,242                             ; mov           %?,%edx
25487  DB  66,81                               ; rex.X         push %rcx
25488  DB  140,242                             ; mov           %?,%edx
25489  DB  66,81                               ; rex.X         push %rcx
25490  DB  140,242                             ; mov           %?,%edx
25491  DB  66,81                               ; rex.X         push %rcx
25492  DB  140,242                             ; mov           %?,%edx
25493  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
25494  DB  63                                  ; (bad)
25495  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
25496  DB  63                                  ; (bad)
25497  DB  248                                 ; clc
25498  DB  245                                 ; cmc
25499  DB  154                                 ; (bad)
25500  DB  64,248                              ; rex           clc
25501  DB  245                                 ; cmc
25502  DB  154                                 ; (bad)
25503  DB  64,248                              ; rex           clc
25504  DB  245                                 ; cmc
25505  DB  154                                 ; (bad)
25506  DB  64,248                              ; rex           clc
25507  DB  245                                 ; cmc
25508  DB  154                                 ; (bad)
25509  DB  64,254                              ; rex           (bad)
25510  DB  210,221                             ; rcr           %cl,%ch
25511  DB  65,254                              ; rex.B         (bad)
25512  DB  210,221                             ; rcr           %cl,%ch
25513  DB  65,254                              ; rex.B         (bad)
25514  DB  210,221                             ; rcr           %cl,%ch
25515  DB  65,254                              ; rex.B         (bad)
25516  DB  210,221                             ; rcr           %cl,%ch
25517  DB  65,0,0                              ; add           %al,(%r8)
25518  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25519  DB  0,0                                 ; add           %al,(%rax)
25520  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25521  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25522  DB  0,0                                 ; add           %al,(%rax)
25523  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25524  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
25525  DB  0,0                                 ; add           %al,(%rax)
25526  DB  52,0                                ; xor           $0x0,%al
25527  DB  0,0                                 ; add           %al,(%rax)
25528  DB  52,0                                ; xor           $0x0,%al
25529  DB  0,0                                 ; add           %al,(%rax)
25530  DB  52,255                              ; xor           $0xff,%al
25531  DB  255                                 ; (bad)
25532  DB  127,0                               ; jg            5da4 <.literal16+0x6a4>
25533  DB  255                                 ; (bad)
25534  DB  255                                 ; (bad)
25535  DB  127,0                               ; jg            5da8 <.literal16+0x6a8>
25536  DB  255                                 ; (bad)
25537  DB  255                                 ; (bad)
25538  DB  127,0                               ; jg            5dac <.literal16+0x6ac>
25539  DB  255                                 ; (bad)
25540  DB  255                                 ; (bad)
25541  DB  127,0                               ; jg            5db0 <.literal16+0x6b0>
25542  DB  0,0                                 ; add           %al,(%rax)
25543  DB  0,63                                ; add           %bh,(%rdi)
25544  DB  0,0                                 ; add           %al,(%rax)
25545  DB  0,63                                ; add           %bh,(%rdi)
25546  DB  0,0                                 ; add           %al,(%rax)
25547  DB  0,63                                ; add           %bh,(%rdi)
25548  DB  0,0                                 ; add           %al,(%rax)
25549  DB  0,63                                ; add           %bh,(%rdi)
25550  DB  119,115                             ; ja            5e35 <.literal16+0x735>
25551  DB  248                                 ; clc
25552  DB  194,119,115                         ; retq          $0x7377
25553  DB  248                                 ; clc
25554  DB  194,119,115                         ; retq          $0x7377
25555  DB  248                                 ; clc
25556  DB  194,119,115                         ; retq          $0x7377
25557  DB  248                                 ; clc
25558  DB  194,117,191                         ; retq          $0xbf75
25559  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25560  DB  63                                  ; (bad)
25561  DB  117,191                             ; jne           5d99 <.literal16+0x699>
25562  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25563  DB  63                                  ; (bad)
25564  DB  249                                 ; stc
25565  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25566  DB  249                                 ; stc
25567  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25568  DB  249                                 ; stc
25569  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25570  DB  249                                 ; stc
25571  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25572  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
25573  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a39dda <_sk_callback_sse2+0xffffffffe9a347b1>
25574  DB  220,63                              ; fdivrl        (%rdi)
25575  DB  0,0                                 ; add           %al,(%rax)
25576  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25577  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25578  DB  63                                  ; (bad)
25579  DB  0,0                                 ; add           %al,(%rax)
25580  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
25581  DB  140,242                             ; mov           %?,%edx
25582  DB  66,81                               ; rex.X         push %rcx
25583  DB  140,242                             ; mov           %?,%edx
25584  DB  66,81                               ; rex.X         push %rcx
25585  DB  140,242                             ; mov           %?,%edx
25586  DB  66,81                               ; rex.X         push %rcx
25587  DB  140,242                             ; mov           %?,%edx
25588  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
25589  DB  63                                  ; (bad)
25590  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
25591  DB  63                                  ; (bad)
25592  DB  248                                 ; clc
25593  DB  245                                 ; cmc
25594  DB  154                                 ; (bad)
25595  DB  64,248                              ; rex           clc
25596  DB  245                                 ; cmc
25597  DB  154                                 ; (bad)
25598  DB  64,248                              ; rex           clc
25599  DB  245                                 ; cmc
25600  DB  154                                 ; (bad)
25601  DB  64,248                              ; rex           clc
25602  DB  245                                 ; cmc
25603  DB  154                                 ; (bad)
25604  DB  64,254                              ; rex           (bad)
25605  DB  210,221                             ; rcr           %cl,%ch
25606  DB  65,254                              ; rex.B         (bad)
25607  DB  210,221                             ; rcr           %cl,%ch
25608  DB  65,254                              ; rex.B         (bad)
25609  DB  210,221                             ; rcr           %cl,%ch
25610  DB  65,254                              ; rex.B         (bad)
25611  DB  210,221                             ; rcr           %cl,%ch
25612  DB  65,0,0                              ; add           %al,(%r8)
25613  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25614  DB  0,0                                 ; add           %al,(%rax)
25615  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25616  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25617  DB  0,0                                 ; add           %al,(%rax)
25618  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25619  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
25620  DB  0,0                                 ; add           %al,(%rax)
25621  DB  52,0                                ; xor           $0x0,%al
25622  DB  0,0                                 ; add           %al,(%rax)
25623  DB  52,0                                ; xor           $0x0,%al
25624  DB  0,0                                 ; add           %al,(%rax)
25625  DB  52,255                              ; xor           $0xff,%al
25626  DB  255                                 ; (bad)
25627  DB  127,0                               ; jg            5e74 <.literal16+0x774>
25628  DB  255                                 ; (bad)
25629  DB  255                                 ; (bad)
25630  DB  127,0                               ; jg            5e78 <.literal16+0x778>
25631  DB  255                                 ; (bad)
25632  DB  255                                 ; (bad)
25633  DB  127,0                               ; jg            5e7c <.literal16+0x77c>
25634  DB  255                                 ; (bad)
25635  DB  255                                 ; (bad)
25636  DB  127,0                               ; jg            5e80 <.literal16+0x780>
25637  DB  0,0                                 ; add           %al,(%rax)
25638  DB  0,63                                ; add           %bh,(%rdi)
25639  DB  0,0                                 ; add           %al,(%rax)
25640  DB  0,63                                ; add           %bh,(%rdi)
25641  DB  0,0                                 ; add           %al,(%rax)
25642  DB  0,63                                ; add           %bh,(%rdi)
25643  DB  0,0                                 ; add           %al,(%rax)
25644  DB  0,63                                ; add           %bh,(%rdi)
25645  DB  119,115                             ; ja            5f05 <.literal16+0x805>
25646  DB  248                                 ; clc
25647  DB  194,119,115                         ; retq          $0x7377
25648  DB  248                                 ; clc
25649  DB  194,119,115                         ; retq          $0x7377
25650  DB  248                                 ; clc
25651  DB  194,119,115                         ; retq          $0x7377
25652  DB  248                                 ; clc
25653  DB  194,117,191                         ; retq          $0xbf75
25654  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25655  DB  63                                  ; (bad)
25656  DB  117,191                             ; jne           5e69 <.literal16+0x769>
25657  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25658  DB  63                                  ; (bad)
25659  DB  249                                 ; stc
25660  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25661  DB  249                                 ; stc
25662  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25663  DB  249                                 ; stc
25664  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25665  DB  249                                 ; stc
25666  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25667  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
25668  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a39eaa <_sk_callback_sse2+0xffffffffe9a34881>
25669  DB  220,63                              ; fdivrl        (%rdi)
25670  DB  0,0                                 ; add           %al,(%rax)
25671  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25672  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25673  DB  63                                  ; (bad)
25674  DB  0,0                                 ; add           %al,(%rax)
25675  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
25676  DB  140,242                             ; mov           %?,%edx
25677  DB  66,81                               ; rex.X         push %rcx
25678  DB  140,242                             ; mov           %?,%edx
25679  DB  66,81                               ; rex.X         push %rcx
25680  DB  140,242                             ; mov           %?,%edx
25681  DB  66,81                               ; rex.X         push %rcx
25682  DB  140,242                             ; mov           %?,%edx
25683  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
25684  DB  63                                  ; (bad)
25685  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
25686  DB  63                                  ; (bad)
25687  DB  248                                 ; clc
25688  DB  245                                 ; cmc
25689  DB  154                                 ; (bad)
25690  DB  64,248                              ; rex           clc
25691  DB  245                                 ; cmc
25692  DB  154                                 ; (bad)
25693  DB  64,248                              ; rex           clc
25694  DB  245                                 ; cmc
25695  DB  154                                 ; (bad)
25696  DB  64,248                              ; rex           clc
25697  DB  245                                 ; cmc
25698  DB  154                                 ; (bad)
25699  DB  64,254                              ; rex           (bad)
25700  DB  210,221                             ; rcr           %cl,%ch
25701  DB  65,254                              ; rex.B         (bad)
25702  DB  210,221                             ; rcr           %cl,%ch
25703  DB  65,254                              ; rex.B         (bad)
25704  DB  210,221                             ; rcr           %cl,%ch
25705  DB  65,254                              ; rex.B         (bad)
25706  DB  210,221                             ; rcr           %cl,%ch
25707  DB  65,0,0                              ; add           %al,(%r8)
25708  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25709  DB  0,0                                 ; add           %al,(%rax)
25710  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25711  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25712  DB  0,0                                 ; add           %al,(%rax)
25713  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25714  DB  0,52,0                              ; add           %dh,(%rax,%rax,1)
25715  DB  0,0                                 ; add           %al,(%rax)
25716  DB  52,0                                ; xor           $0x0,%al
25717  DB  0,0                                 ; add           %al,(%rax)
25718  DB  52,0                                ; xor           $0x0,%al
25719  DB  0,0                                 ; add           %al,(%rax)
25720  DB  52,255                              ; xor           $0xff,%al
25721  DB  255                                 ; (bad)
25722  DB  127,0                               ; jg            5f44 <.literal16+0x844>
25723  DB  255                                 ; (bad)
25724  DB  255                                 ; (bad)
25725  DB  127,0                               ; jg            5f48 <.literal16+0x848>
25726  DB  255                                 ; (bad)
25727  DB  255                                 ; (bad)
25728  DB  127,0                               ; jg            5f4c <.literal16+0x84c>
25729  DB  255                                 ; (bad)
25730  DB  255                                 ; (bad)
25731  DB  127,0                               ; jg            5f50 <.literal16+0x850>
25732  DB  0,0                                 ; add           %al,(%rax)
25733  DB  0,63                                ; add           %bh,(%rdi)
25734  DB  0,0                                 ; add           %al,(%rax)
25735  DB  0,63                                ; add           %bh,(%rdi)
25736  DB  0,0                                 ; add           %al,(%rax)
25737  DB  0,63                                ; add           %bh,(%rdi)
25738  DB  0,0                                 ; add           %al,(%rax)
25739  DB  0,63                                ; add           %bh,(%rdi)
25740  DB  119,115                             ; ja            5fd5 <.literal16+0x8d5>
25741  DB  248                                 ; clc
25742  DB  194,119,115                         ; retq          $0x7377
25743  DB  248                                 ; clc
25744  DB  194,119,115                         ; retq          $0x7377
25745  DB  248                                 ; clc
25746  DB  194,119,115                         ; retq          $0x7377
25747  DB  248                                 ; clc
25748  DB  194,117,191                         ; retq          $0xbf75
25749  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25750  DB  63                                  ; (bad)
25751  DB  117,191                             ; jne           5f39 <.literal16+0x839>
25752  DB  191,63,117,191,191                  ; mov           $0xbfbf753f,%edi
25753  DB  63                                  ; (bad)
25754  DB  249                                 ; stc
25755  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25756  DB  249                                 ; stc
25757  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25758  DB  249                                 ; stc
25759  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25760  DB  249                                 ; stc
25761  DB  68,180,62                           ; rex.R         mov $0x3e,%spl
25762  DB  163,233,220,63,163,233,220,63,163   ; movabs        %eax,0xa33fdce9a33fdce9
25763  DB  233,220,63,163,233                  ; jmpq          ffffffffe9a39f7a <_sk_callback_sse2+0xffffffffe9a34951>
25764  DB  220,63                              ; fdivrl        (%rdi)
25765  DB  0,0                                 ; add           %al,(%rax)
25766  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25767  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25768  DB  63                                  ; (bad)
25769  DB  0,0                                 ; add           %al,(%rax)
25770  DB  128,63,81                           ; cmpb          $0x51,(%rdi)
25771  DB  140,242                             ; mov           %?,%edx
25772  DB  66,81                               ; rex.X         push %rcx
25773  DB  140,242                             ; mov           %?,%edx
25774  DB  66,81                               ; rex.X         push %rcx
25775  DB  140,242                             ; mov           %?,%edx
25776  DB  66,81                               ; rex.X         push %rcx
25777  DB  140,242                             ; mov           %?,%edx
25778  DB  66,141,188,190,63,141,188,190       ; lea           -0x414372c1(%rsi,%r15,4),%edi
25779  DB  63                                  ; (bad)
25780  DB  141,188,190,63,141,188,190          ; lea           -0x414372c1(%rsi,%rdi,4),%edi
25781  DB  63                                  ; (bad)
25782  DB  248                                 ; clc
25783  DB  245                                 ; cmc
25784  DB  154                                 ; (bad)
25785  DB  64,248                              ; rex           clc
25786  DB  245                                 ; cmc
25787  DB  154                                 ; (bad)
25788  DB  64,248                              ; rex           clc
25789  DB  245                                 ; cmc
25790  DB  154                                 ; (bad)
25791  DB  64,248                              ; rex           clc
25792  DB  245                                 ; cmc
25793  DB  154                                 ; (bad)
25794  DB  64,254                              ; rex           (bad)
25795  DB  210,221                             ; rcr           %cl,%ch
25796  DB  65,254                              ; rex.B         (bad)
25797  DB  210,221                             ; rcr           %cl,%ch
25798  DB  65,254                              ; rex.B         (bad)
25799  DB  210,221                             ; rcr           %cl,%ch
25800  DB  65,254                              ; rex.B         (bad)
25801  DB  210,221                             ; rcr           %cl,%ch
25802  DB  65,0,0                              ; add           %al,(%r8)
25803  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25804  DB  0,0                                 ; add           %al,(%rax)
25805  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25806  DB  0,75,0                              ; add           %cl,0x0(%rbx)
25807  DB  0,0                                 ; add           %al,(%rax)
25808  DB  75,0,0                              ; rex.WXB       add %al,(%r8)
25809  DB  200,66,0,0                          ; enterq        $0x42,$0x0
25810  DB  200,66,0,0                          ; enterq        $0x42,$0x0
25811  DB  200,66,0,0                          ; enterq        $0x42,$0x0
25812  DB  200,66,0,0                          ; enterq        $0x42,$0x0
25813  DB  127,67                              ; jg            6057 <.literal16+0x957>
25814  DB  0,0                                 ; add           %al,(%rax)
25815  DB  127,67                              ; jg            605b <.literal16+0x95b>
25816  DB  0,0                                 ; add           %al,(%rax)
25817  DB  127,67                              ; jg            605f <.literal16+0x95f>
25818  DB  0,0                                 ; add           %al,(%rax)
25819  DB  127,67                              ; jg            6063 <.literal16+0x963>
25820  DB  0,0                                 ; add           %al,(%rax)
25821  DB  0,195                               ; add           %al,%bl
25822  DB  0,0                                 ; add           %al,(%rax)
25823  DB  0,195                               ; add           %al,%bl
25824  DB  0,0                                 ; add           %al,(%rax)
25825  DB  0,195                               ; add           %al,%bl
25826  DB  0,0                                 ; add           %al,(%rax)
25827  DB  0,195                               ; add           %al,%bl
25828  DB  0,0                                 ; add           %al,(%rax)
25829  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
25830  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
25831  DB  128,65,0,0                          ; addb          $0x0,0x0(%rcx)
25832  DB  128,65,203,61                       ; addb          $0x3d,-0x35(%rcx)
25833  DB  13,60,203,61,13                     ; or            $0xd3dcb3c,%eax
25834  DB  60,203                              ; cmp           $0xcb,%al
25835  DB  61,13,60,203,61                     ; cmp           $0x3dcb3c0d,%eax
25836  DB  13,60,111,18,3                      ; or            $0x3126f3c,%eax
25837  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
25838  DB  3,59                                ; add           (%rbx),%edi
25839  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
25840  DB  18,3                                ; adc           (%rbx),%al
25841  DB  59,111,18                           ; cmp           0x12(%rdi),%ebp
25842  DB  3,59                                ; add           (%rbx),%edi
25843  DB  10,215                              ; or            %bh,%dl
25844  DB  163,59,10,215,163,59,10,215,163     ; movabs        %eax,0xa3d70a3ba3d70a3b
25845  DB  59,10                               ; cmp           (%rdx),%ecx
25846  DB  215                                 ; xlat          %ds:(%rbx)
25847  DB  163,59,194,24,17,60,194,24,17       ; movabs        %eax,0x1118c23c1118c23b
25848  DB  60,194                              ; cmp           $0xc2,%al
25849  DB  24,17                               ; sbb           %dl,(%rcx)
25850  DB  60,194                              ; cmp           $0xc2,%al
25851  DB  24,17                               ; sbb           %dl,(%rcx)
25852  DB  60,203                              ; cmp           $0xcb,%al
25853  DB  61,13,190,203,61                    ; cmp           $0x3dcbbe0d,%eax
25854  DB  13,190,203,61,13                    ; or            $0xd3dcbbe,%eax
25855  DB  190,203,61,13,190                   ; mov           $0xbe0d3dcb,%esi
25856  DB  80                                  ; push          %rax
25857  DB  128,3,62                            ; addb          $0x3e,(%rbx)
25858  DB  80                                  ; push          %rax
25859  DB  128,3,62                            ; addb          $0x3e,(%rbx)
25860  DB  80                                  ; push          %rax
25861  DB  128,3,62                            ; addb          $0x3e,(%rbx)
25862  DB  80                                  ; push          %rax
25863  DB  128,3,62                            ; addb          $0x3e,(%rbx)
25864  DB  31                                  ; (bad)
25865  DB  215                                 ; xlat          %ds:(%rbx)
25866  DB  118,63                              ; jbe           60e3 <.literal16+0x9e3>
25867  DB  31                                  ; (bad)
25868  DB  215                                 ; xlat          %ds:(%rbx)
25869  DB  118,63                              ; jbe           60e7 <.literal16+0x9e7>
25870  DB  31                                  ; (bad)
25871  DB  215                                 ; xlat          %ds:(%rbx)
25872  DB  118,63                              ; jbe           60eb <.literal16+0x9eb>
25873  DB  31                                  ; (bad)
25874  DB  215                                 ; xlat          %ds:(%rbx)
25875  DB  118,63                              ; jbe           60ef <.literal16+0x9ef>
25876  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
25877  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
25878  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
25879  DB  246,64,83,63                        ; testb         $0x3f,0x53(%rax)
25880  DB  255,0                               ; incl          (%rax)
25881  DB  0,0                                 ; add           %al,(%rax)
25882  DB  255,0                               ; incl          (%rax)
25883  DB  0,0                                 ; add           %al,(%rax)
25884  DB  255,0                               ; incl          (%rax)
25885  DB  0,0                                 ; add           %al,(%rax)
25886  DB  255,0                               ; incl          (%rax)
25887  DB  0,0                                 ; add           %al,(%rax)
25888  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25889  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25890  DB  128,128,59,129,128,128,59           ; addb          $0x3b,-0x7f7f7ec5(%rax)
25891  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25892  DB  128,59,0                            ; cmpb          $0x0,(%rbx)
25893  DB  0,127,67                            ; add           %bh,0x43(%rdi)
25894  DB  0,0                                 ; add           %al,(%rax)
25895  DB  127,67                              ; jg            613b <.literal16+0xa3b>
25896  DB  0,0                                 ; add           %al,(%rax)
25897  DB  127,67                              ; jg            613f <.literal16+0xa3f>
25898  DB  0,0                                 ; add           %al,(%rax)
25899  DB  127,67                              ; jg            6143 <.literal16+0xa43>
25900  DB  255,0                               ; incl          (%rax)
25901  DB  0,0                                 ; add           %al,(%rax)
25902  DB  255,0                               ; incl          (%rax)
25903  DB  0,0                                 ; add           %al,(%rax)
25904  DB  255,0                               ; incl          (%rax)
25905  DB  0,0                                 ; add           %al,(%rax)
25906  DB  255,0                               ; incl          (%rax)
25907  DB  0,0                                 ; add           %al,(%rax)
25908  DB  255,0                               ; incl          (%rax)
25909  DB  0,0                                 ; add           %al,(%rax)
25910  DB  255,0                               ; incl          (%rax)
25911  DB  0,0                                 ; add           %al,(%rax)
25912  DB  255,0                               ; incl          (%rax)
25913  DB  0,0                                 ; add           %al,(%rax)
25914  DB  255,0                               ; incl          (%rax)
25915  DB  0,0                                 ; add           %al,(%rax)
25916  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25917  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25918  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
25919  DB  0,0                                 ; add           %al,(%rax)
25920  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25921  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25922  DB  63                                  ; (bad)
25923  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25924  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25925  DB  128,128,59,0,0,128,63               ; addb          $0x3f,-0x7fffffc5(%rax)
25926  DB  0,0                                 ; add           %al,(%rax)
25927  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25928  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25929  DB  63                                  ; (bad)
25930  DB  255,0                               ; incl          (%rax)
25931  DB  0,0                                 ; add           %al,(%rax)
25932  DB  255,0                               ; incl          (%rax)
25933  DB  0,0                                 ; add           %al,(%rax)
25934  DB  255,0                               ; incl          (%rax)
25935  DB  0,0                                 ; add           %al,(%rax)
25936  DB  255,0                               ; incl          (%rax)
25937  DB  0,0                                 ; add           %al,(%rax)
25938  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
25939  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
25940  DB  128,128,59,0,248,0,0                ; addb          $0x0,0xf8003b(%rax)
25941  DB  0,248                               ; add           %bh,%al
25942  DB  0,0                                 ; add           %al,(%rax)
25943  DB  0,248                               ; add           %bh,%al
25944  DB  0,0                                 ; add           %al,(%rax)
25945  DB  0,248                               ; add           %bh,%al
25946  DB  0,0                                 ; add           %al,(%rax)
25947  DB  8,33                                ; or            %ah,(%rcx)
25948  DB  132,55                              ; test          %dh,(%rdi)
25949  DB  8,33                                ; or            %ah,(%rcx)
25950  DB  132,55                              ; test          %dh,(%rdi)
25951  DB  8,33                                ; or            %ah,(%rcx)
25952  DB  132,55                              ; test          %dh,(%rdi)
25953  DB  8,33                                ; or            %ah,(%rcx)
25954  DB  132,55                              ; test          %dh,(%rdi)
25955  DB  224,7                               ; loopne        61a9 <.literal16+0xaa9>
25956  DB  0,0                                 ; add           %al,(%rax)
25957  DB  224,7                               ; loopne        61ad <.literal16+0xaad>
25958  DB  0,0                                 ; add           %al,(%rax)
25959  DB  224,7                               ; loopne        61b1 <.literal16+0xab1>
25960  DB  0,0                                 ; add           %al,(%rax)
25961  DB  224,7                               ; loopne        61b5 <.literal16+0xab5>
25962  DB  0,0                                 ; add           %al,(%rax)
25963  DB  33,8                                ; and           %ecx,(%rax)
25964  DB  2,58                                ; add           (%rdx),%bh
25965  DB  33,8                                ; and           %ecx,(%rax)
25966  DB  2,58                                ; add           (%rdx),%bh
25967  DB  33,8                                ; and           %ecx,(%rax)
25968  DB  2,58                                ; add           (%rdx),%bh
25969  DB  33,8                                ; and           %ecx,(%rax)
25970  DB  2,58                                ; add           (%rdx),%bh
25971  DB  31                                  ; (bad)
25972  DB  0,0                                 ; add           %al,(%rax)
25973  DB  0,31                                ; add           %bl,(%rdi)
25974  DB  0,0                                 ; add           %al,(%rax)
25975  DB  0,31                                ; add           %bl,(%rdi)
25976  DB  0,0                                 ; add           %al,(%rax)
25977  DB  0,31                                ; add           %bl,(%rdi)
25978  DB  0,0                                 ; add           %al,(%rax)
25979  DB  0,8                                 ; add           %cl,(%rax)
25980  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
25981  DB  8,33                                ; or            %ah,(%rcx)
25982  DB  4,61                                ; add           $0x3d,%al
25983  DB  8,33                                ; or            %ah,(%rcx)
25984  DB  4,61                                ; add           $0x3d,%al
25985  DB  0,0                                 ; add           %al,(%rax)
25986  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25987  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
25988  DB  63                                  ; (bad)
25989  DB  0,0                                 ; add           %al,(%rax)
25990  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
25991  DB  248                                 ; clc
25992  DB  0,0                                 ; add           %al,(%rax)
25993  DB  0,248                               ; add           %bh,%al
25994  DB  0,0                                 ; add           %al,(%rax)
25995  DB  0,248                               ; add           %bh,%al
25996  DB  0,0                                 ; add           %al,(%rax)
25997  DB  0,248                               ; add           %bh,%al
25998  DB  0,0                                 ; add           %al,(%rax)
25999  DB  8,33                                ; or            %ah,(%rcx)
26000  DB  132,55                              ; test          %dh,(%rdi)
26001  DB  8,33                                ; or            %ah,(%rcx)
26002  DB  132,55                              ; test          %dh,(%rdi)
26003  DB  8,33                                ; or            %ah,(%rcx)
26004  DB  132,55                              ; test          %dh,(%rdi)
26005  DB  8,33                                ; or            %ah,(%rcx)
26006  DB  132,55                              ; test          %dh,(%rdi)
26007  DB  224,7                               ; loopne        6219 <.literal16+0xb19>
26008  DB  0,0                                 ; add           %al,(%rax)
26009  DB  224,7                               ; loopne        621d <.literal16+0xb1d>
26010  DB  0,0                                 ; add           %al,(%rax)
26011  DB  224,7                               ; loopne        6221 <.literal16+0xb21>
26012  DB  0,0                                 ; add           %al,(%rax)
26013  DB  224,7                               ; loopne        6225 <.literal16+0xb25>
26014  DB  0,0                                 ; add           %al,(%rax)
26015  DB  33,8                                ; and           %ecx,(%rax)
26016  DB  2,58                                ; add           (%rdx),%bh
26017  DB  33,8                                ; and           %ecx,(%rax)
26018  DB  2,58                                ; add           (%rdx),%bh
26019  DB  33,8                                ; and           %ecx,(%rax)
26020  DB  2,58                                ; add           (%rdx),%bh
26021  DB  33,8                                ; and           %ecx,(%rax)
26022  DB  2,58                                ; add           (%rdx),%bh
26023  DB  31                                  ; (bad)
26024  DB  0,0                                 ; add           %al,(%rax)
26025  DB  0,31                                ; add           %bl,(%rdi)
26026  DB  0,0                                 ; add           %al,(%rax)
26027  DB  0,31                                ; add           %bl,(%rdi)
26028  DB  0,0                                 ; add           %al,(%rax)
26029  DB  0,31                                ; add           %bl,(%rdi)
26030  DB  0,0                                 ; add           %al,(%rax)
26031  DB  0,8                                 ; add           %cl,(%rax)
26032  DB  33,4,61,8,33,4,61                   ; and           %eax,0x3d042108(,%rdi,1)
26033  DB  8,33                                ; or            %ah,(%rcx)
26034  DB  4,61                                ; add           $0x3d,%al
26035  DB  8,33                                ; or            %ah,(%rcx)
26036  DB  4,61                                ; add           $0x3d,%al
26037  DB  0,0                                 ; add           %al,(%rax)
26038  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26039  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26040  DB  63                                  ; (bad)
26041  DB  0,0                                 ; add           %al,(%rax)
26042  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26043  DB  0,248                               ; add           %bh,%al
26044  DB  65,0,0                              ; add           %al,(%r8)
26045  DB  248                                 ; clc
26046  DB  65,0,0                              ; add           %al,(%r8)
26047  DB  248                                 ; clc
26048  DB  65,0,0                              ; add           %al,(%r8)
26049  DB  248                                 ; clc
26050  DB  65,0,0                              ; add           %al,(%r8)
26051  DB  124,66                              ; jl            62b6 <.literal16+0xbb6>
26052  DB  0,0                                 ; add           %al,(%rax)
26053  DB  124,66                              ; jl            62ba <.literal16+0xbba>
26054  DB  0,0                                 ; add           %al,(%rax)
26055  DB  124,66                              ; jl            62be <.literal16+0xbbe>
26056  DB  0,0                                 ; add           %al,(%rax)
26057  DB  124,66                              ; jl            62c2 <.literal16+0xbc2>
26058  DB  0,240                               ; add           %dh,%al
26059  DB  0,0                                 ; add           %al,(%rax)
26060  DB  0,240                               ; add           %dh,%al
26061  DB  0,0                                 ; add           %al,(%rax)
26062  DB  0,240                               ; add           %dh,%al
26063  DB  0,0                                 ; add           %al,(%rax)
26064  DB  0,240                               ; add           %dh,%al
26065  DB  0,0                                 ; add           %al,(%rax)
26066  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
26067  DB  136,55                              ; mov           %dh,(%rdi)
26068  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
26069  DB  136,55                              ; mov           %dh,(%rdi)
26070  DB  0,15                                ; add           %cl,(%rdi)
26071  DB  0,0                                 ; add           %al,(%rax)
26072  DB  0,15                                ; add           %cl,(%rdi)
26073  DB  0,0                                 ; add           %al,(%rax)
26074  DB  0,15                                ; add           %cl,(%rdi)
26075  DB  0,0                                 ; add           %al,(%rax)
26076  DB  0,15                                ; add           %cl,(%rdi)
26077  DB  0,0                                 ; add           %al,(%rax)
26078  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
26079  DB  136,57                              ; mov           %bh,(%rcx)
26080  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
26081  DB  136,57                              ; mov           %bh,(%rcx)
26082  DB  240,0,0                             ; lock          add %al,(%rax)
26083  DB  0,240                               ; add           %dh,%al
26084  DB  0,0                                 ; add           %al,(%rax)
26085  DB  0,240                               ; add           %dh,%al
26086  DB  0,0                                 ; add           %al,(%rax)
26087  DB  0,240                               ; add           %dh,%al
26088  DB  0,0                                 ; add           %al,(%rax)
26089  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
26090  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
26091  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
26092  DB  0,0                                 ; add           %al,(%rax)
26093  DB  0,15                                ; add           %cl,(%rdi)
26094  DB  0,0                                 ; add           %al,(%rax)
26095  DB  0,15                                ; add           %cl,(%rdi)
26096  DB  0,0                                 ; add           %al,(%rax)
26097  DB  0,15                                ; add           %cl,(%rdi)
26098  DB  0,0                                 ; add           %al,(%rax)
26099  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
26100  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
26101  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
26102  DB  0,240                               ; add           %dh,%al
26103  DB  0,0                                 ; add           %al,(%rax)
26104  DB  0,240                               ; add           %dh,%al
26105  DB  0,0                                 ; add           %al,(%rax)
26106  DB  0,240                               ; add           %dh,%al
26107  DB  0,0                                 ; add           %al,(%rax)
26108  DB  0,240                               ; add           %dh,%al
26109  DB  0,0                                 ; add           %al,(%rax)
26110  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
26111  DB  136,55                              ; mov           %dh,(%rdi)
26112  DB  137,136,136,55,137,136              ; mov           %ecx,-0x7776c878(%rax)
26113  DB  136,55                              ; mov           %dh,(%rdi)
26114  DB  0,15                                ; add           %cl,(%rdi)
26115  DB  0,0                                 ; add           %al,(%rax)
26116  DB  0,15                                ; add           %cl,(%rdi)
26117  DB  0,0                                 ; add           %al,(%rax)
26118  DB  0,15                                ; add           %cl,(%rdi)
26119  DB  0,0                                 ; add           %al,(%rax)
26120  DB  0,15                                ; add           %cl,(%rdi)
26121  DB  0,0                                 ; add           %al,(%rax)
26122  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
26123  DB  136,57                              ; mov           %bh,(%rcx)
26124  DB  137,136,136,57,137,136              ; mov           %ecx,-0x7776c678(%rax)
26125  DB  136,57                              ; mov           %bh,(%rcx)
26126  DB  240,0,0                             ; lock          add %al,(%rax)
26127  DB  0,240                               ; add           %dh,%al
26128  DB  0,0                                 ; add           %al,(%rax)
26129  DB  0,240                               ; add           %dh,%al
26130  DB  0,0                                 ; add           %al,(%rax)
26131  DB  0,240                               ; add           %dh,%al
26132  DB  0,0                                 ; add           %al,(%rax)
26133  DB  0,137,136,136,59,137                ; add           %cl,-0x76c47778(%rcx)
26134  DB  136,136,59,137,136,136              ; mov           %cl,-0x777776c5(%rax)
26135  DB  59,137,136,136,59,15                ; cmp           0xf3b8888(%rcx),%ecx
26136  DB  0,0                                 ; add           %al,(%rax)
26137  DB  0,15                                ; add           %cl,(%rdi)
26138  DB  0,0                                 ; add           %al,(%rax)
26139  DB  0,15                                ; add           %cl,(%rdi)
26140  DB  0,0                                 ; add           %al,(%rax)
26141  DB  0,15                                ; add           %cl,(%rdi)
26142  DB  0,0                                 ; add           %al,(%rax)
26143  DB  0,137,136,136,61,137                ; add           %cl,-0x76c27778(%rcx)
26144  DB  136,136,61,137,136,136              ; mov           %cl,-0x777776c3(%rax)
26145  DB  61,137,136,136,61                   ; cmp           $0x3d888889,%eax
26146  DB  0,0                                 ; add           %al,(%rax)
26147  DB  112,65                              ; jo            63c5 <.literal16+0xcc5>
26148  DB  0,0                                 ; add           %al,(%rax)
26149  DB  112,65                              ; jo            63c9 <.literal16+0xcc9>
26150  DB  0,0                                 ; add           %al,(%rax)
26151  DB  112,65                              ; jo            63cd <.literal16+0xccd>
26152  DB  0,0                                 ; add           %al,(%rax)
26153  DB  112,65                              ; jo            63d1 <.literal16+0xcd1>
26154  DB  255,0                               ; incl          (%rax)
26155  DB  0,0                                 ; add           %al,(%rax)
26156  DB  255,0                               ; incl          (%rax)
26157  DB  0,0                                 ; add           %al,(%rax)
26158  DB  255,0                               ; incl          (%rax)
26159  DB  0,0                                 ; add           %al,(%rax)
26160  DB  255,0                               ; incl          (%rax)
26161  DB  0,0                                 ; add           %al,(%rax)
26162  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
26163  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
26164  DB  128,128,59,255,0,0,0                ; addb          $0x0,0xff3b(%rax)
26165  DB  255,0                               ; incl          (%rax)
26166  DB  0,0                                 ; add           %al,(%rax)
26167  DB  255,0                               ; incl          (%rax)
26168  DB  0,0                                 ; add           %al,(%rax)
26169  DB  255,0                               ; incl          (%rax)
26170  DB  0,0                                 ; add           %al,(%rax)
26171  DB  129,128,128,59,129,128,128,59,129,128; addl          $0x80813b80,-0x7f7ec480(%rax)
26172  DB  128,59,129                          ; cmpb          $0x81,(%rbx)
26173  DB  128,128,59,0,0,127,67               ; addb          $0x43,0x7f00003b(%rax)
26174  DB  0,0                                 ; add           %al,(%rax)
26175  DB  127,67                              ; jg            641b <.literal16+0xd1b>
26176  DB  0,0                                 ; add           %al,(%rax)
26177  DB  127,67                              ; jg            641f <.literal16+0xd1f>
26178  DB  0,0                                 ; add           %al,(%rax)
26179  DB  127,67                              ; jg            6423 <.literal16+0xd23>
26180  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
26181  DB  0,0                                 ; add           %al,(%rax)
26182  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
26183  DB  0,0                                 ; add           %al,(%rax)
26184  DB  0,0                                 ; add           %al,(%rax)
26185  DB  0,56                                ; add           %bh,(%rax)
26186  DB  0,0                                 ; add           %al,(%rax)
26187  DB  0,56                                ; add           %bh,(%rax)
26188  DB  0,0                                 ; add           %al,(%rax)
26189  DB  0,56                                ; add           %bh,(%rax)
26190  DB  0,0                                 ; add           %al,(%rax)
26191  DB  0,56                                ; add           %bh,(%rax)
26192  DB  0,0                                 ; add           %al,(%rax)
26193  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
26194  DB  0,0                                 ; add           %al,(%rax)
26195  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
26196  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
26197  DB  128,0,4                             ; addb          $0x4,(%rax)
26198  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
26199  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
26200  DB  128,0,128                           ; addb          $0x80,(%rax)
26201  DB  0,0                                 ; add           %al,(%rax)
26202  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
26203  DB  0,0                                 ; add           %al,(%rax)
26204  DB  0,128,0,0,0,0                       ; add           %al,0x0(%rax)
26205  DB  0,56                                ; add           %bh,(%rax)
26206  DB  0,0                                 ; add           %al,(%rax)
26207  DB  0,56                                ; add           %bh,(%rax)
26208  DB  0,0                                 ; add           %al,(%rax)
26209  DB  0,56                                ; add           %bh,(%rax)
26210  DB  0,0                                 ; add           %al,(%rax)
26211  DB  0,56                                ; add           %bh,(%rax)
26212  DB  0,0                                 ; add           %al,(%rax)
26213  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
26214  DB  0,0                                 ; add           %al,(%rax)
26215  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
26216  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
26217  DB  128,0,4                             ; addb          $0x4,(%rax)
26218  DB  0,128,0,4,0,128                     ; add           %al,-0x7ffffc00(%rax)
26219  DB  0,4,0                               ; add           %al,(%rax,%rax,1)
26220  DB  128,0,0                             ; addb          $0x0,(%rax)
26221  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
26222  DB  0,0                                 ; add           %al,(%rax)
26223  DB  0,128,0,0,0,128                     ; add           %al,-0x80000000(%rax)
26224  DB  0,0                                 ; add           %al,(%rax)
26225  DB  128,56,0                            ; cmpb          $0x0,(%rax)
26226  DB  0,128,56,0,0,128                    ; add           %al,-0x7fffffc8(%rax)
26227  DB  56,0                                ; cmp           %al,(%rax)
26228  DB  0,128,56,0,64,254                   ; add           %al,-0x1bfffc8(%rax)
26229  DB  255,0                               ; incl          (%rax)
26230  DB  64,254                              ; rex           (bad)
26231  DB  255,0                               ; incl          (%rax)
26232  DB  64,254                              ; rex           (bad)
26233  DB  255,0                               ; incl          (%rax)
26234  DB  64,254                              ; rex           (bad)
26235  DB  255,128,0,128,55,128                ; incl          -0x7fc88000(%rax)
26236  DB  0,128,55,128,0,128                  ; add           %al,-0x7fff7fc9(%rax)
26237  DB  55                                  ; (bad)
26238  DB  128,0,128                           ; addb          $0x80,(%rax)
26239  DB  55                                  ; (bad)
26240  DB  128,0,128                           ; addb          $0x80,(%rax)
26241  DB  55                                  ; (bad)
26242  DB  128,0,128                           ; addb          $0x80,(%rax)
26243  DB  55                                  ; (bad)
26244  DB  128,0,128                           ; addb          $0x80,(%rax)
26245  DB  55                                  ; (bad)
26246  DB  128,0,128                           ; addb          $0x80,(%rax)
26247  DB  55                                  ; (bad)
26248  DB  0,0                                 ; add           %al,(%rax)
26249  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26250  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26251  DB  63                                  ; (bad)
26252  DB  0,0                                 ; add           %al,(%rax)
26253  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26254  DB  255                                 ; (bad)
26255  DB  127,71                              ; jg            650b <.literal16+0xe0b>
26256  DB  0,255                               ; add           %bh,%bh
26257  DB  127,71                              ; jg            650f <.literal16+0xe0f>
26258  DB  0,255                               ; add           %bh,%bh
26259  DB  127,71                              ; jg            6513 <.literal16+0xe13>
26260  DB  0,255                               ; add           %bh,%bh
26261  DB  127,71                              ; jg            6517 <.literal16+0xe17>
26262  DB  0,0                                 ; add           %al,(%rax)
26263  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26264  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26265  DB  63                                  ; (bad)
26266  DB  0,0                                 ; add           %al,(%rax)
26267  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26268  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26269  DB  63                                  ; (bad)
26270  DB  0,0                                 ; add           %al,(%rax)
26271  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26272  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26273  DB  63                                  ; (bad)
26274  DB  0,0                                 ; add           %al,(%rax)
26275  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26276  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26277  DB  63                                  ; (bad)
26278  DB  0,0                                 ; add           %al,(%rax)
26279  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26280  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26281  DB  63                                  ; (bad)
26282  DB  0,0                                 ; add           %al,(%rax)
26283  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26284  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26285  DB  63                                  ; (bad)
26286  DB  0,0                                 ; add           %al,(%rax)
26287  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26288  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26289  DB  63                                  ; (bad)
26290  DB  0,0                                 ; add           %al,(%rax)
26291  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26292  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26293  DB  63                                  ; (bad)
26294  DB  0,0                                 ; add           %al,(%rax)
26295  DB  128,191,0,0,128,191,0               ; cmpb          $0x0,-0x40800000(%rdi)
26296  DB  0,128,191,0,0,128                   ; add           %al,-0x7fffff41(%rax)
26297  DB  191,0,0,0,63                        ; mov           $0x3f000000,%edi
26298  DB  0,0                                 ; add           %al,(%rax)
26299  DB  0,63                                ; add           %bh,(%rdi)
26300  DB  0,0                                 ; add           %al,(%rax)
26301  DB  0,63                                ; add           %bh,(%rdi)
26302  DB  0,0                                 ; add           %al,(%rax)
26303  DB  0,63                                ; add           %bh,(%rdi)
26304  DB  0,0                                 ; add           %al,(%rax)
26305  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26306  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26307  DB  63                                  ; (bad)
26308  DB  0,0                                 ; add           %al,(%rax)
26309  DB  128,63,208                          ; cmpb          $0xd0,(%rdi)
26310  DB  179,89                              ; mov           $0x59,%bl
26311  DB  62,208                              ; ds            (bad)
26312  DB  179,89                              ; mov           $0x59,%bl
26313  DB  62,208                              ; ds            (bad)
26314  DB  179,89                              ; mov           $0x59,%bl
26315  DB  62,208                              ; ds            (bad)
26316  DB  179,89                              ; mov           $0x59,%bl
26317  DB  62,89                               ; ds            pop %rcx
26318  DB  23                                  ; (bad)
26319  DB  55                                  ; (bad)
26320  DB  63                                  ; (bad)
26321  DB  89                                  ; pop           %rcx
26322  DB  23                                  ; (bad)
26323  DB  55                                  ; (bad)
26324  DB  63                                  ; (bad)
26325  DB  89                                  ; pop           %rcx
26326  DB  23                                  ; (bad)
26327  DB  55                                  ; (bad)
26328  DB  63                                  ; (bad)
26329  DB  89                                  ; pop           %rcx
26330  DB  23                                  ; (bad)
26331  DB  55                                  ; (bad)
26332  DB  63                                  ; (bad)
26333  DB  152                                 ; cwtl
26334  DB  221,147,61,152,221,147              ; fstl          -0x6c2267c3(%rbx)
26335  DB  61,152,221,147,61                   ; cmp           $0x3d93dd98,%eax
26336  DB  152                                 ; cwtl
26337  DB  221,147,61,45,16,17                 ; fstl          0x11102d3d(%rbx)
26338  DB  192,45,16,17,192,45,16              ; shrb          $0x10,0x2dc01110(%rip)        # 2dc076aa <_sk_callback_sse2+0x2dc02081>
26339  DB  17,192                              ; adc           %eax,%eax
26340  DB  45,16,17,192,18                     ; sub           $0x12c01110,%eax
26341  DB  120,57                              ; js            65dc <.literal16+0xedc>
26342  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
26343  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
26344  DB  64,18,120,57                        ; adc           0x39(%rax),%dil
26345  DB  64,32,148,90,62,32,148,90           ; and           %dl,0x5a94203e(%rdx,%rbx,2)
26346  DB  62,32,148,90,62,32,148,90           ; and           %dl,%ds:0x5a94203e(%rdx,%rbx,2)
26347  DB  62,4,157                            ; ds            add $0x9d,%al
26348  DB  30                                  ; (bad)
26349  DB  62,4,157                            ; ds            add $0x9d,%al
26350  DB  30                                  ; (bad)
26351  DB  62,4,157                            ; ds            add $0x9d,%al
26352  DB  30                                  ; (bad)
26353  DB  62,4,157                            ; ds            add $0x9d,%al
26354  DB  30                                  ; (bad)
26355  DB  62,0,24                             ; add           %bl,%ds:(%rax)
26356  DB  161,57,0,24,161,57,0,24,161         ; movabs        0xa1180039a1180039,%eax
26357  DB  57,0                                ; cmp           %eax,(%rax)
26358  DB  24,161,57,1,0,0                     ; sbb           %ah,0x139(%rcx)
26359  DB  0,1                                 ; add           %al,(%rcx)
26360  DB  0,0                                 ; add           %al,(%rax)
26361  DB  0,1                                 ; add           %al,(%rcx)
26362  DB  0,0                                 ; add           %al,(%rax)
26363  DB  0,1                                 ; add           %al,(%rcx)
26364  DB  0,0                                 ; add           %al,(%rax)
26365  DB  0,111,43                            ; add           %ch,0x2b(%rdi)
26366  DB  231,187                             ; out           %eax,$0xbb
26367  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
26368  DB  43,231                              ; sub           %edi,%esp
26369  DB  187,111,43,231,187                  ; mov           $0xbbe72b6f,%ebx
26370  DB  111                                 ; outsl         %ds:(%rsi),(%dx)
26371  DB  43,231                              ; sub           %edi,%esp
26372  DB  187,159,215,202,60                  ; mov           $0x3ccad79f,%ebx
26373  DB  159                                 ; lahf
26374  DB  215                                 ; xlat          %ds:(%rbx)
26375  DB  202,60,159                          ; lret          $0x9f3c
26376  DB  215                                 ; xlat          %ds:(%rbx)
26377  DB  202,60,159                          ; lret          $0x9f3c
26378  DB  215                                 ; xlat          %ds:(%rbx)
26379  DB  202,60,212                          ; lret          $0xd43c
26380  DB  100,84                              ; fs            push %rsp
26381  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
26382  DB  212                                 ; (bad)
26383  DB  100,84                              ; fs            push %rsp
26384  DB  189,212,100,84,189                  ; mov           $0xbd5464d4,%ebp
26385  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
26386  DB  240,34,62                           ; lock          and (%rsi),%bh
26387  DB  169,240,34,62,169                   ; test          $0xa93e22f0,%eax
26388  DB  240,34,62                           ; lock          and (%rsi),%bh
26389  DB  0,0                                 ; add           %al,(%rax)
26390  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
26391  DB  0,128,62,0,0,128                    ; add           %al,-0x7fffffc2(%rax)
26392  DB  62,0,0                              ; add           %al,%ds:(%rax)
26393  DB  128,62,0                            ; cmpb          $0x0,(%rsi)
26394  DB  0,0                                 ; add           %al,(%rax)
26395  DB  63                                  ; (bad)
26396  DB  0,0                                 ; add           %al,(%rax)
26397  DB  0,63                                ; add           %bh,(%rdi)
26398  DB  0,0                                 ; add           %al,(%rax)
26399  DB  0,63                                ; add           %bh,(%rdi)
26400  DB  0,0                                 ; add           %al,(%rax)
26401  DB  0,63                                ; add           %bh,(%rdi)
26402  DB  0,0                                 ; add           %al,(%rax)
26403  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26404  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26405  DB  63                                  ; (bad)
26406  DB  0,0                                 ; add           %al,(%rax)
26407  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26408  DB  0,0                                 ; add           %al,(%rax)
26409  DB  63                                  ; (bad)
26410  DB  0,0                                 ; add           %al,(%rax)
26411  DB  0,63                                ; add           %bh,(%rdi)
26412  DB  0,0                                 ; add           %al,(%rax)
26413  DB  0,63                                ; add           %bh,(%rdi)
26414  DB  0,0                                 ; add           %al,(%rax)
26415  DB  0,63                                ; add           %bh,(%rdi)
26416  DB  0,0                                 ; add           %al,(%rax)
26417  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26418  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26419  DB  63                                  ; (bad)
26420  DB  0,0                                 ; add           %al,(%rax)
26421  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26422  DB  0,0                                 ; add           %al,(%rax)
26423  DB  191,0,0,0,191                       ; mov           $0xbf000000,%edi
26424  DB  0,0                                 ; add           %al,(%rax)
26425  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
26426  DB  0,0                                 ; add           %al,(%rax)
26427  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26428  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26429  DB  63                                  ; (bad)
26430  DB  0,0                                 ; add           %al,(%rax)
26431  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26432  DB  0,0                                 ; add           %al,(%rax)
26433  DB  63                                  ; (bad)
26434  DB  0,0                                 ; add           %al,(%rax)
26435  DB  0,63                                ; add           %bh,(%rdi)
26436  DB  0,0                                 ; add           %al,(%rax)
26437  DB  0,63                                ; add           %bh,(%rdi)
26438  DB  0,0                                 ; add           %al,(%rax)
26439  DB  0,63                                ; add           %bh,(%rdi)
26440  DB  0,0                                 ; add           %al,(%rax)
26441  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
26442  DB  0,0                                 ; add           %al,(%rax)
26443  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
26444  DB  0,0                                 ; add           %al,(%rax)
26445  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26446  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26447  DB  63                                  ; (bad)
26448  DB  0,0                                 ; add           %al,(%rax)
26449  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26450  DB  0,0                                 ; add           %al,(%rax)
26451  DB  63                                  ; (bad)
26452  DB  0,0                                 ; add           %al,(%rax)
26453  DB  0,63                                ; add           %bh,(%rdi)
26454  DB  0,0                                 ; add           %al,(%rax)
26455  DB  0,63                                ; add           %bh,(%rdi)
26456  DB  0,0                                 ; add           %al,(%rax)
26457  DB  0,63                                ; add           %bh,(%rdi)
26458  DB  0,0                                 ; add           %al,(%rax)
26459  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
26460  DB  0,192                               ; add           %al,%al
26461  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
26462  DB  0,0                                 ; add           %al,(%rax)
26463  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26464  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26465  DB  63                                  ; (bad)
26466  DB  0,0                                 ; add           %al,(%rax)
26467  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
26468  DB  28,199                              ; sbb           $0xc7,%al
26469  DB  62,114,28                           ; jb,pt         6722 <.literal16+0x1022>
26470  DB  199                                 ; (bad)
26471  DB  62,114,28                           ; jb,pt         6726 <.literal16+0x1026>
26472  DB  199                                 ; (bad)
26473  DB  62,114,28                           ; jb,pt         672a <.literal16+0x102a>
26474  DB  199                                 ; (bad)
26475  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
26476  DB  170                                 ; stos          %al,%es:(%rdi)
26477  DB  170                                 ; stos          %al,%es:(%rdi)
26478  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26479  DB  171                                 ; stos          %eax,%es:(%rdi)
26480  DB  170                                 ; stos          %al,%es:(%rdi)
26481  DB  170                                 ; stos          %al,%es:(%rdi)
26482  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26483  DB  0,0                                 ; add           %al,(%rax)
26484  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
26485  DB  0,0                                 ; add           %al,(%rax)
26486  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
26487  DB  0,0                                 ; add           %al,(%rax)
26488  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26489  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26490  DB  63                                  ; (bad)
26491  DB  0,0                                 ; add           %al,(%rax)
26492  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
26493  DB  85                                  ; push          %rbp
26494  DB  149                                 ; xchg          %eax,%ebp
26495  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26496  DB  85                                  ; push          %rbp
26497  DB  85                                  ; push          %rbp
26498  DB  149                                 ; xchg          %eax,%ebp
26499  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26500  DB  0,0                                 ; add           %al,(%rax)
26501  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26502  DB  0,192                               ; add           %al,%al
26503  DB  63                                  ; (bad)
26504  DB  0,0                                 ; add           %al,(%rax)
26505  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26506  DB  0,192                               ; add           %al,%al
26507  DB  63                                  ; (bad)
26508  DB  0,0                                 ; add           %al,(%rax)
26509  DB  0,63                                ; add           %bh,(%rdi)
26510  DB  0,0                                 ; add           %al,(%rax)
26511  DB  0,63                                ; add           %bh,(%rdi)
26512  DB  0,0                                 ; add           %al,(%rax)
26513  DB  0,63                                ; add           %bh,(%rdi)
26514  DB  0,0                                 ; add           %al,(%rax)
26515  DB  0,63                                ; add           %bh,(%rdi)
26516  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
26517  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f5b5 <_sk_callback_sse2+0x3d639f8c>
26518  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
26519  DB  0,63                                ; add           %bh,(%rdi)
26520  DB  0,0                                 ; add           %al,(%rax)
26521  DB  0,63                                ; add           %bh,(%rdi)
26522  DB  0,0                                 ; add           %al,(%rax)
26523  DB  0,63                                ; add           %bh,(%rdi)
26524  DB  0,0                                 ; add           %al,(%rax)
26525  DB  0,63                                ; add           %bh,(%rdi)
26526  DB  85                                  ; push          %rbp
26527  DB  85                                  ; push          %rbp
26528  DB  149                                 ; xchg          %eax,%ebp
26529  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26530  DB  85                                  ; push          %rbp
26531  DB  85                                  ; push          %rbp
26532  DB  149                                 ; xchg          %eax,%ebp
26533  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26534  DB  0,0                                 ; add           %al,(%rax)
26535  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26536  DB  0,192                               ; add           %al,%al
26537  DB  63                                  ; (bad)
26538  DB  0,0                                 ; add           %al,(%rax)
26539  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26540  DB  0,192                               ; add           %al,%al
26541  DB  63                                  ; (bad)
26542  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
26543  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f5f5 <_sk_callback_sse2+0x3d639fcc>
26544  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
26545  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26546  DB  0,192                               ; add           %al,%al
26547  DB  63                                  ; (bad)
26548  DB  0,0                                 ; add           %al,(%rax)
26549  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26550  DB  0,192                               ; add           %al,%al
26551  DB  63                                  ; (bad)
26552  DB  114,28                              ; jb            67ee <.literal16+0x10ee>
26553  DB  199                                 ; (bad)
26554  DB  62,114,28                           ; jb,pt         67f2 <.literal16+0x10f2>
26555  DB  199                                 ; (bad)
26556  DB  62,114,28                           ; jb,pt         67f6 <.literal16+0x10f6>
26557  DB  199                                 ; (bad)
26558  DB  62,114,28                           ; jb,pt         67fa <.literal16+0x10fa>
26559  DB  199                                 ; (bad)
26560  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
26561  DB  170                                 ; stos          %al,%es:(%rdi)
26562  DB  170                                 ; stos          %al,%es:(%rdi)
26563  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26564  DB  171                                 ; stos          %eax,%es:(%rdi)
26565  DB  170                                 ; stos          %al,%es:(%rdi)
26566  DB  170                                 ; stos          %al,%es:(%rdi)
26567  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26568  DB  0,0                                 ; add           %al,(%rax)
26569  DB  192,191,0,0,192,191,0               ; sarb          $0x0,-0x40400000(%rdi)
26570  DB  0,192                               ; add           %al,%al
26571  DB  191,0,0,192,191                     ; mov           $0xbfc00000,%edi
26572  DB  0,0                                 ; add           %al,(%rax)
26573  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26574  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26575  DB  63                                  ; (bad)
26576  DB  0,0                                 ; add           %al,(%rax)
26577  DB  128,63,114                          ; cmpb          $0x72,(%rdi)
26578  DB  28,199                              ; sbb           $0xc7,%al
26579  DB  62,114,28                           ; jb,pt         6832 <.literal16+0x1132>
26580  DB  199                                 ; (bad)
26581  DB  62,114,28                           ; jb,pt         6836 <.literal16+0x1136>
26582  DB  199                                 ; (bad)
26583  DB  62,114,28                           ; jb,pt         683a <.literal16+0x113a>
26584  DB  199                                 ; (bad)
26585  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
26586  DB  170                                 ; stos          %al,%es:(%rdi)
26587  DB  170                                 ; stos          %al,%es:(%rdi)
26588  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26589  DB  171                                 ; stos          %eax,%es:(%rdi)
26590  DB  170                                 ; stos          %al,%es:(%rdi)
26591  DB  170                                 ; stos          %al,%es:(%rdi)
26592  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26593  DB  0,0                                 ; add           %al,(%rax)
26594  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
26595  DB  0,0                                 ; add           %al,(%rax)
26596  DB  0,191,0,0,0,191                     ; add           %bh,-0x41000000(%rdi)
26597  DB  0,0                                 ; add           %al,(%rax)
26598  DB  128,63,0                            ; cmpb          $0x0,(%rdi)
26599  DB  0,128,63,0,0,128                    ; add           %al,-0x7fffffc1(%rax)
26600  DB  63                                  ; (bad)
26601  DB  0,0                                 ; add           %al,(%rax)
26602  DB  128,63,85                           ; cmpb          $0x55,(%rdi)
26603  DB  85                                  ; push          %rbp
26604  DB  149                                 ; xchg          %eax,%ebp
26605  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26606  DB  85                                  ; push          %rbp
26607  DB  85                                  ; push          %rbp
26608  DB  149                                 ; xchg          %eax,%ebp
26609  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26610  DB  0,0                                 ; add           %al,(%rax)
26611  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26612  DB  0,192                               ; add           %al,%al
26613  DB  63                                  ; (bad)
26614  DB  0,0                                 ; add           %al,(%rax)
26615  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26616  DB  0,192                               ; add           %al,%al
26617  DB  63                                  ; (bad)
26618  DB  0,0                                 ; add           %al,(%rax)
26619  DB  0,63                                ; add           %bh,(%rdi)
26620  DB  0,0                                 ; add           %al,(%rax)
26621  DB  0,63                                ; add           %bh,(%rdi)
26622  DB  0,0                                 ; add           %al,(%rax)
26623  DB  0,63                                ; add           %bh,(%rdi)
26624  DB  0,0                                 ; add           %al,(%rax)
26625  DB  0,63                                ; add           %bh,(%rdi)
26626  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
26627  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f6c5 <_sk_callback_sse2+0x3d63a09c>
26628  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
26629  DB  0,63                                ; add           %bh,(%rdi)
26630  DB  0,0                                 ; add           %al,(%rax)
26631  DB  0,63                                ; add           %bh,(%rdi)
26632  DB  0,0                                 ; add           %al,(%rax)
26633  DB  0,63                                ; add           %bh,(%rdi)
26634  DB  0,0                                 ; add           %al,(%rax)
26635  DB  0,63                                ; add           %bh,(%rdi)
26636  DB  85                                  ; push          %rbp
26637  DB  85                                  ; push          %rbp
26638  DB  149                                 ; xchg          %eax,%ebp
26639  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26640  DB  85                                  ; push          %rbp
26641  DB  85                                  ; push          %rbp
26642  DB  149                                 ; xchg          %eax,%ebp
26643  DB  191,85,85,149,191                   ; mov           $0xbf955555,%edi
26644  DB  0,0                                 ; add           %al,(%rax)
26645  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26646  DB  0,192                               ; add           %al,%al
26647  DB  63                                  ; (bad)
26648  DB  0,0                                 ; add           %al,(%rax)
26649  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26650  DB  0,192                               ; add           %al,%al
26651  DB  63                                  ; (bad)
26652  DB  57,142,99,61,57,142                 ; cmp           %ecx,-0x71c6c29d(%rsi)
26653  DB  99,61,57,142,99,61                  ; movslq        0x3d638e39(%rip),%edi        # 3d63f705 <_sk_callback_sse2+0x3d63a0dc>
26654  DB  57,142,99,61,0,0                    ; cmp           %ecx,0x3d63(%rsi)
26655  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26656  DB  0,192                               ; add           %al,%al
26657  DB  63                                  ; (bad)
26658  DB  0,0                                 ; add           %al,(%rax)
26659  DB  192,63,0                            ; sarb          $0x0,(%rdi)
26660  DB  0,192                               ; add           %al,%al
26661  DB  63                                  ; (bad)
26662  DB  114,28                              ; jb            68fe <.literal16+0x11fe>
26663  DB  199                                 ; (bad)
26664  DB  62,114,28                           ; jb,pt         6902 <_sk_callback_sse2+0x12d9>
26665  DB  199                                 ; (bad)
26666  DB  62,114,28                           ; jb,pt         6906 <_sk_callback_sse2+0x12dd>
26667  DB  199                                 ; (bad)
26668  DB  62,114,28                           ; jb,pt         690a <_sk_callback_sse2+0x12e1>
26669  DB  199                                 ; (bad)
26670  DB  62,171                              ; ds            stos %eax,%es:(%rdi)
26671  DB  170                                 ; stos          %al,%es:(%rdi)
26672  DB  170                                 ; stos          %al,%es:(%rdi)
26673  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26674  DB  171                                 ; stos          %eax,%es:(%rdi)
26675  DB  170                                 ; stos          %al,%es:(%rdi)
26676  DB  170                                 ; stos          %al,%es:(%rdi)
26677  DB  190,171,170,170,190                 ; mov           $0xbeaaaaab,%esi
26678
26679ALIGN 4
26680  DB  0,0                                 ; add           %al,(%rax)
26681  DB  0,63                                ; add           %bh,(%rdi)
26682  DB  0,0                                 ; add           %al,(%rax)
26683  DB  0,63                                ; add           %bh,(%rdi)
26684ALIGN 32
26685
26686PUBLIC _sk_start_pipeline_ssse3_lowp
26687_sk_start_pipeline_ssse3_lowp LABEL PROC
26688  DB  85                                  ; push          %rbp
26689  DB  72,137,229                          ; mov           %rsp,%rbp
26690  DB  65,87                               ; push          %r15
26691  DB  65,86                               ; push          %r14
26692  DB  65,85                               ; push          %r13
26693  DB  65,84                               ; push          %r12
26694  DB  86                                  ; push          %rsi
26695  DB  87                                  ; push          %rdi
26696  DB  83                                  ; push          %rbx
26697  DB  72,129,236,184,0,0,0                ; sub           $0xb8,%rsp
26698  DB  68,15,41,125,176                    ; movaps        %xmm15,-0x50(%rbp)
26699  DB  68,15,41,117,160                    ; movaps        %xmm14,-0x60(%rbp)
26700  DB  68,15,41,109,144                    ; movaps        %xmm13,-0x70(%rbp)
26701  DB  68,15,41,101,128                    ; movaps        %xmm12,-0x80(%rbp)
26702  DB  68,15,41,157,112,255,255,255        ; movaps        %xmm11,-0x90(%rbp)
26703  DB  68,15,41,149,96,255,255,255         ; movaps        %xmm10,-0xa0(%rbp)
26704  DB  68,15,41,141,80,255,255,255         ; movaps        %xmm9,-0xb0(%rbp)
26705  DB  68,15,41,133,64,255,255,255         ; movaps        %xmm8,-0xc0(%rbp)
26706  DB  15,41,189,48,255,255,255            ; movaps        %xmm7,-0xd0(%rbp)
26707  DB  15,41,181,32,255,255,255            ; movaps        %xmm6,-0xe0(%rbp)
26708  DB  76,137,195                          ; mov           %r8,%rbx
26709  DB  73,137,210                          ; mov           %rdx,%r10
26710  DB  73,137,207                          ; mov           %rcx,%r15
26711  DB  76,139,117,48                       ; mov           0x30(%rbp),%r14
26712  DB  76,137,206                          ; mov           %r9,%rsi
26713  DB  72,173                              ; lods          %ds:(%rsi),%rax
26714  DB  73,137,197                          ; mov           %rax,%r13
26715  DB  73,137,244                          ; mov           %rsi,%r12
26716  DB  73,141,79,8                         ; lea           0x8(%r15),%rcx
26717  DB  72,57,217                           ; cmp           %rbx,%rcx
26718  DB  118,5                               ; jbe           7e <_sk_start_pipeline_ssse3_lowp+0x7e>
26719  DB  76,137,250                          ; mov           %r15,%rdx
26720  DB  235,81                              ; jmp           cf <_sk_start_pipeline_ssse3_lowp+0xcf>
26721  DB  72,137,157,24,255,255,255           ; mov           %rbx,-0xe8(%rbp)
26722  DB  65,184,0,0,0,0                      ; mov           $0x0,%r8d
26723  DB  15,87,192                           ; xorps         %xmm0,%xmm0
26724  DB  15,87,201                           ; xorps         %xmm1,%xmm1
26725  DB  15,87,210                           ; xorps         %xmm2,%xmm2
26726  DB  15,87,219                           ; xorps         %xmm3,%xmm3
26727  DB  15,87,228                           ; xorps         %xmm4,%xmm4
26728  DB  15,87,237                           ; xorps         %xmm5,%xmm5
26729  DB  15,87,246                           ; xorps         %xmm6,%xmm6
26730  DB  15,87,255                           ; xorps         %xmm7,%xmm7
26731  DB  76,137,247                          ; mov           %r14,%rdi
26732  DB  76,137,230                          ; mov           %r12,%rsi
26733  DB  76,137,250                          ; mov           %r15,%rdx
26734  DB  76,137,209                          ; mov           %r10,%rcx
26735  DB  76,137,211                          ; mov           %r10,%rbx
26736  DB  65,255,213                          ; callq         *%r13
26737  DB  73,137,218                          ; mov           %rbx,%r10
26738  DB  72,139,157,24,255,255,255           ; mov           -0xe8(%rbp),%rbx
26739  DB  73,141,87,8                         ; lea           0x8(%r15),%rdx
26740  DB  73,131,199,16                       ; add           $0x10,%r15
26741  DB  73,57,223                           ; cmp           %rbx,%r15
26742  DB  73,137,215                          ; mov           %rdx,%r15
26743  DB  118,182                             ; jbe           85 <_sk_start_pipeline_ssse3_lowp+0x85>
26744  DB  73,137,216                          ; mov           %rbx,%r8
26745  DB  73,41,208                           ; sub           %rdx,%r8
26746  DB  116,36                              ; je            fb <_sk_start_pipeline_ssse3_lowp+0xfb>
26747  DB  15,87,192                           ; xorps         %xmm0,%xmm0
26748  DB  15,87,201                           ; xorps         %xmm1,%xmm1
26749  DB  15,87,210                           ; xorps         %xmm2,%xmm2
26750  DB  15,87,219                           ; xorps         %xmm3,%xmm3
26751  DB  15,87,228                           ; xorps         %xmm4,%xmm4
26752  DB  15,87,237                           ; xorps         %xmm5,%xmm5
26753  DB  15,87,246                           ; xorps         %xmm6,%xmm6
26754  DB  15,87,255                           ; xorps         %xmm7,%xmm7
26755  DB  76,137,247                          ; mov           %r14,%rdi
26756  DB  76,137,230                          ; mov           %r12,%rsi
26757  DB  76,137,209                          ; mov           %r10,%rcx
26758  DB  65,255,213                          ; callq         *%r13
26759  DB  72,137,216                          ; mov           %rbx,%rax
26760  DB  15,40,181,32,255,255,255            ; movaps        -0xe0(%rbp),%xmm6
26761  DB  15,40,189,48,255,255,255            ; movaps        -0xd0(%rbp),%xmm7
26762  DB  68,15,40,133,64,255,255,255         ; movaps        -0xc0(%rbp),%xmm8
26763  DB  68,15,40,141,80,255,255,255         ; movaps        -0xb0(%rbp),%xmm9
26764  DB  68,15,40,149,96,255,255,255         ; movaps        -0xa0(%rbp),%xmm10
26765  DB  68,15,40,157,112,255,255,255        ; movaps        -0x90(%rbp),%xmm11
26766  DB  68,15,40,101,128                    ; movaps        -0x80(%rbp),%xmm12
26767  DB  68,15,40,109,144                    ; movaps        -0x70(%rbp),%xmm13
26768  DB  68,15,40,117,160                    ; movaps        -0x60(%rbp),%xmm14
26769  DB  68,15,40,125,176                    ; movaps        -0x50(%rbp),%xmm15
26770  DB  72,129,196,184,0,0,0                ; add           $0xb8,%rsp
26771  DB  91                                  ; pop           %rbx
26772  DB  95                                  ; pop           %rdi
26773  DB  94                                  ; pop           %rsi
26774  DB  65,92                               ; pop           %r12
26775  DB  65,93                               ; pop           %r13
26776  DB  65,94                               ; pop           %r14
26777  DB  65,95                               ; pop           %r15
26778  DB  93                                  ; pop           %rbp
26779  DB  195                                 ; retq
26780
26781PUBLIC _sk_just_return_ssse3_lowp
26782_sk_just_return_ssse3_lowp LABEL PROC
26783  DB  195                                 ; retq
26784
26785PUBLIC _sk_constant_color_ssse3_lowp
26786_sk_constant_color_ssse3_lowp LABEL PROC
26787  DB  72,173                              ; lods          %ds:(%rsi),%rax
26788  DB  15,16,24                            ; movups        (%rax),%xmm3
26789  DB  15,88,29,111,18,0,0                 ; addps         0x126f(%rip),%xmm3        # 13d0 <_sk_xor__ssse3_lowp+0x9f>
26790  DB  242,15,112,195,0                    ; pshuflw       $0x0,%xmm3,%xmm0
26791  DB  102,15,112,192,80                   ; pshufd        $0x50,%xmm0,%xmm0
26792  DB  242,15,112,203,170                  ; pshuflw       $0xaa,%xmm3,%xmm1
26793  DB  102,15,112,201,80                   ; pshufd        $0x50,%xmm1,%xmm1
26794  DB  243,15,112,211,0                    ; pshufhw       $0x0,%xmm3,%xmm2
26795  DB  102,15,112,210,250                  ; pshufd        $0xfa,%xmm2,%xmm2
26796  DB  243,15,112,219,170                  ; pshufhw       $0xaa,%xmm3,%xmm3
26797  DB  102,15,112,219,250                  ; pshufd        $0xfa,%xmm3,%xmm3
26798  DB  72,173                              ; lods          %ds:(%rsi),%rax
26799  DB  255,224                             ; jmpq          *%rax
26800
26801PUBLIC _sk_set_rgb_ssse3_lowp
26802_sk_set_rgb_ssse3_lowp LABEL PROC
26803  DB  72,173                              ; lods          %ds:(%rsi),%rax
26804  DB  243,15,16,21,57,20,0,0              ; movss         0x1439(%rip),%xmm2        # 15d0 <_sk_xor__ssse3_lowp+0x29f>
26805  DB  243,15,16,0                         ; movss         (%rax),%xmm0
26806  DB  243,15,88,194                       ; addss         %xmm2,%xmm0
26807  DB  102,65,15,126,193                   ; movd          %xmm0,%r9d
26808  DB  102,65,15,110,193                   ; movd          %r9d,%xmm0
26809  DB  242,15,112,192,0                    ; pshuflw       $0x0,%xmm0,%xmm0
26810  DB  102,15,112,192,80                   ; pshufd        $0x50,%xmm0,%xmm0
26811  DB  243,15,16,72,4                      ; movss         0x4(%rax),%xmm1
26812  DB  243,15,88,202                       ; addss         %xmm2,%xmm1
26813  DB  102,65,15,126,201                   ; movd          %xmm1,%r9d
26814  DB  102,65,15,110,201                   ; movd          %r9d,%xmm1
26815  DB  242,15,112,201,0                    ; pshuflw       $0x0,%xmm1,%xmm1
26816  DB  102,15,112,201,80                   ; pshufd        $0x50,%xmm1,%xmm1
26817  DB  243,15,88,80,8                      ; addss         0x8(%rax),%xmm2
26818  DB  102,15,126,208                      ; movd          %xmm2,%eax
26819  DB  102,15,110,208                      ; movd          %eax,%xmm2
26820  DB  242,15,112,210,0                    ; pshuflw       $0x0,%xmm2,%xmm2
26821  DB  102,15,112,210,80                   ; pshufd        $0x50,%xmm2,%xmm2
26822  DB  72,173                              ; lods          %ds:(%rsi),%rax
26823  DB  255,224                             ; jmpq          *%rax
26824
26825PUBLIC _sk_premul_ssse3_lowp
26826_sk_premul_ssse3_lowp LABEL PROC
26827  DB  102,15,56,11,195                    ; pmulhrsw      %xmm3,%xmm0
26828  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
26829  DB  102,15,56,11,203                    ; pmulhrsw      %xmm3,%xmm1
26830  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
26831  DB  102,15,56,11,211                    ; pmulhrsw      %xmm3,%xmm2
26832  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
26833  DB  72,173                              ; lods          %ds:(%rsi),%rax
26834  DB  255,224                             ; jmpq          *%rax
26835
26836PUBLIC _sk_load_8888_ssse3_lowp
26837_sk_load_8888_ssse3_lowp LABEL PROC
26838  DB  72,173                              ; lods          %ds:(%rsi),%rax
26839  DB  76,139,24                           ; mov           (%rax),%r11
26840  DB  77,133,192                          ; test          %r8,%r8
26841  DB  15,133,191,0,0,0                    ; jne           2da <_sk_load_8888_ssse3_lowp+0xcd>
26842  DB  69,15,16,68,147,16                  ; movups        0x10(%r11,%rdx,4),%xmm8
26843  DB  102,65,15,16,28,147                 ; movupd        (%r11,%rdx,4),%xmm3
26844  DB  102,15,111,13,177,17,0,0            ; movdqa        0x11b1(%rip),%xmm1        # 13e0 <_sk_xor__ssse3_lowp+0xaf>
26845  DB  102,15,40,195                       ; movapd        %xmm3,%xmm0
26846  DB  102,15,56,0,193                     ; pshufb        %xmm1,%xmm0
26847  DB  102,65,15,111,208                   ; movdqa        %xmm8,%xmm2
26848  DB  102,15,56,0,209                     ; pshufb        %xmm1,%xmm2
26849  DB  102,15,108,194                      ; punpcklqdq    %xmm2,%xmm0
26850  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
26851  DB  102,68,15,111,13,156,17,0,0         ; movdqa        0x119c(%rip),%xmm9        # 13f0 <_sk_xor__ssse3_lowp+0xbf>
26852  DB  102,65,15,228,193                   ; pmulhuw       %xmm9,%xmm0
26853  DB  102,68,15,111,21,158,17,0,0         ; movdqa        0x119e(%rip),%xmm10        # 1400 <_sk_xor__ssse3_lowp+0xcf>
26854  DB  102,15,40,203                       ; movapd        %xmm3,%xmm1
26855  DB  102,65,15,56,0,202                  ; pshufb        %xmm10,%xmm1
26856  DB  102,65,15,111,208                   ; movdqa        %xmm8,%xmm2
26857  DB  102,65,15,56,0,210                  ; pshufb        %xmm10,%xmm2
26858  DB  102,15,108,202                      ; punpcklqdq    %xmm2,%xmm1
26859  DB  102,15,113,241,8                    ; psllw         $0x8,%xmm1
26860  DB  102,65,15,228,201                   ; pmulhuw       %xmm9,%xmm1
26861  DB  102,68,15,111,21,130,17,0,0         ; movdqa        0x1182(%rip),%xmm10        # 1410 <_sk_xor__ssse3_lowp+0xdf>
26862  DB  102,15,40,211                       ; movapd        %xmm3,%xmm2
26863  DB  102,65,15,56,0,210                  ; pshufb        %xmm10,%xmm2
26864  DB  102,69,15,111,216                   ; movdqa        %xmm8,%xmm11
26865  DB  102,69,15,56,0,218                  ; pshufb        %xmm10,%xmm11
26866  DB  102,65,15,108,211                   ; punpcklqdq    %xmm11,%xmm2
26867  DB  102,15,113,242,8                    ; psllw         $0x8,%xmm2
26868  DB  102,65,15,228,209                   ; pmulhuw       %xmm9,%xmm2
26869  DB  102,68,15,111,21,101,17,0,0         ; movdqa        0x1165(%rip),%xmm10        # 1420 <_sk_xor__ssse3_lowp+0xef>
26870  DB  102,65,15,56,0,218                  ; pshufb        %xmm10,%xmm3
26871  DB  102,69,15,56,0,194                  ; pshufb        %xmm10,%xmm8
26872  DB  102,65,15,108,216                   ; punpcklqdq    %xmm8,%xmm3
26873  DB  102,15,113,243,8                    ; psllw         $0x8,%xmm3
26874  DB  102,65,15,228,217                   ; pmulhuw       %xmm9,%xmm3
26875  DB  72,173                              ; lods          %ds:(%rsi),%rax
26876  DB  255,224                             ; jmpq          *%rax
26877  DB  69,137,193                          ; mov           %r8d,%r9d
26878  DB  65,128,225,7                        ; and           $0x7,%r9b
26879  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
26880  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
26881  DB  65,254,201                          ; dec           %r9b
26882  DB  65,128,249,6                        ; cmp           $0x6,%r9b
26883  DB  15,135,48,255,255,255               ; ja            227 <_sk_load_8888_ssse3_lowp+0x1a>
26884  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
26885  DB  76,141,21,94,0,0,0                  ; lea           0x5e(%rip),%r10        # 360 <_sk_load_8888_ssse3_lowp+0x153>
26886  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
26887  DB  76,1,208                            ; add           %r10,%rax
26888  DB  255,224                             ; jmpq          *%rax
26889  DB  243,65,15,16,28,147                 ; movss         (%r11,%rdx,4),%xmm3
26890  DB  233,17,255,255,255                  ; jmpq          227 <_sk_load_8888_ssse3_lowp+0x1a>
26891  DB  102,65,15,110,68,147,8              ; movd          0x8(%r11,%rdx,4),%xmm0
26892  DB  102,15,112,216,69                   ; pshufd        $0x45,%xmm0,%xmm3
26893  DB  102,65,15,18,28,147                 ; movlpd        (%r11,%rdx,4),%xmm3
26894  DB  233,250,254,255,255                 ; jmpq          227 <_sk_load_8888_ssse3_lowp+0x1a>
26895  DB  102,65,15,110,68,147,24             ; movd          0x18(%r11,%rdx,4),%xmm0
26896  DB  102,68,15,112,192,69                ; pshufd        $0x45,%xmm0,%xmm8
26897  DB  243,65,15,16,68,147,20              ; movss         0x14(%r11,%rdx,4),%xmm0
26898  DB  65,15,198,192,0                     ; shufps        $0x0,%xmm8,%xmm0
26899  DB  65,15,198,192,226                   ; shufps        $0xe2,%xmm8,%xmm0
26900  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
26901  DB  243,65,15,16,68,147,16              ; movss         0x10(%r11,%rdx,4),%xmm0
26902  DB  243,68,15,16,192                    ; movss         %xmm0,%xmm8
26903  DB  233,193,254,255,255                 ; jmpq          221 <_sk_load_8888_ssse3_lowp+0x14>
26904  DB  171                                 ; stos          %eax,%es:(%rdi)
26905  DB  255                                 ; (bad)
26906  DB  255                                 ; (bad)
26907  DB  255,194                             ; inc           %edx
26908  DB  255                                 ; (bad)
26909  DB  255                                 ; (bad)
26910  DB  255,182,255,255,255,193             ; pushq         -0x3e000001(%rsi)
26911  DB  254                                 ; (bad)
26912  DB  255                                 ; (bad)
26913  DB  255                                 ; (bad)
26914  DB  239                                 ; out           %eax,(%dx)
26915  DB  255                                 ; (bad)
26916  DB  255                                 ; (bad)
26917  DB  255                                 ; (bad)
26918  DB  218,255                             ; (bad)
26919  DB  255                                 ; (bad)
26920  DB  255,205                             ; dec           %ebp
26921  DB  255                                 ; (bad)
26922  DB  255                                 ; (bad)
26923  DB  255                                 ; .byte         0xff
26924
26925PUBLIC _sk_store_8888_ssse3_lowp
26926_sk_store_8888_ssse3_lowp LABEL PROC
26927  DB  72,173                              ; lods          %ds:(%rsi),%rax
26928  DB  76,139,24                           ; mov           (%rax),%r11
26929  DB  102,68,15,111,192                   ; movdqa        %xmm0,%xmm8
26930  DB  102,65,15,113,208,7                 ; psrlw         $0x7,%xmm8
26931  DB  102,68,15,111,21,155,16,0,0         ; movdqa        0x109b(%rip),%xmm10        # 1430 <_sk_xor__ssse3_lowp+0xff>
26932  DB  102,69,15,234,194                   ; pminsw        %xmm10,%xmm8
26933  DB  102,69,15,239,219                   ; pxor          %xmm11,%xmm11
26934  DB  102,69,15,111,232                   ; movdqa        %xmm8,%xmm13
26935  DB  102,69,15,97,235                    ; punpcklwd     %xmm11,%xmm13
26936  DB  102,69,15,105,195                   ; punpckhwd     %xmm11,%xmm8
26937  DB  102,68,15,111,201                   ; movdqa        %xmm1,%xmm9
26938  DB  102,65,15,113,209,7                 ; psrlw         $0x7,%xmm9
26939  DB  102,69,15,234,202                   ; pminsw        %xmm10,%xmm9
26940  DB  102,69,15,111,225                   ; movdqa        %xmm9,%xmm12
26941  DB  102,69,15,105,227                   ; punpckhwd     %xmm11,%xmm12
26942  DB  102,69,15,97,203                    ; punpcklwd     %xmm11,%xmm9
26943  DB  102,65,15,114,241,8                 ; pslld         $0x8,%xmm9
26944  DB  102,65,15,114,244,8                 ; pslld         $0x8,%xmm12
26945  DB  102,69,15,235,224                   ; por           %xmm8,%xmm12
26946  DB  102,69,15,235,205                   ; por           %xmm13,%xmm9
26947  DB  102,68,15,111,234                   ; movdqa        %xmm2,%xmm13
26948  DB  102,65,15,113,213,7                 ; psrlw         $0x7,%xmm13
26949  DB  102,69,15,234,234                   ; pminsw        %xmm10,%xmm13
26950  DB  102,69,15,111,245                   ; movdqa        %xmm13,%xmm14
26951  DB  102,69,15,97,243                    ; punpcklwd     %xmm11,%xmm14
26952  DB  102,69,15,105,235                   ; punpckhwd     %xmm11,%xmm13
26953  DB  102,65,15,114,245,16                ; pslld         $0x10,%xmm13
26954  DB  102,65,15,114,246,16                ; pslld         $0x10,%xmm14
26955  DB  102,68,15,111,195                   ; movdqa        %xmm3,%xmm8
26956  DB  102,65,15,113,208,7                 ; psrlw         $0x7,%xmm8
26957  DB  102,69,15,234,194                   ; pminsw        %xmm10,%xmm8
26958  DB  102,69,15,111,208                   ; movdqa        %xmm8,%xmm10
26959  DB  102,69,15,105,211                   ; punpckhwd     %xmm11,%xmm10
26960  DB  102,69,15,97,195                    ; punpcklwd     %xmm11,%xmm8
26961  DB  102,65,15,114,240,24                ; pslld         $0x18,%xmm8
26962  DB  102,65,15,114,242,24                ; pslld         $0x18,%xmm10
26963  DB  102,69,15,235,213                   ; por           %xmm13,%xmm10
26964  DB  102,69,15,235,212                   ; por           %xmm12,%xmm10
26965  DB  102,69,15,235,198                   ; por           %xmm14,%xmm8
26966  DB  102,69,15,235,193                   ; por           %xmm9,%xmm8
26967  DB  77,133,192                          ; test          %r8,%r8
26968  DB  117,17                              ; jne           463 <_sk_store_8888_ssse3_lowp+0xe7>
26969  DB  243,69,15,127,4,147                 ; movdqu        %xmm8,(%r11,%rdx,4)
26970  DB  243,69,15,127,84,147,16             ; movdqu        %xmm10,0x10(%r11,%rdx,4)
26971  DB  72,173                              ; lods          %ds:(%rsi),%rax
26972  DB  255,224                             ; jmpq          *%rax
26973  DB  69,137,193                          ; mov           %r8d,%r9d
26974  DB  65,128,225,7                        ; and           $0x7,%r9b
26975  DB  65,254,201                          ; dec           %r9b
26976  DB  65,128,249,6                        ; cmp           $0x6,%r9b
26977  DB  119,236                             ; ja            45f <_sk_store_8888_ssse3_lowp+0xe3>
26978  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
26979  DB  76,141,21,82,0,0,0                  ; lea           0x52(%rip),%r10        # 4d0 <_sk_store_8888_ssse3_lowp+0x154>
26980  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
26981  DB  76,1,208                            ; add           %r10,%rax
26982  DB  255,224                             ; jmpq          *%rax
26983  DB  102,69,15,126,4,147                 ; movd          %xmm8,(%r11,%rdx,4)
26984  DB  235,208                             ; jmp           45f <_sk_store_8888_ssse3_lowp+0xe3>
26985  DB  102,69,15,112,200,78                ; pshufd        $0x4e,%xmm8,%xmm9
26986  DB  102,69,15,126,76,147,8              ; movd          %xmm9,0x8(%r11,%rdx,4)
26987  DB  102,69,15,214,4,147                 ; movq          %xmm8,(%r11,%rdx,4)
26988  DB  235,187                             ; jmp           45f <_sk_store_8888_ssse3_lowp+0xe3>
26989  DB  102,69,15,112,202,78                ; pshufd        $0x4e,%xmm10,%xmm9
26990  DB  102,69,15,126,76,147,24             ; movd          %xmm9,0x18(%r11,%rdx,4)
26991  DB  102,69,15,112,202,229               ; pshufd        $0xe5,%xmm10,%xmm9
26992  DB  102,69,15,126,76,147,20             ; movd          %xmm9,0x14(%r11,%rdx,4)
26993  DB  102,69,15,126,84,147,16             ; movd          %xmm10,0x10(%r11,%rdx,4)
26994  DB  243,69,15,127,4,147                 ; movdqu        %xmm8,(%r11,%rdx,4)
26995  DB  235,146                             ; jmp           45f <_sk_store_8888_ssse3_lowp+0xe3>
26996  DB  15,31,0                             ; nopl          (%rax)
26997  DB  183,255                             ; mov           $0xff,%bh
26998  DB  255                                 ; (bad)
26999  DB  255,204                             ; dec           %esp
27000  DB  255                                 ; (bad)
27001  DB  255                                 ; (bad)
27002  DB  255                                 ; (bad)
27003  DB  191,255,255,255,245                 ; mov           $0xf5ffffff,%edi
27004  DB  255                                 ; (bad)
27005  DB  255                                 ; (bad)
27006  DB  255                                 ; (bad)
27007  DB  238                                 ; out           %al,(%dx)
27008  DB  255                                 ; (bad)
27009  DB  255                                 ; (bad)
27010  DB  255,225                             ; jmpq          *%rcx
27011  DB  255                                 ; (bad)
27012  DB  255                                 ; (bad)
27013  DB  255,212                             ; callq         *%rsp
27014  DB  255                                 ; (bad)
27015  DB  255                                 ; (bad)
27016  DB  255                                 ; .byte         0xff
27017
27018PUBLIC _sk_load_a8_ssse3_lowp
27019_sk_load_a8_ssse3_lowp LABEL PROC
27020  DB  72,173                              ; lods          %ds:(%rsi),%rax
27021  DB  76,139,24                           ; mov           (%rax),%r11
27022  DB  77,133,192                          ; test          %r8,%r8
27023  DB  117,36                              ; jne           51a <_sk_load_a8_ssse3_lowp+0x2e>
27024  DB  243,65,15,126,28,19                 ; movq          (%r11,%rdx,1),%xmm3
27025  DB  102,15,96,216                       ; punpcklbw     %xmm0,%xmm3
27026  DB  102,15,113,243,8                    ; psllw         $0x8,%xmm3
27027  DB  102,15,228,29,51,15,0,0             ; pmulhuw       0xf33(%rip),%xmm3        # 1440 <_sk_xor__ssse3_lowp+0x10f>
27028  DB  72,173                              ; lods          %ds:(%rsi),%rax
27029  DB  15,87,192                           ; xorps         %xmm0,%xmm0
27030  DB  15,87,201                           ; xorps         %xmm1,%xmm1
27031  DB  15,87,210                           ; xorps         %xmm2,%xmm2
27032  DB  255,224                             ; jmpq          *%rax
27033  DB  69,137,193                          ; mov           %r8d,%r9d
27034  DB  65,128,225,7                        ; and           $0x7,%r9b
27035  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
27036  DB  65,254,201                          ; dec           %r9b
27037  DB  65,128,249,6                        ; cmp           $0x6,%r9b
27038  DB  119,210                             ; ja            500 <_sk_load_a8_ssse3_lowp+0x14>
27039  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
27040  DB  76,141,21,111,0,0,0                 ; lea           0x6f(%rip),%r10        # 5a8 <_sk_load_a8_ssse3_lowp+0xbc>
27041  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
27042  DB  76,1,208                            ; add           %r10,%rax
27043  DB  255,224                             ; jmpq          *%rax
27044  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
27045  DB  102,15,110,216                      ; movd          %eax,%xmm3
27046  DB  235,179                             ; jmp           500 <_sk_load_a8_ssse3_lowp+0x14>
27047  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
27048  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
27049  DB  102,15,196,216,2                    ; pinsrw        $0x2,%eax,%xmm3
27050  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
27051  DB  102,15,110,192                      ; movd          %eax,%xmm0
27052  DB  102,15,96,192                       ; punpcklbw     %xmm0,%xmm0
27053  DB  243,15,16,216                       ; movss         %xmm0,%xmm3
27054  DB  235,145                             ; jmp           500 <_sk_load_a8_ssse3_lowp+0x14>
27055  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
27056  DB  102,15,239,219                      ; pxor          %xmm3,%xmm3
27057  DB  102,15,196,216,6                    ; pinsrw        $0x6,%eax,%xmm3
27058  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
27059  DB  102,15,196,216,5                    ; pinsrw        $0x5,%eax,%xmm3
27060  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
27061  DB  102,15,196,216,4                    ; pinsrw        $0x4,%eax,%xmm3
27062  DB  102,65,15,110,4,19                  ; movd          (%r11,%rdx,1),%xmm0
27063  DB  102,15,96,192                       ; punpcklbw     %xmm0,%xmm0
27064  DB  242,15,16,216                       ; movsd         %xmm0,%xmm3
27065  DB  233,89,255,255,255                  ; jmpq          500 <_sk_load_a8_ssse3_lowp+0x14>
27066  DB  144                                 ; nop
27067  DB  154                                 ; (bad)
27068  DB  255                                 ; (bad)
27069  DB  255                                 ; (bad)
27070  DB  255,180,255,255,255,165,255         ; pushq         -0x5a0001(%rdi,%rdi,8)
27071  DB  255                                 ; (bad)
27072  DB  255                                 ; (bad)
27073  DB  236                                 ; in            (%dx),%al
27074  DB  255                                 ; (bad)
27075  DB  255                                 ; (bad)
27076  DB  255,225                             ; jmpq          *%rcx
27077  DB  255                                 ; (bad)
27078  DB  255                                 ; (bad)
27079  DB  255,214                             ; callq         *%rsi
27080  DB  255                                 ; (bad)
27081  DB  255                                 ; (bad)
27082  DB  255,199                             ; inc           %edi
27083  DB  255                                 ; (bad)
27084  DB  255                                 ; (bad)
27085  DB  255                                 ; .byte         0xff
27086
27087PUBLIC _sk_store_a8_ssse3_lowp
27088_sk_store_a8_ssse3_lowp LABEL PROC
27089  DB  72,131,236,88                       ; sub           $0x58,%rsp
27090  DB  72,173                              ; lods          %ds:(%rsi),%rax
27091  DB  76,139,24                           ; mov           (%rax),%r11
27092  DB  102,68,15,111,195                   ; movdqa        %xmm3,%xmm8
27093  DB  102,65,15,113,208,7                 ; psrlw         $0x7,%xmm8
27094  DB  102,69,15,103,192                   ; packuswb      %xmm8,%xmm8
27095  DB  77,133,192                          ; test          %r8,%r8
27096  DB  117,14                              ; jne           5f0 <_sk_store_a8_ssse3_lowp+0x2c>
27097  DB  242,69,15,17,4,19                   ; movsd         %xmm8,(%r11,%rdx,1)
27098  DB  72,173                              ; lods          %ds:(%rsi),%rax
27099  DB  72,131,196,88                       ; add           $0x58,%rsp
27100  DB  255,224                             ; jmpq          *%rax
27101  DB  69,137,193                          ; mov           %r8d,%r9d
27102  DB  65,128,225,7                        ; and           $0x7,%r9b
27103  DB  65,254,201                          ; dec           %r9b
27104  DB  65,128,249,6                        ; cmp           $0x6,%r9b
27105  DB  119,232                             ; ja            5e8 <_sk_store_a8_ssse3_lowp+0x24>
27106  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
27107  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
27108  DB  76,141,21,132,0,0,0                 ; lea           0x84(%rip),%r10        # 694 <_sk_store_a8_ssse3_lowp+0xd0>
27109  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
27110  DB  76,1,208                            ; add           %r10,%rax
27111  DB  255,224                             ; jmpq          *%rax
27112  DB  102,68,15,127,68,36,64              ; movdqa        %xmm8,0x40(%rsp)
27113  DB  138,68,36,64                        ; mov           0x40(%rsp),%al
27114  DB  65,136,4,19                         ; mov           %al,(%r11,%rdx,1)
27115  DB  235,190                             ; jmp           5e8 <_sk_store_a8_ssse3_lowp+0x24>
27116  DB  102,68,15,127,68,36,48              ; movdqa        %xmm8,0x30(%rsp)
27117  DB  138,68,36,52                        ; mov           0x34(%rsp),%al
27118  DB  65,136,68,19,2                      ; mov           %al,0x2(%r11,%rdx,1)
27119  DB  102,68,15,56,0,5,12,14,0,0          ; pshufb        0xe0c(%rip),%xmm8        # 1450 <_sk_xor__ssse3_lowp+0x11f>
27120  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
27121  DB  102,65,137,4,19                     ; mov           %ax,(%r11,%rdx,1)
27122  DB  235,152                             ; jmp           5e8 <_sk_store_a8_ssse3_lowp+0x24>
27123  DB  102,68,15,127,68,36,32              ; movdqa        %xmm8,0x20(%rsp)
27124  DB  138,68,36,44                        ; mov           0x2c(%rsp),%al
27125  DB  65,136,68,19,6                      ; mov           %al,0x6(%r11,%rdx,1)
27126  DB  102,68,15,127,68,36,16              ; movdqa        %xmm8,0x10(%rsp)
27127  DB  138,68,36,26                        ; mov           0x1a(%rsp),%al
27128  DB  65,136,68,19,5                      ; mov           %al,0x5(%r11,%rdx,1)
27129  DB  102,68,15,127,4,36                  ; movdqa        %xmm8,(%rsp)
27130  DB  138,68,36,8                         ; mov           0x8(%rsp),%al
27131  DB  65,136,68,19,4                      ; mov           %al,0x4(%r11,%rdx,1)
27132  DB  102,68,15,56,0,5,215,13,0,0         ; pshufb        0xdd7(%rip),%xmm8        # 1460 <_sk_xor__ssse3_lowp+0x12f>
27133  DB  102,69,15,126,4,19                  ; movd          %xmm8,(%r11,%rdx,1)
27134  DB  233,84,255,255,255                  ; jmpq          5e8 <_sk_store_a8_ssse3_lowp+0x24>
27135  DB  133,255                             ; test          %edi,%edi
27136  DB  255                                 ; (bad)
27137  DB  255,166,255,255,255,150             ; jmpq          *-0x69000001(%rsi)
27138  DB  255                                 ; (bad)
27139  DB  255                                 ; (bad)
27140  DB  255                                 ; (bad)
27141  DB  235,255                             ; jmp           6a1 <_sk_store_a8_ssse3_lowp+0xdd>
27142  DB  255                                 ; (bad)
27143  DB  255                                 ; (bad)
27144  DB  220,255                             ; fdivr         %st,%st(7)
27145  DB  255                                 ; (bad)
27146  DB  255,204                             ; dec           %esp
27147  DB  255                                 ; (bad)
27148  DB  255                                 ; (bad)
27149  DB  255                                 ; (bad)
27150  DB  188                                 ; .byte         0xbc
27151  DB  255                                 ; (bad)
27152  DB  255                                 ; (bad)
27153  DB  255                                 ; .byte         0xff
27154
27155PUBLIC _sk_load_g8_ssse3_lowp
27156_sk_load_g8_ssse3_lowp LABEL PROC
27157  DB  72,173                              ; lods          %ds:(%rsi),%rax
27158  DB  76,139,24                           ; mov           (%rax),%r11
27159  DB  77,133,192                          ; test          %r8,%r8
27160  DB  117,42                              ; jne           6e4 <_sk_load_g8_ssse3_lowp+0x34>
27161  DB  243,65,15,126,4,19                  ; movq          (%r11,%rdx,1),%xmm0
27162  DB  102,15,96,192                       ; punpcklbw     %xmm0,%xmm0
27163  DB  102,15,113,240,8                    ; psllw         $0x8,%xmm0
27164  DB  102,15,228,5,159,13,0,0             ; pmulhuw       0xd9f(%rip),%xmm0        # 1470 <_sk_xor__ssse3_lowp+0x13f>
27165  DB  72,173                              ; lods          %ds:(%rsi),%rax
27166  DB  15,40,29,166,13,0,0                 ; movaps        0xda6(%rip),%xmm3        # 1480 <_sk_xor__ssse3_lowp+0x14f>
27167  DB  102,15,111,200                      ; movdqa        %xmm0,%xmm1
27168  DB  102,15,111,208                      ; movdqa        %xmm0,%xmm2
27169  DB  255,224                             ; jmpq          *%rax
27170  DB  69,137,193                          ; mov           %r8d,%r9d
27171  DB  65,128,225,7                        ; and           $0x7,%r9b
27172  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
27173  DB  65,254,201                          ; dec           %r9b
27174  DB  65,128,249,6                        ; cmp           $0x6,%r9b
27175  DB  119,204                             ; ja            6c4 <_sk_load_g8_ssse3_lowp+0x14>
27176  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
27177  DB  76,141,21,113,0,0,0                 ; lea           0x71(%rip),%r10        # 774 <_sk_load_g8_ssse3_lowp+0xc4>
27178  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
27179  DB  76,1,208                            ; add           %r10,%rax
27180  DB  255,224                             ; jmpq          *%rax
27181  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
27182  DB  102,15,110,192                      ; movd          %eax,%xmm0
27183  DB  235,173                             ; jmp           6c4 <_sk_load_g8_ssse3_lowp+0x14>
27184  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
27185  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
27186  DB  102,15,196,192,2                    ; pinsrw        $0x2,%eax,%xmm0
27187  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
27188  DB  102,15,110,200                      ; movd          %eax,%xmm1
27189  DB  102,15,96,200                       ; punpcklbw     %xmm0,%xmm1
27190  DB  243,15,16,193                       ; movss         %xmm1,%xmm0
27191  DB  235,139                             ; jmp           6c4 <_sk_load_g8_ssse3_lowp+0x14>
27192  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
27193  DB  102,15,239,192                      ; pxor          %xmm0,%xmm0
27194  DB  102,15,196,192,6                    ; pinsrw        $0x6,%eax,%xmm0
27195  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
27196  DB  102,15,196,192,5                    ; pinsrw        $0x5,%eax,%xmm0
27197  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
27198  DB  102,15,196,192,4                    ; pinsrw        $0x4,%eax,%xmm0
27199  DB  102,65,15,110,12,19                 ; movd          (%r11,%rdx,1),%xmm1
27200  DB  102,15,96,200                       ; punpcklbw     %xmm0,%xmm1
27201  DB  242,15,16,193                       ; movsd         %xmm1,%xmm0
27202  DB  233,83,255,255,255                  ; jmpq          6c4 <_sk_load_g8_ssse3_lowp+0x14>
27203  DB  15,31,0                             ; nopl          (%rax)
27204  DB  152                                 ; cwtl
27205  DB  255                                 ; (bad)
27206  DB  255                                 ; (bad)
27207  DB  255,178,255,255,255,163             ; pushq         -0x5c000001(%rdx)
27208  DB  255                                 ; (bad)
27209  DB  255                                 ; (bad)
27210  DB  255                                 ; (bad)
27211  DB  234                                 ; (bad)
27212  DB  255                                 ; (bad)
27213  DB  255                                 ; (bad)
27214  DB  255                                 ; (bad)
27215  DB  223,255                             ; (bad)
27216  DB  255                                 ; (bad)
27217  DB  255,212                             ; callq         *%rsp
27218  DB  255                                 ; (bad)
27219  DB  255                                 ; (bad)
27220  DB  255,197                             ; inc           %ebp
27221  DB  255                                 ; (bad)
27222  DB  255                                 ; (bad)
27223  DB  255                                 ; .byte         0xff
27224
27225PUBLIC _sk_srcover_rgba_8888_ssse3_lowp
27226_sk_srcover_rgba_8888_ssse3_lowp LABEL PROC
27227  DB  102,68,15,111,225                   ; movdqa        %xmm1,%xmm12
27228  DB  72,173                              ; lods          %ds:(%rsi),%rax
27229  DB  76,139,24                           ; mov           (%rax),%r11
27230  DB  77,133,192                          ; test          %r8,%r8
27231  DB  15,133,17,2,0,0                     ; jne           9b4 <_sk_srcover_rgba_8888_ssse3_lowp+0x224>
27232  DB  69,15,16,68,147,16                  ; movups        0x10(%r11,%rdx,4),%xmm8
27233  DB  102,65,15,16,60,147                 ; movupd        (%r11,%rdx,4),%xmm7
27234  DB  72,131,236,24                       ; sub           $0x18,%rsp
27235  DB  102,15,111,45,213,12,0,0            ; movdqa        0xcd5(%rip),%xmm5        # 1490 <_sk_xor__ssse3_lowp+0x15f>
27236  DB  102,15,40,231                       ; movapd        %xmm7,%xmm4
27237  DB  102,15,56,0,229                     ; pshufb        %xmm5,%xmm4
27238  DB  102,65,15,111,240                   ; movdqa        %xmm8,%xmm6
27239  DB  102,15,56,0,245                     ; pshufb        %xmm5,%xmm6
27240  DB  102,15,108,230                      ; punpcklqdq    %xmm6,%xmm4
27241  DB  102,15,111,13,198,12,0,0            ; movdqa        0xcc6(%rip),%xmm1        # 14a0 <_sk_xor__ssse3_lowp+0x16f>
27242  DB  102,15,113,244,8                    ; psllw         $0x8,%xmm4
27243  DB  102,68,15,111,13,200,12,0,0         ; movdqa        0xcc8(%rip),%xmm9        # 14b0 <_sk_xor__ssse3_lowp+0x17f>
27244  DB  102,65,15,228,225                   ; pmulhuw       %xmm9,%xmm4
27245  DB  102,68,15,111,21,202,12,0,0         ; movdqa        0xcca(%rip),%xmm10        # 14c0 <_sk_xor__ssse3_lowp+0x18f>
27246  DB  102,15,40,239                       ; movapd        %xmm7,%xmm5
27247  DB  102,65,15,56,0,234                  ; pshufb        %xmm10,%xmm5
27248  DB  102,65,15,111,240                   ; movdqa        %xmm8,%xmm6
27249  DB  102,65,15,56,0,242                  ; pshufb        %xmm10,%xmm6
27250  DB  102,15,108,238                      ; punpcklqdq    %xmm6,%xmm5
27251  DB  102,15,113,245,8                    ; psllw         $0x8,%xmm5
27252  DB  102,65,15,228,233                   ; pmulhuw       %xmm9,%xmm5
27253  DB  102,68,15,111,21,174,12,0,0         ; movdqa        0xcae(%rip),%xmm10        # 14d0 <_sk_xor__ssse3_lowp+0x19f>
27254  DB  102,15,40,247                       ; movapd        %xmm7,%xmm6
27255  DB  102,65,15,56,0,242                  ; pshufb        %xmm10,%xmm6
27256  DB  102,69,15,111,216                   ; movdqa        %xmm8,%xmm11
27257  DB  102,69,15,56,0,218                  ; pshufb        %xmm10,%xmm11
27258  DB  102,65,15,108,243                   ; punpcklqdq    %xmm11,%xmm6
27259  DB  102,15,113,246,8                    ; psllw         $0x8,%xmm6
27260  DB  102,65,15,228,241                   ; pmulhuw       %xmm9,%xmm6
27261  DB  102,68,15,111,21,145,12,0,0         ; movdqa        0xc91(%rip),%xmm10        # 14e0 <_sk_xor__ssse3_lowp+0x1af>
27262  DB  102,65,15,56,0,250                  ; pshufb        %xmm10,%xmm7
27263  DB  102,69,15,56,0,194                  ; pshufb        %xmm10,%xmm8
27264  DB  102,65,15,108,248                   ; punpcklqdq    %xmm8,%xmm7
27265  DB  102,15,113,247,8                    ; psllw         $0x8,%xmm7
27266  DB  102,65,15,228,249                   ; pmulhuw       %xmm9,%xmm7
27267  DB  102,68,15,111,29,125,12,0,0         ; movdqa        0xc7d(%rip),%xmm11        # 14f0 <_sk_xor__ssse3_lowp+0x1bf>
27268  DB  102,68,15,249,219                   ; psubw         %xmm3,%xmm11
27269  DB  102,68,15,111,196                   ; movdqa        %xmm4,%xmm8
27270  DB  102,69,15,56,11,195                 ; pmulhrsw      %xmm11,%xmm8
27271  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27272  DB  102,68,15,253,192                   ; paddw         %xmm0,%xmm8
27273  DB  102,15,111,197                      ; movdqa        %xmm5,%xmm0
27274  DB  102,65,15,56,11,195                 ; pmulhrsw      %xmm11,%xmm0
27275  DB  102,68,15,56,29,200                 ; pabsw         %xmm0,%xmm9
27276  DB  102,69,15,253,204                   ; paddw         %xmm12,%xmm9
27277  DB  102,15,111,198                      ; movdqa        %xmm6,%xmm0
27278  DB  102,65,15,56,11,195                 ; pmulhrsw      %xmm11,%xmm0
27279  DB  102,68,15,56,29,224                 ; pabsw         %xmm0,%xmm12
27280  DB  102,68,15,253,226                   ; paddw         %xmm2,%xmm12
27281  DB  102,68,15,56,11,223                 ; pmulhrsw      %xmm7,%xmm11
27282  DB  102,69,15,56,29,219                 ; pabsw         %xmm11,%xmm11
27283  DB  102,68,15,253,219                   ; paddw         %xmm3,%xmm11
27284  DB  102,68,15,127,4,36                  ; movdqa        %xmm8,(%rsp)
27285  DB  102,65,15,111,216                   ; movdqa        %xmm8,%xmm3
27286  DB  102,15,113,211,7                    ; psrlw         $0x7,%xmm3
27287  DB  102,15,234,217                      ; pminsw        %xmm1,%xmm3
27288  DB  102,69,15,239,255                   ; pxor          %xmm15,%xmm15
27289  DB  102,68,15,111,235                   ; movdqa        %xmm3,%xmm13
27290  DB  102,69,15,97,239                    ; punpcklwd     %xmm15,%xmm13
27291  DB  102,65,15,105,223                   ; punpckhwd     %xmm15,%xmm3
27292  DB  102,65,15,111,209                   ; movdqa        %xmm9,%xmm2
27293  DB  102,15,113,210,7                    ; psrlw         $0x7,%xmm2
27294  DB  102,15,234,209                      ; pminsw        %xmm1,%xmm2
27295  DB  102,68,15,111,242                   ; movdqa        %xmm2,%xmm14
27296  DB  102,69,15,105,247                   ; punpckhwd     %xmm15,%xmm14
27297  DB  102,65,15,97,215                    ; punpcklwd     %xmm15,%xmm2
27298  DB  102,69,15,111,212                   ; movdqa        %xmm12,%xmm10
27299  DB  102,65,15,113,210,7                 ; psrlw         $0x7,%xmm10
27300  DB  102,68,15,234,209                   ; pminsw        %xmm1,%xmm10
27301  DB  102,69,15,111,194                   ; movdqa        %xmm10,%xmm8
27302  DB  102,69,15,97,199                    ; punpcklwd     %xmm15,%xmm8
27303  DB  102,69,15,105,215                   ; punpckhwd     %xmm15,%xmm10
27304  DB  102,65,15,111,195                   ; movdqa        %xmm11,%xmm0
27305  DB  102,15,113,208,7                    ; psrlw         $0x7,%xmm0
27306  DB  102,15,234,193                      ; pminsw        %xmm1,%xmm0
27307  DB  102,15,111,200                      ; movdqa        %xmm0,%xmm1
27308  DB  102,65,15,105,207                   ; punpckhwd     %xmm15,%xmm1
27309  DB  102,65,15,97,199                    ; punpcklwd     %xmm15,%xmm0
27310  DB  102,65,15,114,246,8                 ; pslld         $0x8,%xmm14
27311  DB  102,68,15,235,243                   ; por           %xmm3,%xmm14
27312  DB  102,15,114,242,8                    ; pslld         $0x8,%xmm2
27313  DB  102,65,15,235,213                   ; por           %xmm13,%xmm2
27314  DB  102,65,15,114,242,16                ; pslld         $0x10,%xmm10
27315  DB  102,15,114,241,24                   ; pslld         $0x18,%xmm1
27316  DB  102,65,15,235,202                   ; por           %xmm10,%xmm1
27317  DB  102,65,15,235,206                   ; por           %xmm14,%xmm1
27318  DB  102,65,15,114,240,16                ; pslld         $0x10,%xmm8
27319  DB  102,15,114,240,24                   ; pslld         $0x18,%xmm0
27320  DB  102,65,15,235,192                   ; por           %xmm8,%xmm0
27321  DB  102,15,235,194                      ; por           %xmm2,%xmm0
27322  DB  77,133,192                          ; test          %r8,%r8
27323  DB  117,100                             ; jne           9f0 <_sk_srcover_rgba_8888_ssse3_lowp+0x260>
27324  DB  243,65,15,127,4,147                 ; movdqu        %xmm0,(%r11,%rdx,4)
27325  DB  243,65,15,127,76,147,16             ; movdqu        %xmm1,0x10(%r11,%rdx,4)
27326  DB  72,173                              ; lods          %ds:(%rsi),%rax
27327  DB  15,40,4,36                          ; movaps        (%rsp),%xmm0
27328  DB  102,65,15,111,201                   ; movdqa        %xmm9,%xmm1
27329  DB  102,65,15,111,212                   ; movdqa        %xmm12,%xmm2
27330  DB  102,65,15,111,219                   ; movdqa        %xmm11,%xmm3
27331  DB  72,131,196,24                       ; add           $0x18,%rsp
27332  DB  255,224                             ; jmpq          *%rax
27333  DB  69,137,193                          ; mov           %r8d,%r9d
27334  DB  65,128,225,7                        ; and           $0x7,%r9b
27335  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
27336  DB  102,15,239,255                      ; pxor          %xmm7,%xmm7
27337  DB  65,254,201                          ; dec           %r9b
27338  DB  65,128,249,6                        ; cmp           $0x6,%r9b
27339  DB  15,135,222,253,255,255              ; ja            7af <_sk_srcover_rgba_8888_ssse3_lowp+0x1f>
27340  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
27341  DB  76,141,21,208,0,0,0                 ; lea           0xd0(%rip),%r10        # aac <_sk_srcover_rgba_8888_ssse3_lowp+0x31c>
27342  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
27343  DB  76,1,208                            ; add           %r10,%rax
27344  DB  255,224                             ; jmpq          *%rax
27345  DB  243,65,15,16,60,147                 ; movss         (%r11,%rdx,4),%xmm7
27346  DB  233,191,253,255,255                 ; jmpq          7af <_sk_srcover_rgba_8888_ssse3_lowp+0x1f>
27347  DB  69,137,193                          ; mov           %r8d,%r9d
27348  DB  65,128,225,7                        ; and           $0x7,%r9b
27349  DB  65,254,201                          ; dec           %r9b
27350  DB  65,128,249,6                        ; cmp           $0x6,%r9b
27351  DB  119,153                             ; ja            999 <_sk_srcover_rgba_8888_ssse3_lowp+0x209>
27352  DB  65,15,182,193                       ; movzbl        %r9b,%eax
27353  DB  76,141,13,189,0,0,0                 ; lea           0xbd(%rip),%r9        # ac8 <_sk_srcover_rgba_8888_ssse3_lowp+0x338>
27354  DB  73,99,4,129                         ; movslq        (%r9,%rax,4),%rax
27355  DB  76,1,200                            ; add           %r9,%rax
27356  DB  255,224                             ; jmpq          *%rax
27357  DB  102,65,15,126,4,147                 ; movd          %xmm0,(%r11,%rdx,4)
27358  DB  233,122,255,255,255                 ; jmpq          999 <_sk_srcover_rgba_8888_ssse3_lowp+0x209>
27359  DB  102,65,15,110,100,147,8             ; movd          0x8(%r11,%rdx,4),%xmm4
27360  DB  102,15,112,252,69                   ; pshufd        $0x45,%xmm4,%xmm7
27361  DB  102,65,15,18,60,147                 ; movlpd        (%r11,%rdx,4),%xmm7
27362  DB  233,121,253,255,255                 ; jmpq          7af <_sk_srcover_rgba_8888_ssse3_lowp+0x1f>
27363  DB  102,65,15,110,100,147,24            ; movd          0x18(%r11,%rdx,4),%xmm4
27364  DB  102,68,15,112,196,69                ; pshufd        $0x45,%xmm4,%xmm8
27365  DB  243,65,15,16,100,147,20             ; movss         0x14(%r11,%rdx,4),%xmm4
27366  DB  65,15,198,224,0                     ; shufps        $0x0,%xmm8,%xmm4
27367  DB  65,15,198,224,226                   ; shufps        $0xe2,%xmm8,%xmm4
27368  DB  68,15,40,196                        ; movaps        %xmm4,%xmm8
27369  DB  243,65,15,16,100,147,16             ; movss         0x10(%r11,%rdx,4),%xmm4
27370  DB  243,68,15,16,196                    ; movss         %xmm4,%xmm8
27371  DB  233,64,253,255,255                  ; jmpq          7a9 <_sk_srcover_rgba_8888_ssse3_lowp+0x19>
27372  DB  102,15,112,200,78                   ; pshufd        $0x4e,%xmm0,%xmm1
27373  DB  102,65,15,126,76,147,8              ; movd          %xmm1,0x8(%r11,%rdx,4)
27374  DB  102,65,15,214,4,147                 ; movq          %xmm0,(%r11,%rdx,4)
27375  DB  233,25,255,255,255                  ; jmpq          999 <_sk_srcover_rgba_8888_ssse3_lowp+0x209>
27376  DB  102,15,112,209,78                   ; pshufd        $0x4e,%xmm1,%xmm2
27377  DB  102,65,15,126,84,147,24             ; movd          %xmm2,0x18(%r11,%rdx,4)
27378  DB  102,15,112,209,229                  ; pshufd        $0xe5,%xmm1,%xmm2
27379  DB  102,65,15,126,84,147,20             ; movd          %xmm2,0x14(%r11,%rdx,4)
27380  DB  102,65,15,126,76,147,16             ; movd          %xmm1,0x10(%r11,%rdx,4)
27381  DB  243,65,15,127,4,147                 ; movdqu        %xmm0,(%r11,%rdx,4)
27382  DB  233,239,254,255,255                 ; jmpq          999 <_sk_srcover_rgba_8888_ssse3_lowp+0x209>
27383  DB  102,144                             ; xchg          %ax,%ax
27384  DB  57,255                              ; cmp           %edi,%edi
27385  DB  255                                 ; (bad)
27386  DB  255                                 ; (bad)
27387  DB  127,255                             ; jg            ab1 <_sk_srcover_rgba_8888_ssse3_lowp+0x321>
27388  DB  255                                 ; (bad)
27389  DB  255,115,255                         ; pushq         -0x1(%rbx)
27390  DB  255                                 ; (bad)
27391  DB  255                                 ; (bad)
27392  DB  253                                 ; std
27393  DB  252                                 ; cld
27394  DB  255                                 ; (bad)
27395  DB  255,172,255,255,255,151,255         ; ljmp          *-0x680001(%rdi,%rdi,8)
27396  DB  255                                 ; (bad)
27397  DB  255,138,255,255,255,76              ; decl          0x4cffffff(%rdx)
27398  DB  255                                 ; (bad)
27399  DB  255                                 ; (bad)
27400  DB  255,173,255,255,255,161             ; ljmp          *-0x5e000001(%rbp)
27401  DB  255                                 ; (bad)
27402  DB  255                                 ; (bad)
27403  DB  255,215                             ; callq         *%rdi
27404  DB  255                                 ; (bad)
27405  DB  255                                 ; (bad)
27406  DB  255,208                             ; callq         *%rax
27407  DB  255                                 ; (bad)
27408  DB  255                                 ; (bad)
27409  DB  255,196                             ; inc           %esp
27410  DB  255                                 ; (bad)
27411  DB  255                                 ; (bad)
27412  DB  255                                 ; (bad)
27413  DB  184                                 ; .byte         0xb8
27414  DB  255                                 ; (bad)
27415  DB  255                                 ; (bad)
27416  DB  255                                 ; .byte         0xff
27417
27418PUBLIC _sk_scale_1_float_ssse3_lowp
27419_sk_scale_1_float_ssse3_lowp LABEL PROC
27420  DB  72,173                              ; lods          %ds:(%rsi),%rax
27421  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
27422  DB  243,68,15,88,5,224,10,0,0           ; addss         0xae0(%rip),%xmm8        # 15d4 <_sk_xor__ssse3_lowp+0x2a3>
27423  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
27424  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
27425  DB  242,69,15,112,192,0                 ; pshuflw       $0x0,%xmm8,%xmm8
27426  DB  102,69,15,112,192,80                ; pshufd        $0x50,%xmm8,%xmm8
27427  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27428  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27429  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27430  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27431  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27432  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27433  DB  102,65,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm3
27434  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
27435  DB  72,173                              ; lods          %ds:(%rsi),%rax
27436  DB  255,224                             ; jmpq          *%rax
27437
27438PUBLIC _sk_scale_u8_ssse3_lowp
27439_sk_scale_u8_ssse3_lowp LABEL PROC
27440  DB  72,173                              ; lods          %ds:(%rsi),%rax
27441  DB  76,139,24                           ; mov           (%rax),%r11
27442  DB  77,133,192                          ; test          %r8,%r8
27443  DB  117,74                              ; jne           b8e <_sk_scale_u8_ssse3_lowp+0x54>
27444  DB  243,69,15,126,4,19                  ; movq          (%r11,%rdx,1),%xmm8
27445  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
27446  DB  102,65,15,113,240,8                 ; psllw         $0x8,%xmm8
27447  DB  102,68,15,228,5,162,9,0,0           ; pmulhuw       0x9a2(%rip),%xmm8        # 1500 <_sk_xor__ssse3_lowp+0x1cf>
27448  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27449  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27450  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27451  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27452  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27453  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27454  DB  102,65,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm3
27455  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
27456  DB  72,173                              ; lods          %ds:(%rsi),%rax
27457  DB  255,224                             ; jmpq          *%rax
27458  DB  69,137,193                          ; mov           %r8d,%r9d
27459  DB  65,128,225,7                        ; and           $0x7,%r9b
27460  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
27461  DB  65,254,201                          ; dec           %r9b
27462  DB  65,128,249,6                        ; cmp           $0x6,%r9b
27463  DB  119,172                             ; ja            b4f <_sk_scale_u8_ssse3_lowp+0x15>
27464  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
27465  DB  76,141,21,126,0,0,0                 ; lea           0x7e(%rip),%r10        # c2c <_sk_scale_u8_ssse3_lowp+0xf2>
27466  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
27467  DB  76,1,208                            ; add           %r10,%rax
27468  DB  255,224                             ; jmpq          *%rax
27469  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
27470  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
27471  DB  235,140                             ; jmp           b4f <_sk_scale_u8_ssse3_lowp+0x15>
27472  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
27473  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
27474  DB  102,68,15,196,192,2                 ; pinsrw        $0x2,%eax,%xmm8
27475  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
27476  DB  102,68,15,110,200                   ; movd          %eax,%xmm9
27477  DB  102,68,15,96,200                    ; punpcklbw     %xmm0,%xmm9
27478  DB  243,69,15,16,193                    ; movss         %xmm9,%xmm8
27479  DB  233,98,255,255,255                  ; jmpq          b4f <_sk_scale_u8_ssse3_lowp+0x15>
27480  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
27481  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
27482  DB  102,68,15,196,192,6                 ; pinsrw        $0x6,%eax,%xmm8
27483  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
27484  DB  102,68,15,196,192,5                 ; pinsrw        $0x5,%eax,%xmm8
27485  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
27486  DB  102,68,15,196,192,4                 ; pinsrw        $0x4,%eax,%xmm8
27487  DB  102,69,15,110,12,19                 ; movd          (%r11,%rdx,1),%xmm9
27488  DB  102,68,15,96,200                    ; punpcklbw     %xmm0,%xmm9
27489  DB  242,69,15,16,193                    ; movsd         %xmm9,%xmm8
27490  DB  233,36,255,255,255                  ; jmpq          b4f <_sk_scale_u8_ssse3_lowp+0x15>
27491  DB  144                                 ; nop
27492  DB  139,255                             ; mov           %edi,%edi
27493  DB  255                                 ; (bad)
27494  DB  255,168,255,255,255,151             ; ljmp          *-0x68000001(%rax)
27495  DB  255                                 ; (bad)
27496  DB  255                                 ; (bad)
27497  DB  255                                 ; (bad)
27498  DB  234                                 ; (bad)
27499  DB  255                                 ; (bad)
27500  DB  255                                 ; (bad)
27501  DB  255                                 ; (bad)
27502  DB  222,255                             ; fdivrp        %st,%st(7)
27503  DB  255                                 ; (bad)
27504  DB  255,210                             ; callq         *%rdx
27505  DB  255                                 ; (bad)
27506  DB  255                                 ; (bad)
27507  DB  255,193                             ; inc           %ecx
27508  DB  255                                 ; (bad)
27509  DB  255                                 ; (bad)
27510  DB  255                                 ; .byte         0xff
27511
27512PUBLIC _sk_lerp_1_float_ssse3_lowp
27513_sk_lerp_1_float_ssse3_lowp LABEL PROC
27514  DB  72,173                              ; lods          %ds:(%rsi),%rax
27515  DB  243,68,15,16,0                      ; movss         (%rax),%xmm8
27516  DB  243,68,15,88,5,128,9,0,0            ; addss         0x980(%rip),%xmm8        # 15d8 <_sk_xor__ssse3_lowp+0x2a7>
27517  DB  102,68,15,126,192                   ; movd          %xmm8,%eax
27518  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
27519  DB  242,69,15,112,192,0                 ; pshuflw       $0x0,%xmm8,%xmm8
27520  DB  102,69,15,112,192,80                ; pshufd        $0x50,%xmm8,%xmm8
27521  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27522  DB  102,68,15,56,29,200                 ; pabsw         %xmm0,%xmm9
27523  DB  102,68,15,111,21,141,8,0,0          ; movdqa        0x88d(%rip),%xmm10        # 1510 <_sk_xor__ssse3_lowp+0x1df>
27524  DB  102,69,15,249,208                   ; psubw         %xmm8,%xmm10
27525  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
27526  DB  102,65,15,56,11,194                 ; pmulhrsw      %xmm10,%xmm0
27527  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27528  DB  102,65,15,253,193                   ; paddw         %xmm9,%xmm0
27529  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27530  DB  102,68,15,56,29,201                 ; pabsw         %xmm1,%xmm9
27531  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
27532  DB  102,65,15,56,11,202                 ; pmulhrsw      %xmm10,%xmm1
27533  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27534  DB  102,65,15,253,201                   ; paddw         %xmm9,%xmm1
27535  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27536  DB  102,68,15,56,29,202                 ; pabsw         %xmm2,%xmm9
27537  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
27538  DB  102,65,15,56,11,210                 ; pmulhrsw      %xmm10,%xmm2
27539  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27540  DB  102,65,15,253,209                   ; paddw         %xmm9,%xmm2
27541  DB  102,65,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm3
27542  DB  102,68,15,56,29,195                 ; pabsw         %xmm3,%xmm8
27543  DB  102,68,15,56,11,215                 ; pmulhrsw      %xmm7,%xmm10
27544  DB  102,65,15,56,29,218                 ; pabsw         %xmm10,%xmm3
27545  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27546  DB  72,173                              ; lods          %ds:(%rsi),%rax
27547  DB  255,224                             ; jmpq          *%rax
27548
27549PUBLIC _sk_lerp_u8_ssse3_lowp
27550_sk_lerp_u8_ssse3_lowp LABEL PROC
27551  DB  72,173                              ; lods          %ds:(%rsi),%rax
27552  DB  76,139,24                           ; mov           (%rax),%r11
27553  DB  77,133,192                          ; test          %r8,%r8
27554  DB  15,133,169,0,0,0                    ; jne           db4 <_sk_lerp_u8_ssse3_lowp+0xb7>
27555  DB  243,69,15,126,4,19                  ; movq          (%r11,%rdx,1),%xmm8
27556  DB  102,68,15,96,192                    ; punpcklbw     %xmm0,%xmm8
27557  DB  102,65,15,113,240,8                 ; psllw         $0x8,%xmm8
27558  DB  102,68,15,228,5,251,7,0,0           ; pmulhuw       0x7fb(%rip),%xmm8        # 1520 <_sk_xor__ssse3_lowp+0x1ef>
27559  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27560  DB  102,68,15,56,29,200                 ; pabsw         %xmm0,%xmm9
27561  DB  102,68,15,111,21,246,7,0,0          ; movdqa        0x7f6(%rip),%xmm10        # 1530 <_sk_xor__ssse3_lowp+0x1ff>
27562  DB  102,69,15,249,208                   ; psubw         %xmm8,%xmm10
27563  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
27564  DB  102,65,15,56,11,194                 ; pmulhrsw      %xmm10,%xmm0
27565  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27566  DB  102,65,15,253,193                   ; paddw         %xmm9,%xmm0
27567  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27568  DB  102,68,15,56,29,201                 ; pabsw         %xmm1,%xmm9
27569  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
27570  DB  102,65,15,56,11,202                 ; pmulhrsw      %xmm10,%xmm1
27571  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27572  DB  102,65,15,253,201                   ; paddw         %xmm9,%xmm1
27573  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27574  DB  102,68,15,56,29,202                 ; pabsw         %xmm2,%xmm9
27575  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
27576  DB  102,65,15,56,11,210                 ; pmulhrsw      %xmm10,%xmm2
27577  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27578  DB  102,65,15,253,209                   ; paddw         %xmm9,%xmm2
27579  DB  102,65,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm3
27580  DB  102,68,15,56,29,195                 ; pabsw         %xmm3,%xmm8
27581  DB  102,68,15,56,11,215                 ; pmulhrsw      %xmm7,%xmm10
27582  DB  102,65,15,56,29,218                 ; pabsw         %xmm10,%xmm3
27583  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27584  DB  72,173                              ; lods          %ds:(%rsi),%rax
27585  DB  255,224                             ; jmpq          *%rax
27586  DB  69,137,193                          ; mov           %r8d,%r9d
27587  DB  65,128,225,7                        ; and           $0x7,%r9b
27588  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
27589  DB  65,254,201                          ; dec           %r9b
27590  DB  65,128,249,6                        ; cmp           $0x6,%r9b
27591  DB  15,135,73,255,255,255               ; ja            d16 <_sk_lerp_u8_ssse3_lowp+0x19>
27592  DB  69,15,182,201                       ; movzbl        %r9b,%r9d
27593  DB  76,141,21,128,0,0,0                 ; lea           0x80(%rip),%r10        # e58 <_sk_lerp_u8_ssse3_lowp+0x15b>
27594  DB  75,99,4,138                         ; movslq        (%r10,%r9,4),%rax
27595  DB  76,1,208                            ; add           %r10,%rax
27596  DB  255,224                             ; jmpq          *%rax
27597  DB  65,15,182,4,19                      ; movzbl        (%r11,%rdx,1),%eax
27598  DB  102,68,15,110,192                   ; movd          %eax,%xmm8
27599  DB  233,38,255,255,255                  ; jmpq          d16 <_sk_lerp_u8_ssse3_lowp+0x19>
27600  DB  65,15,182,68,19,2                   ; movzbl        0x2(%r11,%rdx,1),%eax
27601  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
27602  DB  102,68,15,196,192,2                 ; pinsrw        $0x2,%eax,%xmm8
27603  DB  65,15,183,4,19                      ; movzwl        (%r11,%rdx,1),%eax
27604  DB  102,68,15,110,200                   ; movd          %eax,%xmm9
27605  DB  102,68,15,96,200                    ; punpcklbw     %xmm0,%xmm9
27606  DB  243,69,15,16,193                    ; movss         %xmm9,%xmm8
27607  DB  233,252,254,255,255                 ; jmpq          d16 <_sk_lerp_u8_ssse3_lowp+0x19>
27608  DB  65,15,182,68,19,6                   ; movzbl        0x6(%r11,%rdx,1),%eax
27609  DB  102,69,15,239,192                   ; pxor          %xmm8,%xmm8
27610  DB  102,68,15,196,192,6                 ; pinsrw        $0x6,%eax,%xmm8
27611  DB  65,15,182,68,19,5                   ; movzbl        0x5(%r11,%rdx,1),%eax
27612  DB  102,68,15,196,192,5                 ; pinsrw        $0x5,%eax,%xmm8
27613  DB  65,15,182,68,19,4                   ; movzbl        0x4(%r11,%rdx,1),%eax
27614  DB  102,68,15,196,192,4                 ; pinsrw        $0x4,%eax,%xmm8
27615  DB  102,69,15,110,12,19                 ; movd          (%r11,%rdx,1),%xmm9
27616  DB  102,68,15,96,200                    ; punpcklbw     %xmm0,%xmm9
27617  DB  242,69,15,16,193                    ; movsd         %xmm9,%xmm8
27618  DB  233,190,254,255,255                 ; jmpq          d16 <_sk_lerp_u8_ssse3_lowp+0x19>
27619  DB  137,255                             ; mov           %edi,%edi
27620  DB  255                                 ; (bad)
27621  DB  255,169,255,255,255,152             ; ljmp          *-0x67000001(%rcx)
27622  DB  255                                 ; (bad)
27623  DB  255                                 ; (bad)
27624  DB  255                                 ; (bad)
27625  DB  235,255                             ; jmp           e65 <_sk_lerp_u8_ssse3_lowp+0x168>
27626  DB  255                                 ; (bad)
27627  DB  255                                 ; (bad)
27628  DB  223,255                             ; (bad)
27629  DB  255                                 ; (bad)
27630  DB  255,211                             ; callq         *%rbx
27631  DB  255                                 ; (bad)
27632  DB  255                                 ; (bad)
27633  DB  255,194                             ; inc           %edx
27634  DB  255                                 ; (bad)
27635  DB  255                                 ; (bad)
27636  DB  255                                 ; .byte         0xff
27637
27638PUBLIC _sk_swap_rb_ssse3_lowp
27639_sk_swap_rb_ssse3_lowp LABEL PROC
27640  DB  68,15,40,192                        ; movaps        %xmm0,%xmm8
27641  DB  72,173                              ; lods          %ds:(%rsi),%rax
27642  DB  15,40,194                           ; movaps        %xmm2,%xmm0
27643  DB  65,15,40,208                        ; movaps        %xmm8,%xmm2
27644  DB  255,224                             ; jmpq          *%rax
27645
27646PUBLIC _sk_swap_ssse3_lowp
27647_sk_swap_ssse3_lowp LABEL PROC
27648  DB  68,15,40,195                        ; movaps        %xmm3,%xmm8
27649  DB  68,15,40,202                        ; movaps        %xmm2,%xmm9
27650  DB  68,15,40,209                        ; movaps        %xmm1,%xmm10
27651  DB  68,15,40,216                        ; movaps        %xmm0,%xmm11
27652  DB  72,173                              ; lods          %ds:(%rsi),%rax
27653  DB  15,40,196                           ; movaps        %xmm4,%xmm0
27654  DB  15,40,205                           ; movaps        %xmm5,%xmm1
27655  DB  15,40,214                           ; movaps        %xmm6,%xmm2
27656  DB  15,40,223                           ; movaps        %xmm7,%xmm3
27657  DB  65,15,40,227                        ; movaps        %xmm11,%xmm4
27658  DB  65,15,40,234                        ; movaps        %xmm10,%xmm5
27659  DB  65,15,40,241                        ; movaps        %xmm9,%xmm6
27660  DB  65,15,40,248                        ; movaps        %xmm8,%xmm7
27661  DB  255,224                             ; jmpq          *%rax
27662
27663PUBLIC _sk_move_src_dst_ssse3_lowp
27664_sk_move_src_dst_ssse3_lowp LABEL PROC
27665  DB  72,173                              ; lods          %ds:(%rsi),%rax
27666  DB  15,40,224                           ; movaps        %xmm0,%xmm4
27667  DB  15,40,233                           ; movaps        %xmm1,%xmm5
27668  DB  15,40,242                           ; movaps        %xmm2,%xmm6
27669  DB  15,40,251                           ; movaps        %xmm3,%xmm7
27670  DB  255,224                             ; jmpq          *%rax
27671
27672PUBLIC _sk_move_dst_src_ssse3_lowp
27673_sk_move_dst_src_ssse3_lowp LABEL PROC
27674  DB  72,173                              ; lods          %ds:(%rsi),%rax
27675  DB  15,40,196                           ; movaps        %xmm4,%xmm0
27676  DB  15,40,205                           ; movaps        %xmm5,%xmm1
27677  DB  15,40,214                           ; movaps        %xmm6,%xmm2
27678  DB  15,40,223                           ; movaps        %xmm7,%xmm3
27679  DB  255,224                             ; jmpq          *%rax
27680
27681PUBLIC _sk_clear_ssse3_lowp
27682_sk_clear_ssse3_lowp LABEL PROC
27683  DB  72,173                              ; lods          %ds:(%rsi),%rax
27684  DB  15,87,192                           ; xorps         %xmm0,%xmm0
27685  DB  15,87,201                           ; xorps         %xmm1,%xmm1
27686  DB  15,87,210                           ; xorps         %xmm2,%xmm2
27687  DB  15,87,219                           ; xorps         %xmm3,%xmm3
27688  DB  255,224                             ; jmpq          *%rax
27689
27690PUBLIC _sk_srcatop_ssse3_lowp
27691_sk_srcatop_ssse3_lowp LABEL PROC
27692  DB  102,15,56,11,199                    ; pmulhrsw      %xmm7,%xmm0
27693  DB  102,68,15,56,29,192                 ; pabsw         %xmm0,%xmm8
27694  DB  102,68,15,111,13,73,6,0,0           ; movdqa        0x649(%rip),%xmm9        # 1540 <_sk_xor__ssse3_lowp+0x20f>
27695  DB  102,68,15,249,203                   ; psubw         %xmm3,%xmm9
27696  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
27697  DB  102,65,15,56,11,193                 ; pmulhrsw      %xmm9,%xmm0
27698  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27699  DB  102,65,15,253,192                   ; paddw         %xmm8,%xmm0
27700  DB  102,15,56,11,207                    ; pmulhrsw      %xmm7,%xmm1
27701  DB  102,68,15,56,29,193                 ; pabsw         %xmm1,%xmm8
27702  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
27703  DB  102,65,15,56,11,201                 ; pmulhrsw      %xmm9,%xmm1
27704  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27705  DB  102,65,15,253,200                   ; paddw         %xmm8,%xmm1
27706  DB  102,15,56,11,215                    ; pmulhrsw      %xmm7,%xmm2
27707  DB  102,68,15,56,29,194                 ; pabsw         %xmm2,%xmm8
27708  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
27709  DB  102,65,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm2
27710  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27711  DB  102,65,15,253,208                   ; paddw         %xmm8,%xmm2
27712  DB  102,15,56,11,223                    ; pmulhrsw      %xmm7,%xmm3
27713  DB  102,68,15,56,29,195                 ; pabsw         %xmm3,%xmm8
27714  DB  102,68,15,56,11,207                 ; pmulhrsw      %xmm7,%xmm9
27715  DB  102,65,15,56,29,217                 ; pabsw         %xmm9,%xmm3
27716  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27717  DB  72,173                              ; lods          %ds:(%rsi),%rax
27718  DB  255,224                             ; jmpq          *%rax
27719
27720PUBLIC _sk_dstatop_ssse3_lowp
27721_sk_dstatop_ssse3_lowp LABEL PROC
27722  DB  102,68,15,111,196                   ; movdqa        %xmm4,%xmm8
27723  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27724  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27725  DB  102,68,15,111,13,200,5,0,0          ; movdqa        0x5c8(%rip),%xmm9        # 1550 <_sk_xor__ssse3_lowp+0x21f>
27726  DB  102,68,15,249,207                   ; psubw         %xmm7,%xmm9
27727  DB  102,65,15,56,11,193                 ; pmulhrsw      %xmm9,%xmm0
27728  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27729  DB  102,65,15,253,192                   ; paddw         %xmm8,%xmm0
27730  DB  102,68,15,111,197                   ; movdqa        %xmm5,%xmm8
27731  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27732  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27733  DB  102,65,15,56,11,201                 ; pmulhrsw      %xmm9,%xmm1
27734  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27735  DB  102,65,15,253,200                   ; paddw         %xmm8,%xmm1
27736  DB  102,68,15,111,198                   ; movdqa        %xmm6,%xmm8
27737  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27738  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27739  DB  102,65,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm2
27740  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27741  DB  102,65,15,253,208                   ; paddw         %xmm8,%xmm2
27742  DB  102,68,15,111,199                   ; movdqa        %xmm7,%xmm8
27743  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27744  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27745  DB  102,68,15,56,11,203                 ; pmulhrsw      %xmm3,%xmm9
27746  DB  102,65,15,56,29,217                 ; pabsw         %xmm9,%xmm3
27747  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27748  DB  72,173                              ; lods          %ds:(%rsi),%rax
27749  DB  255,224                             ; jmpq          *%rax
27750
27751PUBLIC _sk_srcin_ssse3_lowp
27752_sk_srcin_ssse3_lowp LABEL PROC
27753  DB  102,15,56,11,199                    ; pmulhrsw      %xmm7,%xmm0
27754  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27755  DB  102,15,56,11,207                    ; pmulhrsw      %xmm7,%xmm1
27756  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27757  DB  102,15,56,11,215                    ; pmulhrsw      %xmm7,%xmm2
27758  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27759  DB  102,15,56,11,223                    ; pmulhrsw      %xmm7,%xmm3
27760  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
27761  DB  72,173                              ; lods          %ds:(%rsi),%rax
27762  DB  255,224                             ; jmpq          *%rax
27763
27764PUBLIC _sk_dstin_ssse3_lowp
27765_sk_dstin_ssse3_lowp LABEL PROC
27766  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
27767  DB  102,15,56,11,195                    ; pmulhrsw      %xmm3,%xmm0
27768  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27769  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
27770  DB  102,15,56,11,203                    ; pmulhrsw      %xmm3,%xmm1
27771  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27772  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
27773  DB  102,15,56,11,211                    ; pmulhrsw      %xmm3,%xmm2
27774  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27775  DB  102,15,56,11,223                    ; pmulhrsw      %xmm7,%xmm3
27776  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
27777  DB  72,173                              ; lods          %ds:(%rsi),%rax
27778  DB  255,224                             ; jmpq          *%rax
27779
27780PUBLIC _sk_srcout_ssse3_lowp
27781_sk_srcout_ssse3_lowp LABEL PROC
27782  DB  102,68,15,111,5,238,4,0,0           ; movdqa        0x4ee(%rip),%xmm8        # 1560 <_sk_xor__ssse3_lowp+0x22f>
27783  DB  102,68,15,249,199                   ; psubw         %xmm7,%xmm8
27784  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27785  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27786  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27787  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27788  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27789  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27790  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27791  DB  102,65,15,56,29,216                 ; pabsw         %xmm8,%xmm3
27792  DB  72,173                              ; lods          %ds:(%rsi),%rax
27793  DB  255,224                             ; jmpq          *%rax
27794
27795PUBLIC _sk_dstout_ssse3_lowp
27796_sk_dstout_ssse3_lowp LABEL PROC
27797  DB  102,68,15,111,5,191,4,0,0           ; movdqa        0x4bf(%rip),%xmm8        # 1570 <_sk_xor__ssse3_lowp+0x23f>
27798  DB  102,68,15,249,195                   ; psubw         %xmm3,%xmm8
27799  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
27800  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27801  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27802  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
27803  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27804  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27805  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
27806  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27807  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27808  DB  102,68,15,56,11,199                 ; pmulhrsw      %xmm7,%xmm8
27809  DB  102,65,15,56,29,216                 ; pabsw         %xmm8,%xmm3
27810  DB  72,173                              ; lods          %ds:(%rsi),%rax
27811  DB  255,224                             ; jmpq          *%rax
27812
27813PUBLIC _sk_srcover_ssse3_lowp
27814_sk_srcover_ssse3_lowp LABEL PROC
27815  DB  102,68,15,111,5,132,4,0,0           ; movdqa        0x484(%rip),%xmm8        # 1580 <_sk_xor__ssse3_lowp+0x24f>
27816  DB  102,68,15,249,195                   ; psubw         %xmm3,%xmm8
27817  DB  102,68,15,111,204                   ; movdqa        %xmm4,%xmm9
27818  DB  102,69,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm9
27819  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27820  DB  102,65,15,253,193                   ; paddw         %xmm9,%xmm0
27821  DB  102,68,15,111,205                   ; movdqa        %xmm5,%xmm9
27822  DB  102,69,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm9
27823  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27824  DB  102,65,15,253,201                   ; paddw         %xmm9,%xmm1
27825  DB  102,68,15,111,206                   ; movdqa        %xmm6,%xmm9
27826  DB  102,69,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm9
27827  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27828  DB  102,65,15,253,209                   ; paddw         %xmm9,%xmm2
27829  DB  102,68,15,56,11,199                 ; pmulhrsw      %xmm7,%xmm8
27830  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27831  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27832  DB  72,173                              ; lods          %ds:(%rsi),%rax
27833  DB  255,224                             ; jmpq          *%rax
27834
27835PUBLIC _sk_dstover_ssse3_lowp
27836_sk_dstover_ssse3_lowp LABEL PROC
27837  DB  102,68,15,111,5,47,4,0,0            ; movdqa        0x42f(%rip),%xmm8        # 1590 <_sk_xor__ssse3_lowp+0x25f>
27838  DB  102,68,15,249,199                   ; psubw         %xmm7,%xmm8
27839  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27840  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27841  DB  102,15,253,196                      ; paddw         %xmm4,%xmm0
27842  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27843  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27844  DB  102,15,253,205                      ; paddw         %xmm5,%xmm1
27845  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27846  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27847  DB  102,15,253,214                      ; paddw         %xmm6,%xmm2
27848  DB  102,68,15,56,11,195                 ; pmulhrsw      %xmm3,%xmm8
27849  DB  102,65,15,56,29,216                 ; pabsw         %xmm8,%xmm3
27850  DB  102,15,253,223                      ; paddw         %xmm7,%xmm3
27851  DB  72,173                              ; lods          %ds:(%rsi),%rax
27852  DB  255,224                             ; jmpq          *%rax
27853
27854PUBLIC _sk_modulate_ssse3_lowp
27855_sk_modulate_ssse3_lowp LABEL PROC
27856  DB  102,15,56,11,196                    ; pmulhrsw      %xmm4,%xmm0
27857  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27858  DB  102,15,56,11,205                    ; pmulhrsw      %xmm5,%xmm1
27859  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27860  DB  102,15,56,11,214                    ; pmulhrsw      %xmm6,%xmm2
27861  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27862  DB  102,15,56,11,223                    ; pmulhrsw      %xmm7,%xmm3
27863  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
27864  DB  72,173                              ; lods          %ds:(%rsi),%rax
27865  DB  255,224                             ; jmpq          *%rax
27866
27867PUBLIC _sk_multiply_ssse3_lowp
27868_sk_multiply_ssse3_lowp LABEL PROC
27869  DB  102,68,15,111,5,196,3,0,0           ; movdqa        0x3c4(%rip),%xmm8        # 15a0 <_sk_xor__ssse3_lowp+0x26f>
27870  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
27871  DB  102,68,15,249,207                   ; psubw         %xmm7,%xmm9
27872  DB  102,68,15,111,208                   ; movdqa        %xmm0,%xmm10
27873  DB  102,69,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm10
27874  DB  102,69,15,56,29,210                 ; pabsw         %xmm10,%xmm10
27875  DB  102,68,15,249,195                   ; psubw         %xmm3,%xmm8
27876  DB  102,15,56,11,196                    ; pmulhrsw      %xmm4,%xmm0
27877  DB  102,68,15,111,220                   ; movdqa        %xmm4,%xmm11
27878  DB  102,69,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm11
27879  DB  102,69,15,56,29,219                 ; pabsw         %xmm11,%xmm11
27880  DB  102,69,15,253,218                   ; paddw         %xmm10,%xmm11
27881  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27882  DB  102,65,15,253,195                   ; paddw         %xmm11,%xmm0
27883  DB  102,68,15,111,209                   ; movdqa        %xmm1,%xmm10
27884  DB  102,69,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm10
27885  DB  102,69,15,56,29,210                 ; pabsw         %xmm10,%xmm10
27886  DB  102,15,56,11,205                    ; pmulhrsw      %xmm5,%xmm1
27887  DB  102,68,15,111,221                   ; movdqa        %xmm5,%xmm11
27888  DB  102,69,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm11
27889  DB  102,69,15,56,29,219                 ; pabsw         %xmm11,%xmm11
27890  DB  102,69,15,253,218                   ; paddw         %xmm10,%xmm11
27891  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27892  DB  102,65,15,253,203                   ; paddw         %xmm11,%xmm1
27893  DB  102,68,15,111,210                   ; movdqa        %xmm2,%xmm10
27894  DB  102,69,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm10
27895  DB  102,69,15,56,29,210                 ; pabsw         %xmm10,%xmm10
27896  DB  102,15,56,11,214                    ; pmulhrsw      %xmm6,%xmm2
27897  DB  102,68,15,111,222                   ; movdqa        %xmm6,%xmm11
27898  DB  102,69,15,56,11,216                 ; pmulhrsw      %xmm8,%xmm11
27899  DB  102,69,15,56,29,219                 ; pabsw         %xmm11,%xmm11
27900  DB  102,69,15,253,218                   ; paddw         %xmm10,%xmm11
27901  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27902  DB  102,65,15,253,211                   ; paddw         %xmm11,%xmm2
27903  DB  102,68,15,56,11,203                 ; pmulhrsw      %xmm3,%xmm9
27904  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27905  DB  102,68,15,56,11,199                 ; pmulhrsw      %xmm7,%xmm8
27906  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27907  DB  102,69,15,253,193                   ; paddw         %xmm9,%xmm8
27908  DB  102,15,56,11,223                    ; pmulhrsw      %xmm7,%xmm3
27909  DB  102,15,56,29,219                    ; pabsw         %xmm3,%xmm3
27910  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27911  DB  72,173                              ; lods          %ds:(%rsi),%rax
27912  DB  255,224                             ; jmpq          *%rax
27913
27914PUBLIC _sk_screen_ssse3_lowp
27915_sk_screen_ssse3_lowp LABEL PROC
27916  DB  102,68,15,111,5,234,2,0,0           ; movdqa        0x2ea(%rip),%xmm8        # 15b0 <_sk_xor__ssse3_lowp+0x27f>
27917  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
27918  DB  102,68,15,249,200                   ; psubw         %xmm0,%xmm9
27919  DB  102,68,15,56,11,204                 ; pmulhrsw      %xmm4,%xmm9
27920  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27921  DB  102,65,15,253,193                   ; paddw         %xmm9,%xmm0
27922  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
27923  DB  102,68,15,249,201                   ; psubw         %xmm1,%xmm9
27924  DB  102,68,15,56,11,205                 ; pmulhrsw      %xmm5,%xmm9
27925  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27926  DB  102,65,15,253,201                   ; paddw         %xmm9,%xmm1
27927  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
27928  DB  102,68,15,249,202                   ; psubw         %xmm2,%xmm9
27929  DB  102,68,15,56,11,206                 ; pmulhrsw      %xmm6,%xmm9
27930  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27931  DB  102,65,15,253,209                   ; paddw         %xmm9,%xmm2
27932  DB  102,68,15,249,195                   ; psubw         %xmm3,%xmm8
27933  DB  102,68,15,56,11,199                 ; pmulhrsw      %xmm7,%xmm8
27934  DB  102,69,15,56,29,192                 ; pabsw         %xmm8,%xmm8
27935  DB  102,65,15,253,216                   ; paddw         %xmm8,%xmm3
27936  DB  72,173                              ; lods          %ds:(%rsi),%rax
27937  DB  255,224                             ; jmpq          *%rax
27938
27939PUBLIC _sk_xor__ssse3_lowp
27940_sk_xor__ssse3_lowp LABEL PROC
27941  DB  102,68,15,111,5,134,2,0,0           ; movdqa        0x286(%rip),%xmm8        # 15c0 <_sk_xor__ssse3_lowp+0x28f>
27942  DB  102,69,15,111,200                   ; movdqa        %xmm8,%xmm9
27943  DB  102,68,15,249,207                   ; psubw         %xmm7,%xmm9
27944  DB  102,65,15,56,11,193                 ; pmulhrsw      %xmm9,%xmm0
27945  DB  102,68,15,56,29,208                 ; pabsw         %xmm0,%xmm10
27946  DB  102,68,15,249,195                   ; psubw         %xmm3,%xmm8
27947  DB  102,15,111,196                      ; movdqa        %xmm4,%xmm0
27948  DB  102,65,15,56,11,192                 ; pmulhrsw      %xmm8,%xmm0
27949  DB  102,15,56,29,192                    ; pabsw         %xmm0,%xmm0
27950  DB  102,65,15,253,194                   ; paddw         %xmm10,%xmm0
27951  DB  102,65,15,56,11,201                 ; pmulhrsw      %xmm9,%xmm1
27952  DB  102,68,15,56,29,209                 ; pabsw         %xmm1,%xmm10
27953  DB  102,15,111,205                      ; movdqa        %xmm5,%xmm1
27954  DB  102,65,15,56,11,200                 ; pmulhrsw      %xmm8,%xmm1
27955  DB  102,15,56,29,201                    ; pabsw         %xmm1,%xmm1
27956  DB  102,65,15,253,202                   ; paddw         %xmm10,%xmm1
27957  DB  102,65,15,56,11,209                 ; pmulhrsw      %xmm9,%xmm2
27958  DB  102,68,15,56,29,210                 ; pabsw         %xmm2,%xmm10
27959  DB  102,15,111,214                      ; movdqa        %xmm6,%xmm2
27960  DB  102,65,15,56,11,208                 ; pmulhrsw      %xmm8,%xmm2
27961  DB  102,15,56,29,210                    ; pabsw         %xmm2,%xmm2
27962  DB  102,65,15,253,210                   ; paddw         %xmm10,%xmm2
27963  DB  102,68,15,56,11,203                 ; pmulhrsw      %xmm3,%xmm9
27964  DB  102,69,15,56,29,201                 ; pabsw         %xmm9,%xmm9
27965  DB  102,68,15,56,11,199                 ; pmulhrsw      %xmm7,%xmm8
27966  DB  102,65,15,56,29,216                 ; pabsw         %xmm8,%xmm3
27967  DB  102,65,15,253,217                   ; paddw         %xmm9,%xmm3
27968  DB  72,173                              ; lods          %ds:(%rsi),%rax
27969  DB  255,224                             ; jmpq          *%rax
27970
27971ALIGN 16
27972  DB  0,0                                 ; add           %al,(%rax)
27973  DB  128,67,0,0                          ; addb          $0x0,0x0(%rbx)
27974  DB  128,67,0,0                          ; addb          $0x0,0x0(%rbx)
27975  DB  128,67,0,0                          ; addb          $0x0,0x0(%rbx)
27976  DB  128,67,0,1                          ; addb          $0x1,0x0(%rbx)
27977  DB  4,5                                 ; add           $0x5,%al
27978  DB  8,9                                 ; or            %cl,(%rcx)
27979  DB  12,13                               ; or            $0xd,%al
27980  DB  8,9                                 ; or            %cl,(%rcx)
27981  DB  12,13                               ; or            $0xd,%al
27982  DB  12,13                               ; or            $0xd,%al
27983  DB  14                                  ; (bad)
27984  DB  15,129,128,129,128,129              ; jno           ffffffff81809575 <_sk_xor__ssse3_lowp+0xffffffff81808244>
27985  DB  128,129,128,129,128,129,128         ; addb          $0x80,-0x7e7f7e80(%rcx)
27986  DB  129,128,129,128,1,2,5,6,9,10        ; addl          $0xa090605,0x2018081(%rax)
27987  DB  13,14,9,10,13                       ; or            $0xd0a090e,%eax
27988  DB  14                                  ; (bad)
27989  DB  13,14,15,255,2                      ; or            $0x2ff0f0e,%eax
27990  DB  3,6                                 ; add           (%rsi),%eax
27991  DB  7                                   ; (bad)
27992  DB  10,11                               ; or            (%rbx),%cl
27993  DB  14                                  ; (bad)
27994  DB  15,10                               ; (bad)
27995  DB  11,14                               ; or            (%rsi),%ecx
27996  DB  15,14                               ; femms
27997  DB  15,255                              ; (bad)
27998  DB  255,3                               ; incl          (%rbx)
27999  DB  255,7                               ; incl          (%rdi)
28000  DB  255,11                              ; decl          (%rbx)
28001  DB  255,15                              ; decl          (%rdi)
28002  DB  255,11                              ; decl          (%rbx)
28003  DB  255,15                              ; decl          (%rdi)
28004  DB  255,15                              ; decl          (%rdi)
28005  DB  255                                 ; (bad)
28006  DB  255                                 ; (bad)
28007  DB  255                                 ; (bad)
28008  DB  255,0                               ; incl          (%rax)
28009  DB  255,0                               ; incl          (%rax)
28010  DB  255,0                               ; incl          (%rax)
28011  DB  255,0                               ; incl          (%rax)
28012  DB  255,0                               ; incl          (%rax)
28013  DB  255,0                               ; incl          (%rax)
28014  DB  255,0                               ; incl          (%rax)
28015  DB  255,0                               ; incl          (%rax)
28016  DB  129,128,129,128,129,128,129,128,129,128; addl          $0x80818081,-0x7f7e7f7f(%rax)
28017  DB  129,128,129,128,129,128,0,2,0,0     ; addl          $0x200,-0x7f7e7f7f(%rax)
28018  DB  0,0                                 ; add           %al,(%rax)
28019  DB  0,0                                 ; add           %al,(%rax)
28020  DB  0,0                                 ; add           %al,(%rax)
28021  DB  0,0                                 ; add           %al,(%rax)
28022  DB  0,0                                 ; add           %al,(%rax)
28023  DB  0,0                                 ; add           %al,(%rax)
28024  DB  0,2                                 ; add           %al,(%rdx)
28025  DB  4,6                                 ; add           $0x6,%al
28026  DB  0,0                                 ; add           %al,(%rax)
28027  DB  0,0                                 ; add           %al,(%rax)
28028  DB  0,0                                 ; add           %al,(%rax)
28029  DB  0,0                                 ; add           %al,(%rax)
28030  DB  0,0                                 ; add           %al,(%rax)
28031  DB  0,0                                 ; add           %al,(%rax)
28032  DB  129,128,129,128,129,128,129,128,129,128; addl          $0x80818081,-0x7f7e7f7f(%rax)
28033  DB  129,128,129,128,129,128,0,128,0,128 ; addl          $0x80008000,-0x7f7e7f7f(%rax)
28034  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28035  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28036  DB  0,1                                 ; add           %al,(%rcx)
28037  DB  4,5                                 ; add           $0x5,%al
28038  DB  8,9                                 ; or            %cl,(%rcx)
28039  DB  12,13                               ; or            $0xd,%al
28040  DB  8,9                                 ; or            %cl,(%rcx)
28041  DB  12,13                               ; or            $0xd,%al
28042  DB  12,13                               ; or            $0xd,%al
28043  DB  14                                  ; (bad)
28044  DB  15,255                              ; (bad)
28045  DB  0,255                               ; add           %bh,%bh
28046  DB  0,255                               ; add           %bh,%bh
28047  DB  0,255                               ; add           %bh,%bh
28048  DB  0,255                               ; add           %bh,%bh
28049  DB  0,255                               ; add           %bh,%bh
28050  DB  0,255                               ; add           %bh,%bh
28051  DB  0,255                               ; add           %bh,%bh
28052  DB  0,129,128,129,128,129               ; add           %al,-0x7e7f7e80(%rcx)
28053  DB  128,129,128,129,128,129,128         ; addb          $0x80,-0x7e7f7e80(%rcx)
28054  DB  129,128,129,128,1,2,5,6,9,10        ; addl          $0xa090605,0x2018081(%rax)
28055  DB  13,14,9,10,13                       ; or            $0xd0a090e,%eax
28056  DB  14                                  ; (bad)
28057  DB  13,14,15,255,2                      ; or            $0x2ff0f0e,%eax
28058  DB  3,6                                 ; add           (%rsi),%eax
28059  DB  7                                   ; (bad)
28060  DB  10,11                               ; or            (%rbx),%cl
28061  DB  14                                  ; (bad)
28062  DB  15,10                               ; (bad)
28063  DB  11,14                               ; or            (%rsi),%ecx
28064  DB  15,14                               ; femms
28065  DB  15,255                              ; (bad)
28066  DB  255,3                               ; incl          (%rbx)
28067  DB  255,7                               ; incl          (%rdi)
28068  DB  255,11                              ; decl          (%rbx)
28069  DB  255,15                              ; decl          (%rdi)
28070  DB  255,11                              ; decl          (%rbx)
28071  DB  255,15                              ; decl          (%rdi)
28072  DB  255,15                              ; decl          (%rdi)
28073  DB  255                                 ; (bad)
28074  DB  255                                 ; (bad)
28075  DB  255,0                               ; incl          (%rax)
28076  DB  128,0,128                           ; addb          $0x80,(%rax)
28077  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28078  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28079  DB  129,128,129,128,129,128,129,128,129,128; addl          $0x80818081,-0x7f7e7f7f(%rax)
28080  DB  129,128,129,128,129,128,0,128,0,128 ; addl          $0x80008000,-0x7f7e7f7f(%rax)
28081  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28082  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28083  DB  129,128,129,128,129,128,129,128,129,128; addl          $0x80818081,-0x7f7e7f7f(%rax)
28084  DB  129,128,129,128,129,128,0,128,0,128 ; addl          $0x80008000,-0x7f7e7f7f(%rax)
28085  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28086  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28087  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28088  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28089  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28090  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28091  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28092  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28093  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28094  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28095  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28096  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28097  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28098  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28099  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28100  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28101  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28102  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28103  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28104  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28105  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28106  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28107  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28108  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28109  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28110  DB  0,128,0,128,0,128                   ; add           %al,-0x7fff8000(%rax)
28111
28112ALIGN 4
28113  DB  0,0                                 ; add           %al,(%rax)
28114  DB  128,67,0,0                          ; addb          $0x0,0x0(%rbx)
28115  DB  128,67,0,0                          ; addb          $0x0,0x0(%rbx)
28116  DB  128                                 ; .byte         0x80
28117  DB  67                                  ; rex.XB
28118ENDIF
28119END
28120